46
Кто она, инкрементальная и адаптивная архитектура? Сергей Баранов «ScrumTrek»

Инкрементальная и адаптивная архитектура @ AgileDays'16

Embed Size (px)

Citation preview

Page 1: Инкрементальная и адаптивная архитектура @ AgileDays'16

Кто она, инкрементальная и адаптивная архитектура?

Сергей Баранов«ScrumTrek»

Page 2: Инкрементальная и адаптивная архитектура @ AgileDays'16
Page 3: Инкрементальная и адаптивная архитектура @ AgileDays'16

реакция на изменения

Page 4: Инкрементальная и адаптивная архитектура @ AgileDays'16

устранение рисков

Page 5: Инкрементальная и адаптивная архитектура @ AgileDays'16

BDUF

Page 6: Инкрементальная и адаптивная архитектура @ AgileDays'16

Emergent Design

Page 7: Инкрементальная и адаптивная архитектура @ AgileDays'16
Page 8: Инкрементальная и адаптивная архитектура @ AgileDays'16
Page 9: Инкрементальная и адаптивная архитектура @ AgileDays'16

Just Enough Design

Page 10: Инкрементальная и адаптивная архитектура @ AgileDays'16

BDUF риски измененияEmergent Design риски изменения

Just Enough Design нечто среднее

Page 11: Инкрементальная и адаптивная архитектура @ AgileDays'16

РАБОТАЮЩИЙ ПРОДУКТважнее

ИСЧЕРПЫВАЮЩЕЙ ДОКУМЕНТАЦИИ

#ИНКРЕМЕНТАЛЬНОСТЬ

Page 12: Инкрементальная и адаптивная архитектура @ AgileDays'16

ГОТОВНОСТЬ К ИЗМЕНЕНИЯМважнее

СЛЕДОВАНИЯ ПЕРВОНАЧАЛЬНОМУ ПЛАНУ

#АДАПТИВНОСТЬ

Page 13: Инкрементальная и адаптивная архитектура @ AgileDays'16

МАНИФЕСТ АДАПТИВНОЙ РАЗРАБОТКИ

Page 14: Инкрементальная и адаптивная архитектура @ AgileDays'16

EXPERIMENTATIONinstead of

SPECIFICATION

Page 15: Инкрементальная и адаптивная архитектура @ AgileDays'16

EVOLUTIONinstead of

IMPLEMENTATION

Page 16: Инкрементальная и адаптивная архитектура @ AgileDays'16

ADAPTATIONinstead of

MODIFICATION

Page 17: Инкрементальная и адаптивная архитектура @ AgileDays'16

EXTENSIONinstead of

GROWTH

Page 18: Инкрементальная и адаптивная архитектура @ AgileDays'16

ПРАКТИКИ

Page 19: Инкрементальная и адаптивная архитектура @ AgileDays'16
Page 20: Инкрементальная и адаптивная архитектура @ AgileDays'16

#Vision

Удобный сайт конференции AgileDays, максимально

автоматизирующий работу с докладами

Page 21: Инкрементальная и адаптивная архитектура @ AgileDays'16

#Stories

Регистрация участникаРегистрация докладчика

Подача докладаОтображение докладов

Page 22: Инкрементальная и адаптивная архитектура @ AgileDays'16

#Stories

Регистрация участникаРегистрация докладчика

Подача докладаОтображение докладов

Page 23: Инкрементальная и адаптивная архитектура @ AgileDays'16

#DomainModel

Докладчик

Доклад

Участник

Компания

Page 24: Инкрементальная и адаптивная архитектура @ AgileDays'16

ПОРЯДОК ИМЕЕТ ЗНАЧЕНИЕ

Page 25: Инкрементальная и адаптивная архитектура @ AgileDays'16

#WalkingSkeleton

Page 26: Инкрементальная и адаптивная архитектура @ AgileDays'16

#WalkingSkeleton Шаги

Бизнес-правилаПлатформы

