2010-05-29 2 views
9

Мне нужно составить диаграмму классов UML для проекта. Раньше я использовал Sparx Enterprise Architect для генерации исходного кода из диаграммы, поэтому я использую это.Преобразование архиватора Sparx (от источника к UML)

Проект завершен, поэтому весь код выполнен, и я действительно не хочу писать все классы/функции вручную, поэтому я пытался сгенерировать диаграмму из исходного кода, но не могу найти способ сделать это. Я искал в Интернете и на их сайте, но ничего.

Любая помощь приветствуется.

+0

Какое значение, по-вашему, вы добавляете, делая это? Я придерживаюсь диаграммы пакетов, демонстрирующих обязанности в модулях, и использую что-то вроде doxygen для документирования проекта как построенного. –

+0

Я просто сделал это, потому что мне пришлось (и никто не сказал мне заранее). Однако я всегда документирую проекты с помощью doxygen. – user228938

+0

Я не уверен, что имеет смысл; Doxygen может создавать диаграммы классов стиля UML. – Clifford

ответ

6

Это называется «reverse engineering», чтобы импортировать код в модель. После этого в модели вы можете создавать диаграммы.

+1

Революционная инженерная концепция хороша, но реальность отличается! Если вы посмотрите подробно на модель, тогда вы поймете, что менее 50% проекта действительно сопоставлено с моделью. Я попробовал java-реверс, но другие изменения могли быть лучше. –

+0

Даже стоит того, потому что, если вы генерируете код из своей модели, а затем воссоздаете модель из своего кода, вы потеряли 70% от исходной модели диаграммы классов !! Проблема в том, что между моделью и генерацией кода не существует прослеживаемости. Только EclipseUML Omondo позволяет эту функцию, поскольку у них есть опция слияния. –

+1

@ roko-sifredi - Несколько лет назад я обнаружил, что Sparx Enterprise Architect хорошо работал для инженерных работ с круговым движением, используя C#. – ChrisW

10

Версия 8 EA Corporate Edition. Открыть или создать проект. Создать пустую диаграмму классов. Выбор меню: Проект -> Разработка исходного кода -> Импорт файлов Диалоговое окно «Справочник» открывает для вас выбор файлов.

У меня есть «обратное проектирование» многих проектов на С ++, больших и малых. Вы проведете значительное время на уборку. Это будет зависеть от качества проекта, его структуры и кода.

Затем вы можете создать отчет по документации (Project-> Documentation), который я нашел очень полезным, HTML-отчет, для навигации по коду.

1

Для этого вы должны сначала использовать опции «Обратная версия», но, как указывали некоторые другие пользователи, это не прочность от EA. я пытался в прошлом (версия 7.3, я думаю) сделать это с C, Python и Java Projects, и результаты не всегда были удовлетворительными.

Я не знаю, на каком языке программирования написан ваш код, но что касается C, если вы используете инструкции препроцессора, у вас будет много проблем и несовместимостей в результате.

Смежные вопросы