110 |
2. Организация бизнеса |
важно, поскольку существенно влияет на все процессы и решения в проекте. Проект должен быть закрыт, если признается, что достижение цели невозможно или стало нецелесообразным(например, если реальные затраты на проект будут превосходить будущие доходы от его реализации).
Результат проекта выражен в продукте, получаемом после завершения проекта, при этом в описании желаемого результата необходимо определять: какие именно бизнес-выгоды получит заказчик по завершении проекта; какой продукт или услуга будут получены по окончании проекта; краткое описание и при необходимости ключевые свойства и/или характеристики продукта/услуги.
Следует помнить, что результаты проекта должны быть измеримыми. Это означает, что при оценке результатов проекта необходимо предоставление возможности сделать заключение о степени достижения сформулированных в концепции результатов.
Ограничения являются неотъемлемой частью проекта и сокращают возможности проектной команды в выборе решений.
Вчастности, ограничения могут содержать:
·требования обязательной сертификации продукта, услуги на соответствие определенным стандартам;
·требования на использование конкретной заданной про- граммно-аппаратной платформы;
·специфические требования к защите информации.
Допущения, как правило, тесно связаны с управлением рисками, о которых заказчик должен знать заранее. Например, оценивая проект по схеме с фиксированной ценой, можно записать в допущении предположение о том, что стоимость лицензий на ПО, приобретаемое на стороне, не изменится до завершения проекта.
Оптимальная реализация программного проекта должна обеспечить достижение конкретной бизнес-цели при соблюдении ограничений «железного треугольника» (рис. 2.7) [26].
Ни один из углов треугольника не может быть изменен без изменения других. Например, чтобы уменьшить время, потребуется увеличить бюджет и/или сократить содержание.
Основы управления программными проектами |
111 |
Содержание
Бюджет |
Время |
Рис. 2.7. «Железный треугольник» ограничений проекта
В приложении к индустрии программного обеспечения к трем основным ограничениям «железного треугольника» добавляют четвертое ограничение — приемлемое качество [26]. В этом случае система ограничений должна строиться на основе приоритетов проекта и учитывать требования потребителей к создаваемому продукту или услуге. В случае необходимости жесткого предопределенного набора функциональности«плавающими» характеристиками проекта будут требуемое время и необходимый бюд-
жет (рис. 2.8).
Содержание |
Содержание |
Содержание |
Время |
Бюджет |
Время |
Качество Бюджет Качество |
а |
|
б |
в |
Рис. 2.8. Возможные варианты системы ограничений проекта по имеющимся характеристикам: а — отсутствует ограничение на качество; б — отсутствует ограничение на бюджет;
в — отсутствует ограничение на время реализации
Неотъемлемой частью любого программного проекта является анализ компромиссов, направленный на выделение функциональных требований, которые можно реализовать в заданных
112 |
2. Организация бизнеса |
ограничениях проекта, будь то сроки, бюджет, качество или другие характеристики. В общем случае задача такого анализасостоит в нахождении баланса, приемлемого для всех сторон, связанных с проектом; заказчиков, которым нужна определенная функциональность в конкретные сроки при имеющемся бюджете; исполнителей, которые обладают бюджетом, достаточным для реализации проекта в заданные сроки с расчетным уровнем трудоемкости проекта и соответствующим уровнем качества.
Согласно стандарту PMBOK (A Guide to the Project Management Body of Knowledge — Руководство к своду знаний по управлению проектами) проект считается успешным, если он выполнен в срок в соответствии со спецификациями и в пределах запланированного бюджета.
Общепринято, что не существует единственного правильного процесса разработки программного обеспечения. В каждом новом проекте в соответствии с«Законом 4-х П» (рис. 2.9) процесс должен определяться каждый раз заново, в зависимости от проекта, продукта и персонала [26].
Совершенно разные процессы должны применяться для проектов, в которых участвуют 5 человек, и для проектов, в которых участвуют 500 человек. Если продуктом проекта является критическое ПО (например, система управления атомной электростанцией), то процесс разработки должен сильно отличаться от разработки сайта. И, наконец, по-разному следует организовывать процесс разработки в команде начинающих программистов и в команде состоявшихся профессионалов.
Управление проектом — это руководство работой команды исполнителей для реализации проекта с использованием общих методов планирования и контроля работ, планирования и управления рисками, эффективной организации работы команды и коммуникационных взаимосвязей между исполнителями в -ко манде.
В стандарте PMBOK приведены 9 процессов (областей знаний) по управлению проектами, каждый из которых состоит из определенного набора работ, и пять этапов (фаз) жизненного цикла проекта: инициация, планирование, исполнение, мониторинг
Основы управления программными проектами |
113 |
и управление, завершение [29]. При этом процессы взаимосвязаны, а этапы проекта могут накладываться во времени друг на друга.
Распределение работ по этапам жизненного цикла, рекомендованное стандартом, приведено в табл. 2.1.
Персонал |
Продукт |
|
ПРОЦЕСС
ПРОЕКТА
Профессионализм
Сработанность
Стабильность
Мотивация Эффективность коммуникаций
Большой:
трудоемкость — более 240 чел./мес.; команда — более 20 чел.; Проект
длительность — более 12 мес.
Техническая сложность: новый продукт, новые технологии
Критичность для заказчика: угроза жизни, значительные денежные потери
Средний: |
Малый: |
|
трудоемкость — от 36 до 240 чел./мес.; |
||
команда — от 5 до 20 чел.; |
трудоемкость — от 6 до 36 чел./мес.; |
|
команда — до 5 чел.; |
||
длительность — от 6 до 12 мес. |
||
длительность — до 6 мес. |
||
|
Рис. 2.9. «Закон 4-х П»
На этапе инициации проекта необходимо выбрать и обос-
новать вид (тип) программного продукта, который компания собирается разрабатывать, и определить рыночную нишу его распространения, разработать и утвердить концепцию проекта. Недостаточное внимание к этому этапу проекта неизбежно приводит к существенным проблемам при планировании, реализации и завершении проекта.
|
Распределение процессов управления проектом по этапам |
Таблица 2.1 |
||||
|
|
|
||||
|
|
|
|
|
|
|
Процессы |
|
Группы процессов управления проектами по фазам проекта |
|
|
||
и области |
|
|
|
|
|
|
Инициация |
Планирование |
Исполнение |
Мониторинг |
|
Заверше- |
|
знаний |
|
|
|
и управление |
|
ние |
|
|
|
|
|
|
|
1. Интеграция |
1.1. Разработка |
1.3 Разработка плана управления |
1.4. Руковод- |
1.5. Монито- |
|
1.7. Закры- |
управления |
Устава проекта |
проектом |
ство и управ- |
ринг и контроль |
тие проекта |
|
проектом |
1.2. Разработка |
|
ление испол- |
(управление) |
|
|
|
предваритель- |
|
нением |
работ проекта |
|
|
|
ного описания |
|
проекта |
1.6. Общее |
|
|
|
содержания |
|
|
управление |
|
|
|
проекта |
|
|
изменениями |
|
|
|
|
|
|
|
|
|
2. Управление |
|
2.1. Планирование содержания |
|
2.4. Подтверж- |
|
|
содержанием |
|
проекта |
|
дение содер- |
|
|
проекта |
|
2.2. Определение содержания |
|
жания |
|
|
|
|
2.3. Создание иерархической |
|
2.5. Управление |
|
|
|
|
структуры работ (ИСР) |
|
содержанием |
|
|
|
|
|
|
|
|
|
3. Управление |
|
3.1. Определение состава |
|
3.6. Управление |
|
|
сроками |
|
операций |
|
расписанием |
|
|
проекта |
|
3.2. Определение взаимосвязей |
|
|
|
|
|
|
операций |
|
|
|
|
|
|
3.3. Оценка ресурсов операций |
|
|
|
|
|
|
3.4. Оценка длительности |
|
|
|
|
|
|
операций |
|
|
|
|
|
|
3.5. Разработка расписания |
|
|
|
|