Открыть главное меню

Бережливая разработка программного обеспечения

Бережли́вая разрабо́тка програ́ммного обеспече́ния — методология разработки программного обеспечения, использующая методы концепции бережливого производства. Возникла из среды сторонников концепции гибкой методологии разработки.

Разработка программного обеспечения
Процесс разработки ПО
Ключевые процессы
Анализ • Проектирование • Программирование • Конструирование • Тестирование • Отладка • Развёртывание • Сопровождение • Документирование
Парадигмы и модели
Agile • Cleanroom • Итеративная • Спиральная • Каскадная • V-Model • Dual Vee Model
Методологии
ASD • DevOps • DAD • DSDM • FDD • Канбан • Lean SD • LeSS • MDD • MSF • PSP • OpenUP • RAD • RUP • SAFe • Scrum • TSP • UP • XP
Инструменты
Компилятор • Отладчик • Профилирование • GUI-конструктор • ИСР • Автоматизация сборки • Автоматизация релиза • Инструменты тестирования

ПроисхождениеПравить

Впервые освещена в одноимённой книге (англ. Lean Software Development) Мэри Поппендик и Toма Поппендика. В книге представлены традиционные принципы бережливого производства применительно к разработке программного обеспечения, также набор из 22 инструментов (практик) и их сравнение с гибкой методологией разработки. Мэри и Том участвовали в ряде различных конференций, посвящённых методикам Agile, что объясняет известность концепции бережливого производства среди сообщества гибкой методологии разработки.

ПринципыПравить

  • Исключение потерь. Потерями считается всё, что не добавляет ценности для потребителя. В частности: излишняя функциональность; ожидание (паузы) в процессе разработки; нечёткие требования; бюрократизация; медленное внутреннее сообщение.
  • Акцент на обучении. Короткие циклы разработки, раннее тестирование, частая обратная связь с заказчиком.
  • Предельно отсроченное принятие решений. Решение следует принимать не на основе предположений и прогнозов, а после открытия существенных фактов.
  • Предельно быстрая доставка заказчику. Короткие итерации.
  • Мотивация команды. Нельзя рассматривать людей исключительно как ресурс. Людям нужно нечто большее, чем просто список заданий.
  • Интегрирование. Передать целостную информацию заказчику. Стремиться к целостной архитектуре. Рефакторинг.
  • Целостное видение. Стандартизация, установление отношений между разработчиками. Разделение разработчиками принципов бережливости. «Мыслить широко, делать быстро, ошибаться мало; учиться стремительно».

ПрактикиПравить

Некоторые практики бережливой разработки аналогичны практикам быстрой разработки, а некоторые несколько различаются. Примеры практик:

СсылкиПравить

ЛитератураПравить

  • Мэри Поппендик, Toм Поппендик. Бережливое производство программного обеспечения: от идеи до прибыли / Вильямс, 2009 г. ISBN 978-5-8459-1538-2