Software-Designer-UML-Grundlagen-Tutorial

Szenen

Der Aufbau und die Funktionen verschiedener UML1.5-Modelldiagramme werden erläutert.

UML-Übersicht

Einführung in UML

UML (Unified Modeling Language) bietet eine einheitliche, standardmäßige und visuelle Modellierungssprache für objektorientiertes Softwaredesign.

Es eignet sich zur Beschreibung des gesamten Prozesses des anwendungsfallgesteuerten und architekturzentrierten Softwaredesigns. 

Die Definition von UML besteht aus zwei Teilen: UML-Semantik und UML-Notation.

(1) UML-Semantik:

Die Beschreibung der Semantik in UML ermöglicht Entwicklern ein konsistentes Verständnis der Semantik und eliminiert den Einfluss einzelner Ausdrucksmethoden.

(2) UML-Notation:

Die UML-Notation definiert eine Notation von UML-Symbolen, die es Entwicklern oder Entwicklungstools ermöglicht, diese grafischen Symbole und Textsyntax zur Modellierung von Systemen zu verwenden.

Standards werden bereitgestellt.

Die Zusammensetzung des UML-Modelldiagramms

Dinge: Die grundlegendsten Elemente im UML-Modell sind Abstraktionen repräsentativer Komponenten.

Beziehungen: Beziehungen verbinden Dinge eng miteinander

Diagramme: Diagramme sind visuelle Darstellungen von Dingen und Zusammenhängen.

UML-Dinge

UML enthält 4 Arten von Dingen: Dinge konstruieren, Dinge verhalten, Dinge gruppieren, Dinge mit Anmerkungen versehen

Komponenten:

Der statische Teil des UML-Modells beschreibt Konzepte oder physikalische Elemente. Er umfasst Folgendes:

Klasse: Beschreibung von Objekten mit denselben Attributen, denselben Operationen, denselben Beziehungen und derselben Semantik

Schnittstelle: beschreibt das nach außen sichtbare Verhalten des Elements, also die Definition der Service-Sammlung

Zusammenarbeit: beschreibt eine Reihe von Interaktionen zwischen einer Reihe von Dingen

Anwendungsfall: Stellt das Verhalten eines Systems oder eines Teils eines Systems dar und ist eine Sammlung von Aktionssequenzen.

Komponente: ein physisch vorhandener, austauschbarer Teil eines Systems

Knoten: ein physisches Element, das zur Laufzeit existiert

Darüber hinaus sind Akteure, Signalanwendungen, Dokumentbibliotheken, Seitentabellen usw. Variationen der oben genannten grundlegenden Dinge

Verhaltensbezogene Dinge:

Der dynamische Teil eines UML-Modelldiagramms, das das Verhalten über Raum und Zeit hinweg beschreibt

Interaktion: Eine Sammlung von Nachrichten zwischen einer Reihe von Komponenten, die eine bestimmte Funktion implementieren, einschließlich Nachrichten, Aktionssequenzen und Links.

Zustandsmaschine: beschreibt die Abfolge von Zuständen, die ein Ding oder eine Interaktion als Reaktion auf Ereignisse während seines Lebenszyklus durchläuft

Gruppieren Sie Dinge:

Der organisatorische Teil des UML-Modelldiagramms, der die Organisationsstruktur der Dinge beschreibt

Packs: Ein Mechanismus zum Organisieren von Elementen in Gruppen

Beachten Sie Folgendes:

Der Erklärungsteil des UML-Modells dient der Erläuterung und Erklärung der Elemente im Modell.

Anmerkung: ein einfaches Symbol, das ein Element einschränkt oder erklärt

UML-Beziehungen

verlassen

Abhängigkeit ist eine semantische Beziehung zwischen zwei Dingen, bei der sich eine Sache (unabhängige Sache) ändert.

Wird die Semantik einer anderen Sache beeinflussen (abhängige Sache)

Verband

Assoziation ist eine strukturelle Beziehung, die die Verbindung zwischen dem Objekt einer Sache und dem Objekt einer anderen Sache angibt

verallgemeinern

Generalisierung ist eine spezielle/allgemeine Beziehung. Es kann auch als eine allgemein als Erbschaftsverhältnis bezeichnete Beziehung angesehen werden.

erreichen

Bei der Realisierung handelt es sich um eine semantische Beziehung zwischen Klassen, bei der eine Klasse einen Vertrag angibt, dessen Ausführung durch eine andere Klasse garantiert ist.

Notiz:

Blog:
Domineering Rogue Temperament_C#, Architecture Road, SpringBoot-CSDN-Blog

UML-Diagramme und -Funktionen

Anwendungsfalldiagramm

Ein Anwendungsfalldiagramm beschreibt Systemfunktionen aus der Sicht des Benutzers und ist ein Modelldiagramm der Systemfunktionen, das Benutzer beobachten können.

Ein Anwendungsfall ist eine funktionale Einheit im System

