- •Основные задачи проектирования
- •2. Стратегии конструирования по: «водопад» и инкрементная стратегия.
- •Каскадная модель или «водопад»
- •1. Стратегии конструирования по: эволюционные модели.
- •Компонентно-ориентированная модель
- •Информационные потоки процесса тестирования
- •Тестирование «черного ящика»
- •Тестирование «белого ящика»
- •15. Способ тестирования потоков данных
- •Разбиение по эквивалентности
- •18. Ооап. Унифицированный процесс. Этапы разработки. Модели.
- •19. Ооап. Унифицированный процесс. Этап начало (планирование): основные задачи, артефакты uml.
- •20. Ооап. Анализ: разработка прецедентов.
- •21. Ооап. Анализ: построение концептуальной модели ис ( определение, 2 подхода к построению концептуальной модели ис).
- •22. Ооап. Анализ и проектирование: поведение системы (системные события и операции, диаграммы последовательностей).
- •Диаграммы последовательностей
- •23. Ооап. Анализ и проектирование: диаграммы кооперации.
- •24. Ооап: использование диаграмм компонентов в процессе проектирования
- •25. Ооап: использование диаграмм развёртывания в процессе проектирования ис.
- •27. Проектные решения с использованием шаблонов: шаблон Creator.
- •28. Проектные решения с использованием шаблонов: шаблон Expert
- •29. Проектные решения с использованием шаблонов: шаблон Observer (Наблюдатель).
- •35. Оо Метрики: Метрики связности по методам
- •Отношения между элементами класса Stack
- •36. Оо Метрики: объектно-ориентированные метрики сцепления
- •37. Оо Метрики: Набор метрик Чидамбера и Кемерера
37. Оо Метрики: Набор метрик Чидамбера и Кемерера
Метрика 1: Взвешенные методы на класс (Weighted Methods Per Class)
Пусть в классе C определены n методов со сложностью c1, c2, c3, …, cn
WMC = ∑ ci
В упрощенной версии метрики полагают ci=1, тогда WMC – количество методов в классе.
Метрика 2: Высота дерева наследования DIT (Depth of Inheritance Tree)
Максимальная длина листа от корня дерева.
Метрика 3: Количество детей NOC (Number of children)
Совпадает с количеством непосредственных наследников класса.
Оптимальное значение 7 по ширине и по высоте для дерева.
Метрика 4: Сцепление между классами объектов CBO (Coupling between object classes)
Количество сотрудничеств, предусмотренных для класса.
Метрика 5: Отклик для класса RFC (Response For a Class)
Количество методов класса + количество методов других классов, вызываемых из данного класса.
Метрика 6: Недостаток связности в методах LCOM (Lack of Cohesion in Methods)
Эта метрика показывает, насколько методы несвязанны друг с другом через свойства.
Не связаны – количество пар методов без общих экземпляров переменных;
Связаны – количество пар методов с общими экземплярными переменными.
Ij – набор экземплярных переменных, используемых методом Mj
Очевидно, что НЕ СВЯЗАНЫ=card{Iij|IiпересечениеIj=0}
СВЯЗАНЫ= card{Iij|IiпересечениеIj<>0}
Недостаток связности в методах
LCOM=не связаны-связаны, если (не связаны>связаны) и 0, в противном случае
Связность методов внутри класса должна быть высокой, т.к. …. Но это увеличивает сложность, в том числе, и при проектировании.
38. ОО Метрики: метрик Лоренца и Кидда
Метрики, ориентированные на классы
Все метрик разделены на 4 категории
Размер класса CS (Class Size)
Общий размер класса определяется: 1. Общее количество операций, которые инкапсулируются внутри класса; 2. Количество свойств, которые инкапсулируются внутри класса.
Большое значение указывает на то, что у класса есть много обязанностей, т.е. требуется перепроектировать. Рекомендуемое значение CS<=20 методов.
Количество операций, переопределяемых подклассом, NOO (Number of Operations Overridden by a Subclass)
Рекомендуемое значение NOO<=3 методов.
Количество операций, добавленных подклассом, NOA (Number of Operations Added by a Subclass)
Значение этой характеристики должно уменьшаться. Для рекомендуемых значений SC = 20 и DIT=6 рекомендуемое значение NOA<4 методов.
Индекс специализации SI (Specialization Index)
SI = (NOO*уровень)/Mобщ
Уровень – номер уровня в иерархии
Mобщ – количество методов в классе.
Рекомендуемое значение SI<=0,15
Операционно-ориентированные метрики
Средний размер операции OSAVG (Average Operation Size)
Рекомендуемое значение OSAVG<=9
Сложность операции OC (Operation Complexity)
Весовые коэффициенты для метрики ОС (см. таблицу).
Рекомендуемое значение OC<=65
Среднее количество параметров на операцию NPAVG
Рекомендуемое значение =0,7