Главная страница
Навигация по странице:

  • конкуренции

  • быстро, в срок и с удовлетворительным качеством.

  • 5:1 до 8:1 Качество и стандарты Одной из первых моделей качества стал стандарт ISO

  • серии 9000

  • Новые стандарты и методологии Наиболее разработаны Capability Maturity Model (CMM) и ISO/IEC 15504 (SPICE)

  • Capability Maturity Model

  • Зрелость организации (2) В зрелой организации имеются четко определенные процедуры

  • Зрелость организации (3)

  • Базовые посылки стандарта CMM

  • Базовые посылки стандарта CMM (2)

  • Пять уровней зрелости в модели CMM Начальный уровень

  • Уровень управления На уровне управления ( managed level

  • Уровень оптимизации ( optimizing level

  • Проблемы при использовании СММ

  • Материалы по CMM сайт Software Engineering Institute: http://www.sei.cmu.edu/cmm SPICE

  • Предшественники стандарта SPICE Характеристики SPICE

  • Уровни способностей процесса в стандарте SPICE

  • Упрощенная модель оценки процессов в стандарте SPICE Основные элементы стандарта SPICE Оценка процесса

  • Цели совершенствования процесса

  • Структура документации по стандарту SPICE

  • Преимущества SPICE по сравнению с ISO 9001

  • Современные модели качества ПО. Современные модели качества программного обеспечения


    Скачать 28.36 Kb.
    НазваниеСовременные модели качества программного обеспечения
    Дата05.06.2022
    Размер28.36 Kb.
    Формат файлаdocx
    Имя файлаСовременные модели качества ПО.docx
    ТипДокументы
    #570595

    Современные модели
    качества программного обеспечения


    Современная индустрия ПО характеризуется очень высокой степенью конкуренции.
    Для успешной работы на этом рынке компания должна разрабатывать, внедрять и сопровождать программное обеспечение быстро, в срок и с удовлетворительным качеством.
    Улучшения процессов разработки ПО показывает, что в успешных случаях наблюдается существенное улучшение производительности и качества со средним уровнем возврата вложений от
    5:1 до 8:1
    Качество и стандарты


    Одной из первых моделей качества стал стандарт ISO (Международной организации по стандартизации) серии 9000, первая версия которого была выпущена в 1987 году.
    Недостатки серии ISO 9000


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


    Наиболее разработаны Capability Maturity Model (CMM) и ISO/IEC 15504 (SPICE)
    Существуют также такие стандарты, как Bootstrap, Trillium, ориентированный на разработку продуктов в области телекоммуникаций и ISO 12207, посвященный жизненному циклу программного обеспечения.
    Capability Maturity Model


    «модель зрелости процесса разработки ПО»
    1991 год, SEI (Software Engineering Institute – Институт системного программирования при университете Карнеги-Меллон) опубликовал первую версию этого стандарта.


    Изначальной целью разработки стандарта было создание методики, позволяющей крупным правительственным организациям США выбирать наилучших поставщиков ПО.


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


    Главным понятием стандарта является зрелость организации.
    Незрелой считается организация, в которой процесс разработки программного обеспечения зависит только от конкретных исполнителей и менеджеров, и решения зачастую просто импровизируются "на ходу".
    Зрелость организации (2)


    В зрелой организации имеются четко определенные процедуры создания программных продуктов и управления проектами.
    Эти процедуры по мере необходимости уточняются и совершенствуются в пилотных проектах или с помощью анализа стоимость/прибыль.
    Зрелость организации (3)


    Оценки времени и стоимости выполнения работ основываются на накопленном опыте и достаточно точны.
    В компании существуют стандарты на процессы разработки, тестирования и внедрения ПО, правила оформления конечного программного кода, компонент, интерфейсов и т.д.
    Все это составляет инфраструктуру и корпоративную культуру, поддерживающую процесс разработки программного обеспечения.
    Базовые посылки стандарта CMM


    Стандарт в целом состоит из критериев оценки зрелости организации и рецептов улучшения существующих процессов.
    В этом наблюдается принципиальное различие с моделью, принятой в ISO 9001, так как в ISO 9001 сформулированы только необходимые условия для достижения некоторого минимального уровня организованности процесса, и не дается никаких рекомендаций по дальнейшему совершенствованию процессов
    Базовые посылки стандарта CMM (2)


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

    Начальный уровень


    Хаос (Initial) описан в стандарте в качестве основы для сравнения со следующими уровнями.
    На предприятии начального уровня организации не существует стабильных условий для созданий качественного программного обеспечения.
    Результат любого проекта целиком и полностью зависит от личных качеств менеджера и опыта программистов, причем успех в одном проекте может быть повторен только в случае назначения тех же менеджеров и программистов на следующий проект.
    Более того, если такие менеджеры или программисты уходят с предприятия, то с их уходом резко падает качество производимых программных продуктов.
    В стрессовых ситуациях процесс разработки сводится к написанию кода и его минимальному тестированию
    Уровень повторяемости


    Для достижения уровня повторяемости (Контроль (Repeatable) ) на предприятии должны быть внедрены технологии управления проектами.
    При этом планирование и управление проектами основывается на накопленном опыте, существуют стандарты на разрабатываемое программное обеспечение и существует специальная группа обеспечения качества.
    Уровень определенности


    Начало оптимизации (Defined), который характеризуется тем, что стандартный процесс создания и сопровождения программного обеспечения задокументирован (включая и разработку ПО, и управление проектами).
    Для создания и поддержания подобного стандарта в организации должна быть создана специальная группа.


    Обязательным условием для достижения данного уровня является наличие на предприятии программы постоянного повышения квалификации и обучения сотрудников. Начиная с этого уровня, организация перестает зависеть от качеств конкретных разработчиков, и не имеет тенденции скатываться на уровень ниже в стрессовых ситуациях.
    Уровень управления


    На уровне управления (managed level) в организации устанавливаются количественные показатели качества – как на программные продукты, так и на процесс в целом.
    Более совершенное управление проектами достигается за счет уменьшения отклонений различных показателей проекта.
    Уровень оптимизации


    (optimizing level) характеризуется тем, что мероприятия по улучшению применяются не только к существующим процессам, но и для оценки эффективности ввода новых технологий.
    Основной задачей всей организации является постоянное улучшение существующих процессов.
    Должны вестись работы по уменьшению стоимости разработки программного обеспечения, например, с помощью создания и повторного использования компонентов.
    Сертификация


    При сертификации проводится оценка соответствия всех ключевых областей по 10-балльной шкале. Для успешной квалификации данной ключевой области необходимо набрать не менее 6 баллов. Оценка ключевой области производится по следующим показателям:
    Заинтересованность руководства в данной области (планируется ли практическое внедрение данной ключевой области, существует ли понимание у руководства необходимости данной области и т.д.).
    Сертификация (2)


    Насколько широко данная область применяется в организации (например, оценке в 4 балла соответствует фрагментарное применение).
    Успешность использования данной области на практике (например, оценке в 0 баллов соответствует полное отсутствие какого-либо эффекта, а оценка в 8 баллов выставляется при наличии систематического и измеримого положительного результата практически во всей организации).
    Сертификация (3)


    Можно сертифицировать только один процесс или подразделение организации, например, подразделение разработки программного обеспечения компании IBM сертифицировано на пятый уровень.
    В мире существует немного компаний пятого уровня CMM, хотя бы в одном из подразделений – таких всего около 50.
    Cуществует несколько тысяч компаний, сертифицированных по 3 или 4 уровню.
    Существует колоссальный разрыв между оптимизированным уровнем зрелости и предыдущими уровнями. Еще больший разрыв наблюдается между количеством организаций начального уровня и более высоким уровнем
    Сертификация (4)


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


    Особенно важен подбор сотрудников для организаций первого уровня, так как сотрудники для них являются единственной гарантией качества. Но и на более высоких уровнях зрелости "человеческий фактор" сохраняет свою значимость.
    В 1995 году был опубликован стандарт People CMM, являющийся дополнением к Software CMM и имеющий, в целом, похожую структуру.


    Внедрение этого стандарта параллельно с обычным CMM обеспечивает организацию целым набором процедур по оценке и развитию всей системы найма, обучения и сохранения квалифицированных сотрудников.
    Расширения СММ


    Кроме People CMM, возникло еще несколько моделей, дополняющих CMM, например, в приобретении ПО или разработке крупных систем.
    CMM Integration
    Проблемы при использовании СММ


    стандарт CMM является собственностью Software Engineering Institute и не является общедоступным ;
    оценка качества процессов организаций может проводиться только специалистами, прошедшими специальное обучение и аккредитованными SEI;
    стандарт ориентирован на применение в относительно крупных компаниях
    Материалы по CMM


    сайт Software Engineering Institute: http://www.sei.cmu.edu/cmm


    SPICE


    В 1991 году Международная организация по стандартизации инициировала работу по созданию единого стандарта оценки программных процессов SPICE (Software Process Improvement and Capability dEtermination, определение возможностей и улучшение процесса создания программного обеспечения).
    Официально стандарт называется "ISO/IEC 15504: Information Technology - Software Process Assessment"
    Задачей SPICE является создание международного стандарта, в котором был бы учтен весь накопленный опыт в области разработки ПО
    Предшественники стандарта SPICE

    Характеристики SPICE


    Так же, как и в CMM, основной задачей организации является постоянное улучшение процесса разработки ПО.
    В SPICE используется схема с различными уровнями возможностей (в SPICE определено 6 различных уровней), но эти уровни применяются не только к организации в целом, но и к отдельно взятым процессам.
    Уровни способностей процесса в стандарте SPICE


    Уровень 0 - Процесс не выполняется
    Уровень 1- Выполняемый процесс
    1.1- Измерение производительности процесса
    Уровень 2 - Управляемый процесс
    2.1 - Управление производительностью
    2.2 - Управление созданием продуктов
    Уровень 3 - Установленный процесс
    3.1 - Документирование процесса
    3.2 - Отслеживание ресурсов процесса
    Уровень 4 - Предсказуемый процесс
    4.1- -Измерение процесса
    4.2 - Управление процессом
    Уровень 5 - Оптимизирующий процесс
    5.1 - Изменение процесса
    5.2 - Постоянное совершенствование
    Упрощенная модель оценки процессов в стандарте SPICE

    Основные элементы стандарта SPICE

    Оценка процесса


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


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


    В результате предыдущих шагов в организации может появиться понимание необходимости улучшения того или иного процесса. К этому моменту цели совершенствования процесса уже четко сформулированы и остается только техническая реализация поставленных задач. После этого весь цикл работ начинается сначала.
    Структура документации по стандарту SPICE


    Набор документов по SPICE состоит из 9 частей.
    Первая часть "Введение и основные концепции" и девятая часть "Словарь" носят чисто информативный характер.
    Вторая часть стандарта содержит так называемую "эталонную модель" (reference model), которая описывает процессы. Результаты оценки процессов с помощью SPICE выглядят достаточно сложно и потому требуют некоторого упрощения для понимания неподготовленным человеком


    Остальные части стандарта – седьмая и восьмая – посвящены соответственно улучшению процесса, и определению возможностей процесса.


    полный текст SPICE можно получить на официальном сайте SPICE: http://www.sqi.gu.edu.au/spice
    Преимущества SPICE по сравнению с ISO 9001


    SPICE


    ISO 9001


    Объемный и подробный документ


    Краткий документ


    Детальная модель


    Абстрактная модель


    Улучшение процесса и определение возможностей


    Только сертификация


    Шесть уровней возможностей процессов


    Сертификация/отказ


    Требования к оценке процесса, руководство по применению


    Только модель


    Дополняет ISO 9001


    Может быть детализирован с помощью SPICE

    Преимущества SPICE


    SPICE предоставляет более полный набор средств по обеспечению качества и улучшению процессов, чем ISO 9001. Поэтому для обеспечения качества процессов разработки ПО рекомендуется использовать именно SPICE. Это поможет организации заметно улучшить существующие процессы, а затем при необходимости получить и сертификат ISO 9001.
    Преимущества SPICE (2)


    Использовать SPICE можно и в небольших компаниях – об этом свидетельствуют результаты работы проекта SPIRE, в рамках которого проводилось внедрение процессов улучшения качества в малых (менее 50 человек) компаниях из различных стран Европы. Как показал этот опыт, и при небольших денежных вложениях в маленьких компаниях можно добиться существенного увеличения производительности труда и улучшения качества произведенных продуктов. Результаты исследований, проведенных в рамках проекта SPIRE, можно найти по адресу http://www.cse.dcu.ie/spire
    Преимущества SPICE (3)


    На официальном сайте SPICE любая организация может зарегистрироваться для участия в SPICE Trials (пробных применениях).
    На сайте группы пользователей SPICE (http://www.iese.fhg.de/SPICE/) собрано большое количество информации о самом стандарте, доступных ресурсах и его применениях на практике.
    Выходит журнал SPICE.World, целиком посвященный SPICE ( http://www.spiceworld.hm).
    Критерий «шести сигм»


    "Шесть сигм" - это подход к совершенствованию бизнеса, который стремится найти и исключить причины ошибок или дефектов в бизнес-процессах путем сосредоточения на тех выходных параметрах, какие оказываются критически важными для потребителя.
    Подход был впервые развит компанией "Моторола"
    "Дженерал Электрик"


    "Шесть сигм" - это видение (мечта, vision) качества, равного всего лишь 3,4 дефекта на миллион возможностей для любой продукции или услуги. Стремление к совершенству."
    Влияние воспроизводимости процессов на конкурентоспособность организаций


    Расстояние


    Число дефектов на миллион


    Организация


    6 сигм


    3.4


    Мировой класс


    5 сигм


    233





    4 сигмы


    6210


    Средняя по отрасли


    3 сигмы


    66807





    2 сигмы


    308537


    Неконкурентна


    1 сигма


    690000




    Цикл Шухарта - Деминга


    <Планируй> - формулировки целей и задач, выявление ключевых параметров для достижения успеха, план совершенствования, выбор проекта и создание команды.
    <Делай> - обучение и тренировку, плюс внедрение.
    <Проверяй> - измерение улучшений, оценку эффективности и анализ, пересмотр проектов.
    <Внедряй> - корректировка внедрения, непрерывность совершенствования, стандартизацию, изучение потребителей, бенчмаркинг, перепроектирование.
    Глоссарий


    Возможность процесса разработки ПО (software process capability) описывает ожидаемый результат, который можно достигнуть, следуя процессу разработки.
    Зрелость процесса разработки ПО (software process maturity) – это степень определенности, управляемости, измеряемости и эффективности процесса разработки ПО.
    Качество (quality) – степень соответствия системы, компоненты, процесса или службы потребностям и ожиданиям клиента или пользователя.
    Количественное управление процессом (quantitative process management) заключается в выявлении причин для особых отклонений процесса от планируемого и подобающего исправления этих причин (таким образом, качество процесса измеряется не в количестве написанных строк кода или найденных ошибок, а в соответствии процесса исходному плану).
    Глоссарий


    Обеспечение качества ПО (software quality assurance) предназначено для информирования руководства об успешности и зрелости процесса разработки ПО и конечных продуктах
    Определение процесса (process definition) - это рабочее определение набора мер, необходимых для достижения намеченных целей. Характеризуется стандартами, процедурами, обучением, средствами и методами.
    Планирование проекта (software project planning) устанавливает разумные планы для разработки ПО, на основе которых производится управление программным проектом.
    Постоянное улучшение процессов (continuous process improvement) обеспечивает повышение производительности, качества продуктов и уменьшение цикла разработки ПО.
    Предотвращение дефектов (defect prevention) заключается в определении причин возникновения дефектов и в принятии мер по предотвращению их дальнейшего возникновения.
    Глоссарий


    Программный процесс (software process) – набор технологических процедур, используемых организацией для планирования, управления, выполнения, контроля и улучшения работ по созданию ПО.
    Производительность программного процесса (software process performance) представляет собой реальные результаты венедрения программного процесса.
    Управление качеством (software quality management) – это процесс, состоящий из численного измерения качества процесса разработки ПО, формулирования определенных целей по улучшению качества и их достижению.
    Управление конфигурацией ПО (software configuration management) создает и поддерживает целостность продуктов программного проекта в течение всего жизненного цикла ПО.
    Управление изменениями технологий (technology change management) помогает определить и организованно внедрить на предприятии потенциально выгодные новые технологии (т.е. средства, методы и процессы).
    Глоссарий


    Управление программным проектом (software project tracking and oversight) состоит в отслеживании степени успешности и продвижении программного проекта и в принятии соответствующих мер при возникновении существенных отклонений проекта от плана.
    Управление субподрядчиками (software subcontract management) заключается в выборе квалифицированных субподрядчиков и эффективном управлении ими.
    Управление требованиями (requirements management) – это процесс приведения в соответствие представлений пользователя о желаемых результатах и формулируемых требований к разработчику программного проекта.
    Экспертная оценка программ (peer review) предназначена для эффективного и раннего обнаружения дефектов в ПО и может быть реализована с помощью просмотра исходных текстов, сквозного структурного контроля или иных методов коллективного изучения.
    ISO 9000-9004


    ISO 9000 "Общее руководство качеством и стандарты по обеспечению качества";
    ISO 9001 "Система Обеспечения Качества: Модель обеспечения качества при проектировании, разработке, производстве, монтаже и обслуживании";
    ISO 9002 "Система Обеспечения Качества: Модель обеспечения качества при производстве, монтаже и обслуживании"
    ISO 9003 "Система Обеспечения Качества: Модель обеспечения качества при окончательном контроле и испытаниях";
    ISO 9004 "Общее руководство качеством и элементы системы качества".
    ISO 9000-9004


    Стандарты ISO 9000 и ISO 9004 – не более чем справочники. Стандартами соответствия являются только ISO 9001, 9002 и 9003. Таким образом, бессмысленно говорить о сертификации или регистрации по ISO 9000 или ISO 9004. Предприятие может получить только сертификаты на соответствие ISO 9001, 9002 или 9003.
    Для организаций, занимающихся изготовлением программных продуктов, соответствующими стандартами являются ISO 9001 и ISO 9000-3 "Руководящие указания по применению ISO 9001 при разработке, поставке и обслуживании программного обеспечения".
    Стандарты ISO – дорогое удовольствие. Платным в этой системе является все: от самих стандартов до аудита и собственно сертификации. Небольшое количество свободно распространяемых материалов можно скачать с Web-страниц ISO: http://www.iso.ch
    С сентября 1999 года существует русскоязычный сайт, посвященный стандартам качества серии ISO 9000. Этот сайт организован и поддерживается компанией ЛАНИТ и расположен по адресу http://www.iso9000.ru


    написать администратору сайта