ENTERPRISE Приложения. Особенности архитектуры

  • 1,651 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,651
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
15
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. www.provectus-it.com
  • 2. ENTERPRISEПриложения
    Особенности архитектуры
    Яковенко Андрей, tech lead
    www.Provectus-IT.com
    2011
  • 3. СОДЕРЖАНИЕ
    Определения
    Классификация
    Общая архитектура
    Двухуровневая архитектура
    Трёхуровневая архитектура
    Архитектурные решения
    Организация проекта
    Подсистемы
    О чём не сказано
    Известные истины
    Вопросы
  • 4. Определения
    Enterprise приложения – программы используемые на предприятия для сопровождения их бизнес-процессов.
    Enterprise приложение – многопользовательская, многопоточная программа, обрабатывает значительные объёмы данных. Основные требования к программе формируются средой, в которой она работает.
  • 5. Определения
    Enterpriseприложение – есть отражение бизнес -процессов предприятия. Современное предприятие – это живой организм, поэтому бизнес-процессы часто и сильно меняются. Enterprise приложение должно иметь возможность быстро и, по возможности, без участия разработчиков изменить/создать/удалить бизнес-процесс.
    Enterpriseприложение – дорогое как в приобретении так и в обслуживании. Отличаются большой стоимостью владения (стоимость покупки + стоимость сопровождения). Порядок цифр от десятков тысяч до сотен миллионов долларов в год.
  • 6. Классификация
    Универсальные решения – представляет собой ядро с набором функций для описания бизнес-процессов предприятия. Обычно поставляется с настройкой под конкретный вид бизнеса или задачу.
    Узкоспециализированное решение – обеспечивают всестороннюю поддержку конкретных бизнес-процессов. Например: учёт кадров/зарплаты, учёт основных средств, складской учёт и т. п. Чаще всего создаются под конкретное предприятие либо достаточно форматизированную область.
  • 7. Общая архитектура
    Двухуровневая архитектура
  • 8. Общая архитектура
    Двухуровневая архитектура
    • Почти вся логика обработки заключена в приложении
    • 9. Данные хранятся в общей базе данных
    • 10. Большое количество одновременно работающих приложений
    • 11. Чаще всего каждая копия соответствует одному пользователю и запускается на отдельной машине
    Относительная простота реализации
    Невозможность масштабирования
    Высокие требования к рабочим станциям пользователей
  • 12. Общая архитектура
    Трёхуровневая архитектура
  • 13. Общая архитектура
    Трёхуровневая архитектура
    Программа состоит из множества баз данных, серверов приложений и клиентских приложений. Сервер приложений содержит большую часть бизнес логики.
    Возможность масштабирования
    Сложная реализация алгоритмов
  • 14. Архитектурные решения
    • Модульная архитектура.
    • 15. Независимые модули или иерархическая зависимость.
    • 16. Структура проекта.
    • 17. Создание и поддержка структуры проекта. Ant, Maven
    • 18. Поддержка разных операционных систем.
    • 19. Учёт особенностей разных операционных систем.
    • 20. Использования сторонних библиотек.
    • 21. Правильный выбор сторонних библиотек.
  • ОРГАНИЗАЦИЯ ПРОЕКТА
    • Правильные названия методов, классов и подсистем.
    • 22. Использования общепринятых и информативных названия.
    • 23. Сборка проекта из исходников.
    • 24. Прозрачные правила сборки. Быстрые сборки.
    • 25. Continuous Integration. (Hudson, CruiseControl, TeamCity)
    • 26. Документация.
    • 27. Техническая документация проекта, соглашения, Java Doc.
  • Подсистемы
    ЯДРО
    Типы данных
    Система управления ресурсами
    Система обработки ошибок
    Пользовательский интерфейс
    Система тестирования
    Административная часть
    Система полномочий
    Система настройки
    Аудит
    Подсистема логов
    Контроль целостности приложения
    Технологическая часть
    Система справочной информации
    Система настройки и описания бизнес процессов
    Подсистема отчётов
    Система экспорта/импорта данных
  • 28. о чём не сказано
    • Проектирование базы данных
    • 29. Транзакции и блокировки
    • 30. Локализация
  • ИЗВЕСТНЫЕ ИСТИНЫ
    • Если пользователи не обращаются с просьбами исправить ошибки или выполнить «гениальные» улучшения программы, значит программой никто не пользуется.
    • 31. Основное правило при проектировании проекта –
    делайте как можно проще, сложно получиться само.
    • Не забываем о лезвии Оккама – не умножаем сущности без
    необходимости.
  • 32. ВОПРОСЫ
    PROVECTUS-IT
    www.Provectus-It.com
    Обсерваторныйпереулок 2/4