В настоящее время мы оцениваем Enterprise Architect (12, выпуск кандидата).
Основная причина, по которой мы хотели бы использовать его, — использовать функцию обратного инжиниринга, от c ++ до UML.
Наша кодовая база документирована с использованием тегов Doxygen.
Теперь парсер EA, похоже, не распознает эти теги. Есть ли способ, которым я мог бы включить это?
Редактировать:
Вещи, которые я ищу, не должны быть вставлены в UML, а добавлены в модель проекта. Например, информация, определяемая тегами @param для методов, вставляется в «примечания» методов, а не в «примечания» параметров. Теги @author doxygen не учитываются при создании модели и т. Д.
Некоторая простая настройка парсера из коробки наверное недоступен.
Я решал аналогичную проблему импорта пользовательских метаданных (разработчик, отвечающий за класс, соответствующую таблицу базы данных или представление, отображающее сущность, пакет развертывания (.dll) и уровень архитектуры, удобное для человека описание класса, ссылку на документы спецификации и т. Д.), Содержащиеся в другом месте. и сделать их доступными внутри Enterprise Architect в форме неформальных заметок и формальных теговых значений.
После некоторых попыток сгенерировать эту информацию метаданных как комментарии в стиле doxygen, я отказался, так как парсер комментариев doxygen не казался настраиваемым, и для правильного импорта символов, отличных от ascii, файлы исходного кода должны были содержать UTF-8 Преамбула спецификации, которая не является сторонней устаревшей кодировкой, удобной для инструментов.
Я решил пойти по пути генерации Файл XMI со всеми метаданными, размещенными внутри tags
а также documentation
XML элементы.
До того, как я решил правильное кодирование XMI для составных и агрегирующих связей, проект был остановлен на этапе, когда все классы, атрибуты и ассоциации, а также все атрибуты метамодели (как примечания и теговые значения) были там в менее чем 600 строках C # XMI-специфичного код, и у нас было несколько тысяч классов в EA, доступных для аналитиков для работы.
В вашем случае вы можете решить эту проблему аналогичным образом:
Для шагов 3 … 5 может быть более простой способ, поскольку Enterprise Architect имеет Сценарии и автоматизация интерфейс, который позволяет читать / изменять модель, используя такие языки, как Visual Basic
или же C#