Закоулки мозга

Coplien J. O., Bjørnvig G. Lean architecture: for agile software development /
J. O. Coplien, G. Bjørnvig, Chichester: Wiley, 2011.

Lean manufacturing

Lean manufacturing - бережливое производство. Восходит к способу организации производства на предприятиях Toyota. Очевидный синоним - минималистичное, но сводить lean только к минимализму неверно.

Lean сфокусирован в первую очередь на цепочке создания ценности (value stream).


Бережливая архитектура и гибкая разработка (lean architecture and agile development) - не о том, как работать усерднее или “умнее” (с точки зрения сложности алгоритмов, например). Они о концентрации и дисциплине, основанных на здравом смысле и не требующих формального обучения или ученой степени.

Принципы бережливой архитектуры поддерживают гибкую разработку:

  • если с самого начала проекта “все специалисты в одной комнате”, то проект будет больше опираться на людей и взаимодействия, чем на процессы и инструменты;
  • если участники сосредоточены на цепочке создания ценности, то это означает вовлечение в процесс потребителя;
  • если отразить ментальную модель конечного пользователя в коде, то вероятность создания работающего ПО значительно увеличивается;
  • если код четко отражает модель предметной области, то мы можем уверенно вносить любые изменения, необходимые конечным пользователям.
Бережливая архитектура Классическая разработка
Откладывает проработку деталей реализации Включает проработку деталей реализации
Дает простор для внесения изменений Старается ограничить крупные изменения (страх изменений?)
Откладывает реализацию за счет предоставления легковесных API Либо включает реализацию (платформы, библиотеки), либо не включает вовсе
Минимальный объем документации Полная документация, описывающая реализацию или компенсирующая ее отсутствие
Коллективное планирование, кооперация Специализированное планирование и контроль
Ментальная модель конечного пользователя Технические термины: связность и связанность