В рамках подхода, противоположного стандартизированным процессам, каждый новый проект рассматривается в качестве пилотного. Если существует привычный способ выполнить данную работу, то именно его использовать
Еще 6000 лет назад люди выяснили, что нагревание металлов с последующим охлаждением меняет их свойства, в частности повышает прочность и твердость (металлов, не металлургов!). Это процесс называется закалкой. При нагревании атомы металла приходят в движение, а когда металл быстро охлаждают, атомы образуют более регулярную структуру. Это своеобразная форма «снятия стресса», при которой намеренное воздействие помогает системе легче обрести новое равновесие, чем она могла бы сделать без вмешательства извне.
Исследователи полагают, что подобные явления происходят и в сложных системах. Ошибки и шум в системе, привносимые внешней средой, приводят систему в движение, позволяя ей отойти от субоптимальных результатов и относительно более легко перейти в лучшее состояние. Ученые называют этот процесс модельной закалкой; в нем случайность помогает системе найти глобальный оптимум [Miller, Page 2007: 24, Lissack 1999: 115–116].
Это выглядит как будто бы систему во время прогулки по адаптивному ландшафту подталкивают в том или ином направлении, заставляя скатиться с холма, на котором она могла застрять (рис. 15.5). После такого толчка система может внезапно оказаться в долине, а оттуда добраться до более высокого пика. Модельная закалка демонстрирует, как случайные процессы оказываются полезны при движении по адаптивному ландшафту [Miller, Page 2007: 108].
Я рисую адаптивные ландшафты, как это обычно делают биологи – точкам максимальной приспособленности соответствуют пики. Это интуитивно понятнее, поскольку с совершенством обычно ассоциируются вершины.
Однако физики рисуют адаптивные ландшафты ровно наоборот: у них позициям наибольшей приспособленности соответствуют самые низкие положения. И действительно, для иллюстрации понятия модельной закалки их способ подходит лучше, поскольку в результате «встряски» система благодаря гравитации скатывается вниз, к более оптимальному положению.
Но не забывайте, что, как бы вы их ни рисовали, адаптивные ландшафты – это метафора. В действительности нет никаких горных цепей, встрясок или гравитации. Есть только чрезвычайно сложная математика.
При разработке ПО аналогичный подход позволяет командам не застрять в точке локального оптимума и найти способы повышения своей эффективности. Демарко и Листер призывают использовать политику «конструктивного привнесения дозированного беспорядка» [DeMarco, Lister 1999: 160]. Я иногда называю это «повышение эффективности через несовершенство».
Стратегия секса
Мутации – это эксперименты по замене отдельных частей или компонентов проекта с целью увидеть, какие результаты будут получены в результате такой замены – хорошие или плохие. Но это не единственный метод в нашем распоряжении. Еще одной стратегией будет секс. Или, лучше сказать, кроссинговер, что звучит более научно.