
- •Оглавление
- •Структурная схема cmmi – поэтапная репрезентация
- •Cmmi поэтапная репрезентация Уровни зрелости 2 и соответствующие ему области процессов
- •Обеспечение качества процессов и продукции (cmmi)
- •Обеспечение качества по (sw-cmm)
- •Обязательства по выполнению
- •Необходимые предпосылки
- •Выполняемые операции
- •Измерения и анализ
- •Проверка внедрения
- •ЧастьIi Качество программного обеспечения
- •Обеспечение качества по
- •Обеспечение качества надежности по
- •Методы борьбы со сложностью по
- •Обеспечение точности перевода
- •Преодоление барьера между пользователем и разработчиком
- •Контроль принимаемых решений
- •Измерение качества по
- •Краткий глоссарий cmmi
- •Литература
Обеспечение качества по
Проблема обеспечения качества программных изделий в последние годы приобрела особую значимость в связи с тем, что программное обеспечение приобрело статус коммерческого продукта. Показатели качества теперь стали включать в контракты на разработку программных изделий различного назначения. Обеспечение качества программного обеспечения - это планируемая систематическая совокупность действий, требующихся для создания качественной продукции, охватывающая разнообразные задачи, решение которых включает следующие виды деятельности:
применение специальных методов и средств, позволяющих аналитику дос тичь высококачественных спецификаций, а проектировщику создать высо кокачественный проект;
проведение формальных технических обзоров, которые служат основным инструментом для оценки качества выполненных работ;
тестирование программного изделия, объединяющее стратегию проведения тестовых испытаний с методами проектирования тестовых наборов данных, позволяющих эффективно обнаруживать ошибки в программном изделии, - при этом следует иметь в виду, что тестирование не позволяет одинаково эффективно обнаруживать все типы ошибок;
принудительное внедрение стандартов и формальных процедур, определяющих разработку программного изделия, и контроль за их применением;
контроль всех изменений, вносимых в программный продукт, являющийся объектом конфигурационного управления; каждое вносимое изменение является потенциальным источником ошибок и побочных эффектов; контроль за изменениями необходим как во время разработки, так и в процессе сопровождения;
измерения характеристик качества, необходимые для постоянного контроля уровня качества, а также для оценки влияния методологических и процедурных изменений на улучшение качества;
регистрация и документирование всех процедур, связанных с обеспечением качества изделий, предназначены для последующего использования и дли тельного хранения.
Формальные технические обзоры - важнейший вид деятельности по обеспечению качества программного изделия. Основные цели этих обзоров:
обнаружение ошибок в функциях, логике или способах реализации программного изделия;
подтверждение того, что программное изделие отвечает поставленным требованиям;
обеспечение того, что программное изделие представлено в соответствии с установленными стандартами;
установлениеединообразия разработки отдельных частей изделия;
упрощениепроцесса управления разработкой программного изделия.
Формальные обзоры служат основой для знакомства с программным обеспечением широкого круга специалистов, средством для изучения разных подходов к анализу, проектированию и реализации программного продукта. Формальные обзоры должны проводиться во время каждого шага разработки программного продукта, и в его проведении, как правило, принимают участие несколько человек. Для каждого обзора предварительно составляется список вопросов, подлежащих обсуждению.
Для проверки программного изделия могут использоваться в общем случае три вида обзоров:
технический обзор;
сквозной контроль;
внимательное изучение представленных материалов.
Все обзоры формальны, так как имеют четкие цели и строго определенные процедуры; все предназначены для идентификации дефектов программного обеспечения и отклонений от установленных спецификаций, планов и стандартов.
Спецификация качества определяет основные ориентиры (цели), которые на всех этапах разработки программного обеспечения так или иначе влияют при принятии различных решений на выбор подходящего варианта. Однако, каждый примитив качества имеет свои особенности такого влияния, тем самым, обеспечения его наличия в ПО может потребовать своих подходов и методов разработки ПО или отдельных его частей. Кроме того, отмечалась также противоречивость критериев качества ПОС и выражающих их примитивов качества: хорошее обеспечение одного какого-либо примитива качества ПО может существенно затруднить или сделать невозможным обеспечение некоторых других из этих примитивов. Поэтому существенная часть процесса обеспечения качества ПО состоит из поиска приемлемых компромиссов. Эти компромиссы частично должны быть определены уже в спецификации качества ПО: модель качества ПО должна конкретизировать требуемую степень присутствия в ПО каждого его примитива качества и определять приоритеты достижения этих степеней.
Обеспечение качества осуществляется в каждом технологическом процессе: принятые в нем решения в той или иной степени оказывают влияние на качество ПО в целом. В частности и потому, что значительная часть примитивов качества связана не столько со свойствами программ, входящих в ПО, сколько со свойствами документации. В силу отмеченной противоречивости примитивов качества весьма важно придерживаться выбранных приоритетов в их обеспечении. Но во всяком случае полезно придерживаться двух общих принципов:
сначала необходимо обеспечить требуемую функциональность и надежность программного обеспечения, а затем уже доводить остальные критерии каче ства до приемлемого уровня их присутствия в ПО;
нет никакой необходимости и может быть даже вредно добиваться более вы сокого уровня присутствия в ПО какого-либо примитива качества, чем тот, который определен в спецификации качества программного обеспечения.