Wie generiere ich UML-Diagramme (insbesondere Sequenzdiagramme) aus Java-Code?

434

Wie kann ich UML-Diagramme (insbesondere Sequenzdiagramme) aus vorhandenem Java-Code generieren?

Jonathan
quelle
3
Das ist unwahrscheinlich. Echter Java-Code ist nicht so strukturiert, dass er als UML-Diagramme hübsch aussieht.
Stephan Eggermont
1
So viele Antworten, die sich nicht mit Sequenzdiagrammen befassen. Hmph
Bill K
@ BillK meine Antwort macht Adresssequenzdiagramme. Es ist ein Intellij Idea-Plugin - stackoverflow.com/a/45239269/529187 .
Xiao Peng - ZenUML.com
1
Diese Frage ist besser für die Schwestersite Software Recommendations Stack Exchange geeignet .
Basil Bourque

Antworten:

257

ObjectAid UML Explorer

Ist was ich benutzt habe. Es ist einfach aus dem Repository zu installieren :

Name:     ObjectAid UML Explorer
Location: http://www.objectaid.com/update/current

Und erzeugt ganz schöne UML-Diagramme:

Bildschirmfoto

Beschreibung von der Website:

Der ObjectAid UML Explorer unterscheidet sich von anderen UML-Tools. Es verwendet die UML-Notation, um eine grafische Darstellung des vorhandenen Codes anzuzeigen, die genauso genau und aktuell ist wie Ihr Texteditor und gleichzeitig sehr einfach zu verwenden ist. Mehrere einzigartige Funktionen machen dies möglich:

  • Ihr Quellcode und Ihre Bibliotheken sind das angezeigte Modell. Sie werden nicht in ein anderes Format zurückentwickelt.
  • Wenn Sie Ihren Code in Eclipse aktualisieren, wird auch Ihr Diagramm aktualisiert. Es ist nicht erforderlich, den Quellcode zurückzuentwickeln.
  • Durch das Refactoring werden sowohl Ihr Diagramm als auch Ihr Quellcode aktualisiert. Wenn Sie ein Feld umbenennen oder eine Klasse verschieben, spiegelt Ihr Diagramm einfach die Änderungen wider, ohne die Synchronisierung zu beeinträchtigen.
  • Alle Diagramme in Ihrem Eclipse-Arbeitsbereich werden mit entsprechenden Refactoring-Änderungen aktualisiert. Bei Bedarf werden sie aus Ihrem Versionskontrollsystem ausgecheckt.
  • Diagramme sind vollständig in die Eclipse-IDE integriert. Sie können Java-Klassen aus jeder anderen Ansicht in das Diagramm ziehen, und diagrammbezogene Informationen werden gegebenenfalls in anderen Ansichten angezeigt.
Thomas Ahle
quelle
Einfacher als Papyrus, aber mit weniger Optionen zum Erstellen von Diagrammen.
lcardosobr
Gibt es in ObjectAid eine Möglichkeit, das Klassendiagramm automatisch anzuordnen?
Wiederverwendbar
4
HowTo >>> Erstellen Sie hier ein Konto: objectaid.com/login (Aktivierungs-E-Mail wurde in 10 Minuten gesendet), Klicken Sie auf Diagramm-Add-On. Die Lizenz wird an Ihre E-Mail gesendet. Folgen Sie dieser objectaid.com/installation , um ObjectAid zu installieren, und installieren Sie dann GEF von download.eclipse.org/tools/gef/updates/releases. Kopieren Sie nun die Lizenz von E-Mail nach Window-> Preferences-> ObjectAid. Wie erstelle ich ein Diagramm? objectaid.com/class-diagram
rluks
Kann nicht in Eclipse Juno installiert werden. An error occurred while installing the items session context was:(profile=epp.package.java, phase=org.eclipse.equinox.internal.p2.engine.phases.Install, operand=null --> [R]com.objectaid.uml 1.1.3, action=). Failed to prepare partial IU: [R]com.objectaid.uml 1.1.3.
Gunaseelan
1
Die kommerzielle Version von ObjectAid kann bei der Generierung von Sequenzdiagrammen besser abschneiden als die kostenlose Version. Free kann nur zum Generieren von Klassendiagrammen verwendet werden !!
Whoami
63

