Как я могу создать диаграммы классов из кода Java, которые можно использовать для создания новых диаграмм последовательности

Вот что я хочу сделать:

  1. Создание диаграмм классов

  2. Импортировать/открывать диаграммы классов в редакторе UML (например, ClassA с методом Foo() и ClassB)

  3. Затем я могу создать новые диаграммы последовательности вручную, используя данные, которые я импортировал из диаграммы классов (например, ClassB вызывает Foo() в ClassA)

Как я могу это сделать?


person TERACytE    schedule 03.05.2011    source источник
comment
Вы ищете UML Round Trip Engineering?   -  person S.Lott    schedule 04.05.2011
comment
Что вы подразумеваете под UML Round Trip Engineering? Вы имеете в виду создание диаграмм обратно в код? Нет, это не то, что мне нужно. Преобразование только в одну сторону: код Java -> редактируемая диаграмма классов -> создание новой диаграммы последовательности с использованием данных диаграммы классов (без повторного ввода данных).   -  person TERACytE    schedule 04.05.2011
comment
@TERACytE: диаграммы обратно в код? Нет, это не то, что мне нужно. Пожалуйста, обновите вопрос, чтобы он был очень конкретным в том, что вам нужно. Пожалуйста, обновите вопрос, не оставляя много комментариев.   -  person S.Lott    schedule 04.05.2011
comment
Вам нужны инструменты, поддерживающие круговой инжиниринг (конечно, вам не обязательно использовать весь круговой цикл!), но я так и не нашел ни одного, который, по моему мнению, был бы действительно удовлетворительным на реалистичной кодовой базе. YMMV, конечно.   -  person Donal Fellows    schedule 04.05.2011
comment
И я думаю, что вы удалили слишком много описания; фоновый текст на самом деле полезен в качестве преамбулы.   -  person Donal Fellows    schedule 04.05.2011


Ответы (1)


Enterprise Architect от Sparx может генерировать для вас диаграммы последовательности, но это означает выполнение кода внутри инструмента UML.

Почти каждый инструмент, который я знаю, может генерировать для вас диаграммы классов с разной точностью, но диаграммы последовательности — это другое животное. Вы должны сказать ему, где начинаются потоки. Я не понимаю, как инструмент будет читать ваши мысли. Вдвойне, если задействован пользовательский интерфейс. У вас ведь не каждый JSP в веб-приложении представлен как UML, не так ли? Что, если вы используете обычные HTML-страницы и не используете JSP?

Лично я не нахожу диаграммы последовательности настолько уж полезными. Они теряют свою ценность, как только превышают определенный уровень сложности, как и все диаграммы.

ОБНОВЛЕНИЕ: если EA слишком дорого для вас, я бы порекомендовал JUDE (теперь Аста). Редакция сообщества раньше была довольно хорошей — она даже импортировала Java и генерировала диаграммы. Теперь я вижу, что он был лишен этой возможности. Профессиональная лицензия на Astah по-прежнему стоит всего 280 долларов.

person duffymo    schedule 03.05.2011
comment
Спасибо за ответ. Я рассчитывал в любом случае создать диаграммы последовательности вручную и хотел избежать повторного ввода всех данных класса. В прошлом я использовал много инструментов, которые создавали диаграммы классов для вас, но большую часть времени они были просто PNG и могли нельзя редактировать или использовать. Я использовал EA в прошлом, но надеялся, что есть более дешевый способ. Спасибо. - person TERACytE; 04.05.2011