1 Основы проектирования программных систем


Сценление по общей области


Download 256.03 Kb.
bet21/25
Sana21.04.2023
Hajmi256.03 Kb.
#1370144
TuriГлава
1   ...   17   18   19   20   21   22   23   24   25
Bog'liq
Orlov Programmnaya injeneria распознан страницы

Сценление по общей области (СЦ = 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:
  • 1   ...   17   18   19   20   21   22   23   24   25




    Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
    ma'muriyatiga murojaat qiling