345_Mordvinov_presentation

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