Бережливая разработка программного обеспечения
Бережливая разработка программного обеспечения — методология разработки программного обеспечения, использующая методы концепции бережливого производства. Возникла из среды сторонников концепции гибкой методология разработки.
Происхождение
Впервые освещена в одноимённой книге (англ. Lean Software Development) Мэри Поппендика и Toм Поппендика. В книге представлены традиционные принципы бережливого производства применительно к разработке программного обеспечения, также набор из 22 инструментов (практик) и их сравнение с гибкой методология разработки. Мэри и Том участвовали в ряде различных конференций, посвящённых методике Agile, что объясняет известность концепции бережливого производства среди сообщества гибкой методология разработки.
Принципы
- Исключение затрат. Затратами считается всё, что не добавляет ценности для потребителя. В частности: излишняя функциональность; ожидание (паузы) в процессе разработки; нечёткие требования; бюрократизация; медленное внутреннее сообщение.
- Акцент на обучении. Короткие циклы разработки, раннее тестирование, частая обратная связь с заказчиком.
- Предельно отсроченное принятие решений. Решение следует принимать не на основе предположений и прогнозов, а после открытия существенных фактов.
- Предельно быстрая доставка заказчику. Короткие итерации.
- Мотивация команды. Нельзя рассматривать людей исключительно как ресурс. Людям нужно нечто большее, чем просто список заданий.
- Интегрирование. Передать целостную информацию заказчику. Стремиться к целостной архитектуре. Рефакторинг.
- Целостное видение. Стандартизация, установление отношений между разработчиками. Разделение разработчиками принципов бережливости. «Мыслить широко, действовать мало, промахиваться быстро; учиться стремительно».
Практики
Некоторые практики бережливой разработки аналогичны практикам быстрой разработки, а некоторые несколько различаются. Примеры практик:
- Обнаружение потерь («муды»)
- Систематизирование потока ценности (Value stream mapping)
- Теория ограничений
- «Вытягивающая» система (Канбан)
- Теория массового обслуживания
- Мотивация
- Измерения
Ссылки
- Игорь Лужанский. Бережливая разработка программного обеспечения
- Lean-разработка программного обеспечения
Литература
- Мэри Поппендик, Toм Поппендик. Бережливое производство программного обеспечения: от идеи до прибыли / Вильямс, 2009 г. ISBN 978-5-8459-1538-2
en:Lean software development es:Lean software development pl:Lean Software Development zh:精益软件开发