Leitfaden zum UML-Diagrammdesign und zur Datenbankmodellierung
Warum UML?
UML wurde in den 1990er Jahren von drei Softwareentwicklern – Grady Booch, Ivar Jacobson und James Rumbaugh – erstmals vorgestellt, weil sie eine weniger chaotische Methode zur Darstellung der immer komplexer werdenden Softwareentwicklung entwickeln und gleichzeitig die Methodik vom Prozess trennen wollten. Heute ist UML immer noch die Standardnotation für Entwickler, Projektmanager, Geschäftsinhaber, Technikunternehmer und Fachleute in allen Branchen.
Welche Vorteile bietet UML?
- Vereinfacht Komplexitäten
- Hält Kommunikationslinien offen
- Automatisiert die Produktion von Software und Prozessen
- Hilft bei der Auflösung persistenter Architekturprobleme
- Erhöht die Arbeitsqualität
- Reduziert Kosten und Markteinführungszeit
Arten von UML-Diagrammen
Von Kunden und Projektmanagern bis hin zu technischen Autoren, Designern, Analysten, Programmierern und QA-Testern wird jede Rolle ein spezifisches Diagramm verwenden, das ihren Bedürfnissen entspricht. Das bedeutet, dass jedes Layout einen anderen Fokus und eine andere Detailstufe erfordert. Das Ziel besteht darin, mit UML Diagramme visuell darzustellen, die für jeden leicht verständlich sind.
Beispiel für ein einfaches UML-Sequenzdiagramm. Vorlage verfügbar zum Herunterladen
Schauen wir uns das genauer an:
Strukturdiagramme
Verhaltensdiagramme
Sehen wir uns nun die vielen verschiedenen Arten von UML-Diagrammen an, die unter die einzelnen Kategorien fallen:
1. Strukturelle UML-Diagramme
Klassendiagramm. Dieses Diagramm, der häufigste Typ in der Softwareentwicklung, wird verwendet, um den logischen und physischen Entwurf eines Systems darzustellen und zeigt seine Klassen. Es sieht ähnlich aus wie ein Flussdiagramm, da die Klassen durch Kästchen dargestellt sind. Dieses Diagramm bietet eine Visualisierung der verschiedenen Klassen und ihrer Beziehungen untereinander, und jede Klasse verfügt über drei Bereiche:
- Oberster Abschnitt: Klassenname
- Mittlerer Abschnitt: Klassenattribute
- Unterer Abschnitt: Klassenmethoden oder -vorgänge
Beispiel für ein UML-Klassenschnittstellendiagramm. Vorlage verfügbar zum Herunterladen.
Objektdiagramm. Dieses Diagramm wird häufig verwendet, um ein Klassendiagramm auf Genauigkeit zu überprüfen. Anders ausgedrückt: Funktioniert es in der Praxis? Es zeigt die Objekte eines Systems und ihre Beziehungen untereinander an und bietet eine bessere Ansicht potenzieller Entwurfsfehler, die behoben werden müssen.
Komponentendiagramm. Es wird auch als Komponentenflussdiagramm bezeichnet und zeigt logische Gruppierungen von Elementen und ihrer Beziehungen untereinander an. Anders ausgedrückt: Es bietet eine vereinfachte Ansicht eines komplexen Systems, indem es in kleinere Komponenten unterteilt wird. Jedes der Teile wird mithilfe eines rechteckigen Kästchens angezeigt, in dem der Name steht. Konnektoren definieren die Beziehung/Abhängigkeiten zwischen den verschiedenen Komponenten.
Verbundstrukturdiagramm. Dies wird selten außerhalb des Softwareentwicklungsbereichs verwendet. Warum? Obwohl es einem Klassendiagramm ähnelt, geht es tiefer und beschreibt die interne Struktur mehrerer Klassen und zeigt die Interaktionen zwischen ihnen. Wenn Sie kein Entwickler sind, gibt eine Übersicht auf oberster Ebene wahrscheinlich genügend Informationen.
Bereitstellungsdiagramm. Dieses Diagramm zeigt Hardwarekomponenten (Knoten) und Softwarekomponenten (Artefakte) und ihre Beziehungen untereinander. Es bietet eine Visualisierung, wo genau die einzelnen Softwarekomponenten bereitgestellt sind.
Starten Sie Ihr Unternehmen mit einem Crashkurs in Microsoft 365
Paketdiagramm. Dies wird verwendet, um die Abhängigkeiten zwischen den Paketen darzustellen, aus denen ein Modell besteht. Das Hauptziel besteht darin, die Beziehung zwischen den verschiedenen großen Komponenten darzustellen, die ein komplexes System bilden.
Profildiagramm. Dies ähnelt weniger einem Diagramm als einer Sprache. Ein Profildiagramm hilft beim Erstellen neuer Eigenschaften und Semantik für UML-Diagramme, indem es benutzerdefinierte Stereotypen, markierte Werte und Einschränkungen definiert. Mit diesen Profilen können Sie ein UML-Metamodell für verschiedene Plattformen (z. B. Java Platform, Enterprise Edition (Java EE) oder Microsoft .NET Framework) und Domänen (z. B. Geschäftsprozessmodellierung, dienstorientierte Architektur, medizinische Anwendungen und mehr) anpassen.
2. UML-Verhaltensdiagramme:
Beispiel für ein einfaches UML-Anwendungsfalldiagramm. Vorlage verfügbar zum Herunterladen.
Anwendungsfalldiagramm. Dies beschreibt, was ein System tut, aber nicht, wie es dies tut. Ein Anwendungsfall ist eine Reihe von Ereignissen, die auftreten, wenn ein „Akteur“ ein System verwendet, um einen Prozess abzuschließen. Ein Akteur ist definiert als jede Person oder Sache, die von außerhalb des Systems mit dem System (Person, Organisation oder eine Anwendung) interagiert. Ein Anwendungsfalldiagramm beschreibt also diese Reihe von Abläufen visuell und stellt die funktionalen Anforderungen des Systems dar.
Interaktionsübersichtsdiagramm . Dieses Diagramm ist häufig komplex und ähnelt dem Aktivitätsdiagramm, da beide eine schrittweise Abfolge von Aktivitäten darstellen. Ein Interaktionsübersichtsdiagramm ist jedoch ein Aktivitätsdiagramm, das aus verschiedenen Interaktionsdiagrammen besteht. Es verwendet die gleichen Anmerkungen wie ein Aktivitätsdiagramm (Anfangs-, End-, Entscheidungs-, Merge-, Fork- und Verknüpfungsknoten) und fügt Elemente wie Interaktion, Interaktionsnutzung, Zeiteinschränkung und Dauereinschränkung hinzu.
Zeitsteuerungsdiagramm. Wenn die Zeitsteuerung im Mittelpunkt steht, wird dieses UML-Diagramm verwendet. Es wird auch als Abfolge- oder Ereignisdiagramm bezeichnet. Es zeigt nicht an, wie Objekte interagieren oder sich gegenseitig ändern. Funktionell wird gezeigt, wie Objekte und Akteure entlang einer Zeitachse agieren. Der Fokus liegt hier auf der Dauer von Ereignissen und den Änderungen, die je nach Dauereinschränkungen auftreten. Zu den Hauptteilen eines Zeitsteuerungsdiagramms gehören:
- Lebenslinie: einzelner Teilnehmer
- Statuszeitachse: Verschiedene Status, welche die Lebenslinie innerhalb einer Pipeline durchläuft
- Dauereinschränkung: Erforderliche Zeit für die Erfüllung einer Einschränkung
- Zeiteinschränkung: Eine Zeit, in welcher der Teilnehmer etwas erfüllen muss
- Zerstörungsvorkommnis: Wo die Lebenslinie eines Objekts endet. Nach dem Zerstörungsvorkommnis wird kein weiteres Vorkommen auf einer Lebenslinie erscheinen.
Zustandsautomatdiagramm. Dieses auch als Zustandsdiagramm bezeichnete Diagramm wird verwendet, wenn das Verhalten eines Objekts komplex ist und es auf Details ankommt. Es hilft, das Verhalten eines Objekts (oder manchmal eines Operators) zu beschreiben und wie es sich basierend auf internen und externen Ereignisse ändert.
Sequenzdiagramm. Dieses visuell ansprechende Diagramm, das über die Designcommunity hinaus beliebt ist, ist gut geeignet, um alle Arten von Geschäftsprozessen darzustellen. Es zeigt einfach die Struktur eines Systems, indem es die Sequenz von Nachrichten und Interaktionen zwischen Akteuren und Objekten chronologisch darstellt. Sequenzdiagramme zeigen einfache Iterationen und Verzweigungen. Dies ist für Multitasking vorteilhaft.
Kommunikationsdiagramm. Ein Kommunikations- oder Kollaborationsdiagramm ähnelt einem Sequenzdiagramm. Der Schwerpunkt liegt jedoch auf der Kommunikation zwischen den Objekten. Es zeigt die Organisation der Objekte, die an einer Interaktion teilnehmen, und bietet komplexere Iterationen und Verzweigungen.
Datenbankmodelle
UML hat auch als Notation für die Modellierung von Datenbanken an Beliebtheit gewonnen. Diese Modelle sind ein großartiges visuelles Werkzeug für Brainstorming, Freiformdiagramme und die Zusammenarbeit an Ideen.
Obwohl UML keine Spezifikationen für die Datenmodellierung enthält, kann sie ein nützliches Werkzeug für die Diagrammerstellung sein, insbesondere da Daten aus Datenbanken in der objektorientierten Programmierung verwendet werden können.
Sehen wir uns die verschiedenen Typen von Datenbankmodellen an, die Sie erstellen können:
- Hierarchisches Datenbankmodell. Ein Oldie, aber ein Goodie. Die Daten dieses Modells sind in einer baumähnlichen Struktur organisiert. Der Baum besteht aus mehreren Gruppen, die als Segmente bezeichnet werden. Es wird eine 1:n-Beziehung verwendet. Der Datenzugriff ist ebenfalls vorhersagbar.
- Netzwerkmodell. Dieses Modell hat die Form eines Graphen, in dem Beziehungstypen Bögen und Objekttypen Knoten sind. Im Gegensatz zu anderen Datenbankmodellen ist das Schema des Netzwerkmodells nicht auf Gitter oder Hierarchie beschränkt.
- Objektorientiertes Datenbankmodell. Dieses Modell verwendet eine Sammlung von Objekten oder wiederverwendbaren Softwareelementen mit zugeordneten Funktionen und Methoden. Beispielsweise könnte eine Multimediadatenbank Bilder enthalten, die in einer relationalen Datenbank nicht gespeichert werden können. Oder eine Hypertext-Datenbank ermöglicht das Verknüpfen mit anderen Objekten.
- Relationales Modell. Hier werden Daten anhand von Beziehungen oder rasterähnlichen mathematischen Strukturen strukturiert, die Spalten und Zeilen enthalten. Im Grunde handelt es sich um eine Tabelle.
- Das objektrelationale Modell. Wie der Name schon sagt, ist dieses Modell eine Kombination aus den beiden oben genannten. Es unterstützt Objekte, Klassen, Vererbung und andere objektorientierte Elemente, unterstützt aber auch Datentypen, tabellarische Strukturen und mehr – wie in einem relationalen Datenmodell.
- Entitätsbeziehungsmodell. Dies besteht aus Entitätstypen (Personen, Orte oder Dinge). Es zeigt Beziehungen an, die zwischen ihnen vorhanden sein können. Durch die Definition der Entitäten, ihrer Attribute und die Darstellung der Beziehungen zwischen ihnen veranschaulicht ein Entitätsbeziehungsdiagramm die logische Struktur von Datenbanken.
- Dokumentmodell. Es ist für das Speichern und Verwalten von Dokumenten oder teilweise strukturierten Daten und nicht für atomare Daten gedacht. Es verfügt über eine Baumstruktur, in der jeder Knoten ein Objekt ist, das einen Teil des Dokuments darstellt.
- Entität-Attribut-Wert-Modell. EAV (Entity-Attribute-Value)-Modelle oder Modelle mit offenem Schema, die Daten werden als drei Spalten aufgezeichnet:
- Die Entität (was beschrieben wird)
- Das Attribut oder der Parameter (z. B. Name, Beschreibung, Datentyp)
- Der Wert des Attributs
- Sternschema. Dies ist die einfachste Version eines dimensionalen Modells, in dem Daten in Dimensionen und Fakten angeordnet sind. Es wird in Business Intelligence und Data Warehousing verwendet, da es zum Abfragen von Big Data-Gruppen geeignet ist.
Vereinfachen mit Software
Unabhängig davon, ob Sie Datenbankmodelle oder UML-Diagramme erstellen, vereinfacht und verbessert die Verwendung eines Softwarewerkzeugs den Prozess. Achten Sie darauf, dass Sie eine Option auswählen, mit der Sie Folgendes tun können:
- Erstellen Sie professionelle Diagramme mit vorgefertigten Vorlagen und Tausenden von Formen in einem Inhaltsökosystem, das Branchenstandards wie UML 2.5, aber auch BPMN 2.0 und IEEE erfüllt.
- Erwecken Sie Diagramme mit Datenüberlagerungen, Symbolen, Farben und Grafiken zum Leben, um die Daten leichter verdaulich zu machen, einschließlich der einstufigen Excel-Datenvisualisierung.
- Arbeiten Sie mit anderen zusammen, indem Sie die gemeinsame Dokumenterstellung, Kommentare und Anmerkungen verwenden.
- Kommunizieren Sie eine einzelne gültige Version, und greifen Sie von nahezu überall in einem Browser oder Geräteanwendungen auf Diagramme zu.
In der Softwareentwicklung und bei Nicht-Softwaresystemen in vielen Branchen kann die Verwendung visueller UML-Diagramme eine wichtige Rolle für den Erfolg bei der Erstellung von Verhaltensprozessen und Strukturen spielen. Weitere Informationen zum Erstellen von UML-Diagrammen mit Software finden Sie in dieser Schritt-für-Schritt -Anleitung.
Marin ist ein Mitglied des Marketingteams bei Microsoft. Er freut sich darauf zu sehen, wie Unternehmer ihre Unternehmen besser starten, verwalten und ausbauen können.
Microsoft 365 folgen