logo
Ответы Госы_3

56. Модульность. Информационная закрытость. Связность модуля.

Модуль - фрагмент программного текста, самостоятельная единица, которая образует физическую структуру системы.

Модульность - свойство, что позволяет представить систему (ПЗ) как совокупность модулей. Процесс детализации системы на модуле может быть длительным, это ведет к увеличению числа модулей и осложнения межмодульных интерфейсу. Сложный модуль требует больших часовых расходов на разработку и приводит к увеличению стоимости модуля. Уменьшение модуля приводит к снижению стоимости модуля, но к увеличению стоимости межмодульных интерфейсу.

Существует оптимальное количество модулей, которое приводит к минимальной стоимости разработки. Стоимость разработки определяется сложностью программной системы.

При создании модулей необходимо придерживаться следующих принципов:

Принцип информационной закрытости требует, чтобы содержание модуля было скрыто от других модулей. Информационная закрытость значит:

все модули независимы и обмениваются только той информацией, которая необходима для работы;

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

Кроме того, информационная закрытость позволяет:

разрабатывать модули независимо и разными разработчиками;

обеспечивает легкую модификацию системы.

Идеальный модуль - "черный ящик", который задается входными и исходными параметрами, а содержимое невидимо.

Связность - внутренняя характеристика модуля, определяется зависимостью составных частей модуля. Чем выше связность, тем более "черная" сундук. Существует 6 типов связности :

функциональная связность;

информационная связность;

коммуникативная связность;

процедурная связность;

временная связность;

логическая связность.

Для измерения связности используют понятие силы связности (СС).

Связность за совпадением (СС = 0). В модули отсутствующие явно выражены внутренние связки.

Логическая связность (СС = 1). За некоторому условию выбирается конкретная часть модуля.

Временная связность (СС = 3). Части модуля работают в одно и то же время.

Процедурная связность (СС = 5). Части модуля выполняются по некоторому сценарием.

Коммуникативная связность (СС = 7). Части модуля работают из одной той же структурой данных, связанные с данными.

Информационная связность (СС = 9). Выходные данные одной части модуля используются в качестве входные данные другой части модуля.

Функциональная связность (СС = 10). Части модуля реализуют одну функцию.

Типы связности 1,2,3 - трактуются как "белый ящик", 4 - "просвечивает" сундук, 5 - "серый" сундук, 6 - почти "черный" ящик (не совсем "черный"), 7 - "черный".