CIM Users Group представила версию 2.0 открытого инструмента CIM-compare, предназначенного для сравнения двух версий UML-модели Common Information Model (CIM) и автоматического формирования отчёта обо всех обнаруженных изменениях.
Инструмент может быть полезен разработчикам и экспертам, работающим с моделями на базе IEC 61970, IEC 61968 и IEC 62325, а также с корпоративными расширениями CIM.
CIM-compare сравнивает исходную и новую версии модели и позволяет выявлять изменения в пакетах, классах, атрибутах, связях и UML-диаграммах. Результат формируется в виде HTML-отчёта, который можно просматривать в обычном браузере.
Что изменилось в версии 2.0
Одним из основных нововведений стал полностью переработанный HTML-отчёт. Элементы модели теперь группируются по характеру изменения: добавлены, удалены, перемещены или изменены. Сводная информация одновременно работает как фильтр, добавлены структура пакетов и поиск.
Для изменённых названий и описаний реализовано сравнение текста с подсветкой отличий непосредственно на уровне отдельных слов.
Отдельно переработана работа с UML-диаграммами. Изменения теперь могут отмечаться непосредственно на изображении диаграммы: инструмент показывает добавленные, удалённые, изменённые, перемещённые и стилистически изменённые элементы, а также формирует перечень изменившихся связей.
Отчёты стали значительно компактнее
Ещё одно изменение касается размера результатов сравнения. По умолчанию CIM-compare 2.0 включает в отчёт прежде всего изменившиеся элементы, не перегружая его неизменной частью модели.
По данным разработчиков, размер демонстрационного отчёта сократился с 5,9 МБ до менее чем 1 МБ. Для больших CIM-моделей это упрощает просмотр результатов и обмен отчётами между участниками проекта.
Зачем это энергетическим компаниям
Контроль изменений CIM становится особенно важным по мере перехода энергетических компаний от использования стандарта «как есть» к созданию собственных профилей, расширений и корпоративных информационных моделей.
При выпуске очередной версии такой модели необходимо понимать:
- какие классы и атрибуты появились или были удалены;
- изменилась ли семантика существующих объектов;
- были ли классы перенесены между пакетами;
- как изменились ассоциации между объектами;
- какие UML-диаграммы требуют пересмотра;
- как изменения базовой версии CIM повлияют на корпоративное расширение.
Автоматическое сравнение версий позволяет заменить значительную часть ручного анализа модели и сделать процедуру управления версиями более воспроизводимой. Это может быть особенно полезно при разработке корпоративных профилей CIM, интеграции информационных моделей различных систем и сопровождении собственных пространств имён.
Open Source
CIM-compare развивается как открытый проект CIM Users Group. Исходный код и документация доступны публично. Инструмент ориентирован на работу с CIM-моделями и их расширениями, в том числе представленными в UML/XMI.
Одновременно с версией 2.0 вышло обновление 2.0.1. Оно добавляет поддержку Java 24 и более новых версий, включая Java 25, без дополнительных настроек, а также исправляет отображение отдельных метаданных атрибутов.
Появление CIM-compare 2.0 делает инструмент существенно удобнее именно для экспертного анализа эволюции CIM-моделей — задачи, которая становится всё более актуальной по мере распространения CIM в проектах интеграции и построения единого информационного пространства электроэнергетики.