Методы и средства инженерии программного обеспечения

       

Метрики качества программного обеспечения


В настоящее время  в программной инженерии еще не сформировалась окончательно система метрик. Действуют разные подходы и методы определения их  набора и методов измерения [6–8, 14, 15].

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

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

Согласно стандарта   [1]   метрики   определяются   по  модели  измерения атрибутов ПО на  всех этапах ЖЦ (промежуточная, внутренняя метрика) и особенно на этапе  тестирования   или   функционирования  (внешние  метрики) продукта.        

Остановимся на классификации метрик ПО, правилах для проведения  метрического анализа  и процесса их измерения.

Типы метрик.  Существует три типа метрик:

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

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

– метрики использования.

Метрики программного продукта включают:

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

– внутренние метрики, обозначающие  свойства, видимые  только команде разработчиков.

         



 Внешние  метрики  продукта включают такие метрики:

–  надежности   продукта, которые  служат для определения   числа дефектов;

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

– сопровождения, с помощью которых   измеряются   ресурсы   продукта (скорость, память, среда);

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


– общее число операций, повторно используемых и новых операций;

– число классов, наследующих специфические операции;

– число классов,  от  которых зависит данный класс;

– число пользователей класса или операций и др.

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

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

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

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

Метрики процессов включают метрики:

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

 – оценки стоимости работ специалистов за человека–дни либо  месяцы;

– ненадежности  процесса – число не обнаруженных дефектов при проектировании;

– повторяемости, которые устанавливают  степень  использования повторных компонентов.

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

– общее время разработки и отдельно время для каждой стадии;

– время модификации моделей;

– время выполнения работ на процессе;

– число найденных ошибок при инспектировании;

– стоимость проверки качества;

– стоимость процесса разработки. 

 

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

 


Содержание раздела