С точки зрения авторов экспертный подход наиболее перспективен.
В рамках этого подхода для генерации исходного кода программных
систем предлагается использование многоуровневого набора правил.
Постановка задачи.
В настоящей работе поставлена задача разра-
ботки способа генерации программных систем, который обеспечивает
выполнение требований, приведенных ниже.
Требование I
. Позволяет гибко модифицировать (перегенерировать)
код системы в зависимости от изменяющихся требований.
Требование II.
Дает возможность гибко заменять элементы исполь-
зуемых технологий, например, замена одной сетевой библиотеки дру-
гой, более быстрой или надежной.
Требование III
. Обеспечивает независимость от целевого языка
(языков) программирования.
Требование IV
. Обладает возможностью пояснения сгенерирован-
ного кода, позволяя установить связь текста программы с целями про-
ектирования.
Организация уровней системы.
Идея генерации программных
систем на основе правил не является новой. Ключевая проблема за-
ключается в организации уровней системы и правил преобразования.
Начиная с 1970-х годов, в рамках изучения вопросов ситуацион-
ного управления был предложен семиотический подход к построению
информационных систем [7, 8]. В работе [7] отмечено, что “принци-
пиальное отличие семиотических операций от формальных состоит в
том, что в них отражается не только синтаксис, но также семанти-
ка и прагматика решаемых задач”. Таким образом, система является
семиотической, если в ней рассматриваются синтаксис, семантика и
прагматика решаемой задачи, а также отношения между ними. Де-
тальные определения понятий синтаксиса, семантики и прагматики
зависят от решаемой задачи.
Приведем определения понятий синтаксиса, семантики и прагма-
тики для рассматриваемого случая:
1) синтаксис системы — набор конструкций языков программирова-
ния, в рамках которых генерируется программное обеспечение;
2) прагматика системы — набор исходных требований к генерируе-
мому программному обеспечению;
3) семантика системы — структура данных, которая позволяет ото-
бразить многообразие возможных отношений между прагмати-
кой и синтаксисом.
Прагматику, семантику и синтаксис будем считать различными
уровнями системы, которые используются для организации много-
уровневого набора правил системы.
Возникает вопрос выбора подходящей структуры данных для реа-
лизации семантики. В настоящей работе в качестве такой структуры
предложено использовать метаграф.
ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2014. № 5 79