Эффективность программных средств и ее оценка

_Доклады БГУИР_

2007 апрель-июнь № 2

ИНФОРМАТИКА

УДК 004.4

ЭФФЕКТИВНОСТЬ ПРОГРАММНЫХ СРЕДСТВ И ЕЕ ОЦЕНКА

В В. БАХТИЗИН

Белорусский государственный университет информатики и радиоэлектроники П. Бровки, 6, Минск, 220013, Беларусь

Поступила в редакцию 18 января 2006

Проанализированы недостатки модели эффективности, определенной в серии стандартов ISO/IEC 9126-1-4. Предложено семейство метрик эффективности, учитывающих соотношения временных свойств программного средства и затрат ресурсов компьютера, а также заинтересованность пользователя в минимизации данного соотношения. Предложены формулы для вычисления значений метрик данного семейства.

Ключевые слова: качество, эффективность, подхарактеристика, метрика.

Введение

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

Модель качества программных средств

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

Общепринятой моделью, лежащей в основе оценки качества ПС, является модель, регламентированная в стандарте ISO/IEC 9126-1:2001 [1]. В соответствии с данным стандартом модель внутреннего и внешнего качества ПС представляет собой иерархическую структуру, состоящую из трех уровней (характеристика - подхарактеристика - метрика). Набор характеристик и подхарактеристик качества регламентирован, а набор метрик является рекомендуемым и может быть дополнен другими метриками.

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

Эффективность программных средств и ее подхарактеристики

Под эффективностью (efficiency) понимается способность ПС обеспечить соответствующую производительность в зависимости от количества используемых

вычислительных ресурсов в установленных условиях [1]. К ресурсам могут относиться другие ПС, конфигурация программных и аппаратных средств системы, материалы.

Эффективность включает три подхарактеристики: поведение во времени, использование ресурсов и соответствие эффективности.

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

Использование ресурсов (Resource utilisation) — это способность ПС использовать соответствующее количество всех типов ресурсов при выполнении своих функций в заданных условиях.

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

Недостатки существующих метрик эффективности

Метрики подхарактеристики поведение во времени определяют или прогнозируют временные атрибуты ПС (время отклика, продолжительность цикла обработки и т.п.) [2, 3]. Оценка временных атрибутов производится без учета того, за счет каких ресурсных затрат достигнуты данные атрибуты.

Метрики подхарактеристики использование ресурсов измеряют или прогнозируют задействованность ресурсов системы, частью которой является ПС, при его работе. К таким метрикам относятся, например, использование ввода/вывода, использование памяти, использование передач информации и т.п. [2, 3]. Оценка задействованности ресурсов системы выполняется без учета влияния их минимизации на временные свойства ПС.

Можно выделить следующие общие недостатки метрик эффективности, приведенных в стандартах [2, 3]:

во-первых, данными стандартами рекомендовано незначительное количество метрик эффективности по сравнению с количеством метрик других характеристик;

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

в-третьих, те метрики, которые представлены в относительных единицах, не обеспечивают попадание своих значений в рекомендуемый стандартами диапазон 0 - 1, что также затрудняет совместное использование метрик при интегральной оценке качества ПС;

в-четвертых, для подавляющего большинства метрик справедливо следующее соотношение: чем ниже измеренное значение метрики, тем выше значение его эффективности; следовательно, данные метрики не удовлетворяют таким критериям обоснованности метрик как корреляция, трассировка и непротиворечивость (данные критерии определены в [2, 3]);

в-пятых, метрики измеряют либо скоростные, либо ресурсные свойства ПС и не учитывают их взаимного влияния; таким образом, оптимальность (минимизация) соотношения скоростных и ресурсных свойств ПС существующими метриками никак не анализируется и, следовательно, остается вне оценки характеристики Эффективность ПС в рамках действующей модели качества, регламентированной стандартом [1];

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

Вышеприведенные недостатки существующих метрик снижают объективность оценки эффективности ПС.

Семейство метрик эффективности, основанных на соотношении скоростных и ресурсных свойств программных средств

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

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

где 7 — 7-й временной атрибут ПС (например, время отклика); / — /-й ресурсный атрибут ПС (например затраты памяти); I — количество временных атрибутов ПС; J — количество ресурсных атрибутов ПС.

Данное семейство метрик может быть названо "Метрики соотношения временных и ресурсных свойств".

Метрика У7/ семейства метрик У оценивает соотношение 7-го временного и /-го ресурсного атрибутов ПС. Данная метрика может быть определена с помощью выражения

где tPi, Т — соответственно реальное и требуемое значения 7-го временного атрибута ПС, измеряемого в единицах времени (например, секунды); гр^, гТ}. — соответственно реальное и требуемое значения затрат /-го ресурса системы, используемого анализируемым ПС (оцениваются в единицах измерения, характерных для /-го ресурса); — коэффициент

заинтересованности пользователя (заказчика) в оптимизации разрабатываемого ПС по критерию минимизации произведения 7-го временного и /-го ресурсного атрибута ПС,

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

Коэффициент ¡в/ показывает, насколько пользователь (заказчик) заинтересован в минимизации соотношения 7-го временного и /-го ресурсного атрибутов ПС. Например, при отсутствии такой заинтересованности (= 0) заказчика полностью удовлетворяет

достижение соотношения требуемых значений Т, гТ%. В этом случае значение метрики у7}. = 1 уже при tPi гР}. = Т гТ}.. Дальнейшее уменьшение соотношения tPi гр. при этом не влияет на значение метрики у7}. (см. выражение (1)) и поэтому не актуально. Если же соотношение Т гТ}. не достигнуто (tPi гР}. > Т гТ}.), то значение метрики ууменьшается с ростом разницы в соотношениях tPi гр. и Т гТ}., влияя на уровень эффективности анализируемого ПС.

