Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Метрики Холстеда

Об’єктно-оріентовані метрики.

Метрика Опис
Зважена насиченість класу 1 (Weighted Methods Per Class, WMC) Відображає відносну міру складності класу - клас із складнішими методами та більшою їх кількістю вважається складнішим. Батьківські класи не враховуються.
Зважена насиченість класу 2 (Weighted Methods Per Class 2 (WMC2)) Міри складності, що базується на тому, що клас з більшою кількістю методів є більш складним, а метод буде складнішим тоді, коли у нього більше параметрів. Батьківські класи не враховуються.
Глибина дерева наслідування (Depth of inheritance tree) Довжина найдовшого шляху наслідування, що закінчується на даному модулі. Чим глибше дерево наслідування модуля, тим складніше передбачити його поведінку. З іншого боку, збільшення глибини дає більший потенціал для повторного використання даним модулем поведінки, визначеної для класів-предків.
Кількість дітей (Number of children) Кількість модулів, що безпосередньо наслідують даний модуль. Великі значення цієї метрики вказують на широкі можливості повторного використання; при цьому надто велике значення може свідчити про те, що була погано обрана абстракція.
Зв’язність об’єктів (Coupling between objects) Кількість модулів, пов’язаних з даним модулем у ролі клієнта або постачальника. Надмірна зв’язність говорить про слабку модульну інкапсуляцію і може перешкоджати повторному використанню коду.
Відгук на клас (Response For Class) Кількість методів, які можуть викликатись екземплярами класу; обчислюється як сума кількості локальних та віддалених методів

 


 


Метрика Холстеда відноситься до метрик, що обраховуються на основі аналізу кількості рядків та синтаксичних елементів вихідного коду програми. Основу метрики складають 4 характеристики програми:

• NUOprtr (Number of Unique Operators) — кількість унікальных операторів програми, включаючи символи-розділителі, імена процедур і знаки операцій (словник операторів);

• NUOprnd (Number of Unique Operands) — кількість унікальных операндів програми (словник операндів);

• Noprtr (Number of Operators) — загальна кількість операторів у програмі;

• Noprnd (Number of Operands) — загальна кількість операндів у програмі.

Базуючись на цих характеристиках, обраховуються оцінки:

  • Словник програми (Halstead Program Vocabulary, HPVoc):

HPVoc = NUOprtr + NUOprnd;

  • Довжина програми (Halstead Program Length, HPLen):

HPLen = Noprtr + Noprnd;

  • Об’єм програми (Halstead Program Volume, HPVol):

HPVol = HPLen log2 HPVoc;

  • Складність програми (Halstead Difficulty, HDiff):

HDiff = (NUOprtr/2) × (NOprnd / NUOprnd);

На основі показника HDiff оцінюються зусилля програміста при розробці - показника HEff (Halstead Effort):

HEff = HDiff × HPVol.

<== предыдущая лекция | следующая лекция ==>
Розмірно-орієнтовані метрики | Метрики Чепіна
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 526; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.