SlideShare ist ein Scribd-Unternehmen logo
1 von 22
Downloaden Sie, um offline zu lesen
A=F(?): Как не следовать
здравому смыслу и гробить
проекты
Евгений Кривошеев,
ekrivosheyev@scrumtrek.ru
Проектирование систем как
принятие решений
4 Квадратики и стрелочки?
4 Дизайн – это компромисс
4 Контекст важен – это ограничения для дизайна
4 Нужно принять много решений, например↓
Когда остановиться
рисовать квадратики
и начать хе**чить?
Что такое архитектура?
4 Внезапно, рекурсивное определение через
требования
4 Внезапно, определение через риски
4 От чего зависят эти наши решения? A=F(?)
A=F(Rq): Формальный подход
A = F(
outer functional requirements,
outer quality attributes
);
Agility? Never heard.
A=F(ORq, IRq): Менее
формально
A = F(
outer functional requirements,
outer quality attributes,
inner functional requirements, //Призрачная угроза
inner quality attributes, //Разрабы тоже люди^W юзеры
design guidelines & code style //Регламенты пишутся кровью
);
А=F(Rq, ?): Что не
учитываем и гробим
проекты
А=F(Rq, ?): Что не учитываем
A = F(
outer FR & QA,
inner FR & QA, //Разрабы тоже люди^W юзеры
design guidelines & code style, //Регламенты пишутся кровью
personal pain experience //Какие архгипотезы проверять ASAP
);
А=F(Rq, ?): Что не учитываем
A = F(
outer FR & QA,
inner FR & QA, //Разрабы тоже люди^W юзеры
design guidelines & code style, //Регламенты пишутся кровью
personal pain experience //Какие архгипотезы проверять ASAP
trust to team //Сделаем на монадах!
);
А=F(Rq, ?): Что не учитываем
A = F(
outer FR & QA,
inner FR & QA, //Разрабы тоже люди^W юзеры
design guidelines & code style, //Регламенты пишутся кровью
personal pain experience //Какие архгипотезы проверять ASAP
trust to team, //Сделаем на монадах!
team & company structure //Закон Конвея
);
А=F(Rq, ?): Что не учитываем
A = F(
outer FR & QA,
inner FR & QA, //Разрабы тоже люди^W юзеры
design guidelines & code style, //Регламенты пишутся кровью
personal pain experience //Какие архгипотезы проверять ASAP
trust to team, //Сделаем на монадах!
team & company structure, //Закон Конвея
resources: {time, people, money, partners, trust↑, risks}
);
А=F(Rq, ?): Что не учитываем
A = F(
outer FR & QA,
inner FR & QA, //Разрабы тоже люди^W юзер
design guidelines & code style, //Регламенты пишутся кровью
personal pain experience //Какие архгипотезы проверять ASAP
trust to team, //Сделаем на монадах!
team & company structure, //Закон Конвея
resources: {time, people, money, partners, trust↑, risks},
внутрикорпоративные ограничения
);
А=F(Rq, ?): Что не учитываем
A = F(
outer FR & QA,
inner FR & QA, //Разрабы тоже люди^W юзер
design guidelines & code style, //Регламенты пишутся кровью
personal pain experience //Какие архгипотезы проверять ASAP
trust to team, //Сделаем на монадах!
team & company structure, //Закон Конвея
resources: {time, people, money, partners, trust↑, risks},
внутрикорпоративные ограничения,
integration landscape, law issues, locked-in vendors, …
);
Вопрос #1: Какие из
факторов Вы честно
учитываете при
проектировании?
Вопрос #2: OMG! Их
же невозможно учесть
все!
Смотрим по важности
4 Свободно доверяйте и делегируйте
4 Свободно откладывайте
4 Превед Lean Development :)
Применяй меня полностью
4 Поймите бизнес-ограничения
4 Формальные регламенты vs написанные кровью
4 Не доверяйте себе в важных решениях
4 Пользуйтесь шпаргалкой факторов
4 Приоритезируйте факторы
4 Откладывайте решения
Архитектура как функция от ?. Что мы не учитываем и убиваем проекты.

Weitere ähnliche Inhalte

Ähnlich wie Архитектура как функция от ?. Что мы не учитываем и убиваем проекты.

Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"Fwdays
 
5 правил успешной разработки приложений для бренда
5 правил успешной разработки приложений для бренда 5 правил успешной разработки приложений для бренда
5 правил успешной разработки приложений для бренда Heads&Hands
 
Оставьте Job сайты в покое! Учимся искать и оценивать кандидатов на проф. рес...
Оставьте Job сайты в покое! Учимся искать и оценивать кандидатов на проф. рес...Оставьте Job сайты в покое! Учимся искать и оценивать кандидатов на проф. рес...
Оставьте Job сайты в покое! Учимся искать и оценивать кандидатов на проф. рес...IT-Доминанта
 
