Модели реализации объектно-ориентированных программных систем - Метрики полиморфизма |
Страница 26 из 26
Метрики полиморфизма
Рассмотрим следующие метрики полиморфизма: «Процентное количество не переопределенных запросов OVR», «Процентное количество динамических запросов DYN», «Скачок класса Bounce-С» и «Скачок системы Bounce-S».
Метрика 8: Процентное количество не переопределенных запросов OVR
Процентное количество от всех запросов в тестируемой системе, которые не приводили к перекрытию модулей. Перекрытие может приводить к непредусмотренному связыванию. Высокое значение OVR увеличивает возможности возникновения ошибок.
Метрика 9: Процентное количество динамических запросов DYN
Процентное количество от всех сообщений в тестируемой системе, чьи приемники определяются в период выполнения. Динамическое связывание может приводить к непредусмотренному связыванию. Высокое значение DYN означает, что для проверки всех вариантов связывания метода потребуется много тестов.
Метрика 10: Скачок класса Bounce-C
Количество скачущих маршрутов, видимых тестируемому классу. Скачущий маршрут — это маршрут, который в ходе динамического связывания пересекает несколько иерархий классов-поставщиков. Скачок может приводить к непредусмотренному связыванию. Высокое значение Bounce-C увеличивает возможности возникновения ошибок.
Метрика 11: Скачок системы Bounce-S
Количество скачущих маршрутов в тестируемой системе. В этой метрике суммируется количество скачущих маршрутов по каждому классу системы. Высокое значение Bounce-S увеличивает возможности возникновения ошибок.
Контрольные вопросы
1. Какие факторы объектно-ориентированных систем влияют на метрики для их оценки и как проявляется это влияние? 2. Какое влияние оказывает наследование на связность классов? 3. Охарактеризуйте метрики связности классов по данным. 4. Охарактеризуйте метрики связности классов по методам. 5. Какие характеристики объектно-ориентированных систем ухудшают сцепление классов? 6. Объясните, как определить сцепление классов с помощью метрики «зависимость изменения между классами». 7. Поясните смысл метрики локальности данных. 8. Какие метрики входят в набор Чидамбера и Кемерера? Какие задачи они решают? 9. Как можно подсчитывать количество методов в классе? 10. Какие метрики Чидамбера и Кемерера оценивают сцепление классов? Поясните их смысл. 11. Какая метрика Чидамбера и Кемерера оценивает связность класса? Поясните ее смысл. 12. Как добиться независимости метрики WMC от реализации? 13. Как можно оценить информационную закрытость класса? 14. Сравните наборы Чидамбера-Кемерера и Лоренца-Кидда. Чем они похожи? В чем различие? 15. На какие цели ориентирован набор метрик Фернандо Абреу? 16. Охарактеризуйте состав набора метрик Фернандо Абреу. 17. Сравните наборы Чидамбера-Кемерера и Фернандо Абреу. Чем они похожи? В чем различие? 18. Сравните наборы Лоренца-Кидда и Фернандо Абреу. Чем они похожи? В чем различие? 19. Дайте характеристику метрик для объектно-ориентированного тестирования. |