Разбитые окна в разработке продукта

people-thinking-about-to-fix-something-on

Теория разбитых окон, успешно обработанная на преступности в NY, показывает как системное исправление мелких проблем позволяет кардинально улучшить качество ситуации. В истории с “разбитыми окнами” для улучшения ситуации в целом начали с исправления мелких нарушений.

Насколько это важно в программном проекте? Давайте сначала определим разбитые окна в программном проекте:

  • Неэффективный код — код который выполняется заметно медленно, не оптимальный
  • Код без проверки ошибок — быстрое решение на “авось”
  • Сознательный выпуск не проверенного решения — никто не тестировал, вроде работает
  • Постоянное накопление технического долга без возврата к решению долга
  • Отсутствие автоматизации, все на ручнике

Попускательство в каждой такой мелочи создает культуру приемлемости жизни в проекте с разбитыми окнами — грязно и криво — но зато быстренько. Мы такое часто называем “хуяк-хуяк и в продакшен”. Системный выпуск программного обеспечение в условиях разбитых окон – это огромные риски для проекта.

Безусловно мы не можем работать в идеальных условиях — это нормально фиксировать технический долг. Что мы должны делать в ситуации когда нам надо зафиксировать проблему как долг

  • Мы должно проговаривать в чем суть проблемы
  • Почему мы сейчас принимаем решение отложить эту проблему
  • Какие риски связаны с этой проблемой сейчас и почему мы их принимаем
  • Когда мы вернемся к решению технического долга
  • Мы должны установить рамки дозволенного — что мы допускаем как долг, а что — нет

При этом не допускается чтобы была сформирована среда в которой принимается пониженный стандарт качества — в среде в которой можно создавать сырой продукт.

 

Leave a comment

You must be logged in to post a comment.