BEARBEITEN: Wenn Sie Designer sind, ist Papyrus die beste Wahl. Es ist sehr fortschrittlich und voller Funktionen. Wenn Sie jedoch nur einige UML-Diagramme und eine einfache Installation skizzieren möchten, ist ObjectAid ziemlich cool und erfordert keine Plugins I. habe es gerade über Eclipse-Java EE installiert und funktioniert super!


UPDATE 11. Oktober 2013

Mein ursprünglicher Beitrag war im Juni 2012. Viele Dinge haben sich geändert. Viele Tools sind gewachsen und andere nicht. Da ich wieder einige Modellierungen durchführen und auch einige Antworten auf den Beitrag erhalten werde, habe ich beschlossen, Papyrus erneut zu installieren und werde andere mögliche UML-Modellierungslösungen erneut untersuchen. Die UML-Generierung (mit Synchronisationsfunktion) ist nicht für den Softwareentwickler, sondern für den durchschnittlichen Entwickler sehr wichtig.

Ich wünschte, Papyrus hätte eine einfache Möglichkeit, Reverse Engineer-Klassen in ein UML-Klassendiagramm umzuwandeln, und es wäre super cool, wenn dieses Reverse Engineering eine Synchronisationsfunktion hätte, aber leider ist das Papyrus-Projekt voller Funktionen, und ich denke, die Entwickler dort haben bereits viel zur Hand, da auch viele Aktionen, die Sie über Papyrus ausführen, geben Ihnen möglicherweise keine Antwort und es passiert einfach nichts, aber das kommt ohnehin nicht in Frage.

Die Antwort (11. Oktober 2013)

Werkzeuge

  1. Laden Sie Papyrus herunter
  2. Gehen Sie zu Hilfe -> Neue Software installieren ...
  3. Wählen Sie in der Dropdown- Liste Arbeiten mit: die Option --Alle verfügbaren Sites-- aus.
  4. Geben Sie im Filter Papyrus ein
  5. Starten Sie Eclipse nach Abschluss der Installation neu
  6. Wiederholen Sie die Schritte 1 bis 3 und installieren Sie dieses Mal Modisco

Schritte

  1. Erstellen Sie in Ihrem Java-Projekt (vorausgesetzt, es heißt MyProject) einen Ordner, z. B. UML
  2. Klicken Sie mit der rechten Maustaste auf den Projektnamen -> Discovery -> Discoverer -> Java und Inventarmodell aus dem Java-Projekt ermitteln. Eine Datei mit dem Namen MyProject_kdm.xmi wird generiert. Geben Sie hier die Bildbeschreibung ein
  3. Klicken Sie mit der rechten Maustaste auf die Projektnamensdatei -> Neu -> Papyrusmodell -> und nennen Sie sie MyProject.
  4. Verschieben Sie die drei generierten Dateien MyProject.di, MyProject.notation, MyProject.uml in den UML-Ordner
  5. Klicken Sie mit der rechten Maustaste auf MyProject_kdm.xmi -> Discovery -> Discoverer -> UML-Modell erneut aus KDM-Code ermitteln. In einem Eigenschaftsdialog wird die Serialisierungs-Requisite auf TRUE gesetzt, um eine Datei mit dem Namen MyProject.uml zu generieren Geben Sie hier die Bildbeschreibung ein

  6. Verschieben Sie die generierte MyProject.uml, die im Stammverzeichnis generiert wurde, in den UML-Ordner. Eclipse fragt Sie, ob Sie sie ersetzen möchten. Klicken Sie auf Ja. Was wir hier gemacht haben, war, dass wir ein leeres Modell durch ein generiertes ersetzt haben.

  7. ALT + W -> Ansicht anzeigen -> Papyrus -> Modell-Explorer

  8. In dieser Ansicht finden Sie Ihre Klassen wie auf dem Bild Geben Sie hier die Bildbeschreibung ein

  9. Klicken Sie in der Ansicht mit der rechten Maustaste auf das Stammmodell -> Neues Diagramm Geben Sie hier die Bildbeschreibung ein

  10. Beginnen Sie dann damit, Klassen aus der Ansicht in das Diagramm aufzunehmen

