1 Основы проектирования программных систем
Сценление по общей области
Download 256.03 Kb.
|
Orlov Programmnaya injeneria распознан страницы
- Bu sahifa navigatsiya:
- Рис. 6-20.
- Сложность программной системы
- Характеристики иерархической структуры программной системы
Сценление по общей области (СЦ = 7). Модули разделяют одну и ту же глобальную структуру данных (рис. 6.20).
Сценление по содержанию (СЦ = 9). Один модуль прямо ссылается на содержание другого модуля (не через его точку входа). Например, коды их команд перемежаются друг с другом (см. рис. 6.20). Рис. 6-20. Сцепление по общей области и содержанию На рис. 6.20 видим, что модули В и D сцеплены но содержанию, а модули С, Е и N сценлены но общей области. Сложность программной системы В простейшем случае сложность программной системы (ПС) определяется как сумма мер сложности ее модулей. Сложность модуля может вычисляться различными способами. Например, М. Холстед (1977) предложил меру длины N модуля [53]: N « и, log2(n,) + п2 log2(n2), где п1 — число различных онераторов, п2 — число различных операндов. В качестве второй метрики М. Холстед рассматривал объем V модуля (количество символов для записи всех онераторов и операндов текста программы): V = N х log2 (nt + п2). Вместе с тем известно, что любая сложная система состоит из элементов и системы связей между элементами и что игнорировать внутрисистемные связи неразумно. Том Маккейб (1976) нри оценке сложности ПС предложил исходить из топологии внутренних связей [73]. Для этой цели он разработал метрику цикломатической сложности: V(G) = Е - N + 2, где Е — количество дуг, а N — количество вершин в управляющем графе ПС. Это был шаг в нужном направлении. Дальнейшее уточнение оценок сложности потребовало, чтобы каждый модуль мог представляться как локальная структура, состоящая из элементов и связей между ними. Таким образом, при комплексной оценке сложности ПС необходимо рассматривать меру сложности модулей, меру сложности внешних связей (между модулями) и меру сложности внутренних связей (внутри модулей) [48, 80]. Традиционно со внешними связями сопоставляют характеристику «сценление», а с внутренними связями — характеристику «связность». Вопросы комплексной оценки сложности обсудим в следующем разделе. Характеристики иерархической структуры программной системы Если принять, что в системе реализован наттерн централизованного управления «вызов-возврат», то основным результатом архитектурного проектирования становится иерархическая структура программной системы. Она определяет состав модулей ПС и управляющие отношения между модулями. В этой структуре модуль более высокого уровня (начальник) управляет модулем нижнего уровня (подчиненным). Иерархическая структура не отражает процедурные особенности программной системы, то есть последовательность онераций, их повторение, ветвления и т. д. Рассмотрим основные характеристики иерархической структуры, представленной на рис. 6.21. Первичными характеристиками являются количество вершин п (модулей) и количество ребер е (связей между модулями). К ним добавляются две глобальные характеристики — высота и ширина: высота (depth) — количество уровней управления (количество вершин в самом длинном пути от вершины-корня до вершины-листа); ширина (width) — максимальное из количеств модулей, размещенных на уровнях управления. В нашем примере высота = 4, ширина = 6. Width Download 256.03 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling