Новые методологии программирования
Страница 4. Предсказуемость невозможна?



Предсказуемость невозможна?

Вообще-то, возможна. Существуют определенные виды программных разработок, где предсказуемость возможна. Такие организации, как группа по разработке программного обеспечения для космических кораблей в NASA являют собой превосходное доказательство того, что создание программных продуктов может быть предсказуемым процессом. Для этого необходимо соблюдение массы условностей, много времени, большая команда разработчиков и стабильные требования. Да, существуют программные проекты для космических кораблей, однако я не думаю, что бОльшая часть программных бизнес-приложений может быть отнесена к этой категории. Для них необходим другой тип процесса.

Одна из серьезных ошибок - делать вид, что вы используете предсказуемый процесс, в то время как вам это не удается. Разработчики методологий плохо определяют граничные условия, то есть, те ситуации, в которых методология из годной переходит в разряд негодной. Большинство методологов хотят, чтобы их разработками пользовалось как можно больше людей, при этом они не осознают граничные условия и не информируют о них пользователей. В результате этого методология нередко используется в неподходящих условиях, например, предсказуемую методологию могут использовать в непредсказуемой ситуации.

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

Итак, ситуация непредсказуема, и предсказуемую методологию использовать больше нельзя. Тяжелый удар. Это означает, что многие модели управления процессом разработок, многие модели взаимоотношений с заказчиком больше не существуют. Насколько лучше был предсказуемый процесс, и как трудно от него отказаться! Как и в большинстве проблем, самое трудное в данном случае - просто признать, что проблема существует.

Впрочем, не стоит полагать, что без предсказуемого процесса вы погрузитесь в неконтролируемый хаос. Нет, вам просто нужен процесс, который дает контроль над непредсказуемостью. И тут мы вплотную подходим к понятию адаптивности.

 
« Предыдущая статья   Следующая статья »