Научная статья на тему 'Программная система обработки диаграммно-графических языков САПР'

Программная система обработки диаграммно-графических языков САПР Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
116
18
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ДИАГРАММНО-ГРАФИЧЕСКИЕ ЯЗЫКИ / АНАЛИЗ ГРАФИЧЕСКИХ ЯЗЫКОВ / WEB 2.0 / САПР

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Сычёв Виктор Владимирович

Предлагается архитектура системы построения, сопровождения и последующего анализа диаграмм с применением клиент-серверного подхода и использованием технологий WEB 2.0

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Сычёв Виктор Владимирович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Программная система обработки диаграммно-графических языков САПР»

2. Фокс, А. Вычислительная геометрия. Применение в проектировании и на производстве / А. Фокс, М. Пратт; пер. с англ. -М.: Мир, 1982. - 304 с.

Митюков Виктор Вениаминович, инженер отдела автоматизации УВАУ ГА (И), научные интересы - математические методы моделирования.

Назаров Артём Сергеевич, курсант УВАУ ГА (И).

УДК 004.42

»

В. В. СЫЧЁВ

ПРОГРАММНАЯ СИСТЕМА ОБРАБОТКИ ДИАГРАММНО-ГРАФИЧЕСКИХ ЯЗЫКОВ САПР

Предлагается архитектура системы построения, сопровождения и последующего анализа диаграмм с применение клиент-серверного подхода и использованием технологий WEB 2.0.

Ключевые слова: диаграммно-графические языки, анализ графических языков, WEB 2.0, САПР.

В настоящее время в САПР активно используется графические представления объектов и процессов с использованием диаграммных языков. Существует большое количество коммерческих и свободно распространяемых программных средств, которые позволяют работать с популярными диаграммными языками, такими как ЕРС, UML, SDL, DFD и т. д., однако большая их часть не ориентирована на коллективную разработку, имеет скудные средства по расширению нотаций языка и зачастую не имеет средств анализа. Перечисленные недостатки снижают преимущества от использования средств работы с диаграммными языками для предприятий и

ТГТЛЛ/ГТ LJIL1 V 1/Т\Л*ГТС»1_1ТЛТ*

В данной статье предложена архитектура программной системы для коллективной работы,

межплатформенного сопровождения и анализа

• • __

диаграммных языков САПР, которая лишена вышеперечисленных недостатков.

Общие характеристики системы

Основной задачей, поставленной при проектирование и реализации системы, является построение универсального набора инструментов, обеспечивающих следующие основные функции для пользователя:

«> создание диаграмм графических языков; • добавление новых нотаций диаграммно-графических языков;

©Сычёв В. В., 2010

• анализ построенных диаграмм по предварительно загруженным в систему нотациям языка и алгоритмам анализа;

• добавление новых алгоритмов анализа с помощью плагинов;

• добавление описания синтаксических и семантических правил графических языков;

• создание взаимосвязи между построенными проектировщиками диаграммами;

• одновременный доступ нескольких инженеров к базе данных построенных диаграмм.

К системе предъявляются следующие требования:

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

архитектура интеграционного решения должна быть основана на открытых общепризнанных стандартах.

Архитектура системы

Исходя из вышеперечисленных требований к программному продукту, архитектура приложения представляет собой несколько компонентов, взаимодействующих между собой в сети, т. е. приложение должно быть клиент-серверное. Предлагается использовать четырёхуровневую архитектуру (рис. 1), которая содержит:

• презентационный слой (клиент);

• слой взаимодействия с интерфейсом (сервер);

• слой бизнес-логики (сервер);

• слой управление данных/базой данных (сервер).

Презентационный слой

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

® принятие запроса пользователя на действие и отправка запроса в слой взаимодействия с интерфейсом;

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

Для отрисовки графических объектов диаграмм используются специализированные языки описания графических изображений SVG (Scalable Vector Graphics) и VML (Vector Markup Language). Использование сразу двух языков

обусловлено тем, что наиболее используемым браузером в корпоративном сегменте является Internet Explorer, а в нём реализуется только поддержка VML, большинство остальных популярных браузеров поддерживают SVG. При этом для корректной работы презентационного слоя необходим один из следующих браузеров: Internet Explorer 6+, Mozilla FireFox любая версия, Google Grome любая версия, Apple Safari любая версия.

Согласно работе [1] перечисленные выше браузеры используют более 70 процентов домашних пользователей и более 90 процентов корпоративных.

Слой взаимодействия с интерфейсом

