group-telegram.com/ba_and_sa/741
Last Update:
Алоха! сегодня предлагаю поговорить о таком методе сбора требований как "Event storming"
Если не вдаваться в подробности, то можно сказать, что одним из важных и сложных моментов, предшествующим разработке архитектуры приложения, это сбор требований и моделирование бизнес-процессов. И это не зависит сложный ли намечается продукт или легкий, требования все равно нужны, так как надо понимать "Что" требуется сделать, "Какие" объекты будут в будущей системе и "Какие" сценарии должны происходить. И сложность требований будет зависеть от самого продукта, так как в сложном бизнес-процессе будет присутствовать большое количество объектов и вариантов сценариев с ними. И именно для сбора требований к сложным продуктам помогает подход Event storming, так как знания о продукте или бизнес-процессах можно получить из устаревшей документации или их можно получить только у собственника бизнеса или product manager/project manager, грубо говоря данные требования не будут описаны в едином источнике знаний, а будут разбросаны по всем процессам и участникам вовлеченным в продукт.
Теперь поговорим именно о методе сбора требований "Event storming" - как же он поможет нам собрать требования:
Event storming - подход к решению проблем в процессе разработки, введённый итальянским программистом Альберто Брандолини, успешно используемый им в контексте DDD.
Это метод, основанный на воркшопе или сессии с командой, чтобы быстро узнать, что происходит в области программного обеспечения, какие мы видим взаимосвязи, проблемы и сценарии их решения, он направлен на сбор всех доменных экспертов (программистов, менеджеров и других) для получения информации о продукте со всех сторон, также для того чтобы через описание событий в системе получить полную картину требуемых бизнес-процессов.
Главный результат — это быстрое исследование предметной области и фиксация знаний среди заинтересованных лиц
Структура Event storming:
🟨Пользователь Actor / Клиент - человек, выполняющий команду через представление
🟦Команда - это команда, выполняемая пользователем через представление агрегата, которая приводит к созданию события домена
🟨Агрегат - совокупность объектов домена, которые можно рассматривать как единое целое
🟥Внешняя система - сторонний поставщик услуг, например платежный шлюз или транспортная компания
🟧Событие домена - это событие, происходящее в бизнес-процессе
🟪Бизнес-процесс / Правило - обрабатывает команду в соответствии с бизнес-правилами и логикой
🟩Представление - это представление, с которым пользователи взаимодействуют для выполнения задачи в системе
Наглядное представление структуры приведено в прикрепленной картинке👇
Более подробно познакомиться с темой можно с помощью полезных материалов:
📌Event Storming на практических кейсах:
- Статья
- Презентация
📌Книга "Event Storming" (если есть ссылки на прочтение книги, делитесь в комментах) - данную книгу можно назвать комиксом. Если вам интересна тема со стикерами, досками и kanban, то event storming скорее всего тоже вам «зайдет». Книга Event Storming - рассказывает о технике специфицирования в терминах DDD, CQRS и Event Sourcing в форме увлекательной игры со стикерами, фломастерами и доской (доска может быть физической или виртуальной, но с физической гораздо веселее). С точки зрения наглядности, метод не успевает за Activity и BPMN-диаграммами. Но он гораздо более легковесный и прост в освоении и понимании.
#сбортребований
Автор: @ba_and_sa
BY Business | System analyst

Share with your friend now:
group-telegram.com/ba_and_sa/741