Модели и процессы управления проектами программных средств

 

3.1. Управление проектами программных средств в системе – СMMI

 

Назначение методологии СММ/CMMIсистемы и модели оценки зрелости – состоит в предоставлении необходимых общих рекомендаций и инструкций предприятиям, производящим ПС, по выбору стратегии совершенствования качества процессов и продуктов, путем анализа степени их производственной зрелости и оценивания факторов, в наибольшей степени влияющих на качество ЖЦ ПС, а также посредством выделения процессов, требующих модернизации. Для достижения устойчивых результатов программной инженерии в процессе развития технологии и организации управления жизненным циклом ПС в стандарте ISO 15504:1-9рекомендуется использовать эволюционный путь, который позволяет совершенствовать и постепенно повышать качество процессов и продуктов, вскрывать преимущества и недостатки предприятия. В методологии СММ выделены пять уровней зрелости, раскрываемые в этом стандарте де-факто (рис.3.1). Виды деятельности для высоких уровней зрелости в соответствии с СММ, в стандарте делятся на базовые и общие. Базовые виды деятельности являются обязательными и сгруппированы в пять категорий: контрактная; инженерная; управленческая; вспомогательная; организационная. Уровни зрелости характеризуются степенью формализации, адекватностью измерения и документирования процессов и продуктов ЖЦ ПС, широтой применения стандартов и инструментальных средств автоматизации работ, наличием и полнотой реализации функций системой обеспечения качества технологических процессов и их результатов.

Описание процессов ЖЦ ПС в СММ сфокусировано на поэтапном определении, реально достигаемых результатов и на оценивании качества их выполнения. Качество процессов зависит от технологической среды, в которой они выполняются. Зрелость процессов-это степень их управляемости, возможность поэтапной количественной оценки качества, контролируемости и эффективности результатов (см. рис. 3.1). Модель зрелости предприятия представляет собой методический нормативный материал, определяющий правила создания и функционирования системы управления жизненным циклом ПС, методы и стандарты систематического повышения культуры и качества производства. Рост зрелости обеспечивает потенциальную возможность возрастания эффективности и согласованности использования процессов создания, сопровождения и оценивания качества компонентов и ПС в целом. Реальное использование регламентированных процессов предполагает поэтапный контроль и документирование их характеристик качества. На предприятиях, достигших высокого уровня зрелости, формализованные процессы ЖЦ ПС должны принимать статус стандарта, фиксироваться в организационных структурах и определять производственную тактику и стратегию корпоративной культуры производства и системы обеспечения качества ПС.

Уровень 1 - Начальный. Массовые разработки проектов ПС характеризуются относительно небольшими размерами программ в несколько тысяч строк, создаваемых несколькими специалистами. Они применяют простейшие не формализованные технологии с использованием типовых инструментальных компонентов операционных систем. Основные процессы ЖЦ ПС на этом уровне не регламентированы, выполняются не совсем упорядоченно и зависят от не координированных индивидуальных усилий и свойств отдельных специалистов. Успех проекта, как правило, зависит от энергичности, таланта и опыта нескольких руководителей и исполнителей. Процессы на первом уровне характеризуются своей непредсказуемостью по трудоемкости и срокам в связи с тем, что их состав, назначение и последовательность выполнения могут меняться случайным образом в зависимости от текущей ситуации.

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

Уровень 3- Определенный – стандартизация процессов. При высоких требованиях заказчика и пользователей к конкретным характеристикам качества сложного ПС и к выполнению ограничений по использованию ресурсов, необходимо дальнейшее совершенствование и повышение уровня зрелости процессов ЖЦ ПС. Процессы ЖЦ ПС на этом уровне должны быть стандартизированы, и представлять собой целостную технологическую систему, обязательную для всех подразделений. На основе единой технологии поддержки и обеспечения качества ЖЦ ПС, для каждого проекта могут разрабатываться дополнительные процессы последовательного оценивания качества продуктов с учетом их особенностей. Описание каждого процесса должно включать условия его выполнения, входные данные, рекомендации стандартов и процедуры выполнения, механизмы проверки качества результатов, выходные данные, условия и документы завершения процессов. В описания процессов включаются сведения об инструментальных средствах, необходимых для их выполнения, роль, ответственность и квалификация специалистов.