Dinge und Erklärungen in Anwendungsfalldiagrammen

 Dingname  erklären  UML-Darstellung
 Schauspieler  Jemand oder etwas außerhalb des Systems, das direkt mit dem System interagiert (z. B. ein anderes Computersystem
oder ein ausführbarer Prozess). Worauf wir achten müssen, ist Folgendes:
1. Teilnehmer sind Rollen und keine spezifischen Personen. Sie stellen die Rolle dar, die die Teilnehmer im Prozess des Umgangs mit dem System spielen. Daher kann im tatsächlichen Betrieb des Systems ein tatsächlicher Benutzer mehreren Teilnehmern des Systems entsprechen. Verschiedene Benutzer können auch nur einem Teilnehmer entsprechen und somit unterschiedliche Instanzen desselben Teilnehmers darstellen.
2. Die Teilnehmer interagieren mit dem System als externe Benutzer (und nicht als interne Benutzer), was dessen Hauptmerkmal ist.
3. Die „Teilnehmer“, die in nachfolgenden Sequenzdiagrammen usw. erscheinen, haben das gleiche Konzept, die spezifische Bedeutung hängt jedoch von der jeweiligen Situation ab.
 
 Anwendungsfall  Eine Funktionseinheit eines Systems, die außerhalb des Systems sichtbar ist. Die Funktionalität des Systems wird von den Systemeinheiten bereitgestellt und durch eine Reihe von Nachrichten ausgedrückt, die zwischen den Systemeinheiten und einem oder mehreren Teilnehmern ausgetauscht werden.  

Zusammenhänge und Erläuterungen in Use-Case-Diagrammen

Klassen Diagramm

Klassendiagramme beschreiben die statische Struktur von Klassen in einem System.

Es definiert nicht nur die Klassen im System, sondern drückt auch die Verbindungen zwischen Klassen wie Assoziationen, Abhängigkeiten, Aggregationen usw. aus und umfasst auch die interne Struktur der Klasse (die Attribute und Operationen der Klasse).

Das Klassendiagramm ist um die Klasse herum organisiert. Andere Elemente im Klassendiagramm gehören entweder zu einer bestimmten Klasse oder sind mit der Klasse verknüpft. 

Dinge und Erklärungen in Klassendiagrammen

1. Klasse

Es ist von oben nach unten in drei Teile unterteilt, nämlich Klassenname, Attribute und Operationen. Der Klassenname ist erforderlich

Wenn die Klasse über Attribute verfügt, muss jedes Attribut einen Namen haben. Darüber hinaus kann es auch andere Beschreibungsinformationen wie Sichtbarkeit, Datentyp, Standardwert usw. enthalten.

Wenn die Klasse Operationen hat, hat jede Operation auch einen Namen. Zu den weiteren optionalen Informationen gehören Sichtbarkeit, Parameternamen, Parametertypen,

Parameter-Standardwerte und Operations-Rückgabewerttypen usw.

2. Schnittstelle

Eine Sammlung von Operationen mit nur Deklarationen von Operationen, aber keiner Implementierung

3. Abstrakte Klasse

Klassen, die nicht instanziiert werden können, enthalten im Allgemeinen mindestens eine abstrakte Operation

4. Vorlagenklasse

Eine parametrisierte Klasse, die Vorlagenparameter zur Kompilierungszeit an verschiedene Datentypen bindet und dadurch verschiedene Klassen erzeugt

Beziehungen und Erklärungen in Klassendiagrammen

1. Beziehung

Beschreibt die Beziehungen zwischen Klassenstrukturen. Enthält Informationen wie Richtung, Name, Rolle und Multiplizität. Allgemeine Assoziationsbeziehungen haben eine schwache Semantik.

Es gibt auch zwei Arten von Semantik, die stärker sind, nämlich Aggregation und Kombination.

Aggregationsbeziehung

Spezielle Assoziationsbeziehung, die die Beziehung zwischen einem Aggregat (Ganzes) und seinen Komponenten angibt

Kombinationsbeziehung

Aggregation mit stärkerer Semantik, Teile und Ganzes haben den gleichen Lebenszyklus

2. Generalisierungsbeziehung

In der objektorientierten Umgebung wird dies im Allgemeinen als Vererbungsbeziehung bezeichnet, die zwischen der übergeordneten Klasse und der untergeordneten Klasse sowie der übergeordneten Schnittstelle und der untergeordneten Schnittstelle besteht.

3. Beziehungen erkennen

Entspricht der Beziehung zwischen Klassen und Schnittstellen.

Die Klassen Circle und Rechteck implementieren die Operationen der Schnittstelle Shape

4. Abhängigkeit

Beschreibt Situationen, in denen Änderungen an einer Klasse Auswirkungen auf Klassen haben, die von ihr abhängen. Es gibt viele Ausdrucksformen, wie z. B. Bindung, Freund usw.

Objektdiagramm

Ein Objektdiagramm ist eine Instanz eines Klassendiagramms und verwendet fast genau dieselbe Notation wie ein Klassendiagramm.

