В.В. Липаев

Стандартизация характеристик и оценивания качества программных средств

Введение

На начальных этапах жизненного цикла (ЖЦ) программных средств (ПС) разработчики и/или заказчики предварительно формулируют цель проекта и детализируют ее в концепции, техническом задании или в спецификации требований. Эта детализация, прежде всего, состоит в выборе набора функций, которые должна будет выполнять информационная система (ИС) и ее программные средства. Каждая функция должна быть описана характеристиками качества, которые уточняют и конкретизируют требования к их содержанию и реализации.

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

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

НЕ нашли? Не то? Что вы ищете?

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

Стандарты, регламентирующие характеристики качества программных средств

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

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

Основой формального регламентирования показателей качества ПС является международный стандарт ISO 9126:1991 (ГОСТ Р ИСО / МЭК 9126-93) – "Информационная технология. Оценка программного продукта. Характеристики качества и руководство по их применению". Развитие этого международного стандарта проводится в направлении уточнения, детализации и расширения описаний характеристик качества комплексов программ. Для замены редакции 1991 года завершается разработка проекта стандарта ISO 9126-1-4, состоящего из четырех частей:

Часть 1: Модель качества;

Часть 2: Внешние метрики качества;

Часть 3: Внутренние метрики качества;

Часть 4: Метрики качества в использовании.

Стандарт ISO 9126:1991 предполагается заменить на две взаимосвязанные серии стандартов: ISO 9126:1-4 (проект) – "Качество программных средств" - и утвержденный стандарт ISO 14598 – 1-6:1998-2000 – "Оценивание программного продукта".

В первой части стандарта ISO 9126-1 приводится схема взаимосвязи частей стандарта ISO 9126 и частей стандарта ISO 14598, а также область применения, нормативные ссылки, термины и определения. Определяется модель характеристик качества ПС и ее связи с жизненным циклом. Модель детализируется в последующих частях стандарта. Требования пользователя к качеству в спецификациях должны в процессе верификации преобразовываться в требования к внешнему качеству, а затем в требования к внутреннему качеству. Процессы реализации требований к внутреннему качеству должны обеспечивать внешнее качество, а последнее - воплощаться в качество для пользователей. Кратко описаны компоненты этой модели преобразования и реализации требований к составляющим качества.

Модель внутренних и внешних характеристик качества ПС состоит из шести групп базовых показателей, каждая из которых детализирована несколькими нормативными субхарактеристиками:

Функциональная пригодность детализируется:

-  пригодностью для применения;

-  корректностью (правильностью, точностью);

-  способностью к взаимо­действию;

-  защищенностью.

Надежность рекомендуется характеризовать:

-  уровнем завер­шенности (отсутствия ошибок);

-  устойчивостью к дефектам;

-  восстанавливаемостью;

-  доступностью – готовностью.

Эффективность рекомендуется отражать:

-  временной эффективностью;

-  используемостью ресурсов.

Применимость (практичность) предлагается описывать:

-  понятностью;

-  простотой использования;

-  изучаемостью;

-  привлекательностью.

Сопровождаемость предлагается представлять:

-  удобством для анализа;

-  изменяемостью;

-  стабильностью;

-  тестируемостью.

Переносимость (мобильность) предлагается отражать:

-  адаптируемостью;

-  простотой установки – инсталляции;

-  сосуществованием – соответствием;

-  замещаемостью.

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

В стандарте выделена модель характеристик качества в использовании. В этой модели используются иные базовые характеристики по сравнению с моделью внутреннего и внешнего качества. Основными характеристиками качества ПС в использовании рекомендуются:

системная эффективность применения программного продукта по назначению;

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

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

удовлетворение требований и затрат пользователей в соответствии с целями применения ПС.

Вторая и третья части стандарта ISO 9126:2,3 посвящены формализации соответственно внешних и внутренних метрик характеристик качества сложных ПС.

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

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

Четвертая часть стандарта ISO 9126-4 предназначена для покупателей, поставщиков, разработчиков, сопровождающих, пользователей и менеджеров качества ПС. В ней повторена концепция трех типов метрик, а также аннотированы рекомендуемые виды измерений характеристик ПС: прямые, непрямые и индикаторы свойств (категорийные). Рассмотрена модель качества в использовании. Отмечаются необходимость идентификации назначения и специфики потребителей программного продукта, особенности выбора целей оценивания качества для различных сфер и этапов применения ПС. Обосновываются и комментируются выделенные показатели сферы (контекста) использования ПС и группы выбранных метрик для пользователей. В отличие от характеристик, описанных в предыдущих частях стандарта, в этой части для качества в использовании рекомендуется четыре: эффективность; продуктивность; удовлетворение требований и защищенность.

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

