Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Otvety_k_gosam (1).doc
Скачиваний:
8
Добавлен:
01.04.2025
Размер:
4.61 Mб
Скачать

11. Преобразование неструктурированных алгоритмов к структурному виду: дублирование блоков, введение переменной состояния.

Введение дублирующих элементов: данное преобразование позволяет исключить из блок-схемы некорректные варианты передачи управления путем введения в нее по определенным правилам дополнительных элементов, эквивалентных уже существующим.

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

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

  1. каждому блоку схемы приписывается номер от 1 до n, где n-исходное число блоков в схеме. 0 резервируется до блока, представляет собой последний исполняемый элемент, после которого следует выход из системы.

  2. вводится новая переменная, принимающая значения в диапазоне от 0 до n, называемая переменной состояния.

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

  4. Вводится n операций анализа переменной состояния, в соответствии со следующим принципом: если значение переменной состояния равно m, где m>0, и m<=n, то управление передается блоку с номером m. Операция проверки значения переменной на равенство 0 резервируется на случай выхода из системы.

  5. Строится новая схема в виде цикла с предусловием с вложенным в него блоками решения для анализа переменной состояния и блоками исходной схемы, к каждой из которых добавлены соответствующие элементы измененных значений переменной состояния. Перед циклом добавляется блок для присвоения 1 переменной состояния, а условием выхода из цикла является равенство значений переменной 0.

12. Понятия модульности, связанности, сцепления.

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

Степень модульности характеризуется двумя показателями:

  1. Связность (прочность) модуля - мера независимости его частей. Чем выше связность модуля, тем лучше результат проектирования ПС.

  2. Сцепление модулей - мера относительной независимости модулей, которая определяет их читабельность и сохранность. Независимые модули могут быть модифицированы без переделки каких-либо других модулей. Слабое сцепление более желательно, так как это означает высокий уровень их независимости.

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

211

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]