Презентация на тему Три точки опоры в архитектуре корпоративных систем

Презентация на тему Презентация на тему Три точки опоры в архитектуре корпоративных систем, предмет презентации: Образование. Этот материал содержит 36 слайдов. Красочные слайды и илюстрации помогут Вам заинтересовать свою аудиторию. Для просмотра воспользуйтесь проигрывателем, если материал оказался полезным для Вас - поделитесь им с друзьями с помощью социальных кнопок и добавьте наш сайт презентаций ThePresentation.ru в закладки!

Слайды и текст этой презентации

Слайд 1
Текст слайда:

Три точки опоры в архитектуре корпоративных систем

Докладчик:

Максим Цепков (M.Tsepkov@custis.ru)
www.CUSTIS.ru


Слайд 2
Текст слайда:

Корпоративные приложения

Заказная разработка сложных систем
Поддержка уникальных бизнес-процессов заказчика
Частые изменения системы – вместе c изменениями бизнеса
Постановки необходимо согласовывать с бизнес-пользователями
Большие долгоживущие системы
Начальная разработка – 5–20 человеко-лет за 0,5–2 года
Активное развитие весь срок эксплуатации – 5–10 лет (бывает дольше)
Существенно меняется коллектив разработчиков и пользователей
Учетно-аналитические системы
Учет – одна из основных функций системы
Учетные показатели – основа бизнес-логики и принятия решений
Связь учета с документооборотом должна быть прозрачна

/36


Слайд 3
Текст слайда:

Что нужно для проектирования?

Понятное описание системы
Заказчик владеет языком описания и верифицирует постановки
Разработчики тоже свободно общаются на языке описания
Прозрачное и ясное описание
Компактно представляет сложные конструкции системы
Соответствует реализации (программному коду)
Связывается с тем, что видит пользователь в системе
Проект системы развивается вместе с системой
На языке описания можно формулировать запросы на изменение
Можно оценить трудоемкость реализации доработок

Ошибки в постановках – самый большой риск
Понятное и прозрачное описание его снижает

/36


Слайд 4
Текст слайда:

Как мы проектируем?

Мы строим модель на языке предметной области
Сначала это – модель самой предметной области
Но очень быстро превращается в модель системы
Оставаясь на языке предметной области
Модель является архитектурой системы

Модель итеративно развивается вместе с системой

Применяем диаграммы и другие методы компактного
представления сложных систем, разработанные в IT

/36


Слайд 5
Текст слайда:

Наш способ – в мировом тренде


Domain Driven Design – mainstream в проектировании

Архитектура на основе модели предметной области
Единый язык общения заказчиков и разработчиков
Итеративное проектирование и разработка


/36


Слайд 6
Текст слайда:

Подробнее о DDD


Концептуальная книга Эрика Эванса
на английском – в 2003 г.
на русском – только в 2010 г.

Практическая книга Джимми Нильссона
на английском – в 2006 г.
на русском – в 2007 г. (почти сразу!)



Для знакомства – можно смотреть материалы, ссылки, слайды и видеозапись тренинга Андрея Бибичева: http://lib.custis.ru/ddd-training

/36


Слайд 7
Текст слайда:

Учетная машина – DDD для корпоративного приложения


Мы не просто применяем DDD при проектировании

У нас сложился шаблон модели – Учетная машина

Мы применяем его для учетных корпоративных приложений предприятий и банков

/36


Слайд 8
Текст слайда:


Шаблон учетной машины

/36


Слайд 9
Текст слайда:

Обобщенное учетное приложение


Пользователи создают документы
По необходимости заполняют справочники
Потом документы исполняют
При этом меняются учетные данные
Которые влияют на исполнение документов
И отражаются в отчетах

/36


Слайд 10
Текст слайда:

Состав учетного приложения


Документы

Учетные показатели


СВЯЗЬ


/36


Слайд 11
Текст слайда:

Что такое учетные показатели?


Учетные показатели – отражение реальных потоков обобщенных ресурсов (товаров, денег, долгов и др.)

Учетные показатели нужны и важны в большинстве управленческих систем, а не только в бухгалтерии

Бухгалтерия же отражает реальные потоки весьма опосредованно

/36


Слайд 12
Текст слайда:


СВЯЗЬ




Документы

Учетные показатели

Представление Учетной машины

Документы
и справочники – диаграмма классов

Документооборот – диаграмма состояний

Учет – диаграмма учета

/36


Слайд 13
Текст слайда:

Как представить учет?


Учет – основное назначение учетной системы
Представление учета оказалось за рамками UML
И вообще эффективного представления ☹

Мы придумали Диаграммы учета
Они дают целостную учетную модель системы

/36


Слайд 14
Текст слайда:

Диаграммы учета

Показывают, как отражается движение ресурсов в учете

/36


Слайд 15
Текст слайда:

Подробно о диаграммах учета

К сожалению, подробного описания нет ☹
Есть выступления на конференциях

ЛАФ-2010 – http://lib.custis.ru/Accounting-diagrams
«Диаграммы планов счетов – средство моделирования и проектирования учета»


SECR-2010 – http://lib.custis.ru/Simplify-security-accounting
«Учет ценных бумаг – сделать сложное простым»

Презентация и видео

Презентация и статья

/36


Слайд 16
Текст слайда:

Документы (и справочники)

Используем объектно-ориентированный подход
Классы соответствуют бизнес-объектам – заказчик видит знакомые названия

Используем цветовые выделения

Представляем диаграммой классов

/36


Слайд 17
Текст слайда:

Связь документов с учетом