Уровень 4 - Предсказуемый – количественное управление. Для реализации проектов крупных, особенно сложных ПС, в жестко ограниченные сроки и с высоким гарантированным качеством, необходимы активные меры для предотвращения и выявления дефектов и ошибок на всех этапах ЖЦ ПС. Управление должно обеспечивать выполнение процессов в соответствии с текущими требованиями к характеристикам качества компонентов и ПС в целом. На этом уровне, должна применяться система детального поэтапного оценивания характеристик качества, как технологических процессов ЖЦ, так и самого создаваемого программного продукта и его компонентов. Должны разрабатываться и применяться методики количественной оценки реализации процессов и их качества. Одновременно с повышением сложности и требований к качеству ПС, следует совершенствовать управление проектами за счет сокращения текущих корректировок и исправлений дефектов при выполнении процессов. Результаты процессов становятся предсказуемыми по срокам и качеству в связи с тем, что они измеряются в ходе их выполнения и реализуются в рамках заданных ресурсных ограничений.

Уровень 5 - Оптимизационный – непрерывное совершенствование и улучшение. Дальнейшее последовательное совершенствование и модернизация технологических процессов ЖЦ ПС для повышения качества их выполнения и расширение глубины контроля за их реализацией. Одна из основных целей этого уровня - сокращение проявлений и потерь от случайных дефектов и ошибок путем выявления сильных и слабых сторон используемых процессов. При этом приоритетным является анализ рисков, дефектов и отклонений от заданных требований заказчика. Эти данные также используются для снижения себестоимости ЖЦ особо сложных ПС в результате внедрения новых технологий и инструментария, а также для планирования и осуществления модернизации всех видов процессов. Технологические нововведения, которые могут принести наибольшую выгоду, должны стандартизироваться и адаптироваться в комплексную технологию обеспечения и оценивания системы качества предприятия и его продукции.

В 2003 году американский Институт программной инженерии (SEI) опубликовал новую комплексную модель CMMI, уточняющую и совершенствующую предшествовавшие модели CMM, а также частично учитывающую основные требования существующих международных стандартов в области менеджмента программных средств. Внедрение этой модели акцентировано на улучшении процессов управления проектами ПС, обеспечении их высокого качества и конкурентоспособности, с основной целью – сделать процессы проектов управляемыми, а результаты – предсказуемыми. Значительное внимание в CMMIуделяется процессам разработки и учету итераций при изменении требований заказчиков, их прослеживанию к функциям, компонентам, тестам и документам проекта. Концепцию, определяющую функциональную пригодность и качество продукта, рекомендуется сопровождать проверками возможных сценариев событий при его применении.

В последнее время появилась информация о модернизации американским Институтом программной инженерии SEIверсии CMMI-SE/SW/IPPD, V1.1 на основе накопленного опыта и отзывов предприятий. Предполагается выпустить в 2006 году новую, существенно модернизированную, версию модели CMMI-V1.2, послечего постепенно должно прекратиться применение версии 1.1. До конца 2007 года должен проводиться переход пользователей на версию CMMI-V1.2, а в дальнейшем она станет обязательной для формализованной оценки качества (сертификации) технологии предприятий в области программной инженерии. При этом срок действия сертификата будет ограничен тремя годами. К этим изменениям следует готовиться после официальной публикации Институтом SEIверсии 1.2.

Два варианта модели CMMI – 1.1созданы для обеспечения непрерывного оценивания комплекса процессов в определенной области создания программных средств или для поэтапного оценивания и совершенствования зрелости предприятия, а также для организации ЖЦ комплексов программ в целом. Модели CMMI представляют помощь специалистам при организации технологии и совершенствовании их продуктов, а также для упорядочения и обслуживания процессов разработки и сопровождения ПС. Концепция этих моделей покрывает управление и оценивание зрелости сложных систем, инженерии программных средств, а также процессов cоздания интегрированных программных продуктов и совершенствования их разработки. Компоненты непрерывной и поэтапной моделей в значительной степени подобны, могут выбираться и применяться в разном составе и последовательности использования в зависимости от свойств и характеристик конкретных проектов.

Варианты описания моделей построены по единой схеме, которая содержит общие разделы:

предисловие;

1. введение;

2. модель компонентов;

3. терминология;

4. содержание уровней и главные компоненты каждого варианта модели (разработка целей и процедур);

5 раздел – структура взаимодействия процессов. Аннотированы четыре категории процессов раздела 7, их общий обзор и схемы взаимодействия CMMI процессов:

* менеджмент процессов;

* менеджмент – управление проектом;

* инжиниринг (технология);

* поддержка;

6 раздел – использование модели CMMI– краткие рекомендации для пользователей по применению модели и обучению; отмечается совмес-тимость и соответствие процессов модели, с регламентированными процессами предыдущей модели CMMв части 2 и 3 стандарта ISO 15504.

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

