Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы нв вопросы по ТРПП 2_1.docx
Скачиваний:
10
Добавлен:
22.04.2019
Размер:
252.27 Кб
Скачать

25. Системный анализ предметной области

Системный анализ - научный метод познания (этап проектирования), представляющий собой последовательность действий по установлению структурных связей между элементами исследуемой системы (технической, математической, экономической...). Он проводится для последующего управления этой системой: планирования, настройки, выявления неэффективных связей... Эффективность этого зависит от структуры решаемых проблем, которые бывают количественно хорошо сформулированными, качественно выраженными или смешанными.

26. Подготовка документации на программные средства в соответствии с госТами

27. Модульное программирование

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

Модуль обладает тремя основными атрибутами:

  • выполняет одну или несколько функций;

  • реализует некоторую логику;

  • может использоваться в одном или нескольких контекстах.

Функция – то, что делает модуль; логика – как используется эта функция.

Принципы модульного программирования позволяют получать программные комплексы минимальной сложности. Эти принципы следующие:

  1. усиление внутренних связей в каждом модуле (повышение прочности модуля);

  2. ослабление взаимосвязи между модулями (ослабление сцепления модулей).

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

Класс прочности является мерой связи предложений внутри модулей.

  1. Прочность по совпадению.

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

  3. Временная связность. Модуль выполняет несколько функций, отнесённых разработчиком к одному классу потому, что они необходимы в один и тот же период работы системы.

  4. Процедурно прочный модуль (процедурная связность). Такой модуль состоит из элементов, реализующих независимые действия, для которых задан порядок передачи управления. Зависимости по данным между модулями нет.

  5. Коммуникативная связность – процедурно прочный модуль, в котором все функции модуля связаны по данным.

  6. Информационная прочность. Модуль выполняет несколько функций над одной и той же структурой данных. Результаты одного обработчика служат исходными данными для другого обработчика. Информационно прочные модули обладают хорошей сопровождаемостью, но объединение действий с одной структурой данных в не всегда оправдано.

  7. Функциональная прочность. Модуль выполняет одну функцию – то, к чему следует стремиться при проектировании модульной структуры.

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

Виды сцепления:

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

  2. Сцепление по общей области. Модули ссылаются на одну и ту же глобальную структуру данных.

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

  4. Сцепление по формату (образцу). Модули ссылаются на одну и ту же структуру данных.

  5. Сцепление по данным. Передаются параметры из одной программы в другую.

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

  • размер модуля (от нескольких десятков до нескольких сотен операторов);

  • прочность модуля и сцепление с другими модулями;

  1. рутинность модуля.