Конспект Pankaj Jalote "Управление программным продуктом на практике"
Каждый год выполняется примерно 1 000 000 проектов, на общую сумму $600 000 000 000. Приблизительно 33% превышают стоимость и отстают по срокам более, чем на 125%. Наиболее важными причинами провала является неправильное управление проектом.- маловразумительные цели,
- плохое планирование,
- необходимость использования новых технологий,
- отсутствие методологии управления проектом и
- недостаточная численность персонала.
- Оценивание трудоемкости
- Управление рисками
- Мониторинг проекта
- Управление конфигурацией и т.д.
Деятельность в программном проекте ведется в основном в двух измерениях: в области инженерии и в области управления проектом. Измерение инженерии имеет дело с проектированием, программированием, тестированием и т.п. Измерение управления проектом связано с надлежащим планированием и контролем действий инженерии, которые позволяют достичь целей проекта по стоимости, срокам и качеству. Для простых проектов не требуется высокий уровень формализма при их выполнении. Для более сложных проектов необходим определенный уровень формализма при выполнении проекта, а также строгость планирования и отслеживания запланированных задач. Формализм требует применять четко определенные процессы, поэтому результаты зависят от устойчивости этих процессов. Формализм еще более усиливается, если в процессах используются количественные подходы. Технически процесс для задачи включает последовательность шагов, которой нужно придерживаться при выполнении данной задачи. Однако для любой организации процессы, которые она рекомендует использовать своим инженерам и менеджерам проектов,— не просто последовательности шагов: они заключают в себе то, что инженеры и менеджеры проектов узнали об успешно выполненных проектах. Через процессы преимущества накопленного опыта передаются всем сотрудникам организации, в том числе новичкам. Такие процессы помогают менеджерам и инженерам подражать прошлым успехам и избегать просчетов, ведущих к провалам. Процессы инженерии определяют как выполнить работу. Процессы управления проектом определяют, как
- Установить контрольные точки
- Организовать персонал
- Управлять рисками
- Отслеживать продвижение вперед и т.д.
- Процессы представляют коллективное знание. Их использование повышает шансы на успех
- Процесс может включать несколько дополнительных шагов, но никогда нельзя знать заранее, каким путем будет развиваться ситуация, поэтому использование коротких путей повышает риски выполнения проекта.
- Не пользуясь процессами, нельзя предсказать результаты проекта.
- Вы и ваша организация не сможете обучаться, если не будете пользоваться предопределенными процессами.
- Процессы снижают уровень опасений. Контрольные перечни неизбежно охватывают 80% того, что необходимо сделать. Вам остается проработать только 20%.
CMM - the Capability Maturity Model. CMM для ПО является системой понятий, которые пытаются ответить на вопрос, какие должны быть характеристики эффективных процессов, не предписывая никаких конкретных процессов. CMM может использоваться для оценки процесса разработки ПО в организации и для определения его недостатков. Другой стандарт - ISO 9001.
1.2.1. Обзор CMM
Незрелость процессов разработки ПО означает, что проекты выполняются без многих необходимых правил, а результаты проекта зависят в значительной степени от руководителя проектом и команды. При использовании зрелых процессов проект выполняется в соответствии с определенными процессами. В этом случае результат меньше зависит от людей и больше от процесса. Чем более зрелые процессы используются, тем более предсказуемы результаты, тем лучше контролируется проект. Устойчивость процесса проекта (process capability) - диапазон результатов проекта, которые получаются как следствие исполнения проекта согласно этого процесса. Производительность процесса (process performance) - фактический результат процесса, полученный в результате использования этого процесса. Таким образом производительность (эффективность) процесса зависит от его устойчивости. Уровень зрелости процессов - определенная стадия, на которой находятся процессы организации, которой соответствуют определенные характеристики. Ключевая область процесса (key process area, KPA) - характеристика каждого уровня зрелости, это те области, на которые организация должна обращать внимание, чтобы поднять свои процессы до данного уровня зрелости (отображены на диаграмме). Чтобы организация достигла уровня определенного уровня зрелости, она должна соответствовать всем KPA это уровня и всем KPA нижних уровней.
1.2.2. Ключевые области процесса (KPA) для управления проектами
Каждая KPA задает цели, которым процессы организации должны соответствовать. Также задается Ключевые практики (key practices) - группа действий, которые вместе соответствуют целям KPA.
Уровень 2
В таблице перечислены все цели для KPA уровня 2. Почти все внимание отдается управлению проектом.
KPA | Цели |
Управление требованиями (управленческая область) |
|
Планирование программного проекта (управленческая область) |
|
Отслеживание и надзор за проектом (управленческая область) |
|
Управление субподрядами на разработку ПО (управленческая область) |
|
Обеспечение качества ПО (техническая область) |
|
Управление конфигурацией ПО (техническая область) |
|
- создается и поддерживается план управления проектом.
- Оцениваются, согласно плана, характеристики выполняемого проекта. Если фактические показатели значительно отклоняются от плана, принимаются соответствующие меры.
- Требования должным образом документируются, а изменения требований координируются.
- Осуществляется контроль всех рабочих продуктов. Внесение изменений в продукты выполняется через планомерное управление конфигурацией.
- Для гарантирования выполнения процесса проводятся аудиты и экспертизы.
- Работа по субподрядам должным образом отслеживается.
Применяется специализированная версия стандартного процесса, повторно используются активы проекта, данные и опыт планирования из предыдущих проектов. Заинтересованные стороны взаимодействуют между собой посредством точно определенных интерфейсов и механизмов. Для определения ошибок в рабочих продуктах организовываются экспертизы, их проведение и выполнение доработок по их результатам имеют достаточную поддержку. В таблице указаны KPA уровня 3, которые относятся к управлению проектами:
KPA | Цели |
Интегральное управление разработкой ПО |
|
Межгрупповая организация |
|
Экспертизы специалистов |
|
Уровень 4
На этом уровне устойчивость процесса понимается на количественном уровне. Устойчивость процесса используется для установки количественных целей проекта. Данные по производительности постоянно собираются и сравниваются со статистическими данными по производительности в завершенных проектах. При значительных отклонениях применяются корректирующие действия, которые позволяют восстановить контроль над проектом. Ключевой аспект этого уровня - постоянное применение приемов статистического контроля процесса, поэтому можно оценить каждое действие и при необходимости откорректировать его. Приведены только две KPA
KPA | Цели |
Количественное управление процессом
|
|
Управление качеством ПО |
|
Уровень 5
Области этого уровня нацелены на улучшение устойчивости процесса. Наибольшее внимание заострено на предупреждении ошибок путем систематического анализа причин возникновения ошибок и принятием мер для их предупреждения. Предупреждение ошибок позволяет сэкономить на исправлении возникших ошибок.
1.3. Управление проектами в компании InfoSys
1.3.2. Поддержка проектов со стороны SEPG
SEPG - software engineering process group. Отвечает за координацию всей деятельности, связанную с процессами, в том числе за определение, совершенствование, размещение процессов. Также управляет всей информацией, связанной с использованием процессов и базовой линией устойчивости процесса. Также формирует независимый канал для мониторинга выполнения проекта и отправки отчетов менеджменту по вопросам процесса и качества. Также занимается внедрением процессов в обычную практику. Выделяется сотрудник, который является членом команды проекта и отвечает за качество продукта. Также предоставляет помощь при планировании, обучении. Также проводит экспертизу плана управления проектом.
1.3.3. Привлечение к проектам старших руководителей
Менеджер проекта отвечает за проект от начала и до конца, с определения требований и до поставки и установки продукта. Он отчитывается бизнес-менеджеру. Бизнес-менеджер отчитывается главе подразделения. Для разрешения ситуаций, с которыми не может справиться руководитель проекта, привлекается старший менеджмент. Команда проекта может поднять вопрос перед бизнес-менеджером. Бизнес-менеджер также контактирует с заказчиком. Старшие руководители принимают участие в аудите проекта. Им информация доступна посредством двух систем: обзора проекта старшим менеджментом и интегральному управлению проектами. Согласно этому, старшие менеджеры должны периодически проводить аудит проектов и выдавать рекомендации руководителям проектов.
1.3.4. Обучение менеджеров проектов
Все новые сотрудники проходят 3-4 месячную ознакомительную обучающую программу:
- Курсы по инженерии и технологиям
- Профессиональная этика бизнеса,
- Правила ведения переписки
- Публичные выступления
- Жестикуляция, мимика, …
-
Техническая программа
- 5-ти дневная программа по планированию, мониторингу, … проектов.
- 2-х недельные курсы по определению требований, документированию, проверке, …
- 5-ти дневная программа по оцениванию, управлению командой, общению с заказчиками, лидерству, социальной и деловой этике разных стран, и т.д.
-
Обучающая программы
- Разнообразные аспекты управление. PM обучаются, когда позволяет их календарный план.
- Рабочие семинары по созданию команды.
Процесс управления проектом:
- Планирование проекта
- Выполнение проекта
- Закрытие проекта
Руководитель проекта изучает контрактные обязательства и разрабатывает план по их выполнению. План проекта:
- Определение процесса жизненного цикла
- Оценивание трудоемкости и сроков работ
- Подготовка детального графика задач
- Управление качеством
- Управление конфигурацией
- Управление рисками
- Выполняет административные и подготовительные задачи.
-
Создает план и график проекта
- Определяет цели проекта
- Устанавливает подходящий стандартный процесс выполнения проекта
- Адаптирует стандартный процесс к требованиям проекта
- Определяет процесс управления изменениями в требованиях
- Оценивает трудоемкость
- Планирует людские ресурсы и структуру команды
- Определяет ключевые точки проекта и создает график работ
- Определяет цели качества и план их достижения
- Разрабатывает план предупреждения ошибок
- Выявляет риски и разрабатывает план по их смягчению
- Определяет план измерений для проекта
- Определяет план обучения для проекта
- Определяет процедуры отслеживания проекта
- Выполняет экспертизы плана и графика работ по проекту
- Получает одобрение плана и графика работ от вышестоящего руководства
- Создает план управления конфигурацией и проводит его экспертизу
- Ориентирует команду проекта в соответствии с планом управления проектом
Выполнение проекта
Включает
- Выполнение плана проекта,
- Отслеживание состояния проекта
- Внесение корректировок в любой момент, когда характеристики проекта отклоняются от пути, проложенного планом.
- Мониторинг состояния
- Мониторинг качества проекта
- Проведение необходимых корректирующих шагов.
- Выполняет проект согласно плана проекта
- Отслеживает состояние проекта
- Вместе с вышестоящим руководством проверяет состояние проекта
- Анализирует ошибки и выполняет действия по их предупреждению
- Отслеживает соблюдение процесса, определенного для проекта
- Анализирует ошибки и выполняет действия по их предупреждению
- Отслеживает выполнение на уровне программы
- Проводит экспертизы в контрольных точках этапов и при необходимости изменяет план
Закрытие проекта
Включает планомерное завершение проекта после приемки заказчиком. Основная цель - изучение полученного опыта для дальнейшего усовершенствования процесса. Анализ данных: система показателей, для будущего использования собирается все, что было накоплено процессом, шаблоны и инструкции, фиксируются полученные уроки. Подведение итогов - групповая деятельность, в которой участвуют руководитель проекта, представитель SEPG, другие члены команды, чтобы каждый мог получить и оценить полученный опыт. Вход процесса - приемка заказчиком работ. Выход процесса - проведение заключительного совещания, отчет о закрытии проекта, собранные данные о выполнении проекта.
1.5. Итоги
- Процессы для различных аспектов управления проектом не следует рассматривать изолированно. В сбалансированном процессе практики интегрируются без помех.
- Процессы организации должны включать ее лучшие практики, чтобы помочь новым проектам воспроизвести достигнутые в прошлом успехи и избежать неудач.
-
На верхнем уровне процесс управления проектом включает три стадии:
- Планирование
- Исполнение
- Закрытие
- Для эффективного выполнения проектов менеджеры проектов должны получить поддержку и помощь от SEPG в выполнении процессов, в от вышестоящего руководства - в мониторинге и разрешении проблем. Менеджеры проектов должны пройти качественное обучение.
- Многие ключевые области процесса на всех уровнях зрелости CMM для разработки ПО непосредственно ориентированы на управление проектом.
Комментариев нет:
Отправить комментарий