Аннотация
- Докладчик
- Николай Гребнев
Распределенная архитектура приложения сейчас является наиболее актуальным выбором при проектировании корпоративных информационных систем. Такие архитектурные шаблоны как сервисно-ориентированная архитектура (SOA) и трехзвенная архитектура (3-tier architecture) являются de-facto стандартами в разработке корпоративных приложений.
Зачастую, главной проблемой в разработки является борьба со сложностью решаемой задачи, при этом для приложений уровня предприятия сложность с каждым годом стремительно увеличивается. Одним из наиболее эффективных средств борьбы с растущей сложностью является методология проектирования на основе модели предметной области (Domain Driven Design, DDD).
Каждый, кто пытался применить DDD в приложениях, имеющих распределенную архитектуру, будь то сервисы или клиент-сервер, знает с каким количеством трудностей приходится сталкиваться. В докладе будут рассмотрена целесообразность применения DDD в приложениях с сервисно-ориентированной архитектурой и в многозвенных приложениях, будут освещены трудности, возникающие при использовании DDD, и обозначены пути их преодоления. Будут даны ответы на вопросы:
Стоит ли использовать DDD при разработке распределенных приложений?
Как использовать DDD при использовании различных архитектурных стилей?
Какую роль играют библиотеки, инструменты и фреймворки в разработке на основе модели предметной области?
Какова эффективность использования DDD в agile-процессе разработки распределенных приложений?
Видео
Для этого доклада нужен подкаст (аудиозапись)?
Презентация
Примечания и отзывы
Из доклада я узнал только о сложностях и всевозможных проблемах данного подхода в описанных условиях. Те преимущества, которые описывал докладчик, уверенно перекрываются кучей дополнительного времени и сложностью реализации.
©
суть доклада сводиться к простому: «в DDD надо вводить распределенность в доменную модель, либо не делать распределенным», довольно очевидная вещь, и я все ждал, что вот сейчас то он расскажет ка-же это правильно делать, оказалось — нет.
©
Николай Гребнев
Презентация
Доклад прошел хорошо, слушателей набрался практически полный зал. Единственная проблема была в том, что я чуть-чуть не влез в 45 минут, но поскольку после моего доклады был обед, то я имел возможность рассказать доклад до конца. По результатам выступления понял, что с пониманием DDD пока все еще очень плохо.
Весь свой рассказ я строил в предположении того, что слушатель понимает, что такое DDD и имеет опыт его использования, а самое главное представляет какие преимущества дает эта методология.
Основной задачей моего доклада было донести мысль, что если у вас распределенная система сложнее, чем клиент-сервер, и при этом вы хотите использовать DDD, то вам придется разработать свой инструментарий (на самом деле это далеко не такая очевидная мысль, как кажеться на первый взгляд) и вы должны оценить затраты на разработку этого инструментария и преимущества, которые он даст.
При этом о преимуществах DDD я рассказал вкратце, рассчитывая на то, что слушатели представляют для чего нужно тратить столько усилий в попытках использовать DDD.
Но, судя по вопросам и обсуждению в твиттере, аудитория оказалась к этому не готова.
Более того судя по отзывам, некоторые вообще не поняли суть доклада и считают моей основной мыслью необходимость распределенной доменной модели, хотя я прямым текстом говорил о том, что такой случай не является темой доклада.
Описанию DDD, его сути, а также преимуществам можно было стоило посвятить практически все время и даже более того, сконцентрировать акцент на преимуществах DDD и причин, по которым за него стоит бороться, а проблемы и пути решения просто задекларировать.
Коля рассказывал живо и интересно…
Хотя видно, что волновался.. иногда говорил много лишних слов. Вначале немного спотыкался, но к середине разогнался.
Но к сожалению месседж доклада не понятен :(.. Судя по отзывам народа в кулуарах и в твиттере. Доклад народу не понравился :(
- Докладчик
- Николай Гребнев
- Компания
- CustIS
- Презентация
- Документ на slideshare.net
Доклад Коли должен был следовать за докладом Антона Бевзюка «Архитектура для Автоматизированного тестирования UI» (доклада не было, но он доступен на slideshare.net) и продолжать, в какой-то степени, доклад Андрея Бибичева.
Доклад Коли также отличался образностью (например,
слайд номер 20:
для иллюстрации терминов Rich и Anemic).
Связь доклада с Agile (слайд номер 15) кажется надуманной, но это вовсе неплохо.
Интересный доклад, достойно продолживший доклад Андрея Бибичева.
Николай Гребнев
Обзорный доклад на тему применимости DDD в распределенных приложениях. Добротно, но без откровений. Также было заметно, что аудиторию разочаровало отсутствие хотя бы упоминания новых подходов (типа CQRS).
Репликация: База Знаний «Заказных Информ Систем» → «Domain Driven Design в условиях разработки распределенных приложений (Николай Гребнев, AgileDays-2011)»
Любые правки этой статьи будут перезаписаны при следующем сеансе репликации. Если у вас есть серьезное замечание по тексту статьи, запишите его в раздел «discussion».