Cтраница 4
![]() |
Задание структур простых модулей. [46] |
Структура программного модуля имеет существенное значение при выполнении циклических, итеративных и рекуррентных вычислений. Общим свойством любой структуры модуля служит то, что конечный результат работы модуля формируется его последней ( завершающей) строкой. При формировании структуры пользователь может опираться на предварительный анализ алгоритма вычислений и заранее определить число и взаимное расположение маркеров ввода в структуре программного модуля. Обычно, при решении достаточно сложных задач определить элементы структуры модуля точно не удается. В этих случаях, при формировании структуры возникает необходимость ее дополнения или изменения вида ( добавление или изъятие вложенных циклов и проч. Операции изменения некоторого варианта уже созданной структуры любого вида осуществляются вводом необходимых операторов в тело программного модуля. [47]
Пусть А является - алгеброй. Мы будем рассматривать А и как левый ER ( А) - модуль и как правый Ея ( А) - модуль. Вообще говоря, А не является Ел ( Л) - Ек ( Л) - бимодулем. В частности, структура левого А-мо-дуля А совпадает со структурой модуля, определенной подалгеброй Я ( А) алгебры ER ( A), поскольку левое регулярное представление Я инъективно. [48]
В качестве критериев оптимизации используются: минимум суммарного среднего времени обслуживания запросов пользователей и заданий на корректировки; минимум суммарного времени обработки сетевого каталога СБД; минимум общего времени работы с СБД при функционировании СОД. Ограничениями задач синтеза являются структурные, эксплутацион-ные и технологические ограничения, обусловленные выбранной СУБД, требованиями к режимам эксплуатации, выбранной топологией ЛВС и другими факторами. Результатами решения поставленных задач синтеза физической структуры СБД являются распределение кластеров СБД по узлам ЛВС; размещение записей о характеристиках функционирования СБД по страницам БД сетевого каталога; распределение страниц сетевого каталога по узлам ЛВС; определение состава и структуры модулей прикладного программного обеспечения клиентской части СБД; определение схем реализации SQL-запросов к серверам БД. [49]
При t 17 рассматриваемый ряд ведет себя хаотически. Чем больше значение t, тем более хаотичным становится характер ряда. На рис. 5.5 представлен пример развития процесса для 1000 точек ряда Маккея-Гласса. Допустим, что первые 700 точек будут использоваться в качестве обучающей выборки, а последние 300 точек - в качестве тестовых данных. На рис. 5.6 представлена структура модуля нечеткого управления. Он построен на базе 19 правил, предложенных экспертом. Эти правила можно сформулировать и другими способами - например, методом, описанным в разд. [50]
Тестирование структуры программных модулей предназначено для дальнейшего анализа правильности маршрутов при исполнении программы на ЭВМ. Основная задача, которая решается, - это получение информации о всей совокупности маршру - foB, реально исполняющихся в программе. Для решения такой задачи необходимо выбрать критерии, по которым будет происходить выделение и упорядочивание маршрутов. Упорядочивание обычно производится по числу команд или длительности исполнения маршрутов, по числу условных переходов на маршруте, по вероятности исполнения маршрута при реальном функционировании программы. В ходе тестирования исключаются нереализуемые маршруты, проверяются циклы и ациклические маршруты и дается оценка степени тестирования структуры модуля. [51]
Подобный подход хорош для небольших или простых программ. Однако с возрастанием сложности программы растет и сложность главного модуля. В программе, где одна подпрограмма управляет сотней модулей, главный модуль будет настолько сложным, что его трудно будет отлаживать и изменять. Если ее численность возросла до ста служащих, то президенту становится трудно управлять ими всеми непосредственно. Скорее всего часть работ по управлению и принятию решений будет возложена на вице-президентов. В программе также появляются подпрограммы второго уровня, подчиненные главной подпрограмме. В этом случае структура модуля становится иерархической. [52]