Первый вариант (непрерывной) модели отражает документ: Capability Maturity Model Integration (CMMI) for Systems Engineering / Software Engineering / Integrated Product and Process Development, Version 1.1, Continuous Representation (CMMI-SE/SW/IPPD, V1.1, Continuous) – Интегрированная модель оценивания зрелости инженерии систем / программной инженерии / интегрированных продуктов и процессов разработки – непрерывное представление. В этой модели седьмой раздел составляют процессы:

- менеджмент процессов:

* содержание организационных процессов;

* определение организационных процессов;

* организация обучения;

* организация преобразования (изменений) процессов;

* организация инноваций и расширений;

- управление проектом:

* планирование проекта;

* мониторинг и контроль процессов проекта;

* управление соглашениями с поставщиками;

* интегрированное управление процессами и продуктами проекта;

* управление рисками;

* интеграция команды разработчиков;

* интегрированное управление поставщиками;

* количественное управление проектом;

- инженерия (технология):

* управление требованиями;

* разработка требований;

* технические решения;

* интеграция продукта;

* верификация;

* валидация (аттестация, утверждение);

- поддержка:

*управление конфигурацией;

* обеспечение качества процессов и продуктов;

* измерение и анализ процессов и продуктов;

* анализ и принятие решений на изменения;

* организация окружения для интеграции;

* анализ причин и разрешение проблем (устранение дефектов).

В пяти приложениях приводятся:

А – состав использованных литературных источников и документов, в котором, однако, не упоминаются стандарты ISO;

В – сокращения;

С – глоссарий на основе терминологии ISO, применяемой только в четырех стандартах ISO 9000, ISO 12207, ISO 15504:1-9, ISO 15288;

D – описания требований и предложений для формирования компонентов модели по уровням зрелости;

Е – список участников разработки CMMI– проекта.

В этой модели внимание акцентировано на организационных процессах, на планировании, управлении и контроле процессов реализации проектов программных средств, на разработке и управлении требованиями к программным продуктам. Ниже представлены примеры детализации в CMMI некоторых из них.

Планирование проекта в этой, также как и во второй модели включает:

- оценку возможного размера – масштаба программного продукта;

- оценку сложности функций и характеристик проекта ПС;

- определение модели и этапов жизненного цикла комплекса программ;

- технико-экономическое обоснование проекта – определение стоимости, трудоемкости и длительности ЖЦ ПС;

- разработка поэтапного графика работ и бюджета проекта;

- анализ, идентификация и оценка проектных рисков;

- планирование и управление документированием процессов и продуктов в ЖЦ проекта ПС;

- планирование и распределение технических и людских ресурсов по этапам ЖЦ ПС;

- планирование обеспечения знаний и квалификации коллектива специалистов для реализации проекта;

- обобщение и анализ совокупности планов проекта ПС;

- согласование работ и ресурсов по этапам ЖЦ разработчиком с заказчиком проекта ПС;

- документирование плана работ и утверждение его менеджером разработчиков проекта.

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

- выявление реальных потребностей заказчика и пользователей к функциям и характеристикам программного продукта;

- разработку и согласование между заказчиком и разработчиком исходных, базовых требований к функциям программного продукта;

- определение доступных ресурсов и ограничений проекта комплекса программ;

- декомпозицию базовых исходных требований к функциям ПС в набор требований к компонентам и тестам комплекса программ;

- формализацию требований к интерфейсам между компонентами, с операционной и внешней средой;

- разработку концепции программного продукта и сценариев его использования;

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

Управление требованиями в обеих моделях включает:

- достижение однозначного понимания требований к проекту ПС заказчиком и разработчиками;

- получение заказчиком от разработчиков обязательств выполнить все его требования к программному продукту;

- согласованное между заказчиком и разработчиком управление изменениями требований к проекту ПС;

- обеспечение прослеживания корректности изменений от общих требований к проекту ПС до требований к компонентам и частным процессам;

- выявление и идентификация несоответствий между процессами разработки проекта и требованиями заказчика.

