Cоздание средств визуального сравнения моделей в QReal Мордвинов Дмитрий СПбГУ, Математико-Механический факультет Научный руководитель: Т.А. Брыксин
Постановка задачи QReal – средство создания CASE- систем Важная характеристика – поддержка многопользовательского доступа Версионирование моделей
Версионирование моделей в QReal Модели в QReal – графы Сериализация в xml-формате Версионирование моделей Расширение управляющего интерфейса репозитория Создание архитектуры, удобной для добавления новых клиентов Внедрение клиента Subversion
Система сравнения диаграмм Проблема: отобразить разницу не в текстовом виде (как это делают клиенты версионирования), а визуально (т.е. нужно научиться сравнивать и красиво показывать изменения между диаграммами)
Новая архитектура репозитория
Способы сравнения моделей Анализ текстового diff`а требует доработки xml-формата лишает возможности организовать систему сравнения диаграмм в виде отдельного модуля Сравнение и анализ графов граф модели рабочей копии граф модели последней ревизии в общем случае – неразрешимая задача
Реализация В QReal каждому элементу присвоен уникальный ID Нет необходимости в полноценном сравнении графов Удобное API репозитория
Сравнение моделей Считывание двух моделей Создание модели различий Графические отличия Логические отличия Отображение различий
Диалоговое окно разницы
Полученные результаты Исследован вопрос внедрения системы контроля версий в QReal Доработана архитектура репозитория Реализована функциональность взаимодействия с клиентом VCS Реализована поддержка Subversion
Полученные результаты Реализован базовый функционал системы сравнения диаграмм Создан удобный и наглядный интерфейс отображения различий между диаграммами