Гончаров Лаба_1 622403

Министерство образования Республики Беларусь
Учреждение образования
БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ



Кафедра метрологии и стандартизации








Лабораторная работа №1
по курсу: "Метрология, стандартизация и сертификации в
информационных технологиях"
на тему: "Метрики сложности потока управления программ"

Вариант 3











Выполнил: студент группы 622403 Гончаров М.В.

Проверил: Трус В.В.







Минск, 2017
Задание:
Для заданного варианта индивидуального задания разработать детализированную схему алгоритма, представленную в соответствии с положениями ГОСТ 19.701–90. По полученному алгоритму рассчитать метрики сложности потока управления программ (метрики Маккейба, Джилба, макси- мальный уровень вложенности условного оператора и оператора цикла, метри- ку граничных значений). В алгоритме предусмотреть вывод на экран всех вход- ных и выходных данных.

Вариант 3:
Ввести массив А (5, 7). Найти сумму элементов каждой строки, максимальную и минимальную из этих сумм. Вывести массив, полученные суммы, номера строк, где находятся максимальная и минимальная суммы.
Блок-схема алгоритма

Описание блок-схемы алгоритма:
Начало
Присваивание переменной mysum значения 0.
Создание пустого списка a.
Создание пустого списка b.
Присваивание переменной i значение 0.
Условный оператор if с условием i<5.
Добавление в конец списка пустого списка.
Присваивание переменной j значения 0.
Условный оператор if с условием j<7.
Ввод значения переменной x с клавиатуры.
Заполнение списка b значениями переменной mysum.
Добавление в конец списка a[i] значение переменной х.
Прибавление к сумме элемента вложенного списка a[i].
Вывод значения переменной Sum.
Вывод минимальной суммы элементов строки и номера строки, в которой они находятся.
Вывод максимальной суммы элементов строки и номера строки, в которой они находятся.
Присваивание переменной k значения 0.
Условный оператор if с условием k<5.
Вывод строки.
Переход на новую строку.
Конец.

Метрики сложности потока управления программ
Метрика Маккейба для разработанного алгоритма и определение базисных независимых путей.

Данная метрика определяется по формуле:
Z(G)= e - v + 2p,
13 QUOTE 1415 где e – число дуг ориентированного графа 13 QUOTE 1415;
v– число вершин;
p– число компонентов связности графа.
Для заданного алгоритма: e=23, v=21, p=1.
Цикломатическое число Маккейба равно Z(G)=23-21+2*1=4.
Метрика Маккейба определяет минимальное количество тестовых прогонов программы, необходимых для тестирования всех ее ветвей. Таким образом, в схеме алгоритма можно выделить 3 базовые независимые пути, называемые также линейно независимыми контурами.
Таким образом, для тестирования совокупности базисных независимых путей исследуемой программы необходимо выполнить минимально четыре тестовых прогона.
1-й путь: 1-2-3-4-5-6(да)-7-8-9(да)-10-11-12-13-9(нет)-11-6(нет)-14-15-16-17-18(да)-19-20-18(нет)-21
2-й путь: 1-2-3-4-5-6(да)-7-8-9(нет)-11-6(нет)-14-15-16-17-18(нет)-21
3-й путь: 1-2-3-4-5-6(да)-7-8-9(да)-10-12-13-9(нет)-11-6(нет)-14-15-16-17-18(да)-19-20-18(нет)-21
4-й путь: 1-2-3-4-5-6(да)-7-8-9(да)-10-12-13-9(нет)-11-6(нет)-14-15-16-17-18(нет)-21

Метрика Джилба.
Количество условных операторов в схеме алгоритма (абсолютная сложность программы) CL=313 QUOTE 1415.
Насыщенность программы условными операторами, характеризующая относительную сложность программы cl=CL/(v-2)=3/19=0,159.
Максимальный уровень вложенности условного и циклического оператора оператора CLI=1.

Метрика граничных значений.
Абсолютная граничная сложность программы Sa определяется как сумма скорректированных сложностей всех вершин графа G. Относительная граничная сложность программы So определяется по формуле:
13 EMBED Equation.3 1415,
где So – относительная граничная сложность программы; Sa абсолютная граничная сложность программы; v – общее число вершин графа программы.

Свойства подграфов программы.
Свойства подграфов
программы
Номер вершины выбора


6
9
17

Номера вершин перехода
7, 14
10, 11
18, 21

Скорректированная сложность вершины выбора
9
6
4

Номера вершин подграфа
7 , 8, 9, 10, 11, 12, 13, 6, 14
10, 12, 13, 9, 11, 6, 14
19, 20, 18, 21

Номер нижней границы подграфа
14
6
21















Скорректированные сложности вершин графа программы.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

Сл.
1
1
1
1
1
9
1
1
6
1
1
1
1
1
1
1
4
1
1
1
0


Таким образом, абсолютная граничная сложность Sa13 QUOTE 1415=36.
Относительная граничная сложность данной программы равна
13 QUOTE 14So=1-((v-1)/Sa)= 1-(20/36)=0,444.15

Метрики сложности потока управления программ:
Число Маккейба 13 QUOTE 1415
4

Абсолютная сложность программы (метрика Джилба) 13 QUOTE 1415
3

Относительная сложность программы (метрика Джилба) 13 QUOTE 1415
0,159

Максимальный уровень вложенности условного оператора (метрика Джилба) 13 QUOTE 1415
1

Абсолютная граничная сложность Sa
36

Относительная граничная сложность So
0,444


Untitled DiagramRoot Entry

Приложенные файлы

  • doc 10886127
    Размер файла: 211 kB Загрузок: 0

Добавить комментарий