Einige Eigenschaften

  • So zeigen Sie die Klassenelemente (Variablen, Funktionen usw.) an Klicken Sie mit der rechten Maustaste auf eine Klasse -> Filter -> Inhalte ein- / ausblenden Voila !!

  • Sie können standardmäßige benutzerfreundliche Farbeinstellungen über Fenster -> Referenzen -> Papyrus -> Klassendiagramm vornehmen

  • Eine sehr wichtige Einstellung ist Anordnen, wenn Sie die Klassen löschen. Sie erhalten einen engen Rechtsklick auf eine leere Stelle in einem Klassendiagramm und klicken auf Alle anordnen

  • Pfeile in der Modell-Explorer-Ansicht können in das Diagramm aufgenommen werden, um die Verallgemeinerung, Realisierung usw. Zu zeigen

  • Nach all dem zeigen Ihre Einstellungen Diagramme wie Geben Sie hier die Bildbeschreibung ein

  • Soweit ich weiß, ist die Synchronisierung nicht verfügbar. Sie müssen neue Klassen manuell importieren.

Das ist alles, und kaufen Sie keine kommerziellen Produkte, es sei denn, Sie brauchen sie wirklich. Papyrus ist wirklich großartig und raffiniert, statt zu spenden oder so.

Haftungsausschluss: Ich habe keine Beziehung zu den Papyrusleuten. Tatsächlich mochte ich Papyrus zuerst nicht, bis ich viel recherchiert und es mit etwas Geduld erlebt habe. Und ich werde wieder auf diesen Beitrag zurückkommen, wenn ich andere kostenlose Tools ausprobiere.

Ismail Marmoush
quelle
Ich habe in Eclipse nach Modisco gesucht. es zeigte sich mit 0 intallable. Ist dieses Projekt lebendig oder weggenommen? Wurde es zu einem bezahlten Werkzeug? Wird Papyrus nicht ohne das laufen?
R-JANA
Gebraucht STS und nicht erfolgreich.
R-JANA
@ R-JANA Ich weiß nicht, wie der aktuelle Status von Modisco ist, aber ich gehe so schnell wie möglich auf diesen Beitrag zurück, da ich Papyrus bald installieren werde und ihn aktualisieren muss. Ich rate Ihnen, Papyrus unter Berücksichtigung meines aktuellen Beitrags selbst zu installieren. Ich denke, seit ich diese Antwort gepostet habe, hat sich viel geändert.
Ismail Marmoush
Es gibt ein optionales Plug-In für Papyrus, das Java-Reverse-Engineering-Funktionen hinzufügt: wiki.eclipse.org/Java_reverse_engineering . Auf diese Weise ist es viel einfacher, Diagrammelemente aus dem Quellcode hinzuzufügen. Sie können sogar Klassen in ein Diagramm ziehen.
Markus Ende
42

Was ist Ihre Codebasis? Java oder C ++?

Alt-Text

eUML2 für Java ist ein leistungsstarker UML-Modellierer, der für den Java-Entwickler in Eclipse entwickelt wurde. Die kostenlose Edition kann für kommerzielle Zwecke verwendet werden. Es unterstützt die folgenden Funktionen:

  • CVS und Team Support
  • Entwickelt für große Projekte mit mehreren und anpassbaren Modellansichten
  • Helios-konform
  • Echtzeit-Code- / Modellsynchronisation
  • UML2.1-konform und Unterstützung von OMG XMI
  • JDK 1.4 und 1.5 Unterstützung
  • Die kommerzielle Ausgabe bietet:

  • Advanced Reverse Engineering

  • Leistungsstarke Tools zur Analyse wahrer Abhängigkeiten
  • UML-Profil und MDD
  • Datenbank-Tools
  • Anpassbare Vorlagenunterstützung
Prakash
quelle
20
Dies ist ein sehr schwierig zu installierendes Tool. Ich habe es ungefähr eine halbe Stunde lang ohne Erfolg versucht. Irgendwelche anderen Vorschläge?
Jonathan
2
Ich kann nicht finden, dass eUML2 mein Update Managaer ist und ich möchte kein neues Eclipse-Setup nur für diese Funktion packen. Ich benutze Eclipse "Helios" und gehe diesen Weg: Hilfe - Neue Software installieren - Helios download.eclipse.org/releases/helios - Modellierung
OneWorld
3
Ich weiß, dass dies ein alter Beitrag ist, aber die meisten Probleme bei der Installation von eUML2 scheinen behoben worden zu sein.
Andy
7
eUML ist echter Mist. Es hat mein Codeformat geändert und überall Tags hinzugefügt. Mein Code ist jetzt so schmutzig, dass ich die Änderung lieber rückgängig machen möchte. Das Problem ist, dass es kein Rückgängigmachen gibt und Ihr Code für immer geändert wird. Ich würde empfehlen, Ihr Projekt zu sichern, bevor Sie eUML crapper verwenden :-)
UML GURU
31
Haben Sie jemals von Versionskontrolle gehört?
verschlang Elysium
9