Слой взаимодействия с интерфейсом представляет собой JAVA-приложение, работающее в среде Resin или Tomcat. Данный слой осуществляет взаимосвязь презентационного слоя приложения с бизнес-логикой и инкапсулирует её. Необходимость данного слоя обусловлена желанием создать более гибкую архитектуру с возможностью дальнейшего добавления других клиентских приложений.

Презентационный слой

Internet/LAN

Слой взаимодействия с интерфейсом

Слой управления

Слой бизнес-логики

Блок иерархического RVN-анализатора

Внешний API

Скрипты анализа

Генератор отчётов

Клиентская среда (Web-браузер)

Серверная среда (один или несколько обслуживающих серверов)

Рис. 1. Общая архитектура приложения

Запросы, поступающие с уровня презентационной логики, обрабатываются соответствующими модулями JAVA-прило-жения. Результаты обработки возвращаются клиенту в виде HTML-страниц для визуализации или AJAX-ответа в формате JSON (JavaScript Object Notation).

Бизнес-логика

Слой бизнес-логики содержит допустимые нотации диаграммно-графических языков и реализует возможность анализа й генерации отчётов по построенным проектировщиками диаграммам. Для анализа используется RVA-грамматика [2, 3], которая представляет собой автоматную грамматику, характеризующуюся линейными временными затратами на анализ диаграмм и двухкратным сокращением требуемой памяти по сравнению с существующими аналогами. Данная грамматика способна выявлять более одной ошибки за проход, используя алгоритмы нейтрализации некорректного состояния анализатора [3, 4].

Для генерирования отчёта и создания дополнительных средств анализа используется внешнее API, который позволяет:

• получить информацию о построенных диаграммах;

® вносить изменения в уже построенные диаграммы, либо создавать новые;

© формировать HTML-документ отчёта.

Доступ и хранение данных

В качестве системы управления базой данных (СУБД) используется PostgreSQL. PostgreSQL является свободной альтернативой коммерческим СУБД и существует в реализациях для всех наиболее популярных платформ, таких как Linux, Windows, FreeBSD и т. д.

СУБД обеспечивает хранение всей прикладной информации и обработку запросов, поступающих от слоя управления БД, а именно:

® описание графических примитивов;

• нотации диаграммно-графических языков;

• плагины для расширения функциональности бизнес-слоя (скрипты построения отчётов и анализа);

• построенные проектировщиками диаграммы с атрибутами и связями с другими диаграммами;

© права пользователей на доступ к модулям приложения и построенным диаграммам.

Защита данных

Защита данных обеспечивается на уровне бизнес-логики путём присваивания каждому пользователю прав на просмотр, редактирования

и удаление заданной диаграммы. Также возможно задание прав на группу пользователей.

Права пользователя хранятся в БД.

Выводы

П р е дл агаетс я у и и в с р сал ь и а я си сте ,\ 1 а обработки диаграммно-графических языков САПР, которая имеет следующие преимущества:

• централизованное хранение данных, что облегчает резервное копирование данных и обеспечивает их безопасность;

• нет необходимости в установке программного обеспечения на каждый компьютер (браузер включён во все современные операционные системы);

• нет проблем обновления приложения, т. к. необходимо обновлять приложение только на стороне сервера;

© межплатформенность;

• управление правами доступа осуществляется централизованно на стороне сервера;

• возможность анализа диаграмм, используя встроенные средства анализа (КУА-грам-матику);

• расширение возможности анализа диаграмм, используя систему плагинов.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1 .http://trends.spyloa.ru/global-statistic-Ьгоу/БегБ/ - 8рук^ аналитика - Статистика использования браузеров.

2. Афанасьев, А. Н. Синтаксически-ориенти-рованная реализация графических языков на основе автоматных графических грамматик / А. Н. Афанасьев, О. Г. Шаров // Программирование. - 2005. -№ 6. - С. 56-66.

3. Афанасьев, А. Н. Анализ описаний событийных процессов в АЯ18-технологии прректирования автоматизированных систем / А. Н. Афанасьев, В. В. Сычёв // Всероссийская конференция с элементами научной школы для молодежи «Проведение научных исследований в области обработки, хранения, передачи и защиты информации», 1-5 декабря 2009 г. Россия, Ульяновск: сборник научных трудов. В 4 т. Т. 2. - Ульяновск : УлГТУ, 2009. - С. 386-396.

4. Афанасьев, А. Н. Нейтрализация ошибок в диаграммных графических языках САПР / А. Н. Афанасьев, В. В. Сычёв // Информационные технологии: межвузовский сборник научных трудов. - Ульяновск : УлГТУ, 2008. - С. 187-193.

Сычёв Виктор Владимирович, аспирант кафедры «Вычислительная техника» УлГТУ.

i Надоели баннеры? Вы всегда можете отключить рекламу.