16
WWW.PROVECTUS-IT.COM

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

Embed Size (px)

Citation preview

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

WWW.PROVECTUS-IT.COM

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

ENTERPRISE ПРИЛОЖЕНИЯ

Особенности архитектуры

Яковенко Андрей, tech leadwww.Provectus-IT.com

2011

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

СОДЕРЖАНИЕ

• Определения

• Классификация

• Общая архитектура– Двухуровневая архитектура

– Трёхуровневая архитектура

• Архитектурные решения

• Организация проекта

• Подсистемы

• О чём не сказано

• Известные истины

• Вопросы

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

ОПРЕДЕЛЕНИЯ

Enterprise приложения – программы используемые напредприятия для сопровождения их бизнес-процессов.

Enterprise приложение – многопользовательская, многопоточная программа, обрабатывает значительные объёмы данных. Основные требования к программе формируются средой, в которой она работает.

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

ОПРЕДЕЛЕНИЯ

Enterprise приложение – есть отражение бизнес -процессов предприятия. Современное предприятие – этоживой организм, поэтому бизнес-процессы часто и сильноменяются. Enterprise приложение должно иметьвозможность быстро и, по возможности, без участияразработчиков изменить/создать/удалить бизнес-процесс.

Enterprise приложение – дорогое как в приобретениитак и в обслуживании. Отличаются большой стоимостьювладения (стоимость покупки + стоимость сопровождения).Порядок цифр от десятков тысяч до сотен миллионовдолларов в год.

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

КЛАССИФИКАЦИЯУниверсальные решения – представляет собой ядро с

набором функций для описания бизнес-процессовпредприятия. Обычно поставляется с настройкой подконкретный вид бизнеса или задачу.

Узкоспециализированное решение – обеспечивают всестороннюю поддержку конкретных бизнес-процессов. Например: учёт кадров/зарплаты, учёт основных средств, складской учёт и т. п. Чаще всего создаются под конкретное предприятие либо достаточно форматизированную область.

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

ОБЩАЯ АРХИТЕКТУРАДвухуровневая архитектура

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

ОБЩАЯ АРХИТЕКТУРАДвухуровневая архитектура

• Почти вся логика обработки заключена в приложении• Данные хранятся в общей базе данных• Большое количество одновременно работающих

приложений• Чаще всего каждая копия соответствует одному

пользователю и запускается на отдельной машине

Относительная простота реализации

Невозможность масштабированияВысокие требования к рабочим станциям пользователей

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

ОБЩАЯ АРХИТЕКТУРАТрёхуровневая архитектура

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

ОБЩАЯ АРХИТЕКТУРАТрёхуровневая архитектура

Программа состоит из множества баз данных, серверов приложений и клиентских приложений. Сервер приложений содержит большую часть бизнес логики.

Возможность масштабирования

Сложная реализация алгоритмов

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

АРХИТЕКТУРНЫЕ РЕШЕНИЯ

• Модульная архитектура.• Независимые модули или иерархическая зависимость.

• Структура проекта.• Создание и поддержка структуры проекта. Ant, Maven

• Поддержка разных операционных систем.• Учёт особенностей разных операционных систем.

• Использования сторонних библиотек.• Правильный выбор сторонних библиотек.

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

ОРГАНИЗАЦИЯ ПРОЕКТА

• Правильные названия методов, классов и подсистем.• Использования общепринятых и информативных названия.

• Сборка проекта из исходников.• Прозрачные правила сборки. Быстрые сборки. • Continuous Integration. (Hudson, CruiseControl, TeamCity)

• Документация.• Техническая документация проекта, соглашения, Java Doc.

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

ПОДСИСТЕМЫ

Административная частьСистема полномочий

Система настройкиАудит

Подсистема логовКонтроль целостности приложения

Технологическая частьСистема справочной информацииСистема настройки и описания бизнес процессовПодсистема отчётовСистема экспорта/импорта данных

ЯДРОТипы данных

Система управления ресурсамиСистема обработки ошибок

Пользовательский интерфейсСистема тестирования

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

О ЧЁМ НЕ СКАЗАНО

• Проектирование базы данных

• Транзакции и блокировки

• Локализация

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

ИЗВЕСТНЫЕ ИСТИНЫ

• Если пользователи не обращаются с просьбами исправить ошибки или выполнить «гениальные» улучшения программы, значит программой никто не пользуется.

• Основное правило при проектировании проекта –делайте как можно проще, сложно получиться само.

• Не забываем о лезвии Оккама – не умножаем сущности без необходимости.

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

ВОПРОСЫ

PROVECTUS-ITwww.Provectus-It.com

Обсерваторный переулок 2/4