Sie unterscheiden sich darin, dass Objektdiagramme mehrere Objektinstanzen einer Klasse und nicht die eigentliche Klasse zeigen

Sequenzdiagramm

Das Sequenzdiagramm stellt die dynamische Kooperationsbeziehung zwischen Objekten dar. Es betont die Reihenfolge des Nachrichtenversands zwischen Objekten und zeigt auch die Interaktion zwischen Objekten.  

Eine Verwendung von Sequenzdiagrammen besteht darin, die Abfolge von Aktionen in einem Anwendungsfall darzustellen.

Wenn ein Anwendungsfallverhalten ausgeführt wird, entspricht jede Nachricht im Sequenzdiagramm einer Klassenoperation oder einem Triggerereignis, das einen Zustandsübergang verursacht.

Dinge und Erklärungen in Sequenzdiagrammen

Die Beziehung zwischen Sequenzdiagrammen, Anwendungsfalldiagrammen und Klassendiagrammen

Kollaborationsdiagramm

Kollaborationsdiagramme beschreiben die Kollaborationsbeziehungen zwischen Objekten. Kollaborationsdiagramme ähneln Sequenzdiagrammen und zeigen die dynamischen Kollaborationsbeziehungen zwischen Objekten.

Kollaborationsdiagramme zeigen nicht nur den Informationsaustausch, sondern auch Objekte und die Beziehungen zwischen ihnen.

Eine Verwendung von Kollaborationsdiagrammen besteht darin, die Implementierung einer Klassenoperation darzustellen

Dinge und Erklärungen in Kollaborationsdiagrammen

Beziehungen und Erklärungen in Kollaborationsdiagrammen

1. Link

Verwenden Sie Linien, um Links darzustellen. Links stellen zwei Objekte dar, die eine Nachricht teilen, zwischen Objekten oder zwischen Teilnehmern und Objekten.

Der Unterschied und Zusammenhang zwischen Kollaborationsdiagramm und Sequenzdiagramm

Kollaborationsdiagramme und Sequenzdiagramme stellen beide Interaktionen zwischen Objekten dar, konzentrieren sich jedoch auf unterschiedliche Dinge.

Sequenzdiagramme stellen eindeutig die zeitliche Abfolge von Interaktionen dar (Betonung der Zeit), jedoch nicht explizit die Beziehungen zwischen Objekten.

Kollaborationsdiagramme stellen die Beziehungen zwischen Objekten klar dar (Betonung des Raums), die chronologische Reihenfolge muss jedoch aus der Sequenznummer ermittelt werden.

Kollaborationsdiagramme und Sequenzdiagramme können ineinander umgewandelt werden

Zustandsdiagramm

Ein Zustandsdiagramm ist ein Modelldiagramm aller Prozesse, die ein Klassenobjekt durchlaufen kann.

Ein Zustandsdiagramm besteht aus den einzelnen Zuständen eines Objekts und den Übergängen, die diese Zustände verbinden.

Zustandsdiagramme werden zur Modellierung von Echtzeitsystemen verwendet, indem sie die komplexen Eigenschaften von Akteuren, Klassen, Subsystemen und Komponenten offenlegen.

Dinge und Erklärungen in Zustandsdiagrammen

Aktivitätsdiagramm

Aktivitätsdiagramme sind eine Variation von Zustandsdiagrammen, die zur Beschreibung der Aktivitäten verwendet werden, die am Arbeitsablauf der Ausführung eines Algorithmus beteiligt sind

Ein Aktivitätsdiagramm beschreibt eine Reihe aufeinanderfolgender oder gleichzeitiger Aktivitäten

Aktivitätsdiagramm-Dinge und Erklärungen

Beziehungen im Aktivitätsdiagramm

Komponentendiagramm

Das Komponentendiagramm modelliert die Komponenten des Systems, also die Softwareeinheiten, aus denen die Anwendung besteht.

Es umfasst auch Abhängigkeiten zwischen Komponenten, sodass die möglichen Auswirkungen von Änderungen an Systemkomponenten auf das System anhand dieser Abhängigkeiten abgeschätzt werden können.

Dinge und Erklärungen in Komponentendiagrammen

Zusammenhänge und Erläuterungen in Komponentendiagrammen

Bereitstellungsdiagramm

Eine Bereitstellungsansicht beschreibt die Anordnung laufender Komponenteninstanzen, die sich auf Knoteninstanzen befinden.

Ein Knoten ist eine Reihe laufender Ressourcen wie Computer, Geräte oder Speicher.

Diese Ansicht ermöglicht die Auswertung der Allokationsergebnisse und der Ressourcenallokation

Dinge und Erklärungen im Bereitstellungsdiagramm

Beziehungen und Interpretationen in Bereitstellungsdiagrammen

Beschreibung der UML-Syntax

Die Beziehung zwischen allen UML-Diagrammen


 


 


 


 


 

Guess you like

Origin blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/132885482