Anatol Filin Pragmatic Documentation 0 5
Anatol Filin Pragmatic Documentation 0 5Anatol Filin Pragmatic Documentation 0 5
Anatol Filin Pragmatic Documentation 0 5rit2010
 
Хипстеры в энтерпрайзе
Хипстеры в энтерпрайзеХипстеры в энтерпрайзе
Хипстеры в энтерпрайзеAleksandr Tarasov
 
Обзор Feature-Driven Development и Domain-Driven Design
Обзор Feature-Driven Development и Domain-Driven DesignОбзор Feature-Driven Development и Domain-Driven Design
Обзор Feature-Driven Development и Domain-Driven DesignAndrey Bibichev
 
Кирилл Толкачев, Александр Тарасов, Хипстеры в энтерпрайзе. Шагаем в ногу со ...
Кирилл Толкачев, Александр Тарасов, Хипстеры в энтерпрайзе. Шагаем в ногу со ...Кирилл Толкачев, Александр Тарасов, Хипстеры в энтерпрайзе. Шагаем в ногу со ...
Кирилл Толкачев, Александр Тарасов, Хипстеры в энтерпрайзе. Шагаем в ногу со ...ScrumTrek
 
SEMAT in Discussion Corner @ SEC(R) 2013
SEMAT in Discussion Corner @ SEC(R) 2013SEMAT in Discussion Corner @ SEC(R) 2013
SEMAT in Discussion Corner @ SEC(R) 2013Andrey Bayda
 
Юлия Викторова; Александр Тарасов. DevOps без булшита.
Юлия Викторова; Александр Тарасов. DevOps без булшита.Юлия Викторова; Александр Тарасов. DevOps без булшита.
Юлия Викторова; Александр Тарасов. DevOps без булшита.ScrumTrek
 
Прагматичный подход к документированию Веб-проектов
Прагматичный подход к документированию Веб-проектовПрагматичный подход к документированию Веб-проектов
Прагматичный подход к документированию Веб-проектовAnatol Filin
 
Anatol filin pragmatic documentation 1_r
Anatol filin  pragmatic documentation 1_rAnatol filin  pragmatic documentation 1_r
Anatol filin pragmatic documentation 1_rrit2010
 
Инструменты современного предпринимателя. Plug and Play Dagestan. 15/02/14
Инструменты современного предпринимателя. Plug and Play Dagestan. 15/02/14Инструменты современного предпринимателя. Plug and Play Dagestan. 15/02/14
Инструменты современного предпринимателя. Plug and Play Dagestan. 15/02/14Ilya Korolev
 
"Инструменты современного предпринимателя" Мастер-класс Ильи Королева
"Инструменты современного предпринимателя" Мастер-класс Ильи Королева"Инструменты современного предпринимателя" Мастер-класс Ильи Королева
"Инструменты современного предпринимателя" Мастер-класс Ильи КоролеваPeri Innovations
 

Ähnlich wie Архитектура как функция от ?. Что мы не учитываем и убиваем проекты. (14)

Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"
 
5 правил успешной разработки приложений для бренда
5 правил успешной разработки приложений для бренда 5 правил успешной разработки приложений для бренда
5 правил успешной разработки приложений для бренда
 
Оставьте Job сайты в покое! Учимся искать и оценивать кандидатов на проф. рес...
Оставьте Job сайты в покое! Учимся искать и оценивать кандидатов на проф. рес...Оставьте Job сайты в покое! Учимся искать и оценивать кандидатов на проф. рес...
Оставьте Job сайты в покое! Учимся искать и оценивать кандидатов на проф. рес...
 
Anatol Filin Pragmatic Documentation 0 5
Anatol Filin Pragmatic Documentation 0 5Anatol Filin Pragmatic Documentation 0 5
Anatol Filin Pragmatic Documentation 0 5
 
Хипстеры в энтерпрайзе
Хипстеры в энтерпрайзеХипстеры в энтерпрайзе
Хипстеры в энтерпрайзе
 
Обзор Feature-Driven Development и Domain-Driven Design
Обзор Feature-Driven Development и Domain-Driven DesignОбзор Feature-Driven Development и Domain-Driven Design
Обзор Feature-Driven Development и Domain-Driven Design
 
Кирилл Толкачев, Александр Тарасов, Хипстеры в энтерпрайзе. Шагаем в ногу со ...
Кирилл Толкачев, Александр Тарасов, Хипстеры в энтерпрайзе. Шагаем в ногу со ...Кирилл Толкачев, Александр Тарасов, Хипстеры в энтерпрайзе. Шагаем в ногу со ...
Кирилл Толкачев, Александр Тарасов, Хипстеры в энтерпрайзе. Шагаем в ногу со ...
 
