Советов Б.Я., Яковлев С.А. Моделирование систем (3-е изд., 2001) (1186218), страница 39
Текст из файла (страница 39)
На технологическую конструктивность воздействуют такие факторы:— формы представления программных модулей AfM;— виды управляющих связей между отдельными частями программных комплексов (открытые и закрытые подпрограммы);— методы разработки (сверху вниз, снизу вверх и др.) программных комплексов, применяемые при работе с моделирующималгоритмом системы 5;— базовый язык или языки программирования, используемыепри подготовке программ моделирования;— ограничения на размеры программ моделирования;— возможности штатных системных средств, обеспечивающихредактирование связей, загрузку и сегментацию программных комплексов, редактирование текстов.Требования, вытекающие из алгоритмической и технологической конструктивности, составляют в совокупности регламент модуляризации, т. е.
принятую разработчиками пакета форму представления материала в функциональном наполнении, а также способыего создания и эволюции. Если описание языка заданий рассматривать как спецификацию сопряжения пользователя с пакетом, топосредством регламента модуляризации определяется сопряжениес пакетом (точнее, с функциональным наполнением пакета) егоразработчиков.161Язык заданий пакета. Язык заданий НИМ является средствомобщения пользователя (разработчика или исследователя машинноймодели М„ процесса функционирования системы S) с пакетом . Онпозволяет описывать последовательность выполнения различныхопераций, обеспечивающих решение задачи моделирования, илипостановку задачи моделирования, по которой эта последовательность строится автоматически. Архитектура ППМ, т. е.
предоставляющийся пользователю внешний вид АСМ, определяется тем,какие задачи система может решать и какие возможности дает онапользователю. Язык заданий отражает основные архитектурныерешения, принятые разработчиками ППМ, стремившимися повысить уровень квалификации вычислительной системы в определенной прикладной области. Именно через язык заданий пользовательвоспринимает и оценивает, какие «вычислительные услуги» предоставляет АСМ и насколько удобно их использование, т. е., другими словами, каков фактический уровень тематической квалификации системы.Общая структура и стиль языка заданий ППМ в значительнойстепени зависят от дисциплины работы, принятой в обслуживаемойпакетом предметной области.
Можно выделить две основные (вопределенном смысле противоположные) дисциплины проведениямоделирования:— активную дисциплину, предусматривающую при создании конкретных рабочих программ модели Мм модификацию и настройкуимеющихся модулей функционального наполнения, а также разработку новых модулей;— пассивную дисциплину, предусматривающую проведение машинных экспериментов с моделью Мм без модификации функционального наполнения ППМ.Активная дисциплина работы свойственна специалистам, создающим программное обеспечение АСМ, а пассивная дисциплинахарактерна для деятельности так называемых конечных пользователей, т.
е. специалистов, которые не обязательно имеют высокийуровень подготовки в области программирования. Такое выделениедвух дисциплин работы достаточно условно и преследует цельподчеркнуть контрастность системных подходов, используемых приавтоматизации процесса моделирования.Так, характерной особенностью языков заданий пакетов, обслуживающих проведение моделирования в режиме активной дисциплины, является их направленность на описание схем программрешения конкретных задач моделирования процессов, причем центральное место в таких языках (их обычно называют языками сборки) занимают не средства описания данных и манипулированияими, что свойственно универсальным процедурно-ориентированным языкам программирования, а средства:— конструирования схем программ, в которых указывается по162рядок выполнения и взаимодействия модулей при моделированииконкретной системы 5;— развития или модификации функционального наполненияППМ;— управления процессами генерации и исполнения рабочей программы, реализующей задание пользователя.Главная цель разработки языка заданий ППМ, обеспечивающего решение задач моделирования в режиме пассивной дисциплины,заключается в том, чтобы «спрятать» от конечного пользователяосновную массу алгоритмических подробностей моделирования егоконкретной системы S, или, другими словами, повысить уровеньнепроцедурности языка.
Такие языки, называемые языками запросов, ориентированы обычно на формулирование содержательныхпостановок задач, т. е. запросов, указывающих, «что необходимополучить», без явного задания того, «как это получить». Пользователь тем самым избавляется от необходимости конкретизироватьспособы и средства решения его задачи моделирования конкретнойсистемы S, что позволяет понизить порог требований к уровню егопрограммистской подготовки.Язык заданий ППМ может быть реализован как в форме самостоятельного языка, так и в форме встроенного языка, т. е. расширения существующего языка программирования. Независимо отформы реализации разработчик языка должен стремиться к тому,чтобы лексика, синтаксис и семантика языка заданий были какможно ближе к пользовательскому восприятию решаемых задачмоделирования, т. е.
чтобы языковые конструкции приближалиськ концептуальной модели Мх.Системное наполнение пакета. Системное наполнение ППМ представляет собой совокупность программ, которые обеспечивают выполнение заданий и взаимодействие пользователя с пакетом, адекватное дисциплине работы в данной прикладной деятельности.Можно сказать, что системное наполнение организует использование потенциала знаний, заложенных в функциональном наполнении,в соответствии с возможностями, предусмотренными в языке заданий ППМ. Реализация функций системного наполнения ППМ осуществляется на основе согласованного использования:— штатных общецелевых средств системного обеспечения;— средств системного наполнения, расширяющих и сопрягающих возможности компонентов штатного обеспечения;— специальных средств системного наполнения, выполняющихуправляющие, архивные и обрабатывающие процедуры с учетомспецифики моделирования процесса функционирования системы S.Язык (языки), на котором пишутся программы системного наполнения пакета, называется инструментальным языком ППМ.Можно выделить такие ставшие уже традиционными составляющие системного наполнения пакета:— резидентный монитор, осуществляющий интерфейс как163между отдельными компонентами системного наполнения, таки между ними и штатным программным обеспечением;— транслятор входных заданий, формирующий внутреннеепредставление заданий и реализуемый обычно в виде макрогенератора или препроцессора;— интерпретатор внутреннего представления задания;— архив функционального наполнения (подсистема храненияпрограммного материала);— банк данных об объекте моделирования и машинном эксперименте;— монитор организации процесса машинного моделирования(взаимодействия модулей по данным и управлению);— планировщик процесса машинного моделирования, которыйопределяет последовательность выполнения модулей, реализующую задание ППМ;— монитор организации интерактивного взаимодействияс пользователем (исследователем системы S).Программные средства АСМ.
Напомним, что под ППМ, ориентированным на решение задач машинного моделирования систем,понимается комплекс программных средств и документов, предназначенных для реализации функционального завершенного алгоритма моделирования процесса функционирования системы S и обеспечивающих автоматизацию управления ведением экспериментас моделью Мы на ЭВМ [17, 37].Сущность такого определения состоит в том, что ППМ неявляется набором готовых программ для проведения машинныхэкспериментов с моделью Мм, а представляет собой набор средствдля разработки конкретных, удовлетворяющих требованиямпользователя рабочих программ моделирования, служащих дляавтоматизации определенных функций при построении модели, машинном эксперименте и обработке результатов моделирования системы S.К программным средствам ППМ относится набор программных модулей (тело пакета), из которых в соответствии с требованиями пользователя по заданному алгоритму набирается конкретная рабочая программа моделирования заданного объекта.
В состав ППМ также входят управляющая программа, представляющая собой аналог супервизора ЭВМ; средства генерации рабочихпрограмм для конкретного применения при решении задач моделирования систем. Специальная программа (монитор) принимает отпользователя информацию о требуемой модификации программ,формирует из набора стандартных модулей законченные рабочиепрограммы, готовые к реализации машинного эксперимента с моделью Мм. Такой процесс генерации (настройки) ППМ на конкретные условии его использования создает значительную гибкость прирешении задач автоматизации моделирования различных объектов.164Различают две разновидности генерации рабочих программ моделирования: статическую и динамическую.При статической генерации из отдельных модулей формируется рабочая программа моделирования, необходимая пользователю при исследовании конкретного объекта.
При этом определяются необходимые устройства ввода-вывода информации, описываются на специальном языке генерации необходимые свойства разрабатываемой программы. Созданная таким образом программамоделирования является одновариантной и при необходимости внесения изменений в процессе моделирования системы S требуетсяпроведение новой генерации.При динамической генерации заранее оговариваются всеварианты рабочей программы моделирования системы 5, которыемогут потребоваться пользователю при машинном экспериментес моделью Мм.
При решении конкретной задачи моделирования,т. е. перед каждым новым прогоном программы в ходе машинногоэксперимента, вводится специальная параметрическая карта, определяющая требуемый на этом прогоне вариант программы. Монитор пакета собирает необходимые модули и помещает их в оперативную память ЭВМ для решения задачи моделирования. Условияпроведения машинного эксперимента при динамической генерацииявляются более гибкими, но при этом увеличиваются затраты машинных ресурсов на моделирование (увеличивается необходимыйобъем памяти и время моделирования каждого варианта моделисистемы 5).Кроме использования программных модулей, входящих в телоНИМ, пользователь имеет возможность подключать свои собственные программы моделирования в точках пользователя.