ПОИСК Статьи Чертежи Таблицы Вопросы реализации трансляторов и конверторов с единого входного языка комплексной САПР из "Теоретические основы построения базовых адаптируемых компонентов САПР МЭА " Предлагаемая технология разработки программных средств лингвистического обеспечения комплексной САПР базируется на -трех основных принципах. Первый принцип заключается в замене программирования трансляторов, конверторов и программных средств создания машинных моделей для различных предметных юбластей комплексной САПР на алгоритмических языках высокого уровня составлением формализованных описаний заданий па автоматическую разработку данных программных средств лингвистического обеспечения на специальных проблемных языках — языке декларации модели предметной области комплексной САПР и языке описания синтаксиса и семантики входных языков на основе МБНФ. Второй принцип заключается в повышении степени -автоматизации работ по программированию программных средств лингвистического обеспечения комплексной САПР. Это достигается за счет использования специальных средств, предназначенных для -автоматической генерации (синтеза) наиболее трудоемкой их части — трансляторов и языковых конверторов проблемно-ориентированных входных языков комплексной САПР. Высвобождающие- ся при этом ресурсы направляются на дальнейшее развитие и совершенствование программных средств генерации. Третий принцип заключается в возмон но более широком привлечении к созданию программных средств лингвистического обеспечения комплексной САПР круга лиц, не имеющих специальной подготовки в области программирования. [c.117] Реализация технологии разработки, базирующейся на этих трех принципах, позволяет осуществить применительно к лингвистическому обеспечению одну из наиболее важных концепций построения комплексной САПР, а именно концепцию построения на основе базовых адаптируемых компонентов. [c.117] Методически, предлагаемая технология разработки программных средств лингвистического обеспечения комплексной САПР основывается на последовательном решении следующего круга вопросов и проблем. [c.118] В первую очередь решается проблема того, что необходимо-автоматизировать, что возможно автоматизировать, и, наконец,, какими формальными средствами это может быть достигнуто. [c.118] Второй проблемой является проблема алгоритмической реализации и возможности автоматизации синтеза алгоритмов для решения отдельных этапов разработки программных средств лингвистического обеспечения на основе предлагаемых формальных, средств. При этом автоматизация синтеза сложных алгоритмов должна быть основана на их декомпозиции на более простые алгоритмы, программная реализация которых может быть осуществлена в рамках неавтоматизированной или автоматизированной технологии программирования. Желательно, чтобы это программное обеспечение обладало как можно большей универсальностью и адаптируемостью на алгоритмы достаточно широкого класса. [c.118] Третьей проблемой является закрепление за определенными видами технологий программирования (неавтоматизированной, автоматизированной или автоматической) процесса синтеза определенных программных средств, исходя из их сложности, степени формализованности и наличия программ, реализующих применяемые в них алгоритмы. [c.118] Четвертая проблема заключается в создании специализированных программных средств (программных дефиниторов [66, 72],. текстов базовых программных заготовок [73, 74] на языках высокого уровня, универсальных адаптируемых программных модулей и программных систем), обеспечивающих выбраннуЮ технологию программирования и предлагаемую технологию разработки. [c.118] В состав системы генерации трансляторов входит подсистема генерации машинной модели предметной области комплексной САПР — генератор базы, подсистема генерации трансляторов с входных языков, подсистема генерации языковых конверторов, универсальные адаптируемые транслятор и конвертор [24], а также универсальные программы обработки семантической информации азы, которые могут быть использованы во вновь создаваемых ППП или включены в состав известных ППП при их соответствующей модификации. [c.119] Система генерации трансляторов комплексной САПР представляет собой постоянную часть программных средств лингвистического обеспечения комплексной САПР, в состав которой входят перечисленные выше подсистемы. [c.119] Изменяемая часть зависит от проблемной ориентации комплексной САПР и используемых в ней ППП. Она состоит из автоматически генерируемых на основе формализованного задания на -синтез изменяемых частей программных средств лингвистического обеспечения, текстов на промежуточном языке с атомарной атрибутной грамматикой, обеспечивающих настройку универсального -адаптируемого транслятора или конвертора на конкретный процесс конвертирования текста задания на проектирование МЭА с единого входного языка комплексной САПР во входной язык конкретного ППП. [c.119] Первый синтаксический анализатор является лексическим анализатором, предназначенным для выделения из формализованного описания базы главных лексем языка декларации базы (семафоронтов) и передачи управления монитору, который осуществляет вызов соответствующей программы обработки конкретного типа предложения языка декларации. Синтаксический анализ предло-женш осуществляется вторым синтаксическим анализатором, настройка которого на конкретный вид предложения выполняется соответствующей управляющей таблицей транслятора. [c.120] При программировании данных программных средств использован как неавтоматизированный, так и автоматизированный метод синтеза программ на основе программных дефиниторов. [c.120] Генератор фреймовой сети генерирует размеченный атрибутивный граф СЛр базы после семантико-синтаксического контроля -формализованного описания базы способы разметки графа СЛр также ориентированы на выбранный способ кодирования и хранения информации в постоянном разделе базы. Доступ к паспортам шаблонов на основе разметки графа осуществляется с помощью системы ссылок на каталог паспортов, заполнение которого ранее осуществлено генератором паспортов шаблонов. [c.121] Генератор тезауруса базы предназначен для автоматического синтеза тезауруса на основе ее формализованного описания. Тезаурусы в составе системы генерации трансляторов коренным образом отличаются от известных словарей трансляторов САПР. Тезаурус базы строится по принципу каталога с некоторым множеством разделов и системой перекрестных ссылок. В постоянной части тезауруса (раздел словаря языка декларации базы) зафиксированы ключевые слова (лексемы) языка декларации базы и используемые разделители, необходимые для реализации процесса трансляции формализованного описания с помощью генератора базы. Эта часть тезауруса выступает как обычный словарь САПР. Остальные разделы тезауруса базы предназначены для фиксации имен сложных семантических объектов, имен субфреймов, фреймов и различных атрибутов. Система перекрестных ссылок позволяет установить иерархию и подчиненность именованных агрегатов данных (семантических объектов, фреймов и атрибутов). Система ссылок позволяет также идентифицировать все свойства именованного объекта данных в составе модели предметной области комплексной САПР. [c.121] Генерация базы производится однократно на основе формализованного задания на генерацию. С помощью файловой системы машинная модель предметной области комплексной САПР в виде базы фиксируется и хранится на внешних устройствах (дисках, лентах). При необходимости работы с базой различных подсистем комплексной САПР машинная модель предметной области может быть активизирована и считана в оперативную память ЭВМ с помощью программы-активизатора. [c.121] Из описания генератора базы видно, что при его разработке была использована неавтоматизированная и автоматизировапная технологии программирования. [c.121] Рассмотрим структуру подсистемы генерации трансляторов с входных языков комплексной САПР на основе их формализованного описания средствами атрибутных грамматик и МБНФ. Процесс автоматического синтеза изменяемой части программных средств лингвистического обеспечения генератором трансляторов можно-расчленить на фазы. Две первые фазы носят подготовительные характер. [c.122] Вернуться к основной статье