SEMAT in Discussion Corner @ SEC(R) 2013
SEMAT in Discussion Corner @ SEC(R) 2013SEMAT in Discussion Corner @ SEC(R) 2013
SEMAT in Discussion Corner @ SEC(R) 2013
 
Aris Design Server
Aris Design ServerAris Design Server
Aris Design Server
 
Юлия Викторова; Александр Тарасов. DevOps без булшита.
Юлия Викторова; Александр Тарасов. DevOps без булшита.Юлия Викторова; Александр Тарасов. DevOps без булшита.
Юлия Викторова; Александр Тарасов. DevOps без булшита.
 
Прагматичный подход к документированию Веб-проектов
Прагматичный подход к документированию Веб-проектовПрагматичный подход к документированию Веб-проектов
Прагматичный подход к документированию Веб-проектов
 
Anatol filin pragmatic documentation 1_r
Anatol filin  pragmatic documentation 1_rAnatol filin  pragmatic documentation 1_r
Anatol filin pragmatic documentation 1_r
 
Инструменты современного предпринимателя. Plug and Play Dagestan. 15/02/14
Инструменты современного предпринимателя. Plug and Play Dagestan. 15/02/14Инструменты современного предпринимателя. Plug and Play Dagestan. 15/02/14
Инструменты современного предпринимателя. Plug and Play Dagestan. 15/02/14
 
"Инструменты современного предпринимателя" Мастер-класс Ильи Королева
"Инструменты современного предпринимателя" Мастер-класс Ильи Королева"Инструменты современного предпринимателя" Мастер-класс Ильи Королева
"Инструменты современного предпринимателя" Мастер-класс Ильи Королева
 

Mehr von Evgeniy Krivosheev

Points Of View как ключ к общению QAs и инженеров – видим качество за диаграм...
Points Of View как ключ к общению QAs и инженеров – видим качество за диаграм...Points Of View как ключ к общению QAs и инженеров – видим качество за диаграм...
Points Of View как ключ к общению QAs и инженеров – видим качество за диаграм...Evgeniy Krivosheev
 
Осознанность рефакторинга: Модель принятия инженерных решений
Осознанность рефакторинга: Модель принятия инженерных решенийОсознанность рефакторинга: Модель принятия инженерных решений
Осознанность рефакторинга: Модель принятия инженерных решенийEvgeniy Krivosheev
 
[Skill trek] type idioms at domain analysis
[Skill trek] type idioms at domain analysis[Skill trek] type idioms at domain analysis
[Skill trek] type idioms at domain analysisEvgeniy Krivosheev
 
[SkillTrek] Бизнес-кейсы
[SkillTrek] Бизнес-кейсы[SkillTrek] Бизнес-кейсы
[SkillTrek] Бизнес-кейсыEvgeniy Krivosheev
 
[SkillTrek] Презентация
[SkillTrek] Презентация[SkillTrek] Презентация
[SkillTrek] ПрезентацияEvgeniy Krivosheev
 
Вебинар "Введение в процесс разработки ПО"
Вебинар "Введение в процесс разработки ПО"Вебинар "Введение в процесс разработки ПО"
Вебинар "Введение в процесс разработки ПО"Evgeniy Krivosheev
 
Введение в веб каркас Struts2
Введение в веб каркас Struts2Введение в веб каркас Struts2
Введение в веб каркас Struts2Evgeniy Krivosheev
 

Mehr von Evgeniy Krivosheev (11)

Points Of View как ключ к общению QAs и инженеров – видим качество за диаграм...
Points Of View как ключ к общению QAs и инженеров – видим качество за диаграм...Points Of View как ключ к общению QAs и инженеров – видим качество за диаграм...
Points Of View как ключ к общению QAs и инженеров – видим качество за диаграм...
 
Осознанность рефакторинга: Модель принятия инженерных решений
Осознанность рефакторинга: Модель принятия инженерных решенийОсознанность рефакторинга: Модель принятия инженерных решений
Осознанность рефакторинга: Модель принятия инженерных решений
 
[Skill trek] type idioms at domain analysis
[Skill trek] type idioms at domain analysis[Skill trek] type idioms at domain analysis
[Skill trek] type idioms at domain analysis
 
Design&Process Models
Design&Process ModelsDesign&Process Models
Design&Process Models
 
[SkillTrek] Бизнес-кейсы
[SkillTrek] Бизнес-кейсы[SkillTrek] Бизнес-кейсы
[SkillTrek] Бизнес-кейсы
 
[SkillTrek] Презентация
[SkillTrek] Презентация[SkillTrek] Презентация
[SkillTrek] Презентация
 
