2 Метрики качества программного обеспечения Классификация метрик качества программ Для измерения характеристик качества используют метрики. Метрика программного
обеспечения – это мера, позволяющая получить численное значение некоторого свойства
программного обеспечения или его спецификаций. Поскольку количественные методы
хорошо зарекомендовали себя в других областях, многие теоретики и практики
информатики пытались перенести данный подход и в разработку программного
обеспечения.
Метрика качества программ – система измерений качества программ. Измерения
характеристик можно выполнить объективно и достоверно. Однако не следует исключать
того, что оценка качества ПО в целом может быть связана с субъективной интерпретацией
получаемых оценок.
В зависимости от характеристик и особенностей применяемых метрик им ставятся в
соответствие различные измерительные шкалы:
номинальной шкале соответствуют метрики, классифицирующие программы на типы по признаку наличия или отсутствия некоторой характеристики без учета градаций;
порядковой шкале соответствуют метрики, позволяющие ранжировать некоторые характеристики путем сравнения с опорными значениями, т.е. измерение по этой шкале фактически определяет взаимное положение конкретных программ;
интервальной шкале соответствуют метрики, которые показывают не только относительное положение программ, но и то, как далеко они отстоят друг от друга;
относительной шкале соответствуют метрики, позволяющие не только расположить программы определенным образом и оценить их положение относительно друг друга, но и определить, как далеко оценки отстоят от границы, начиная с которой характеристика может быть измерена. Все метрики ПО разделяются на два класса:
a) метрики, характеризующие наиболее специфические свойства программ, т.е. метрики оценки качества самого ПО; b) метрики оценки технических характеристик и факторов разработки программ, т.е. метрики оценки условий разработки программ [
2
]
. В настоящее время в мировой практике используется несколько сотен метрик
программ. Существующие измерения качества программ можно сгруппировать по шести
направлениям:
1) измерения топологической и информационной сложности программ (производятся с помощью соответствующих метрик и представляют собой косвенные оценки надежности); 2) оценки функциональной надежности программных систем, позволяющие прогнозировать проявление ошибок в программе (производятся непосредственно с помощью моделей надежности); 3) измерения производительности ПО и оценки повышения его эффективности путем выявления ошибок проектирования; 4) измерения уровня языковых средств и оценки их применения; 2
Предмет обсуждения данного раздела – свойства программ. Условия и специфика разработки программ
находятся за рамками обсуждаемых вопросов.
5) измерения восприятия и понимания программных текстов, ориентированные на психологические факторы, существенные для сопровождения и модификации программ; 6) измерения производительности труда программистов для прогнозирования сроков разработки программ и планирования работ по созданию программных комплексов.