К дипломному проекту icon

К дипломному проекту



страницы: 1   2   3   4   5   6   7   8   9   10   ...   13
вернуться в начало
скачать
^

4.2Модели и метрики оценки качества ПО


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

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



Название модели

Формула, обозначение

^ МЕТРИКИ СЛОЖНОСТИ

Метрики Холстеда
-длина программы;
- объем программы
- оценка ее реализации;
- трудность ее понимания;
- трудоемкость кодирования;
- уровень языка выражения;
- информационное содержание;
- оптимальная модульность;

N = nlog1 n1 + nlogn2
V = N logn
L*= (2 n)/ (n1 N2)
E= V/ L*
D = (n1N2) (2n2) = 1/ L*
 * = V/ D2 = V/ L* 2
I = V / D
M = n2*/6

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

 L1oop
IF
mod
f = N4SV / L mod
* = N*SV / L

Метрики Мак-Кейба- цикломатическое число;
- цикломатическая сложность;

  (G) = m - n + p
 (G) =   (G) +1 = m - n + 2

Метрика Чепена
- мера трудности понимания программ на основе входных и выходных данных;

H = 0.5T+P+2M+3C

Метрика Шнадевида
- число путей в управляющем графе

S =  PCi

Метрика Майерса
- интервальная мера;

 

[ 1  2]

Метрика Хансена
- пара (цикломатическое число, число операторов)

{ , N}

Метрика Чена
- топологическая мера Чена;

M(G) = ( (G), N, Q0)

Метрика Вудворда
- узловая мера (число узлов передач управления);

  

Метрика Кулика
- нормальное число (число простейших циклов в нормальной схеме программы);

 Norm (P)

Метрика Хура
- цикломатическое число сети Петри, отражающей управляющую структуру программы;

  (G*

р)

Метрики Витворфа, Зулевского
-мера сложности потока управления 
-мера сложности потока данных;

 (Р)
 (Р)

Метрика Петерсона
- число многовходовых циклов;

 Nm 1 0 0 p

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

 

f=   1
f* = N  1/ f
p(G) = N+L+Sk

Метрика Пивоварского
- модифицированная цикломатическая мера сложности;

 N(G) = n*(G) +  Pi

Метрика Пратта
- тестирующая мера;

 Test (Pr)

Метрика Кантоне
- характеристические числа полиномов, описывающих управляющий граф программы;

PCN*

Метрика Мак-Клура
- мера сложности, основанная на числе возможных путей выполнения программы, числе управляющих конструкций и переменных;

C(V) = D(V) J(V) / N

Метрика Кафура
- мера на основе концепции информационных потоков;

 I(G)

Метрика Схуттса, Моханти
- энтропийные меры;

  (G)

Метрика Коллофело
- мера логической стабильности программ;

 h (G)

Метрика Зольновского, Симмонса, Тейера 
Взвешенная сумма различных индикаторов:
- (структура, взаимодействие, объем, данные);
- (сложность интерфейса, вычислительная сложность, сложность ввода/вывода, читабельность);

  ( ,  ,  ,  )

 

 ( ,  ,  ,  )

Метрика Берлингера
- информационная мера;

 

I(R) = m (F(R)  F-(R))2

Метрика Шумана
- сложность с позиции статистической теории языка;

 

 ( )

Метрика Янгера
- логическая сложность с учетом истории вычислений;
Сложность проектирования
Насыщенность комментариями 
Число внешних обращений 
Число операторов

 

 ( )
Cc =  log2 (i + 1) [ n Cxy (n)]
X = K/C
Ci
L1

^ ПРОГНОЗ МОДЕЛИ

Модели Холстеда
- прогноз системных ресурсов;
- прогноз числа ошибок.
Модель фирмы IBM
Модель общей сложности
Модели связности 
Сплайн-модель

P=3/8 (Ra - 1)  2Ra 
B = Nlog2 n / 3000
B = 23M1 + M1 0 
B = 21.1 + 0.1 V + COMP (S)
Pij = 0.15 (Si + Sj) + 0.7 Cij 
Pij = ½   i ( Zij2 +  Nij2 ) ln ( Zij2 +  Nij2 ) +  +  Z+  N1

^ ОЦЕНОЧНЫЕ МОДЕЛИ

Джелински - Моранды

R(t) = e - (Т - 1 + 1) t

Вейса-Байеса

R1 (t) =   e - l - (i -1)  )t (, F/t1, ... , ti-1) d dФ

Шика-Волвертона

R1 (t) = e - F( N - 1 + 1) ti2 / 2

Литтлвуда

R1 (t) = (b+ /b++) (N - i + 1) a

Нельсона

Rj (t) = exp {  ln (1 - Pj)}

Халецкого

Rj (t) = P- a(1-  nj ) / nj

Модель отлаженности

Rj (t) =P -  fj ( , , )

Мозаичная модель

Rj (t) = 1 -  (  -  j - 1)

Таблица 4 2




оставить комментарий
страница7/13
Дата22.09.2011
Размер0,87 Mb.
ТипДиплом, Образовательные материалы
Добавить документ в свой блог или на сайт

страницы: 1   2   3   4   5   6   7   8   9   10   ...   13
Ваша оценка этого документа будет первой.
Ваша оценка:
Разместите кнопку на своём сайте или блоге:
rudocs.exdat.com

Загрузка...
База данных защищена авторским правом ©exdat 2000-2017
При копировании материала укажите ссылку
обратиться к администрации
Анализ
Справочники
Сценарии
Рефераты
Курсовые работы
Авторефераты
Программы
Методички
Документы
Понятия

опубликовать
Документы

наверх