Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Метрики сложности потока данных





 

ЦЕЛЬ РАБОТЫ: оценить сложность программных продуктов, используя метрики сложности потока данных.

 

Следующая группа метрик сложности программ - метрики сложности потока данных, т.е. использования, конфигурации и размещения данных в программах.

 

1. Метрика " модуль – глобальная переменная"

Метрика " модуль – глобальная переменная". Обозначается как (p, r), где p - модуль, имеющий доступ к глобальной переменной r.

В зависимости от наличия в программе реального обращения к переменной r формируются два типа пар " модуль – глобальная переменная": фактические и возможные. Возможное обращение к r с помощью p показывает, что область существования r включает в себя p.

Характеристика Aup – количество переменных, показывает, сколько раз модули Up действительно получали доступ к глобальным переменным, а число PUp сколько раз они могли бы получить доступ, т.е. Pup – количество глобальных переменных, к которым мог бы получить доступ модуль.

Отношение числа фактических обращений к возможным определяется

. (1)

Эта формула показывает приближенную вероятность ссылки произвольного модуля на произвольную глобальную переменную.

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

Пример: пусть в программе имеются 3 глобальные переменные (x, y, z) и 3 подпрограммы. Если предположить, что каждая подпрограмма имеет доступ к каждой из переменных, то получим девять возможных пар

Pup = 3перем · 3подпрог = 9.

Далее пусть первая подпрограмма обращается к одной переменной (x), вторая – к двум (y, z), а третья – не обращается ни к одной переменной, тогда.

Aup = 1 + 2 + 0 = 3,

следовательно, .

 

2. " спен"

Следующей метрикой сложности потока данных является " спен".

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

«Спен» - это число утверждений, содержащих данный идентификатор между его первым и последним появлением в тексте.

Идентификатор, появившийся n раз, имеет спен равный n-1.

Усреднённый по всем идентификаторам, «Спен» даёт сложность программы.

Пример: Пусть у нас имеется 7 идентификаторов.

2 - «Спен» 12, 2 - «Спен» 41 и 3 - «Спен» 80.

(2)

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

 







Дата добавления: 2014-11-10; просмотров: 2044. Нарушение авторских прав; Мы поможем в написании вашей работы!




Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...


Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Тактические действия нарядов полиции по предупреждению и пресечению групповых нарушений общественного порядка и массовых беспорядков В целях предупреждения разрастания групповых нарушений общественного порядка (далееГНОП) в массовые беспорядки подразделения (наряды) полиции осуществляют следующие мероприятия...

Механизм действия гормонов а) Цитозольный механизм действия гормонов. По цитозольному механизму действуют гормоны 1 группы...

Алгоритм выполнения манипуляции Приемы наружного акушерского исследования. Приемы Леопольда – Левицкого. Цель...

Философские школы эпохи эллинизма (неоплатонизм, эпикуреизм, стоицизм, скептицизм). Эпоха эллинизма со времени походов Александра Македонского, в результате которых была образована гигантская империя от Индии на востоке до Греции и Македонии на западе...

Демографияда "Демографиялық жарылыс" дегеніміз не? Демография (грекше демос — халық) — халықтың құрылымын...

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

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия