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


Бережливая разработка программного обеспечения — это перевод принципов и практики бережливого производства в область разработки программного обеспечения . Адаптированный из производственной системы Toyota [1] , он возникает при поддержке пробережной субкультуры в agile - сообществе. Бережливое производство предлагает прочную концептуальную основу, ценности и принципы, а также передовой опыт, основанный на опыте, который поддерживает гибкие организации.

Термин « бережливая разработка программного обеспечения » возник в одноименной книге, написанной Мэри Поппендик и Томом Поппендиком в 2003 году . . Участие Поппендиков в сообществе гибкой разработки программного обеспечения , включая выступления на нескольких конференциях по Agile [3] , привело к тому, что такие концепции получили более широкое признание в agile-сообществе.

Бережливое развитие можно резюмировать семью принципами, очень близкими по своей концепции к принципам бережливого производства: [4]

Философия бережливого производства рассматривает все, что не добавляет ценности для клиента, как отходы ( муда ). Такие отходы могут включать: [5]


Чтобы избавиться от отходов, нужно уметь их распознавать. Если какое-то действие можно было обойти или можно было достичь результата без него, то это расточительство. Частично сделанный код, в конечном итоге заброшенный в процессе разработки, является отходами. Дополнительные функции, такие как оформление документов и функции, которые клиенты не часто используют, являются пустой тратой времени. Переключение людей между задачами — пустая трата времени. Ожидание других активностей, команд, процессов — пустая трата времени. Повторное изучение требований для завершения работы является пустой тратой времени. Дефекты и более низкое качество являются отходами. Управленческие накладные расходы, не приносящие реальной ценности, являются расточительством.

Метод картирования потока создания ценности используется для выявления потерь. Второй шаг – указать источники потерь и устранить их. Удаление отходов должно происходить итеративно, пока не будут ликвидированы даже кажущиеся необходимыми процессы и процедуры.