Новые методологии программирования
Страница 6. Адаптивный заказчик


Адаптивный заказчик

Адаптивный процесс требует других отношений с заказчиком (не таких, какими их обычно представляют), особенно если разработка выполняется сторонней организацией. Если вы нанимаете отдельную фирму-разработчика, большинство заказчиков захочет заключить контракт с фиксированной стоимостью работ. Процедура известна: вы объясняете компании-разработчику, что нужно сделать, они называют цену, вы ее принимаете, после чего вся ответственность ложится на плечи разработчиков, которые должны создать требуемый программный продукт.

Контракт с фиксированной стоимостью предполагает неизменность требований, а значит, использование предсказуемого процесса. Если использовать адаптивный процесс при нестабильных требованиях, обычная установка на фиксированную оплату уже не срабатывает. Попытка втиснуть адаптивный процесс в рамки фиксированной оплаты приводит к весьма неприятным конфликтам. При этом самое неприятное то, что заказчик пострадает ничуть не меньше компании-разработчика. В конце концов, заказчику не понадобился бы программный продукт, если бы того не требовал бизнес. Если он не получит этот программный продукт, бизнес пострадает. Итак, даже если заказчик не заплатит компании разработчику ничего, он все равно несет убытки. Более того, он теряет даже больше, чем если бы заплатил за готовую систему (зачем бы заказчику платить за нее деньги большие, нежели ее коммерческая стоимость?)

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

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

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

В первую очередь - люди

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

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