Вебинар "Введение в процесс разработки ПО"
Вебинар "Введение в процесс разработки ПО"Вебинар "Введение в процесс разработки ПО"
Вебинар "Введение в процесс разработки ПО"
 
Tdd Workbook
Tdd WorkbookTdd Workbook
Tdd Workbook
 
Введение в веб каркас Struts2
Введение в веб каркас Struts2Введение в веб каркас Struts2
Введение в веб каркас Struts2
 
Tdd Workshop Disscussions
Tdd Workshop DisscussionsTdd Workshop Disscussions
Tdd Workshop Disscussions
 
Design Rules And Principles
Design Rules And PrinciplesDesign Rules And Principles
Design Rules And Principles
 

Архитектура как функция от ?. Что мы не учитываем и убиваем проекты.

  • 1. A=F(?): Как не следовать здравому смыслу и гробить проекты Евгений Кривошеев, ekrivosheyev@scrumtrek.ru
  • 2. Проектирование систем как принятие решений 4 Квадратики и стрелочки? 4 Дизайн – это компромисс 4 Контекст важен – это ограничения для дизайна 4 Нужно принять много решений, например↓
  • 4. Что такое архитектура? 4 Внезапно, рекурсивное определение через требования 4 Внезапно, определение через риски 4 От чего зависят эти наши решения? A=F(?)
  • 5. A=F(Rq): Формальный подход A = F( outer functional requirements, outer quality attributes );
  • 6.
  • 8.
  • 9. A=F(ORq, IRq): Менее формально A = F( outer functional requirements, outer quality attributes, inner functional requirements, //Призрачная угроза inner quality attributes, //Разрабы тоже люди^W юзеры design guidelines & code style //Регламенты пишутся кровью );
  • 10. А=F(Rq, ?): Что не учитываем и гробим проекты
  • 11. А=F(Rq, ?): Что не учитываем A = F( outer FR & QA, inner FR & QA, //Разрабы тоже люди^W юзеры design guidelines & code style, //Регламенты пишутся кровью personal pain experience //Какие архгипотезы проверять ASAP );
  • 12. А=F(Rq, ?): Что не учитываем A = F( outer FR & QA, inner FR & QA, //Разрабы тоже люди^W юзеры design guidelines & code style, //Регламенты пишутся кровью personal pain experience //Какие архгипотезы проверять ASAP trust to team //Сделаем на монадах! );
  • 13. А=F(Rq, ?): Что не учитываем A = F( outer FR & QA, inner FR & QA, //Разрабы тоже люди^W юзеры design guidelines & code style, //Регламенты пишутся кровью personal pain experience //Какие архгипотезы проверять ASAP trust to team, //Сделаем на монадах! team & company structure //Закон Конвея );
  • 14.
  • 15. А=F(Rq, ?): Что не учитываем A = F( outer FR & QA, inner FR & QA, //Разрабы тоже люди^W юзеры design guidelines & code style, //Регламенты пишутся кровью personal pain experience //Какие архгипотезы проверять ASAP trust to team, //Сделаем на монадах! team & company structure, //Закон Конвея resources: {time, people, money, partners, trust↑, risks} );
  • 16. А=F(Rq, ?): Что не учитываем A = F( outer FR & QA, inner FR & QA, //Разрабы тоже люди^W юзер design guidelines & code style, //Регламенты пишутся кровью personal pain experience //Какие архгипотезы проверять ASAP trust to team, //Сделаем на монадах! team & company structure, //Закон Конвея resources: {time, people, money, partners, trust↑, risks}, внутрикорпоративные ограничения );
  • 17. А=F(Rq, ?): Что не учитываем A = F( outer FR & QA, inner FR & QA, //Разрабы тоже люди^W юзер design guidelines & code style, //Регламенты пишутся кровью personal pain experience //Какие архгипотезы проверять ASAP trust to team, //Сделаем на монадах! team & company structure, //Закон Конвея resources: {time, people, money, partners, trust↑, risks}, внутрикорпоративные ограничения, integration landscape, law issues, locked-in vendors, … );
  • 18. Вопрос #1: Какие из факторов Вы честно учитываете при проектировании?
  • 19. Вопрос #2: OMG! Их же невозможно учесть все!
  • 20. Смотрим по важности 4 Свободно доверяйте и делегируйте 4 Свободно откладывайте 4 Превед Lean Development :)
  • 21. Применяй меня полностью 4 Поймите бизнес-ограничения 4 Формальные регламенты vs написанные кровью 4 Не доверяйте себе в важных решениях 4 Пользуйтесь шпаргалкой факторов 4 Приоритезируйте факторы 4 Откладывайте решения