При обработке и проведении документов возникают хозяйственные операции, отражаемые в учете
Документу приписываем состояние Оно определяет отражение документа в учете и другие аспекты документооборота:
текущий этап обработки документа
ответственность за документ
права на совершение действий

/36


Слайд 18
Текст слайда:

Диаграмма переходов документа


Граф состояний документа изображается на State Machine Diagram (UML)
узлы – состояния
ребра – методы-переходы

Состояния и переходы называем в терминах бизнеса

Состояния заказа

/36


Слайд 19
Текст слайда:

Итак, единая модель системы

Модель системы представляется в проекциях
диаграмма классов – структура объектов и их методы
диаграмма учета – учетная модель системы
диаграмма состояний документов – документооборот
Все проекции связаны между собой через методы-переходы, которые есть на всех диаграммах

Эта модель – результат обобщения нашего опыта разработки корпоративных приложений
В большинстве случаев проекций модели достаточно


В терминах предметной области

/36


Слайд 20
Текст слайда:


Развитие модели в ходе проекта

/36


Слайд 21
Текст слайда:

От модели предметной области – к модели системы

Начало проекта (1–2 месяца)
Интерактив с заказчиком, анализ предметной области
Диаграмма классов и диаграмма учета в крупном
План поэтапной реализации по фрагментам предметной области
Итеративная разработка (6–18 месяцев)
Детальное проектирование фрагмента системы
Уточнение структур данных и учета, проработка документооборота
Реализация спроектированного фрагмента
Внедрение и эксплуатация (5–10 лет)
Реализация бизнес-процессов в рамках модели системы
Запросы на развитие системы в терминах модели

Модель предметной области

Модель системы


По фрагментам

/36


Слайд 22
Текст слайда:

Развитие объектной модели

Сначала основные классы без деталей
Подробности – по ходу разработки
Уточняем иерархию типов
Определяем атрибуты и методы
Проектируем вспомогательные классы
Уточняем структуру ассоциаций между классами
Не все делаем на первом этапе


/36


Слайд 23
Текст слайда:

Развитие учета

Уточнения
определяем аналитики
определяем источники событий учета
Изменения
добавляем новые участки учета
добавляем транзитные счета


/36


Слайд 24
Текст слайда:

Проработка документооборота

От простого, определяемого учетом – к сложной поддержке бизнес-процессов


/36


Слайд 25
Текст слайда:

Сложная модель связанных документов


Диаграмма классов

Диаграмма состояний

Диаграмма учета

Документы могут появляться в ходе развития проекта

/36


Слайд 26
Текст слайда:


Реализация
Учетной машины

/36


Слайд 27
Текст слайда:

Платформа реализации

Большинство приложений мы делаем на C# и Oracle

Объектная модель реализуется понятным образом – создаем классы, реализуем методы и т. д.

Для модели документооборота и учета нужно типовое отображение в объектную реализацию

Что значит «типовое»? Для реализации достаточно постановок с диаграммами переходов и учета, дополнительного проектирования не требуется

/36


Слайд 28
Текст слайда:

Реализация документооборота










Для прозрачной модели это должно совпадать: учетные события – суть хозяйственные операции

ВЗГЛЯД БИЗНЕСА Есть журнал хозяйственных операций, возникающих при обработке и проведении документов

РЕАЛИЗАЦИЯ источник учета – события (Event Sourcing, Фаулер), они возникают в методах документов

/36


Слайд 29
Текст слайда:

Документооборот – как мы делаем


Для документов применяем design pattern State Entity
У документов есть атрибут – состояние
Изменение состояния – через вызов метода объекта
Метод изменения состояния называется также переходом документа
Учетные события возникают на переходах документов

Используем реализацию на метаданных – у метода описываем начальное и конечное состояния

Диаграмма состояний и описание семантики переходов достаточно для реализации разработчиком

/36


Слайд 30
Текст слайда:

Реализация учета


Есть Patterns for Accounting Мартина Фаулера – отражение учета в объектную реализацию
учетные счета и проводки
источник проводок – события

У нас – более развитая реализация
хранение аналитических признаков на счетах и проводках
ведение остатков и оборотов учетных счетов
ведение детальных и агрегированных показателей
Есть собственный язык описания – GL-XML

/36


Слайд 31
Текст слайда:

Объектная реализация учета


Стрелки диаграммы переходов

Стрелки диаграммы учета

Аналитики счета

Текущие остатки вычисляются автоматически

Показатели вычисляются автоматически

Эти счета изображены на диаграмме учета

/36


Слайд 32
Текст слайда:

Реализация учета – как мы делаем


Диаграмма учета определяет
набор учетных счетов и их аналитику
проводки, выполняемые по конкретным переходам
Еще надо определить набор хранимых показателей, необходимых для эффективной работы отчетов

Задача разработчика
описать набор счетов, аналитику счетов и аналитику проводок
описать хранимые показатели
обеспечить создание проводок на учетных событиях – императивно или декларативно

/36


Слайд 33
Текст слайда:


Заключение
(что я хотел сказать)

/36


Слайд 34
Текст слайда:

Архитектура по модели – эффективно


Domain Driven Design – архитектура на основе модели
На едином языке предметной области
Итеративно и сохраняя целостность

Domain Driven Design – не только объектные модели

/36


Слайд 35
Текст слайда:

Да будут архитектурные шаблоны


Шаблоны программирования – не только для отдельных фрагментов, но и для приложения в целом

Учетная машина – шаблон корпоративного приложения Проектирование на основе Domain Driven Design Типовое отображение в реализацию

/36


Слайд 36
Текст слайда:

Спасибо!



Вопросы?




Максим Цепков (M.Tsepkov@custis.ru)

/36


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика