Энтропия программного обеспечения: почему системы деградируют и что контролирует скорость
Программные системы не стоят на месте. Энтропия накапливается из взаимозависимости, невалидированных предположений и информации, которая не доходит до тех, кому она нужна. Эта статья представляет рамки энтропии, лежащие в основе остальной серии Rigel Rise.
Предпосылка
Каждая работающая система стремится к более высокой энтропии, если против неё не выполняется работа. В программном обеспечении этой работой исторически было человеческое внимание — ревью, рефакторинг, удаление и медленное распространение общих ментальных моделей. ИИ ускоряет производство, но сам по себе не ускоряет эту контр-работу.
Что такое энтропия в этой структуре
Энтропия здесь — не метрика кода 1980-х. Это разрыв между тем, что делает система, и тем, что люди, ответственные за неё, понимают о её работе. Три силы движут скоростью её роста:
- Взаимозависимость. Каждый новый компонент умножает поверхность, где должны соблюдаться предположения.
- Молчаливые предположения. Гипотезы, которые никогда не были валидированы, переживают свой контекст.
- Информация, которая не приходит. Знание, которое существует где-то, но не доходит до следующего решения.
Что контролирует скорость
Скорость не постоянна. Она растёт с давлением сроков, отсутствием ревью и потерями при передаче между фазами SDLC. Она падает с общей документацией, продуманной ревизией и архитектурой, которая раскрывает свои собственные ограничения.
Эта статья в активной разработке. Полная версия будет опубликована в ближайшие недели.