Сергей Баранов, Кто она, инкрементальная и адаптивная...
TRANSCRIPT
Кто она, инкрементальная и адаптивная архитектура?
Сергей Баранов«ScrumTrek»
реакция на изменения
устранение рисков
BDUF
Emergent Design
Just Enough Design
BDUF риски измененияEmergent Design риски изменения
Just Enough Design нечто среднее
РАБОТАЮЩИЙ ПРОДУКТважнее
ИСЧЕРПЫВАЮЩЕЙ ДОКУМЕНТАЦИИ
#ИНКРЕМЕНТАЛЬНОСТЬ
ГОТОВНОСТЬ К ИЗМЕНЕНИЯМважнее
СЛЕДОВАНИЯ ПЕРВОНАЧАЛЬНОМУ ПЛАНУ
#АДАПТИВНОСТЬ
МАНИФЕСТ АДАПТИВНОЙ РАЗРАБОТКИ
EXPERIMENTATIONinstead of
SPECIFICATION
EVOLUTIONinstead of
IMPLEMENTATION
ADAPTATIONinstead of
MODIFICATION
EXTENSIONinstead of
GROWTH
ПРАКТИКИ
#Vision
Удобный сайт конференции AgileDays, максимально
автоматизирующий работу с докладами
#Stories
Регистрация участникаРегистрация докладчика
Подача докладаОтображение докладов
#Stories
Регистрация участникаРегистрация докладчика
Подача докладаОтображение докладов
#DomainModel
Докладчик
Доклад
Участник
Компания
ПОРЯДОК ИМЕЕТ ЗНАЧЕНИЕ
#WalkingSkeleton
#WalkingSkeleton Шаги
Бизнес-правилаПлатформы
Входные параметрыРоли
#WalkingSkeleton
Какие [шаги|правила..] нужны?Все ли [шаги|правила..] необходимы
сейчас?Могут ли какие-то [шаги|правила…]
сейчас быть упрощены?
Как бы вы решили проблему не будь у вас компьютера?
#WalkingSkeleton:workflow
Подача докладаВыбрать тип: «Докладчик»
Заполнить форму подачи докладаОтправить информационное
письмо
#WalkingSkeleton:businessRules
Заполнить форму подачи докладаВсе поля обязательныеНе более 3-х докладов
Описание не менее 2048 символовНазвание на русском языке
#WalkingSkeleton:businessRules
Заполнить форму подачи докладаЧасть полей — обязательные
Не более 3-х докладовОписание не более 2048 символов
Название на русском языке
ТРЕБОВАНИЯ РЕГУЛЯТОРОВИНТЕРНАЦИОНАЛИЗАЦИЯПРОИЗВОДИТЕЛЬНОСТЬ
ТЕСТОПРИГОДНОСТЬБЕЗОПАСНОСТЬ
#OCP
OPENED FOR EXTENSIONbut
CLOSED FOR MODIFICATION
#OCP
AbstractSingletonProxyFactoryBean
#OCP
Докладчик Доклад
Участник
Компания
#Strategy
50 км
#Strategy
изменение профилясвободное
через уведомление и подтверждение
Участник
Докладчик
#Simplicity
«The art of maximizing the
amount of work not done — is
essential.»
#Simplicity vs over-engineering
Действительно ли этот участок кода нужен сейчас?
#ShotgunSurgery A выполняет A, X, Y, ZB выполняет B, X, Y, Z C выполняет C, X, Y, Z
«Поправь X, там работы на 15 минут…»
https://agiledays.ru/login?return_url=http://agiledays.ru/profile&login=BruceDickinson&password=BraveNewWorld
Login
#Testability
https://agiledays.ru/edit?data={“name”: “Bruce”, “band”:
“Iron..”}
Тестируем что угодно
#Testability
Архитектура — лишь один из аспектов проекта, управляемый тем
же процессом и теми же принципами
инкрементальность, адаптивность, обратная связь, совместное
принятие решений, реакция на изменения
Спасибо!Q&A
facebook.com/[email protected]