Входные параметрыРоли

Page 27: Инкрементальная и адаптивная архитектура @ AgileDays'16

#WalkingSkeleton

Какие [шаги|правила..] нужны?Все ли [шаги|правила..] необходимы

сейчас?Могут ли какие-то [шаги|правила…]

сейчас быть упрощены?

Page 28: Инкрементальная и адаптивная архитектура @ AgileDays'16

Как бы вы решили проблему не будь у вас компьютера?

Page 29: Инкрементальная и адаптивная архитектура @ AgileDays'16

#WalkingSkeleton:workflow

Подача докладаВыбрать тип: «Докладчик»

Заполнить форму подачи докладаОтправить информационное

письмо

Page 30: Инкрементальная и адаптивная архитектура @ AgileDays'16

#WalkingSkeleton:businessRules

Заполнить форму подачи докладаВсе поля обязательныеНе более 3-х докладов

Описание не менее 2048 символовНазвание на русском языке

Page 31: Инкрементальная и адаптивная архитектура @ AgileDays'16

#WalkingSkeleton:businessRules

Заполнить форму подачи докладаЧасть полей — обязательные

Не более 3-х докладовОписание не более 2048 символов

Название на русском языке

Page 32: Инкрементальная и адаптивная архитектура @ AgileDays'16
Page 33: Инкрементальная и адаптивная архитектура @ AgileDays'16

ТРЕБОВАНИЯ РЕГУЛЯТОРОВИНТЕРНАЦИОНАЛИЗАЦИЯПРОИЗВОДИТЕЛЬНОСТЬ

ТЕСТОПРИГОДНОСТЬБЕЗОПАСНОСТЬ

Page 34: Инкрементальная и адаптивная архитектура @ AgileDays'16

#OCP

OPENED FOR EXTENSIONbut

CLOSED FOR MODIFICATION

Page 35: Инкрементальная и адаптивная архитектура @ AgileDays'16

#OCP

AbstractSingletonProxyFactoryBean

Page 36: Инкрементальная и адаптивная архитектура @ AgileDays'16

#OCP

Докладчик Доклад

Участник

Компания

Page 37: Инкрементальная и адаптивная архитектура @ AgileDays'16

#Strategy

50 км

Page 38: Инкрементальная и адаптивная архитектура @ AgileDays'16

#Strategy

изменение профилясвободное

через уведомление и подтверждение

Участник

Докладчик

Page 39: Инкрементальная и адаптивная архитектура @ AgileDays'16

#Simplicity

«The art of maximizing the

amount of work not done — is

essential.»

Page 40: Инкрементальная и адаптивная архитектура @ AgileDays'16

#Simplicity vs over-engineering

Действительно ли этот участок кода нужен сейчас?

Page 41: Инкрементальная и адаптивная архитектура @ AgileDays'16

#ShotgunSurgery A выполняет A, X, Y, ZB выполняет B, X, Y, Z C выполняет C, X, Y, Z

«Поправь X, там работы на 15 минут…»

Page 42: Инкрементальная и адаптивная архитектура @ AgileDays'16
Page 43: Инкрементальная и адаптивная архитектура @ AgileDays'16

https://agiledays.ru/login?return_url=http://agiledays.ru/profile&login=BruceDickinson&password=BraveNewWorld

Login

#Testability

Page 44: Инкрементальная и адаптивная архитектура @ AgileDays'16

https://agiledays.ru/edit?data={“name”: “Bruce”, “band”:

“Iron..”}

Тестируем что угодно

#Testability

Page 45: Инкрементальная и адаптивная архитектура @ AgileDays'16

Архитектура — лишь один из аспектов проекта, управляемый тем

же процессом и теми же принципами

инкрементальность, адаптивность, обратная связь, совместное

принятие решений, реакция на изменения

Page 46: Инкрементальная и адаптивная архитектура @ AgileDays'16

Спасибо!Q&A

facebook.com/[email protected]