Характеристики, субхарактеристики и атрибуты качества ПС с позиции возможности и точности их измерения можно разделить на три типа, особенности которых следует уточнять при их выборе:

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

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

-  качественный – содержащий несколько упорядоченных или отдельных значений – категорий, которые характеризуются порядковой или точечной шкалой набора категорий (есть – нет, хорошо – плохо), устанавливаются, выбираются и оцениваются в значительной степени субъективно и экспертно.

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

Ко второму типу относятся достаточно достоверно и объективно измеряемые численные характеристики ПС. Значения этих характеристик обычно в наибольшей степени влияют на функциональные возможности и метрики в использовании ПС. Поэтому выбор и обоснование требуемых их значений должны проводиться наиболее аккуратно и достоверно уже при системном проектировании ПС. Их субхарактеристики могут быть описаны упорядоченными шкалами объективно измеряемых значений, требуемые численные величины которых могут быть установлены и выбраны заказчиками или пользователями ПС. Такими характеристиками являются Надежность и Эффективность комплексов программ (таблица 1). Надежность может отражаться временем наработки на отказ, средним временем восстановления, а также коэффициентом готовности – вероятностью застать ПС в работоспособном состоянии при нормальной эксплуатации. Эти величины могут выбираться и фиксироваться в техническом задании или спецификации требований, и сопровождаться методикой объективных, численных измерений при квалификационных испытаниях для сопоставления с требованиями. Для каждой из них может быть установлен допустимый диапазон определения численных значений и требуемая точность измерений.

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

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

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

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

Стандартизация оценивания качества готового программного продукта

Методологии оценивания характеристик качества готовых программных средств и их компонентов (программного продукта) на различных этапах жизненного цикла посвящен базовый международный стандарт ISO 14598-1-6:1998-2000 – "Оценивание программного продукта. Часть 1. 1999. Общий обзор. Часть 2. 2000. Планирование и управление. Часть 3. 2000. Процесс для разработчиков. Часть 4. 1999. Процесс для приобретателей. Часть 5. 1998. Процесс для оценщиков (испытателей). Часть 6. Документирование оценки модулей" (проект).

В первой части изложена концепция и методология применения стандарта. Отмечается глубокая связь его положений со стандартами ISO 12207 и ISO 9126. При этом ссылки на последний стандарт даются на новые редакции проектов его частей. Рекомендуется общая схема процессов оценивания характеристик качества программ, описанная более подробно в последующих четырех разделах. В схему процессов оценивания входят:

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

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

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

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

В этом стандарте, так же, как в ISO 9126, выделяются характеристики качества: для пользователей; внешние и внутренние показатели, а также схема взаимосвязи внутренних и внешних характеристик качества и их атрибутов. Для каждой характеристики качества рекомендуется формировать шкалу измерений с выделением требуемых, допустимых и неудовлетворительных значений.

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

Выделены разделы: концепция оценивания; специфика определения требований к процессам оценивания; идентификация характеристик и атрибутов качества для конкретных пользователей результатов испытаний. Требования к процессам оценивания рекомендуется структурировать на главные (функциональные), организационные, проектные, а также выделять внутренние и внешние показатели качества и их измерение. Рекомендуемая технология выполнения оценивания программ включает:

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

-  планирование и проектирование процессов их оценивания;

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

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

Реализация процессов оценивания должна быть достаточно автономной и независимой, однако, коррелированной с этапами жизненного цикла конкретного проекта ПС в соответствии с применяемой, адаптированной версией стандарта ISO 12207:1995. Характеристики и атрибуты качества рекомендуется использовать в терминах и понятиях новых (еще не утвержденных) версий четырех частей стандарта ISO 9126, а также путем применения шкал количественных и/или балльных оценок свойств или уровней качества с несколькими градациями.

Стандарт по оцениванию предлагается применять: лабораториям по тестированию комплексов программ и их компонентов, поставщикам, потребителям, пользователям и сертификационным организациям при оценивании качества программных средств на различных этапах жизненного цикла.

Заключение

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

Исключительное значение изложенных стандартов для повышения качества и обеспечения конкурентоспособности отечественных разработок на рынке программных продуктов, определяет необходимость срочного их перевода на русский язык и утверждения на уровне ГОСТ Р. Более подробно проблемы, методы и стандарты установления реальных характеристик качества ПС изложены в материале - Выбор и оценивание характеристик качества программных средств – 170 стр., 18 ил., 2001 г.

Владимир Васильевич Липаев, дтн, ИСП РАН

Таблица 1.

 


Таблица 2