САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ Математико-механический факультет Кафедра системного программирования Поддержка разработки 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 файлов в виде диаграмм