Софтуерни технологии



страница38/106
Дата11.05.2023
Размер2.27 Mb.
#117653
ТипАнализ
1   ...   34   35   36   37   38   39   40   41   ...   106
Softuerni Texnologii
Свързани:
empty doc
ОБЕКТИ

ВЪТРЕШНИ
ХАРАКТЕРИСТИКИ

ВЪНШНИ
ХАРАКТЕРИСТИКИ

ПРОДУКТИ







Спецификации

Размер
Модулност
Коректност
Функционалност
Възможност
за повторно използване

Изчерпателност
Съпровождаемост
Разбираемост

Проекти

Размер
Модулност
Свързаност

Качество
Сложност
Съпровождаемост

Програми

Размер
Алг. сложност
Тестируемост

Надежност
Приложимост
Съпровождаемост

Тестови данни

Размер
Ниво на тестване

Качество
Изчерпателност

Документация

Обем
Пълнота

Разбираемост
Адекватност

ПРОЦЕСИ







Специфициране

Продължителност
Трудоемкост
Брой изменения
в изискванията

Качество
Разходи
Стабилност

Детайлно проектиране

Продължителност
Трудоемкост
Брой открити грешки
в спецификациите

Разходи

Тестване

Продължителност
Трудоемкост
Брой открити грешки
в спецификациите

Разходи
Изчерпателност
Систематичност

РЕСУРСИ







Кадри

Възраст
Възнаграждение

Производителност
Професионален опит

Екип

Численост
Структура

Продуктивност
Качество

Софтуер

Цена
Размер

Полезност
Надеждност

Хардуер

Цена
Изч. възможности

Надежност
на функциониране

Таблица 1
86

Една метрика се нарича адитивна, ако резултатите от прилагането й за
програмна система могат да се получат чрез сумиране на резултатите от прила-
гането й върху съставящите я програмни части.
7.4. Примери за софтуерни метрики
Ще опишем някои софтуерни метрики, които се смятат за „класически". Те
се споменават най-често в специализираната литература и са с висока степен
на валидираност, т. е. полезността от прилагането им е потвърдена теоретичес-
ки и/или експериментално. Описанието е кратко и цели само да се добие пред-
става за съответната метрика, а в цитираните източници могат да се намерят
останалите подробности.
Метриките ще представим по следната схема:
I. Описание
То включва вида на метриката по някои от критериите за класификация,
препратка към литература за допълнителна информация, описание на самата
метрика и оценъчните елементи, които използва, възможности за автоматиза-
ция на процедурата за измерване и др.
П. Приложимост — за какво могат да се използват получаваните от метри-
ката резултати.
M1. Метрика за размера на програма
I. Описание
Метриката е статична и може да се прилага както за отделен програмен
модул, така и за програмна система.
За мярка на размера на програма се избира броят програмни редове в из-
ходния текст на програмата.
L = L1 + L2
където
L — общ брой редове;
L1 — коментарни и празни редове;
L2 — същински програмни редове.
Метриката е адитивна.
II. Приложимост

  1. Броят на грешките, усилията за разбиране, поддържане и съпровождане
    са правопропорционални на размера на програмите [3, 4].

  2. В зависимост от размера (на ниво програмна единица) и на размера и
    броя модули в програмна система програмите могат да се класифицират като
    прости, средно сложни, сложни и свръхсложни и за всяка категория да се фор-
    мулират мерките за осигуряване на качеството, да се оценят обхватът и слож-
    ността на тестването, съпровождането и др.

Примерна класификация е дадена в [3, 4]. Граничните стойности могат да
се определят експериментално или да се задават за всеки софтуерен проект.
3. L е най-проста мярка за извършената от програмиста работа.
87
M2. Метрика на Маккейб за структурна (цикломатична) сложност
I. Описание
Метриката на Маккейб [5] е за програми (обекти от тип „продукт"). Тя е
статична и измерва сложността на потока на управление в програмата. Тази
метрика е една от най-често цитираните в литературата.
За прилагане на метриката трябва да се построи управляващият граф на програ-
мата, в който върховете са отделните оператори (или линейни участъци) и два върха
са свързани с ребро, ако има предаване на управление между съответните оператори.
Тогава

  • (G) = е — n + 2 * р,
    където:

  • (G) е цикломатичната сложност, представляваща максималния брой ли-
    нейно-независими пътища в програмата;

е — брой ребра в управляващия граф;
n — брой върхове в управляващия граф;
р — брой на свързаните компоненти в графа.
Разработени са инструментални средства за автоматично изчисляване на
цикломатичната сложност, като при това се установяват и някои структурни
неправилности — недостижими програмни части, пресичащи се цикли и други.
Недостатъци на метриката са, че не отчита дължината на линейните участь-
ци и нивото на влагане на управляващите структури. Не се отразяват и между-
модулните връзки.
Разширение на тази метрика е метриката на Гонг—Шмид [6], която пред-
лага цикломатичната сложност да се изчислява по формулата
С (G) = V (G) + Е,
където Е представя обобщената степен на вграждане на управляващите струк-
тури една в друга.
II. Приложимост
Метриката предлага мярка за вътрешномодулната сложност, която опреде-
ля леснотата на разбиране и усвояване на програмите и точността на внасяне
на изменения в тях.
Препоръчва се да се проектират модули с цикломатична сложност V < 10
като се смята, че модулите със сложност до 10 са прости, до 20 — средно слож-
ни, от 30 до 50 — сложни, а при сложност над 50 трябва да се обмисли прест-
руктуриране (разделяне на няколко модула).


Сподели с приятели:
1   ...   34   35   36   37   38   39   40   41   ...   106




©obuch.info 2024
отнасят до администрацията

    Начална страница