Ich bin einer der Autoren, daher kann die Antwort voreingenommen sein. Es ist Open Source (Apache 2.0), aber das Plugin ist nicht kostenlos. Sie müssen (offensichtlich) nicht bezahlen, wenn Sie es lokal klonen und erstellen.

Auf Intellij IDEA kann ZenUML ein Sequenzdiagramm aus Java-Code generieren. Geben Sie hier die Bildbeschreibung ein

Überprüfen Sie es unter https://plugins.jetbrains.com/plugin/12437-zenuml-support

Quellcode: https://github.com/ZenUml/jetbrains-zenuml

Xiao Peng - ZenUML.com
quelle
1
@hc_dev, danke für deine Erinnerung. Diese Notiz wurde hinzugefügt.
Xiao Peng - ZenUML.com
7

Wie wäre es mit PlantUML ? Es ist nicht für Reverse Engineering !!! Es ist für das Engineering, bevor Sie codieren.

Zamel
quelle
4
Beantwortet nicht die Frage, die eindeutig nach einem Reverse Engineering-Tool fragt.
Jmite
1
Ich bin mir nicht sicher, ob das völlig richtig ist. PlantUML kann auch Code mit Diagrammen beschreiben. Versuchen Sie, die entsprechende Ansicht in einer Klassendatei zu öffnen
Erez A. Korn
1
Ja, ich kann überprüfen, ob Klassendiagramme automatisch aus Java-Dateien im Eclipse-Plugin erstellt werden.
HRJ
1
Ich habe es versucht, aber wenn Ihr PlantUML-Code zu komplex wird, verbringen Sie Ihre ganze Zeit damit, herauszufinden, warum die Zeichnung nicht richtig gerendert wird und Störungen aufweist. Es ist nur für kleine Diagramme gut.
Trusktr
Kombinieren Sie in Intellij PlantUML mit Sketch It! und graphviz kann Klassendiagramme aus Code generieren. Funktioniert am besten für kleine Pakete. PNGs scheinen nicht vollständig erstellt zu sein, wenn die Diagramme zu groß werden.
Melissa Loos
6

Ich habe ein Maven-Plugin entwickelt, das sowohl als Plugin-Ziel über die CLI ausgeführt oder als Abhängigkeit importiert und programmgesteuert mithilfe des Parsers importiert werden kann @see Main#main(), um eine Vorstellung davon zu erhalten, wie.

Es rendert PlantUML src-Code der gewünschten Pakete rekursiv , den Sie bei Bedarf manuell bearbeiten können (hoffentlich nicht). Anschließend können Sie das UML-Diagramm als PNG-Bild rendern, indem Sie den Code in die plantUML-Seite einfügen oder das Jar von plant herunterladen.

Überprüfen Sie es hier https://github.com/juanmf/Java2PlantUML

Beispiel für ein Ausgabediagramm: Geben Sie hier die Bildbeschreibung ein

Jeder Beitrag ist mehr als willkommen. Es hat eine Reihe von Filtern, die die Ausgabe anpassen, aber ich habe diese noch nicht in den CLI-Parametern des Plugins verfügbar gemacht.

Es ist wichtig zu beachten, dass es nicht auf Ihre * .java-Dateien beschränkt ist, sondern auch UML-Diagramme src aus Ihren Maven-Abhängigkeiten rendern kann. Dies ist sehr praktisch, um Bibliotheken zu verstehen, von denen Sie abhängig sind. Es überprüft tatsächlich kompilierte Klassen mit Reflexion, sodass keine Quelle benötigt wird

Seien Sie der Erste, der es bei GitHub spielt: P.

juanmf
quelle
4

Ich würde EclipseUML von Omondo für den allgemeinen Gebrauch empfehlen , obwohl ich vor einigen Monaten einige Probleme mit meinen Webprojekten hatte. Sie hatten zu einem bestimmten Zeitpunkt eine kostenlose Ausgabe, die aber angeblich nicht mehr beworben wird.

Wenn Sie sich wirklich für Reverse Engineering-Sequenzdiagramme aus dem Quellcode interessieren, würde ich jTracert empfehlen .

In Bezug auf Eclipse-Projekte selbst unterstützt das Eclipse UML2 Tools- Projekt möglicherweise das Reverse Engineering, obwohl ich seine Verwendung in der Praxis noch nie gesehen habe.

