Оценка качества проектирования

 

Качество проектирования оценивают с помощью объектно-ориентированных метрик, введенных в главе 14.

Этап РАЗВИТИЕ

 

Качество логического представления архитектуры оценивают по метрикам:

q WMC — взвешенные методы на класс;

q NOC — количество детей;

q DIT — высота дерева наследования;

q NOM — суммарное количество методов, определенных во всех классах системы;

q NC — общее количество классов в системе.

Метрики WMC, NOC вычисляются для каждого класса, кроме того, формируются их средние значения в системе. Метрики DIT, NOM, NC вычисляются для всей системы.

Этап КОНСТРУИРОВАНИЕ

 

На каждой итерации конструирования продукта вычисляются метрики:

q WMC — взвешенные методы на класс;

q NOC — количество детей;

q СВО — сцепление между классами объектов;

q RFC — отклик для класса;

q LCOM — недостаток связности в методах;

q CS — размер класса;

q NOO — количество операций, переопределяемых подклассом;

q NOA — количество операций, добавленных подклассом;

q SI — индекс специализации;

q OSavg — средний размер операции;

q NPavg — среднее количество параметров на операцию;

q NC — общее количество классов в системе;

q LOC — суммарная LOC-оценка всех методов системы;

q DIT — высота дерева наследования;

q NOM — суммарное количество методов в системе.

Метрики WMC, NOC, СВО, RFC, LCOM, CS, NOO, NOA, SI, OSAVG, NPAVG вычисляются для каждого класса, кроме того, формируются их средние значения в системе. Метрики DIT, NOM, NC, LOCS вычисляются для всей системы.

На последней итерации дополнительно вычисляется набор метрик MOOD, предложенный Абреу:

q МНF — фактор закрытости метода;

q AHF — фактор закрытости свойства;

q MIF — фактор наследования метода;

q AIF — фактор наследования свойства;

q POF — фактор полиморфизма;

q СОF — фактор сцепления.

Пример объектно-ориентированной разработки

 

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

Этап НАЧАЛО

 

Оконный интерфейс пользователя(WUI) — среда, управляемая событиями. Действия в среде инициируются функциями обратного вызова, которые вызываются в ответ на событие — пользовательский ввод. Ядром WUI является цикл обработки событий, который организуется менеджером ввода.

WUI должен обеспечивать следующие типы неперекрывающихся окон:

q простое окно, в которое может быть выведен текст;

q окно меню, в котором пользователь может задать вариант действий — выбор подменю или функции обратного вызова.

Идентификация актеров

 

Актерами для WUI являются:

q пользователь прикладной программы, использующей WUI;

q администратор системы, управляющий работой WUI.

Внешнее окружение WUI имеет вид, представленный на рис. 15.5.

Рис. 15.5.Внешнее окружение WUI