Model/View-архитектура CASE-пакета REAL-MV Тимофей Брыксин, гр. 545 Научный руководитель: А.Н.Терехов Рецензент: Д.В.Кознов 13 июня, 2007 Мат-Мех СПбГУ
2 Постановка задачи Создание подхода к построению архитектуры и реализация на его основе CASE-пакета, обладающего следующими характеристиками: Распространение под лицензией GPLv2 Кроссплатформенность Распределенность Возможность автоматического создания графических редакторов Внешняя простота архитектуры и прозрачность интерфейсов взаимодействия модулей
3 Цели данной работы Создание подходящей архитектуры CASE-пакета Реализация генератора кода графических редакторов по описаниям метамоделей их диаграмм Разработка инфраструктуры для внедрения генерируемого кода в проект Создание средств интеграции процесса генерации кода в процесс сборки всего CASE-пакета
4 Основная идея – разнесение обработки и представления данных по разным модулям Парадигма Model/View/Controller Trygve Reenskaug, 1979
5 Осуществляется объединение контроллера и представления в одну сущность Парадигма Model/View Репозиторий Редактор Представления Модель Редактор GUI
6 Инфраструктура редакторов Редакторы «Ядро»Специфика Обеспечивает базовую функциональность Статичный код Задает особенности конкретных типов диаграмм Генерируется автоматически
7 Подход к созданию редакторов Описание метамоделей диаграмм с помощью специального XML-формата и генерация по ним классов элементов диаграмм файлов SVG-описаний элементов схемы БД репозитория средств доступа к значениям атрибутов элементов в репозитории дополнительного кода для интеграции классов элементов в проект
8 Результаты Разработана архитектура CASE-пакета в соответствии с парадигмой Model/View Реализована подходящая инфраструктура для создания редакторов Создан генератор C++ кода редакторов диаграмм по XML-описаниям их метамоделей Выполнена апробация подхода на примере создания набора редакторов диаграмм UML 2.1 классов случаев использования последовательностей коммуникаций