Моделирование жизненного цикла проекта по предиктивному и гибким типам

Типичным примером предиктивного жизненного цикла является каскадная модель или модель «водопада» (waterfall). В 1970 году в своей статье Ройс описал данную модель в виде концепции, где обсуждал её недостатки и показал, как её можно усовершенствовать до итеративной модели.

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

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

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

Моделирование жизненного цикла проекта по предиктивному и гибким типам

Каскадная модель может быть представлена в виде 4-х этапов, не пересекающихся во времени. На рисунке 11 можно наблюдать как распределяются затраты во времени по этапам жизненного цикла.

Моделирование жизненного цикла проекта по предиктивному и гибким типам

Преимущества и недостатки каскадной модели представлены в таблице 2.

Моделирование жизненного цикла проекта по предиктивному и гибким типам

Каскадная модель подойдёт в следующих случаях:

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

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

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

Итеративный подход (англ. iteration – повторение) предполагает параллельное выполнение работ с непрерывным анализом полученных результатов и корректировкой предыдущих этапов работы (см. рис. 12).

Моделирование жизненного цикла проекта по предиктивному и гибким типам

Данная модель заключается в разделении проекта на мини-проекты или итерации, каждая из которых проверяется на соответствие требованиям. В каждой фазе проекта цикл повторяется: планирование – реализация – проверка – оценка.

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

Моделирование жизненного цикла проекта по предиктивному и гибким типам

Моделирование жизненного цикла проекта по предиктивному и гибким типам

Инкрементная модель (англ. increment – приращение) основана на разработке продукта с линейной последовательностью стадий, имеющих несколько инкрементов или версий. В ней запланировано улучшение продукта до тех пор, пока жизненный цикл проекта не завершится, при этом данная модель обеспечивает на каждом инкременте продукт, который можно использовать (см. рис. 13).

Моделирование жизненного цикла проекта по предиктивному и гибким типам

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

Инкрементная модель была предложена Б. Боэмом как усовершенствование каскадной модели за счёт добавление в неё элементов итерационной модели. Одной из современных реализаций инкрементного подхода является экстремальное программирование.

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

Моделирование жизненного цикла проекта по предиктивному и гибким типам

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

Данная модель применяется в следующих случаях:

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

Agile или модель итеративной и инкрементной разработки (англ. iterative and incremental development), названная Т. Гилбом в 70-е гг. эволюционной моделью, предполагает разбиение жизненного цикла проекта на последовательность итераций, включающих все процессы разработки в применении к созданию меньших фрагментов функциональности по сравнению с проектом в целом.

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

Жизненный цикл гибкой разработки основан на непрерывном обучении через итерации. Работа делится на несколько спринтов или итераций, каждый из которых может длиться от 10 дней до двух недель. После завершения спринта рабочий прототип продукта доставляется владельцу продукта или клиенту.

Agile концентрируется на разработке правильного продукта с минимальными затратами и без ошибок. Жизненный цикл гибкой разработки связан с непрерывным развитием и развитием цикла разработки. В таблице 5 представлены преимущества и недостатки данной модели.

Моделирование жизненного цикла проекта по предиктивному и гибким типам

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

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

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

В гибридном жизненном цикле для каждого этапа проекта выбирается наиболее эффективный подход с учётом текущих условий, например, этапы планирования и определения требований могут соответствовать предиктивному типу, а проектирование, разработка и тестирование – Agile (см. рис.14).

Моделирование жизненного цикла проекта по предиктивному и гибким типам

Данный подход удобен для крупных проектов, в которых требования изменчивы, сроки чётко определены, заказчик не готов активно участвовать в проекте.

Узнай цену консультации

"Да забей ты на эти дипломы и экзамены!” (дворник Кузьмич)