Второй вариант CMMIпредставлен документом: Capability Maturity Model Integration for Systems Engineering / Software Engineering / Integrated Product and Process Development, Version 1.1, Staged Representation (CMMI-SE/SW/IPPD, V1.1, Staged) – Интегрированная модель оценивания зрелости инженерии сложных систем / программной инженерии / интегрированных продуктов и процессов разработки – поэтапное представление. Модель базируется на сохранении концепции пяти уровней зрелости CMM. Состав процессов практически повторяет приведенный выше для первого варианта модели, в несколько иной последовательности и с относительно небольшими дополнениями. Первый уровень отличается значительной неопределенностью состава и содержания процессов в различных относительно простых проектах, поэтому он в документе не описан и не комментируется. Поэтому при уточнении и детализации содержания процессов в поэтапном варианте CMMI рекомендуется ограничиваться четырьмя (2-й – 5-й) основными уровнями:

- второй уровень – формализует базовое управление проектами:

* управление требованиями;

* планирование проекта;

* мониторинг и контроль проекта;

* управление соглашениями с поставщиками;

* измерение и анализ процессов и продуктов;

* обеспечение качества процессов и продуктов;

* управление конфигурацией;

- третий уровень – содержит стандартизацию основных процессов:

* разработка требований;

* технические решения;

* интеграция продукта;

* верификация;

* валидация (аттестация);

* содержание организационных процессов;

* определение организационных процессов;

* организация обучения;

* интегрированное управление процессами и продуктами проекта;

* управление рисками;

* интеграция команды разработчиков;

* интегрированное управление поставщиками;

* анализ и разрешение проблем (устранение дефектов);

* организация окружения для интеграции;

- четвертый уровень – определяет количественное управление:

* организация представления качества процессов;

* количественное управление всем проектом и ресурсами;

- пятый уровень – оптимизационный, непрерывное совершенствование:* организация, инновации, количественное управление процессами и обеспечением ресурсами;

* анализ причин дефектов, совершенствование качества и управления процессами и продуктами.

Приложения во втором варианте модели подобны по составу, приведенным выше приложениям для первой модели. Рекомендуется на каждом более высоком уровне зрелости применять все процессы предыдущих нижних уровней. В обоих вариантах модели каждый, выделенный выше базовый процесс, комментируется подробными рекомендациями для его практической реализации, которые содержат унифицированные по структуре описания объемом около 20 – 30 страниц:

- общие цели процесса, которые должны быть достигнуты;

- вводные замечания и общее описание функций процесса;

- специфические цели процесса;

- менеджмент процесса;

- разработка требований к процессу;

- взаимодействие и интерфейсы с другими процессами;

- практические цели – требуемые результаты действий процесса;

- планирование действий в определенном процессе;

- анализ и валидация (утверждение) результатов реализации процесса;

- мониторинг и контроль выполнения процесса.

Эти рекомендации по объему, содержанию и полноте описаний базовых процессов подобны ряду стандартов профиля ЖЦ ПС. Упорядочение и оценка полноты используемых процессов в соответствии с уровнями зрелости, позволяет устанавливать производственный потенциал предприятий – разработчиков программных продуктов по прогнозируемому качеству процессов и результатов их деятельности и готовности к сертификации на соответствие определенному уровню зрелости модели CMMI – 1.1.

Особое внимание в моделях CMMIуделяется процессам менеджмента проекта ПС. Эти требования и процессы моделей практически соответствуют, регламентированным и детализированным рекомендациям в стандартах ISO 9001:2000, ISO 12207 и в основных компонентах профиля стандартов жизненного цикла сложных ПС. Требованиям к процессам в функциональных разделах 4 – 8 стандартов ISO 9001, ISO 9004, ISO 90003 может быть сопоставлен адекватный по содержанию ряд разделов в моделях CMMI– рис. 3.2. Общность процессов и требований состоит в подобии: состава, терминологии, структуры, перечня основных рекомендуемых процессов управления, планирования, учета доступных ресурсов, реализации процессов программной инженерии, оценивания и организации специалистов.

С точки зрения поддержки и регламентирования полного жизненного цикла крупных проектов программных средств к недостаткам моделей CMMI относительно профиля существующих стандартов ISOможно отнести следующие:

- не все процессы предусмотрены в составе процессов моделей CMMI– 1.1, которые развиваются и детально комментируются для их реализации в стандартах ISO 9004:2000 и ISO 90003:2004, а также в профиле стандартов ISO;

- не отражены особенности системной инженерии и международные стандарты, регламентирующие процессы жизненного цикла сложных систем ISO 15288:2002 и ISO 19760:2003;

- при анализе процессов обеспечения качества используется ряд традиционных характеристик систем и программных продуктов, которые применяются в сложных проектах, однако не описаны и не комментируются базовые международные стандарты, систематизирующие и регламентирующие качество программных средств - ISO 9126:1-4, ISO 14598:1-6, ISO 15939;

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