Das MoDisco- Projekt (Model Discovery) Eclipse GMT-Projekt scheint klarer zu sein, um Ihr Ziel zu erreichen. Die Liste der technologie-spezifischen Tools wäre ein guter Anfang.

Vineet Reynolds
quelle
Haben diese Reverse Engineering-Funktion in UML2 Tools nicht gefunden; (
OneWorld
2
jTracert wird jetzt eingestellt. Als Nachfolger von jTracert ist ein neues Tool namens jSonde jetzt unter GPL v3 lizenziert. jsonde.com
Alpine
Omondo ist das Beste für Java. Wirklich saubere Integration, keine Mischung zwischen Modell und Code. Hervorragend aber zu teuer. Wir durften nur eine Lizenz kaufen, aber wir verwenden über 20 Modellierer, da die Sicherheit auf dem Benutzernamen basiert. Wenn 10 Benutzer denselben Login haben, können alle ihn verwenden. Wir haben eine Lizenz mit Admin Benutzername :-)
UML GURU
Das jSondeist in der oben gezeigten URL nicht verfügbar. Eine Website und den Quellcode finden Sie in Github: github.com/bedrin/jsonde .
Jaime
3

Ich fand das Green Plugin sehr einfach zu bedienen und Klassendiagramme aus dem Quellcode zu generieren. Versuche es :). Kopieren Sie einfach das Plugin in Ihr Plugin-Verzeichnis.

pcmind
quelle
2
Grün scheint Potenzial zu haben. Bei meiner Arbeit haben wir jedoch ein Projekt mit ~ 700 Klassen, das ein wenig tuckert und dann stirbt.
Appak
3

Sie können auch den Netbeans-UML-Modellierer ausprobieren. Ich habe es verwendet, um Javacode zu generieren, den ich in meinen Eclipse-Projekten verwendet habe. Sie können sogar Eclipse-Projekte in Netbeans importieren und die Eclipse-Einstellungen mit den Netbeans-Projekteinstellungen synchronisieren.

Ich habe mehrere UML-Modellierer für Eclipse ausprobiert und war mit ihnen nicht zufrieden. Sie waren entweder instabil, kompliziert oder einfach nur hässlich. ;-);

Patrick Cornelissen
quelle
Ich wollte nur erwähnen, dass ich auch Netbeans UML Modeller verwendet habe und in meinen relativ einfachen Fällen keine Probleme hatte. Die Benutzeroberfläche ist nicht zu intuitiv, aber völlig in Ordnung. Der Modellierer verfügt auch über einige erweiterte Funktionen, z. B. das Erstellen von JPA-Entitätscode aus dem Modell, wenn ich mich richtig erinnere.
Tuukka Mustonen
1
Leider scheint das UML-Plugin nicht mehr unterstützt zu werden. Ein Umschreiben des Plugins ist anscheinend im Gange, aber das hilft niemandem, da sie das alte Plugin vor Abschluss des Umschreibens gelöscht haben.
Appak
Das ist ein Mist :-( Hoffen wir, dass das Umschreiben nicht zu lange dauert :-)
Patrick Cornelissen
1
Die UML für NetBeans wurde von VP erstellt. Sie werden es nicht mehr tun, nur ihre VP UML ist jetzt mit einer schwachen kostenlosen Version verfügbar.
Gangnus
2

Verwenden von IntelliJ IDEA. Um ein Klassendiagramm zu erstellen, wählen Sie das Paket aus und drücken Sie Ctrl+ Alt+ U:Geben Sie hier die Bildbeschreibung ein

Standardmäßig werden nur Klassennamen und nicht alle Abhängigkeiten angezeigt. So ändern Sie es: Klicken Sie mit der rechten Maustaste auf> Kategorien anzeigen ... und Abhängigkeiten anzeigen: Geben Sie hier die Bildbeschreibung ein

Um ein Abhängigkeitsdiagramm (UML-Bereitstellungsdiagramm) zu erstellen und maven zu verwenden, gehen Sie zu Ansicht -> Werkzeugfenster -> Maven-Projekte und drücken Sie Ctrl+ Alt+ U: Geben Sie hier die Bildbeschreibung ein

Das Ergebnis: Geben Sie hier die Bildbeschreibung ein

Es ist auch möglich, weitere Diagramme zu erstellen. Siehe Dokumentation .

Igor Rybak
quelle
2

