Продукт > Учет клиентов (CRM) > Новости управления > Октябрь 2010 > Иллюзия управления рисками при разработке проектов: чем плох метод водопадной разработки ПО

Иллюзия управления рисками при разработке проектов: чем плох метод водопадной разработки ПО

Разработка программного обеспечения связана с рядом проблем и в этом нет ничего нового: в самом деле, лишь некоторые проекты на 100 % удовлетворяют потребности заказчика, завершаются вовремя и в рамках бюджета. Поэтому неудивительно, что менеджеры проектов прилагают большие усилия, чтобы свести к минимуму риски, возникающие в ходе выполнения проектов.

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

Утверждение: при проектировании можно полностью определить набор требований к системе

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

Утверждение: выявленные на стадии проектирования требования не изменятся

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

Утверждение: можно выполнять предварительные оценки с высокой степенью точности

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

Утверждение: стадия разработки является простым механическим процессом преобразования проектных решений в код

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

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

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

Комментарии