Автор работы: Пользователь скрыл имя, 04 Октября 2013 в 15:16, курс лекций
«Необходимость управления программными проектами вытекает из того "прискорбного" факта, что процесс создания профессионального ПО всегда является субъектом бюджетной политики организации, где оно разрабатывается, и имеет временные ограничения. Работа руководителя программного проекта по большому счету заключается в том, чтобы гарантировать выполнение этих бюджетных и временных ограничений с учетом бизнес-целей организации относительно разрабатываемого ПО.»
«Необходимость управления программными проектами вытекает из того "прискорбного" факта, что процесс создания профессионального ПО всегда является субъектом бюджетной политики организации, где оно разрабатывается, и имеет временные ограничения. Работа руководителя программного проекта по большому счету заключается в том, чтобы гарантировать выполнение этих бюджетных и временных ограничений с учетом бизнес-целей организации относительно разрабатываемого ПО.»
«Хорошее управление
не гарантирует успешного
Отличия процесса разработки ПО от процессов реализации технических проектов:
Процессы управления:
План, разработанный на начальном этапе проекта, рассматривается всеми его участниками как руководящий документ, выполнение которого должно привести к успешному завершению проекта. Этот первоначальный план должен максимально подробно описывать все этапы реализации проекта.
Таблица 11 – Планирование проекта
План |
Описание |
План качества |
Описывает стандарты и мероприятия по поддержке качества разрабатываемого ПО |
План аттестации |
Описывает способы, ресурсы и перечень работ, необходимых для аттестации программной системы |
План управления конфигурацией |
Описывает структуру и процессы управления конфигурацией |
План сопровождения ПО |
Предлагает план мероприятий, требующихся для сопровождения ПО в процессе его эксплуатации, а также расчет стоимости сопровождения и необходимые для этого ресурсы |
План по управлению персоналом |
Описывает мероприятия, направленные на повышение квалификации членов команды разработчиков |
Алгоритм планирования проекта можно представить следующим образом:
Определение проектных ограничений
Первоначальная оценка параметров проекта
Определение этапов выполнения проекта и контрольных отметок
while пока проект не завершится или не будет остановлен
loop
Составление графика работ
Начало выполнения работ
Ожидание
окончания очередного этапа
Отслеживание хода выполнения работ
Пересмотр
оценок параметров проекта
Изменение графика работ
Пересмотр проектных ограничений
if (возникла проблема) then
Пересмотр
технических или
end if
end loop
План проекта:
1. Введение. Краткое описание целей проекта и проектных ограничений (бюджетных, временных и т.д.), которые важны для управления проектом.
2. Организация выполнения проекта. Описание способа подбора команды разработчиков и распределение обязанностей между членами команды.
3. Анализ рисков. Описание возможных проектных рисков, вероятности их проявления и стратегий, направленных на их уменьшение.
4. Аппаратные и программные ресурсы, необходимые для реализации проекта. Перечень аппаратных средств и программного обеспечения, необходимого для разработки программного продукта. Если аппаратные средства требуется закупать, приводится их стоимость совместно с графиком закупки и поставки.
5. Разбиение работ на этапы. Процесс реализации проекта разбивается на отдельные процессы, определяются этапы выполнения проекта, приводится описание результатов ("выходов") каждого этапа и контрольные отметки.
6. График работ. В этом графике отображаются зависимости между отдельными процессами (этапами) разработки ПО, оценки времени их выполнения и распределение членов команды разработчиков по отдельным этапам.
7. Механизмы мониторинга и контроля за ходом выполнения проекта. Описываются предоставляемые менеджером отчеты о ходе выполнения работ, сроки их предоставления, а также механизмы мониторинга всего проекта.
Контрольные отметки— вехи, отмечающие окончание определенного этапа работ.
По завершении основных больших этапов, таких как разработка спецификации, проектирование и т.п., заказчику ПО предоставляются результаты их выполнения, так называемые контрольные проектные элементы.
Рис. 57 - Контрольные отметки
Рис. 58 - График работ
Рис. 59 – Сетевая диаграмма
Таблица 12 – Описание сетевой диаграммы
Этап |
Длительность (дни) |
Зависимость |
Т1 |
8 |
|
Т2 |
15 |
|
Т3 |
15 |
Т1 (М1) |
Т4 |
10 |
|
Т5 |
10 |
Т2, Т4 (М2) |
Т6 |
5 |
Т1, Т2 (М3) |
Т7 |
20 |
Т1 (М1) |
Т8 |
25 |
Т4 (М5) |
Т9 |
15 |
Т3, Т6 (М4) |
Т10 |
15 |
Т5, Т7 (М7) |
Т11 |
7 |
Т9 (М6) |
Т12 |
10 |
Т11 (М8) |
Рис. 60 – Временная диаграмма
Рис. 61 – Диаграмма распределения исполнителей по этапам
Таблица 13 – Распределение исполнителей
Этап |
Исполнитель |
Т1 |
Джейн |
Т2 |
Анна |
Т3 |
Джейн |
Т4 |
Фред |
Т5 |
Мэри |
Т6 |
Анна |
Т7 |
Джим |
Т8 |
Фред |
Т9 |
Джейн |
Т10 |
Анна |
Т11 |
Фред |
Т12 |
Фред |
Риск можно понимать как вероятность проявления каких-либо неблагоприятных обстоятельств, негативно влияющих на реализацию проекта.
Возможные риски для программных проектов:
1. Риски для проекта, которые влияют на график работ или ресурсы, необходимые для выполнения проекта.
2. Риски для разрабатываемого продукта, влияющие на качество или производительность разрабатываемого программного продукта.
3. Бизнес-риски, относящиеся к организации-разработчику или поставщикам.
Таблица 14 - Возможные риски программных проектов
Риск |
Типы риска |
Описание риска |
Текучесть разработчиков |
Риск для проекта |
Опытные разработчики покидают проект до его завершения |
Изменение в управлении организацией |
Риск для проекта |
Организация меняет свои приоритеты в управлении проектом |
Неготовность аппаратных средств |
Риск для проекта |
Аппаратные средства, которые необходимы для проекта, не поступили вовремя или не готовы к эксплуатации |
Изменение требований |
Риск для проекта и для разрабатываемого продукта |
Появление большого количества непредвиденных изменений в требованиях, предъявляемых к разрабатываемому ПО |
Задержка в разработке спецификации |
Риск для проекта и для разрабатываемого продукта |
Спецификации основных интерфейсов подсистем не поступили к разработчикам в соответствии с графиком работ |
Недооценка размера разрабатываемой системы |
Риск для проекта и для разрабатываемого продукта |
Размер системы значительно превысил первоначальную оценку |
Недостаточная эффективность CASE-средств |
Риск для разрабатываемого продукта |
CASE-средства, предназначенные
для поддержки проекта, |
Изменения в технологии разработки ПО |
Бизнес-риск |
Основные технологии построения программной системы заменяются новыми |
Появление конкурирующего программного продукта |
Бизнес-риск |
На рынке программных
продуктов до окончания проекта
появилась конкурирующая |
1. Определение рисков. Определяются возможные риски для проекта, для разрабатываемого продукта и бизнес-риски.
2. Анализ рисков. Оценивается вероятность и последовательность появления рисковых ситуаций.
3. Планирование рисков. Планируются мероприятия по предотвращению рисков или минимизации их воздействия на проект.
4. Мониторинг рисков. Постоянное оценивание вероятностей рисков и выполнение мероприятий по смягчению последствий проявления рисковых ситуаций.
Рис. 62 - Схема процесса управления рисками
Список возможных категорий рисков:
Таблица 15 – Категория рисков
Категория рисков |
Примеры рисков |
Технологические риски |
База данных, которая используется в программной системе, не обеспечивает обработку ожидаемого объема транзакций. Программные компоненты, которые используются повторно, имеют дефекты, ограничивающие их функциональные возможности |
Риски, связанные с персоналом |
Невозможно подобрать работников с требуемым профессиональным уровнем. Ведущий разработчик заболел в самое критическое время. Невозможно организовать необходимое обучение персонала |
Организационные риски |
В организации, выполняющей разработку ПО, произошла реорганизация, в результате чего изменились приоритеты в управлении проектом. Финансовые затруднения
в организации привели к |
Инструментальные риски |
Программный код, генерируемый CASE-средствами, не эффективен. CASE-средства
невозможно интегрировать с |
Риски, связанные с системными требованиями |
Изменения требований приводят к значительным повторным темными требованиями работам по проектированию системы. Первоначальная нечеткая формулировка пользовательских требований привела к значительным изменениям системных требований, проявившихся на поздних стадиях разработки проекта |
Риски оценивания |
Недооценки времени выполнения проекта. Скорость выявления дефектов в системе ниже ранее запланированной. Размер системы
значительно превышает |
Информация о работе Управление проектами по созданию и внедрению ПО