Sie können den 30-Tage-Evaluierungs-Build von EclipseUML für Eclipse 3.5 verwenden: http://www.uml2.org/eclipse-java-galileo-SR2-win32_eclipseUML2.2_package_may2010.zip Dies ist nicht der neueste Build 3.6, aber ziemlich gut und Sie müssen es nicht zum Testen und Reverse Engineering erwerben.

Reverse Engineering: http://www.forum-omondo.com/documentation_eclipseuml_2008/reverse/reverse/reverse_engineering_example.html

Live-Flash-Demo: http://www.ejb3.org/reverse.swf

EclipseUML Omondo ist das beste Tool der Welt für Java. Nur eUML scheint auf diesem Live-Java-Synchronisationsmarkt damit zu konkurrieren, aber eUML fügt dem Code Modell-Tags hinzu, was wirklich sehr, sehr schlecht ist und für mich definitiv kein Problem darstellt.

UML GURU
quelle
1

Das mit Abstand beste Tool, das ich für das Reverse Engineering und Roundtripping Java verwendet habe -> UML ist Borland's Together . Es basiert auf Eclipse (nicht nur einem einzelnen Plugin) und funktioniert wirklich gut.

serg10
quelle
Together ist jetzt Micro Focus Together
Jaime
0

Ich schlage PlantUML vor. Dieses Tool ist sehr nützlich und einfach zu bedienen. PlantUML verfügt über ein Plugin für Netbeans, mit dem Sie aus Ihrem Java-Code ein UML-Diagramm erstellen können.

Sie können das PlantUML-Plugin auf folgende Weise in den Netbeans installieren:

Netbeans-Menü -> Extras -> Plugin

Wählen Sie nun Verfügbare Plugins aus, suchen Sie PlantUML und installieren Sie es.

Weitere Informationen finden Sie auf der Website: www.plantuml.com

Masood
quelle
0

Ich habe festgestellt, dass das SequenceDiagram-Plugin für Intellij ebenfalls eine gute Option ist.

Wer bin ich
quelle
1
Überprüfen Sie dies für die Generierung: - quora.com/Was-ist-das-best-tool-zu-generieren-UML-Diagramme , stackoverflow.com/questions/4449291/… (Reverse Engineering) && zum Skizzieren: - guru99.com/ best-uml-tools.html (Denken Sie daran, dass nicht alle kostenlosen Tools Sequenzdiagramme generieren, möglicherweise nur Klassendiagramme unterstützen. Ich habe SequenceDiagram für die Generierung und draw.io für die manuelle Erstellung von UML-Diagrammen verwendet.)
whoami
0

Ein weiteres Modellierungswerkzeug für Java ist (meine) Website GitUML . Generieren Sie UML-Diagramme aus Java- oder Python-Code, der in GitHub-Repositorys gespeichert ist.

Eine Schlüsselidee bei GitUML ist es, eines der Probleme mit der "Dokumentation" zu lösen: Diagramme sind immer veraltet. Mit GitUML werden Diagramme automatisch aktualisiert, wenn Sie Code mit git pushen.

Durchsuchen Sie Community-UML-Diagramme. Dort gibt es einige Java-Entwurfsmuster. Surfen Sie durch beliebte GitHub-Repositories und visualisieren Sie die darin enthaltenen Architekturen und Muster.

Diagrammbrowser

Erstellen Sie Diagramme mit Point & Click. Es gibt keinen Drag-Drop-Editor. Klicken Sie einfach auf die Klassen im Repository-Baum, die Sie visualisieren möchten:

Wählen Sie die Java-Klassen aus, die Sie visualisieren möchten

Die zugrunde liegende Technologie basiert auf PlantUML. Dies bedeutet, dass Sie Ihre Diagramme mit zusätzlichem PlantUML-Markup verfeinern können.

abulka
quelle
0

Es gibt ein kostenloses Tool namens binarydoc, das UML Sequence Diagramoder Control Flow Graph( CFG) aus bytecode(anstelle des Quellcodes) einer Java-Methode generieren kann .

Hier ist ein Beispieldiagramm binarydoc, das für die Java-Methode java.net.AbstractPlainSocketImpl.getInputStream generiert wurde :

  • Kontrollflussdiagramm der Methode java.net.AbstractPlainSocketImpl.getInputStream:

Kontrollflussdiagramm

  • UML-Sequenzdiagramm der Methode java.net.AbstractPlainSocketImpl.getInputStream:

UML-Sequenzdiagramm

glücklich
quelle