Прагматичная Архитектура - Domain-Driven Design и Residuality

Проектируйте эффективные и устойчивые архитектуры программного обеспечения, комбинируя Domain-Driven Design и Residuality.

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

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

Воркшоп знакомит с мощными инструментами для разработки эффективных и устойчивых архитектур программного обеспечения. Тактический Domain-Driven Design обеспечивает эффективность в то время как Residuality помогает создавать системы устойчивые к изменениям в бизнесе. В ходе практических упражнений участники научатся применять эти концепции для создания архитектур, способных выживать в мире изменчивых бизнес-целей.

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

Для кого?

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

  • Архитектор программного обеспечения
  • Инженер-программист
  • Технический лидер
  • Менеджер по разработке программного обеспечения

Цели Обучения

  • Понять, что значит "качественная" архитектура и как оценить её качество Научиться определять и собирать необходимые вводные данные перед началом проектирования архитектуры
  • Изучить концепцию "Агрегата" в тактическом DDD для обеспечения целостности данных в распределенных системах Научиться определить кандидатов на агрегаты, отражающих доменную модель
  • Понять различные шаблоны интеграции между компонентами и их влияние на силу связи (coupling)
  • Научиться использовать теорию Residuality для проектирования устойчивых систем

Программа

День 1

Что такое "хорошая" архитектура? Изучаем свойства архитектуры, определяем их важность и учимся методам их количественной и качественной оценке.

До проектирования: Определяем необходимые входные данные для проектирования архитектуры программного обеспечения и источники этих данных.

"Событие" - это наше всё: Работаем в группах над упражнениями по проектированию, сравниваем подходы "основанные на состояниях" и "основанные на событиях" в проектировании архитектуры, формулируем эвристики, которые помогут вам выбирать между ними.

Обеспечение согласованности данных: Открываем могущество ключевой концепции тактического DDD - "Агрегата". Узнаем, как использование этой концепции обеспечивает целостность данных и соблюдение бизнес-инвариантов.

День 2

Поиск кандидатов на агрегаты: Ключ к созданию качественной архитектуры тактического уровня - найти агрегаты, которые отражают доменную модель, изучаем эвристики, которые нам в этом помогут. Участвуем в практическом упражнении по определению агрегатов с использованием Event Storming.

Паттерны интеграции и связность: Узнаем о различных типах паттернов интеграции и их влиянии на степень связности между компонентами. Участие в практических упражнениях по выбору правильного паттерна интеграции.

День 3

Введение в Теорию Residuality: Изучаем, как теория формирует основу для проектирования систем программного обеспечения с устойчивым и поведением.

Выпускное Упражнение: работаем в группах над проектированием прагматичной и устойчивой архитектуры программного обеспечения, применяя все концепции, изученные в ходе курса.

Формат

Офлайн или онлайн, 3 дня, всего 18 часов.

Требования

Опыт в разработке архитектуры программного обеспечения не требуются. Требуется опыт работы инженером-программистом.
Тихая комната позволяющая участникам сосредоточиться на курсе и упражнениях.
Готовность работать в небольших группах с другими участниками и вносить свой вклад в обсуждение и решение заданий.

Максимальный размер группы: 20 человек.

Хотите узнавать о наших акциях, скидках и мероприятиях?