Поддержка разработки Parallels Business Automation в среде Eclispe Научный руководитель: Сергушенков Ю. А. Рецензент: доцент кафедры системного программирования, к.ф.-м.н. Иванов А.Н. САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ Математико-механический факультет Кафедра системного программирования Алеев Константин Валерьевич, 545 гр.
Parallels Business Automation Одним из приоритетных продуктов компании Parallels является продукт Parallels Business Automation (PBA) StellArt – технологическая платформа для разработки PBA Язык LISA – ядро технологии StellArt PBA IDE - интегрированная среда разработки для продукта PBA
Платформа StellArt
Язык LISA
Постановка задачи Поддержка языка LISA Создание мета-модели языка LISA Разработка транслятора файлов LISA в модель, соответствующую мета-модели Реализация быстрой навигации по коду Реализация функции автоматического дополнения в редакторе LISA файлов (Content Assist) Реализация инструментария для поиска LISA-элементов Создание модуля для продукта PBA IDE, графически отображающего структуру LISA файлов.
Создание мета-модели языка LISA Мета-модель создана с использованием EMF Синтаксический анализатор языка LISA сгенерирован c помощью утилиты Yacc При синтаксическом анализе LISA файлов создается модель данных, соответствующая метамодели, созданной в EMF
Быстрая навигация по коду Между вхождениями LISA элементов и их объявлениями Между объявлениями методов в LISA описании и их реализацией на С++ Между объявлениями окон в LISA описании и их описанием в файлах определения GUI
Автодополнение (Content Assist) Реализация функций автодополнения Подсказка по возможным синтаксическим конструкциям Автоматическое закрытие скобок
Поиск элементов языка LISA В рамках дипломной работы была реализована функциональность поиска LISA-элементов
Диаграммный модуль
Результаты Разработана мета-модель языка LISA с использованием EMF Реализован транслятор исходных LISA файлов в EMF модель Реализована быстрая навигация по коду Реализована функция автоматического дополнения в редакторах LISA файлов Реализован инструментарий для поиска элементов языка LISA Создан модуль графического отображения структуры LISA файлов в виде диаграмм