- не отражены регламентированные интерфейсы Открытых систем на взаимодействие программных компонентов, а также с операционной и внешней средой, в соответствии со стандартами - ISO 9945:1-4;

- документирование процессов и продуктов ЖЦ ПС комментируется только, по мере их реализации, и не представлены обобщенные требования к технологической и эксплуатационной документации на программный продукт в соответствии со стандартами - ISO 9294, ISO 15910, ISO 18019.

Для определения, представленных выше уровней зрелости процессов обеспечения жизненного цикла ПС, разработан и первоначально утвержден в 1998 году обширный технический отчет ISO 15504– Оценка и аттестация зрелости процессов создания и сопровождения ПС и систем, состоящий из девяти частей и множества приложений. В нем изложена модель зрелости CMMи восемь базовых принципов программной инженерии на основе стандарта ISO 9000:2000 (см. лекцию 1). Затем в ISOэтот документ претерпел коренную переработку, сокращение, упрощение структуры и содержания, при полном сохранении целей и концепции, и утвержден как стандарт в составе пяти частей (см. Приложение 1). Стандарт ISO 15504:1-5:2003-2006регламентирует оценку и аттестацию зрелости процессов создания, сопровождения и совершенствования программных средств и систем, выполняемых предприятиями:

- для установления состояния собственных технологических процессов и их совершенствования;

- для определения пригодности собственных процессов для выполнения определенных требований или классов требований заказчиков;

- с целью его пригодности для выполнения определенных договоров с заказчиками ПС и систем.

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

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

- для поставщиков и разработчиков – способность определять текущую и потенциальную зрелость собственных процессов жизненного цикла ПС и систем, области и приоритеты усовершенствования процессов;

- для аттестаторов зрелости – основу для проведения и совершенствования процессов аттестации.

Аттестация в стандарте рассматривается в двух аспектах: для усовершенствования процессов ЖЦ ПС и систем конкретного предприятия, и для определения соответствия декларированной зрелости процессов обеспечения проекта или предприятия, реальным используемым процессам. Это отражено в следующих пяти частях стандарта ISO 15504:1-5:2003-2006.

Часть 1 – Концепция и словарь – содержит общую информацию о процессах аттестации зрелости ПС и систем, и рекомендации по использованию частей стандарта. Изложены общие требования к аттестации, терминология, структура и область применения остальных частей стандарта.

Часть 2 – Выполнение (производство) аттестации – включает детальные требования к проведению процессов аттестации, как основы для совершенствования и определения уровня зрелости технологических процессов обеспечения ЖЦ ПС и систем. Документ определяет процессы выполнения аттестации, модели рекомендуемых процессов аттестации и верификации процессов, с тем, чтобы они были объективными, содержательными и репрезентативными.

Часть 3 – Руководство по производству аттестации – содержит обзор технологии выполнения процессов аттестации зрелости, и интерпретации реализации требований. В нем отражено: исполнение аттестации; измерительные средства для определения процессов зрелости; выбор и применение средств аттестации; оценка компетентности аттестаторов; верификация соответствия аттестации декларированным требованиям. Средства аттестации могут использоваться предприятиями при планировании, менеджменте, мониторинге, контроле и усовершенствовании программных продуктов и систем, при их приобретении, разработке, применении и сопровождении.

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

Часть 5 – Образец модели процессов аттестации на соответствие требованиям, представленным в части 2. Обширный документ (162 стр.) содержит примеры практического применения предыдущих частей стандарта для организации, оценивания и совершенствования аттестации зрелости процессов жизненного цикла для различных областей использования, проектов программных средств и предприятий.

При практической реализации проектов и обеспечении жизненного цикла сложных ПС разработчикам и поставщикам может быть трудно определить, и выделить для применения преимущества моделей CMMI. В зависимости от традиций предприятия и особенностей крупного проекта ПС зачастую целесообразно использовать как основной полный профиль стандартов ISO, а для оценивания заказчиками уровня зрелости менеджмента, организационного и технологического обеспечения проектов ПС применять конкретные рекомендации CMMI. Эти рекомендации могут эффективно использоваться при сертификации качества процессов на предприятиях, обеспечивающих ЖЦ ПС, как альтернатива или наряду с сертификацией по комплексу стандартов менеджмента ISO 9000, в зависимости от особенностей проекта и требований заявителя на сертификацию программного продукта или технологии обеспечения его жизненного цикла.








Дата добавления: 2016-04-06; просмотров: 2417;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.05 сек.