5.1. Оценивание уровня зрелости процессов жизненного цикла и обеспечения качества программных средств
Качество комплексов программ определяется не только величиной общих затрат на достижение требуемого значения каждой характеристики качества, но и тем, как распределяются и как используются эти ресурсы. Достижение высоких значений характеристик качества программ существенно зависит от качества технологии и инструментальных средств, используемых разработчиками для обеспечения ЖЦ ПС, а также от технологии и средств, применяемых при оценивании достигнутых характеристик качества программ.
Таким образом, можно выделить следующие составляющие технологических затрат в ЖЦ ПС:
на приобретение или создание технологии и инструментальных средств, применяемых для обеспечения требуемого качества всего ЖЦ ПС;
на эксплуатацию и непосредственное применение технологии в процессе обеспечения ЖЦ ПС;
на создание технологии и инструментальных средств для испытаний и оценивания требуемых характеристик качества ПС;
на выполнение измерений и оценивания достигнутых значений характеристик качества ПС.
Оценивание качества технологической базы ЖЦ позволяет прогнозировать возможное качество ПС и ориентировать заказчика и пользователей при выборе разработчика и поставщика для определенного проекта с требуемыми характеристиками качества. Очевидно, что низкий уровень технологии и средств разработки программ не может обеспечить их высокое качество и достоверное его оценивание. Поэтому определение уровня зрелости технологической поддержки процессов ЖЦ, организационного и инструментального обеспечения качества ПС непосредственно связано с выбором и оцениванием реальных или возможных характеристик качества конкретного комплекса программ.
Значительные достижения в организации, планировании, развитии и применении современных методов и технологии обеспечения крупномасштабных проектов ПС сосредоточены в методологиях и стандартах СММ/CMMI:2003 (Capability Maturity Model – Система и модель для оценки зрелости/ Capability Maturity Model Integration – Интегрированная модель оценивания зрелости программной инженерии) комплекса технологических процессов ЖЦ ПС.
Они основаны на формализации и использовании уровней зрелости технологий поддержки ЖЦ ПС, которые также определяют потенциально возможное качество создаваемых на предприятии комплексов программ. Чем выше уровень зрелости, тем выше статус предприятия среди поставщиков, доверие к его продукции, его конкурентоспособность, а также возможное качество ПС. Тем самым при выборе требований к характеристикам качества ПС можно в соответствующей степени доверять поставщику и предприятию разработчика, что они смогут полностью реализовать требования заказчика.
Эти уровни зрелости характеризуются:
степенью формализации;
адекватностью измерения и документирования процессов и продуктов в ЖЦ ПС;
полнотой применения стандартов и инструментальных средств автоматизации работ;
наличием системы качества технологических процессов.
Назначение методологии СММ/CMMI – системы и модели оценки зрелости – состоит в предоставлении необходимых общих рекомендаций и инструкций предприятиям, производящим ПС, по выбору стратегии совершенствования качества, процессов и продуктов путем анализа степени их производственной зрелости и оценивания факторов, в наибольшей степени влияющих на качество ЖЦ ПС, а также посредством выделения процессов, требующих модернизации.
В методологии СММ выделены пять уровней зрелости, раскрываемые в стандарте (рис.5.1).
Виды деятельности для высоких уровней зрелости в соответствии с СММ в стандарте делятся на базовые и общие. Базовые виды деятельности являются обязательными и сгруппированы в пять категорий: контрактная; инженерная; управленческая; вспомогательная; организационная (табл.2.2).
Общие виды деятельности приложимы к любому процессу и необходимы для управления им и улучшения характеристик его выполнения. Они включаются в группы и уровни производственной зрелости.
Р ис.5.1. Уровни зрелости процессов по методологии CMM
Эти уровни зрелости характеризуются степенью формализации, адекватностью измерения и документирования процессов и продуктов ЖЦ ПС, широтой применения стандартов и инструментальных средств автоматизации работ, наличием и полнотой реализации функций системы обеспечения качества технологических процессов и их результатов.
Описание процессов ЖЦ ПС в СММ сфокусировано на поэтапном определении реально достигаемых результатов и на оценивании качества их выполнения. Качество процессов зависит от технологической среды, в которой они выполняются.
Зрелость процессов – это степень их управляемости, возможность поэтапной количественной оценки качества, контролируемость и эффективность результатов (рис.5.1). Модель зрелости предприятия представляет собой методический нормативный материал, определяющий правила создания и функционирования системы управления ЖЦ ПС, методы и стандарты постепенного повышения культуры и качества производства. Рост зрелости обеспечивает потенциальную возможность возрастания эффективности и согласованности использования процессов создания, сопровождения и оценивания качества компонентов и ПС в целом.
Реальное использование регламентированных процессов предполагает их документирование и поэтапный контроль характеристик качества ПС. На предприятиях, достигших высокого уровня зрелости, формализованные процессы ЖЦ ПС должны принимать статус стандарта, фиксироваться в организационных структурах и определять производственную тактику и стратегию корпоративной культуры производства и системы обеспечения качества ПС.
Уровень 1 – начальный. Массовые разработки проектов ПС характеризуются относительно небольшими объемами программ в несколько тысяч строк, создаваемых несколькими специалистами. Они применяют простейшие неформализованные технологии с использованием типовых инструментальных компонентов операционных систем. Основные процессы ЖЦ ПС на этом уровне не регламентированы, выполняются не совсем упорядоченно и зависят от некоординированных индивидуальных усилий и свойств специалистов. Успех проекта, как правило, зависит от энергичности, таланта и опыта нескольких руководителей и исполнителей. Процессы на первом уровне характеризуются своей непредсказуемостью по срокам в связи с тем, что их состав, назначение и последовательность выполнения могут меняться случайным образом в зависимости от текущей ситуации.
Уровень 2 – управляемый – базовое управление. Для сложных проектов ПС объемом в десятки и сотни тысяч строк, в которых участвуют десятки специалистов разной квалификации, необходимы организация, регламентирование технологии и унификация процессов деятельности каждого из них. Процессы на этом уровне заранее планируются, их выполнение контролируется. Этим достигается предсказуемость результатов и времени выполнения этапов, компонентов и проекта в целом. Основной особенностью уровня является наличие формализованных и документированных процессов управления проектами, которые пригодны для модернизации, а их результаты поддаются количественной оценке. На этом уровне акценты управления сосредоточиваются на предварительном упорядочении и регламентировании процессов создания, сопровождения и оценивания качества ПС. Однако для крупномасштабных проектов ПС с гарантированным качеством, риск провала может оставаться еще достаточно большим.
Уровень 3 – определенный – стандартизация процессов. При высоких требованиях заказчика и пользователей к конкретным характеристикам качества сложного ПС и к выполнению ограничений по использованию ресурсов, необходимо дальнейшее совершенствование и повышение уровня зрелости процессов ЖЦ ПС. Процессы ЖЦ ПС на этом уровне должны быть стандартизированы, и представлять собой единую технологическую систему, обязательную для всех подразделений. На основе единой технологии поддержки и обеспечения качества ЖЦ ПС, для каждого проекта могут разрабатываться дополнительные процессы последовательного оценивания качества продуктов с учетом их особенностей. Описание каждого процесса должно включать условия его выполнения, входные данные, рекомендации стандартов и процедуры выполнения, механизмы проверки качества результатов, выходные данные, условия и документы завершения процессов. В описания процессов включаются сведения об инструментальных средствах, необходимых для их выполнения, роль, ответственность и квалификация специалистов.
Уровень 4 – предсказуемый – количественное управление. Для реализации проектов сложных крупномасштабных ПС в жестко ограниченные сроки и с высоким гарантированным качеством необходимы активные меры для предотвращения и выявления дефектов и ошибок на всех этапах ЖЦ ПС. Управление должно обеспечивать выполнение процессов в соответствии с текущими требованиями к характеристикам качества компонентов и ПС в целом. На этом уровне должна применяться система детального поэтапного оценивания характеристик качества, как технологических процессов ЖЦ, так и самого создаваемого программного продукта и его компонентов. Должны разрабатываться и применяться универсальные методики количественной оценки реализации процессов и их качества. Одновременно с повышением сложности и требований к качеству ПС, следует совершенствовать управление проектами за счет сокращения текущих корректировок и исправлений дефектов при выполнении процессов. Результаты процессов становятся предсказуемыми по срокам и качеству в связи с тем, что они измеряются в ходе их выполнения и реализуются в рамках заданных ресурсных ограничений.
Уровень 5 – оптимизационный – непрерывное совершенствование и улучшение. Дальнейшее последовательное совершенствование и модернизация технологических процессов ЖЦ ПС для повышения качества их выполнения и расширение глубины контроля за их реализацией. Одна из основных целей этого уровня – сокращение проявлений и потерь от случайных дефектов и ошибок путем выявления сильных и слабых сторон используемых процессов. При этом приоритетным является анализ рисков, дефектов и отклонений от заданных требований заказчика. Эти данные также используются для снижения себестоимости ЖЦ особо сложных ПС в результате внедрения новых технологий и инструментария, а также для планирования и осуществления модернизации всех видов процессов. Технологические нововведения, которые могут принести наибольшую выгоду, должны стандартизироваться и адаптироваться в комплексную технологию обеспечения и оценивания системы качества предприятия и его продукции.
В 2002 году американский институт программной инженерии (SEI) опубликовал новую модель CMMI, уточняющую и совершенствующую предшествовавшие модели CMM, а также учитывающую основные требования существующих международных стандартов в области менеджмента ПС. Внедрение этой модели акцентировано на улучшении процессов управления проектами ПС, обеспечении их высокого качества и конкурентоспособности с основной целью – сделать процессы проектов более управляемыми, а результаты – предсказуемыми. Значительное внимание в CMMI уделяется процессам разработки и учету итераций требований заказчиков, их прослеживанию к функциям, компонентам, тестам и документам проекта.
Модель базируется на сохранении концепции пяти уровней зрелости CMM. Первый и пятый уровни отличаются значительной нестабильностью и неопределенностью процессов в различных проектах, поэтому при уточнении и детализации содержания процессов целесообразно ограничиваться тремя основными, средними уровнями (рис.5.1):
второй уровень – формализует базовое управление проектами: управление требованиями; планирование; мониторинг и контроль; измерение и анализ; обеспечение качества; управление конфигурацией;
третий уровень – содержит стандартизацию процессов: разработка требований; интеграция продукта; верификация; валидация; обеспечение стандартного процесса; обучение; интегрированное управление; управление рисками; анализ и разрешение проблем (устранение дефектов);
четвертый уровень – определяет количественное управление качеством процессов; количественное управление всем проектом и ресурсами.
Рекомендуется на каждом более высоком уровне зрелости применять все процессы предыдущих нижних уровней. Упорядочение и оценка используемых процессов в соответствии с уровнями, позволяет устанавливать производственный потенциал предприятий – разработчиков программных продуктов по прогнозируемому качеству результатов их деятельности и возможности сертификации. Это уменьшает зависимость заказчиков и пользователей от возможных недостатков исполнителей проектов и позволяет их выбирать с учетом прогнозируемого качества продуктов.
Практически все перечисленные процессы и требования, конкретизированные на трех выделенных уровнях модели CMMI, соответствуют регламентированным и детализированным в стандартах ISO 9001:2000, ISO/IEC 12207 и основных компонентах профиля стандартов ЖЦ сложных ПС (рис.2.2). Стандарты CMMI и ISO 9001:2000 во многом подобны по структуре и содержанию требований к организации и планированию ЖЦ ПС.
Требованиям в функциональных разделах 4–8 стандарта ISO 9001 могут быть сопоставлены подобные по содержанию разделы в модели CMMI (на рис.5.2 зона перекрытия содержания).
Общность процессов и требований CMMI и ISO 9001 состоит в подобии терминологии, структуры, рекомендуемых процессов управления, планирования, учета доступных ресурсов, оценивания организации специалистов. Некоторые требования в ISO 9001 и тем более положения и рекомендации почти всего профиля стандартов не покрываются содержанием требований в моделях CMMI. Требования ISO 9001 развиваются и детально комментируются процессами их реализации в стандарте ISO 9004:2000 и в представленном профиле, включающем около 40 стандартов (рис.2.2), что не предусмотрено в рекомендациях CMMI.
Таким образом, при практической реализации и обеспечении всего ЖЦ сложных ПС разработчикам и поставщикам целесообразно использовать полный профиль стандартов, а для оценивания заказчиками уровня менеджмента, организационного и технологического обеспечения проектов ПС применять конкретные рекомендации CMMI или ISO 9001:2000. Эти рекомендации могут эффективно использоваться при сертификации качества процессов на предприятиях, обеспечивающих ЖЦ ПС, как альтернатива или наряду с сертификацией по комплексу стандартов менеджмента ISO 9000 в зависимости от особенностей проекта и требований заявителя на сертификацию программного продукта и/или технологии обеспечения его ЖЦ.
Р ис.5.2. Общность процессов и требований стандартов и моделей зрелости
- Стандартизация и сертификация программного обеспечения
- © Уо «пгу», 2007Содержание введение
- Рабочая программа
- Рейтинговая оценка знаний
- Конспект лекций
- 1. Качество как экономическая категория и объект управления
- 1.1. Понятие качества. Предмет и задачи курса
- 1.2. Управление качеством как фактор успеха предприятия в конкурентной борьбе
- 1.3. Стандартизация в системе управления качеством
- 1.3.1. Система стандартизации
- 1.3.2. Категории нормативных документов
- 1.3.3. Уровни стандартизации
- 1.4. Механизм управления качеством
- 1.5. Стандарты исо серии 9000
- 1.5.1. Фундаментальные требования
- 1.5.2. Структура комплекса стандартов
- 1.5.3. Структура документов системы управления качеством
- 1.5.4. Как работает система управления качеством
- 1.6. Сертификация продукции, услуг и систем менеджмента качества
- 1.6.1. Основные предпосылки сертификации
- 1.6.2. Обязательная и добровольная сертификация
- 1.6.3. Национальная система сертификации
- 1.6.4. Схемы сертификации и условия их применения
- 1.6.5. Порядок проведения работ по сертификации
- Вопросы по теме
- 2. Жизненный цикл программнЫх средств
- 2.1. Понятие жизненного цикла
- 2.2. Базовый профиль жизненного цикла программных средств
- 2.3. Особенности стандартизации жизненного цикла программных средств
- 2.4. Методическая основа технологии жизненного цикла программных средств
- 2.5. Преимущества применения стандартов жизненного цикла
- 2.6. Структура профилей стандартов жизненного цикла программных средств
- 2.7. Стандартизация жизненного цикла программных средств
- 2.7.1. Стандарт iso/iec 12207
- 2.7.2. Стандарт iso 15504
- 2.8. Модель жизненного цикла программного продукта
- 2.8.1. Схема модели
- 2.8.2. Каскадная модель
- 2.8.3. Спиральная модель
- 2.8.4. Другие типы моделей
- Вопросы по теме
- 3. Основные понятия и характеристики качества программных средств
- 3.1. Основные факторы, определяющие качество программных средств
- 3.2. Стандарты, регламентирующие характеристики качества
- 3.3. Метрики характеристик качества программных средств
- 3.4. Особенности измерения и оценивания характеристик качества
- 3.5. Негативные факторы, влияющие на качество
- 3.6. Ресурсы, ограничивающие достижимые характеристики качества
- Вопросы по теме
- 4. Выбор мер и шкал характеристик качества программных средств
- 4.1. Принципы выбора характеристик качества
- 4.2. Выбор свойств и атрибутов качества функциональных возможностей
- 4.2.1. Функциональная пригодность
- 4.2.2. Корректность и надежность
- 4.2.3. Способность к взаимодействию
- 4.2.4. Защищенность
- 4.3. Выбор количественных атрибутов характеристик качества
- 4.3.1. Надежность
- 4.3.2. Эффективность
- 4.4. Выбор качественных атрибутов характеристик качества
- 4.4.1. Практичность
- 4.4.2. Сопровождаемость
- 4.4.3. Мобильность
- 4.4.4. Качество документации
- 4.5. Процессы выбора и установления характеристик и мер качества в проектах программных средств
- Вопросы по теме
- 5. Стандартизация оценивания технологических процессов жизненного цикла и характеристик качества программных средств
- 5.1. Оценивание уровня зрелости процессов жизненного цикла и обеспечения качества программных средств
- 5.2. Оценивание жизненного цикла программных средств по стандарту iso 15504
- 5.3. Оценивание качества готового программного продукта по стандарту iso 14598
- 5.4. Организация и средства для оценивания качества комплексов программ
- 5.4.1. Модель внешней среды
- 5.4.2. Испытания программного продукта
- 5.4.3. Альфа– и Бета–тестирование
- 5.4.4. Программная генерация тестов
- 5.4.5. Обработка результатов испытаний
- Вопросы по теме
- 6. Единая система программной документации
- 6.1. Общая характеристика еспд
- 6.2. Структура еспд
- 6.3. Гост 19.101. Виды программ и программных документов
- 6.4. Гост 19.102. Стадии разработки
- 6.5. Гост 19.103. Обозначение программ и программных документов
- 6.6. Гост 19.105. Общие требования к программным документам
- 6.7. Гост 19.104. Основные надписи
- 6.8. Гост 19.106. Требования к программным документам, выполненным печатным способом
- 6.9. Гост 19.201. Техническое задание. Требования к содержанию и оформлению
- 6.10. Гост 19.202. Спецификация. Требования к содержанию и оформлению
- 6.11. Гост 19.301. Программа и методика испытаний. Требования к содержанию, оформлению и контролю качества
- 6.11.1. Требования к содержанию
- 6.11.2. Показатели качества, определяемые на основе результатов анализа раздела «Требования к программе»
- 6.11.3. Показатели качества, определяемые на основе результатов анализа раздела «Требования к программной документации»
- 6.11.4. Показатели качества, определяемые на основе результатов анализа раздела «Средства и порядок испытаний»
- 6.11.5. Показатели качества, определяемые на основе результатов анализа раздела «Методы испытаний»
- 6.12. Гост 19.401. Текст программы. Требования к содержанию и оформлению
- 6.13. Гост 19.402. Описание программы
- 6.14. Гост 19.404. Пояснительная записка. Требования к содержанию и оформлению
- 6.15. Гост 19.502. Описание применения. Требования к содержанию и оформлению
- 6.16. Гост 19.503. Руководство системного программиста. Требования к содержанию и оформлению
- 6.17. Гост 19.504. Руководство программиста. Требования к содержанию и оформлению
- 6.18. Гост 19.505. Руководство оператора. Требования к содержанию и оформлению
- 6.19. Гост 19.508. Руководство по техническому обслуживанию. Требования к содержанию и оформлению
- Вопросы по теме
- 7. Оценивание характеристик качества программных средств
- 7.1. Оценивание функциональных возможностей
- 7.1.1. Функциональная пригодность
- 7.1.2. Корректность
- 7.1.3. Способность к взаимодействию
- 7.1.4. Защищенность
- 7.2. Оценивание надежности функционирования
- 7.3. Оценивание эффективности использования ресурсов эвм
- 7.4. Оценивание практичности
- 7.5. Оценивание сопровождаемости
- 7.6. Оценивание мобильности
- 7.7. Оценивание качества эксплуатационной и технологической документации
- 7.7.1. Документирование в процессах жизненного цикла
- 7.7.2. Технологическая документация
- 7.7.3. Эксплуатационная документация
- 7.8. Оценивание рисков в жизненном цикле
- 7.9. Интегральное оценивание характеристик качества
- Вопросы по теме
- 8. Сертификация программного обеспечения
- 8.1. Организация сертификации программных продуктов
- 8.2. Документирование процессов и результатов сертификации
- Вопросы по теме
- Практические занятия практическая работа № 1 выбор характеристик и мер качества программного средства по стандарту isO 9126
- План практического занятия
- Практическая работа № 2 разработка технического задания на создание программного средства
- План практического занятия
- Практическая работа № 3 разработка технологической документации на программное средство
- План практического занятия
- Практическая работа № 4 разработка эксплуатационной документации на программное средство
- План практического занятия
- Практическая работа № 5 Оценивание качества программного продукта по стандарту гост 28195
- Словарь основных терминов
- Список использованных источников
- Перечень основных международных стандартов в области обеспечения жизенного цикла и качества программных средств
- 211440 Г. Новополоцк, ул. Блохина, 29