Размышления на тему «хрупкого» ПО

унитаз-04Ничто так не помогает иллюстрировать суть явления, как красочная, хлёсткая метафора. К примеру, фекакльно-анальная метафора поможет в описании эксплуатационной хрупкости (противоположность запасу прочности) софта.

Предположим, что команда разработала такую вот бесхитростную систему, как на картинке слева. Зиждясь на твёрдом основании (к примеру, системных библиотек), она, тем не менее, имеет некие степени свободы: её можно «качнуть» влево-вправо, вперёд-назад, немного двинуть в тех же направлениях. Однако, для того, чтобы разрушить-завалить эту конструкцию, необходимо приложить достаточные усилия.

 

Предположим теперь, что систему расширяют согласно растущим требованиям бизнеса, причём делают это, опираясь на свой старый багаж подходов к решению технических проблем. Образно это можно представить, как на следующей картинке — нагромождение (хотя не важно, возможна и строгая упорядоченность) «бесхитростных» подсистем.

shit collaps 02Несмотря на то, что каждая подсистема вполне устойчива (ну да, мы предполагаем, что разработчики вполне вменяемы), но вся система в совокупности своей такой устойчивостью может уже не обладать — люфты в каждой подсистеме в рамках всей системы складываются, или даже перемножаются, где-то может возникать магия с положительной обратной связью, когда даже небольшое воздействие на одно звено, может раскачать и порушить всю конструкцию или значительную его часть. Причём вероятность такого печального исхода значительна. Такую систему назовём хрупкой в эксплуатации.

shit collaps 03Когда подобное начинает происходить, вероятно, пора переходить на новый технологический уклад — кардинально пересматривать свои стандартные подходы к решению рутинных задач и вводить новые.

С внедрением новых практик, сквозь их призму, былые проблемы потеряют свою актуальность. А с дальнейшим ростом уровня сложности системы, будут возникать проблемы совершенно иной природы, но это когда ещё будет..

squat toiletsTHE END

  • Классная метафора. Пожалуй возьму на вооружение 🙂

    • otokarev

      На здоровье! Где-то была замечательная про производство конфет из говна, тоже как-нибудь опубликую.

    • otokarev

      Кстати, на блоге у тебя не смог фида найти, подписаться.

  • Aleksey Karelin

    Отлично. Эх -еще бы деревянный деревенский сортир сюда же, как олицетворение неистребляемого Legacy

    • otokarev

      Ну в каких-то случаях деревянный сортир может представлять собой вполне устойчивую и, местами, единственно доступную конструкцию 🙂