Метрика Чепина
Другой метрикой сложности потока данных является метрика Чепина. Суть метода состоит в оценке информационной прочности отдельно взятого программного модуля с помощью анализа характера использования переменных из списка ввода-вывода. Все множество переменных, составляющих список ввода-вывода разбивается на 4 группы: 1. множество Р – это переменные вводимые для расчётов и обеспечения вывода. (Примером может служить используемая в программах лексического анализатора переменная, содержащая строку исходного текста программы, т.е. сама переменная не модифицируется, а только содержит исходную информацию). 2. множество М – модифицируемые или создаваемые внутри программы переменные. 3. множество С – переменные, участвующие в управлении работой программного модуля (управляющие переменные). 4. множество Т – переменные, не используемые в данной программе (паразитные переменные). Поскольку каждая переменная может выполнять одновременно несколько функций, необходимо учитывать ее в каждой соответствующей функциональной группе. Далее вводится значение метрики Чепина: Q = а1 P + а2 М + а3 С + а4 Т, (3) где α 1, α 2, α 3, α 4 – весовые коэффициенты, используемые для отражения различного влияния на сложность программы каждой функциональной группы. По мнению автора метрики: α 1 = 1, α 2 = 2, α 3 = 3, α 4 = 0, 5. Таким образом наибольший вес, равный трем, имеет функциональная группа С, т.к. она влияет на поток управления. Весовой коэффициент группы Т не равен нулю, поскольку " паразитные" переменные не увеличивают сложность программы, но затрудняют ее понимание. С учетом весовых коэффициентов выражение (3) примет вид Q = P + 2М + 3С + 0, 5Т (4) Следует отметить, что рассмотренные метрики сложности программ основаны на анализе исходных текстов программ и графов, что обеспечивает единый подход к автоматизации их расчета
ЗАДАНИЕ
Для одной из своих программ рассчитать: 1) Отношение числа фактических переменных к возможным RUp; 2) Метрики Чепина, (T, P, С, M, Q); 3) Спен (Scp).
КОНТРОЛЬНЫЕ ВОПРОСЫ 1. Что называется метриками сложности? Что такое " Спен"? 2. Что показывает метрика " Модуль – глобальная переменная", опишите принцип нахождения этой метрики. 3. Как построить поцесс тестирования и отладки на основе метода " Спена"? 4. Как оценить информационную прочность отдельного программного модуля? Метрика Чепина. ЛИТЕРАТУРА 1. Изосимов А.В., Рыжко А.Л. Метрическая оценка качества программ. – М.: Издательство МАИ, 1989.
Лабораторная работа № 8
|