В обратной ситуации заказчик в полной мере заинтересован в минимизации соотношения tPi гр. 7-го временного и /-го ресурсного атрибутов ПС (¡^ = 1). В этом случае

при tPi гр. < Т гТ}. значение метрики у7}. с уменьшением произведения tPi гр. стремится к единице, повышая эффективность оцениваемого ПС. Если же соотношение Т гТ}. не достигнуто (tP7 гр1 > tTi гТ].), то значение метрики у7]. равно нулю. В этом случае вклад в уровень эффективности данная метрика не вносит.

У = {уу | 7 = 1, I;/ = 1, J},

0 <Р/

Зависимость значения метрики уц от соотношения произведений реальных и требуемых значений 7-го временного и ц-го ресурсного атрибутов ПС ^Р)/(ЬгГТ]) для различных величин коэффициента заинтересованности вц иллюстрирует рисунок.

Зависимость значения метрики уц от соотношения произведений ^Р1)/

Выражение (1) может быть преобразовано к виду, учитывающему концепцию представления метрик стандартов ISO/IEC TR 9126-2-3 [2, 3]. В соответствии с данной концепцией метрика, удовлетворяющая таким критериям обоснованности метрик как корреляция, трассировка и непротиворечивость, представляется в виде А/ В или 1 — А/В. С учетом этого выражение (1) приобретает вид:

1 — вц (Ац / Вц ), если АцВц <1;

У

У

7 У

Уц = |(1 — вц)(В ц/ А X если АцВц >1,

где Ац = 1рг Грц ; Вц = ^ Гтц .

С целью сокращения объема измерений при оценке эффективности ПС может быть полезно представление семейства У метрик уц в виде косвенных метрик, зависящих от соответствующих прямых метрик:

1 — вц^Кц, если К,К„ <1;

Ц

ц

У '(1 — вц)/(Кй Кц), если КаК„ >1,

где К7 — относительное значение 7-го временного атрибута ПС, К7 = / tT7; Кц — относительное значение ц-го ресурсного атрибута ПС, Кц = гРц / гТ]..

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

Место семейства метрик соотношения временных и ресурсных свойств в современных моделях оценки качества программных средств

Метрики Уц предложенного семейства У учитывают одновременно как временные, так

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

Е = Т (Уяхя ),

я=1

где хя — £-я метрика эффективности; 01 — количество используемых при конкретной оценке метрик эффективности из общего количества О метрик эффективности; У — вес £-й метрики в используемой совокупности метрик эффективности, причем

01

= 1.

я=1

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

Е = Т

9=1

где — 9-я подхарактеристика эффективности, 9 = 1, 4; ¥д — вес д-й подхарактеристики,

4

I

^ = 1.

9=1

Для 9 = 1,3 (это соответствует подхарактеристикам поведение во времени, использование ресурсов, соответствие надежности) значение £79 определяется выражением

N19 N19

и9 = Т

п=1 п=1

где х9п — значение п-й метрики 9-й подхарактеристики; — количество метрик,

используемых при конкретной оценке, из общего набора N метрик 9-й подхарактеристики; У9п — вес п-й метрики 9-й подхарактеристики в общем наборе Nq метрик, причем

Ту = 1.

9п

п=1

Для 9=4, что соответствует подхарактеристике соотношение временных и ресурсных свойств, значение и4 может быть найдено с помощью выражения

и.=(Т Т (ш мТ Т (цуц ^

¿=1 ц=1 г=1 ц=1

где уц — значение метрики, определяемое с помощью выражений (1), (2) или (3); I — общее количество временных свойств ПС, которые могут быть проанализированы при его оценке; J — общее количество ресурсных свойств ПС, которые могут быть проанализированы при его оценке; Уц — вес метрики уц в семействе У метрик,

Т ТУ = 1;

г=1 Ц=1

Ьц — признак использования метрики уц при конкретной оценке, 0, если уц не используется при оценке;

L = ,

4 11, если y используется при оценке.

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

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

в заданных контекстах использования.

Следует отметить, что семейство У значений метрик угц, определяемых с помощью выражений (1)-(3), представлено в относительных единицах и попадает в диапазон 0<уц<1. Это существенно упрощает использование данного семейства метрик при интегральной количественной оценке качества ПС.

Заключение

В статье предложено семейство метрик эффективности ПС соотношение временных и ресурсных свойств. Данное семейство обладает следующими достоинствами:

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

удовлетворяет таким критериям обоснованности метрик качества ПС как корреляция, трассировка и непротиворечивость;

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

THE SOFTWARE EFFICIENCY AND ITS EVALUATION

V.V.BAKHTSIZIN Abstract

The defects of efficiency model determined in standard series ISO/IEC 9126-1-4 are analyzed. The efficiency metrics family is offered. This family takes proper account of temporal software attributes and computer resource outlays correlations, as well as interest of the user in minimization given correlations. The formulas for calculation of these metrics values are offered.

Литература

1. ISO/IEC 9126-1:2001. Программная инженерия - Качество продукта - Часть 1: Модель качества.

2. ISO/IEC TR 9126-2:2003. Программная инженерия - Качество продукта - Часть 2: Внешние метрики.

3. ISO/IEC TR 9126-3:2003. Программная инженерия - Качество продукта - Часть 3: Внутренние метрики.