Я предпочитаю записывать UML-диаграммы на бумаге, а затем реализовать их с помощью Java. Было бы неплохо иметь утилиту, которая могла бы создавать UML-диаграммы для меня, которые я могу использовать в режиме онлайн и включать в цифровую документацию. Другими словами: я хочу создать UML-диаграммы из исходного кода Java.
Утилита должна иметь возможность:
- Запуск в Linux.
- Handle Generics, т.е. правильно отобразить List <Foo> в параметрах и возвращаемом типе.
- Показать наследование классов и реализации интерфейса.
Хорошо, если утилита может:
- Запуск в Windows и Mac OS X.
- Показывать перечисления в какой-то приятной манере.
- Создайте вывод в формате диаграммы, который я могу изменить, используя какую-либо другую утилиту.
- Выполнить из командной строки.
- Ограничьте генерацию UML набором пакетов, которые я могу указать.
- Обрабатывать классы/интерфейсы, которые не являются частью моего исходного кода. Он может включать первый класс/интерфейс, который является внешним в диаграмме UML. Возможно, в другом цвете, чтобы указать, что это библиотека/структура, созданная кем-то другим.
- Ориентируется на эту задачу и не пытается решить всю проблему документации.