Paket ist ein Mechanismus zum Organisieren und Verwalten jedes Modellelements in UML. Es organisiert konzeptionell ähnliche und verwandte Modellelemente (einschließlich statischer und dynamischer) in einem Paket, um Module mit verschiedenen Funktionen oder Zwecken zu bilden Paket, um es Menschen zu erleichtern, komplexe Systeme besser zu verstehen.
Das Paketdiagramm besteht aus den Beziehungen zwischen Paketen und zeigt die Abhängigkeiten zwischen den verschiedenen Modulen des Systems durch die Beschreibung der Beziehungen zwischen Paketen.
Es ähnelt einem Ordner im Betriebssystem und wird daher auch in UML mit einer ähnlichen Ordnernotation dargestellt:
Jedes Paket sollte einen Namen haben, der sich von anderen Paketen innerhalb derselben Hierarchie unterscheidet. Paketnamen gibt es in zwei Formen:
1. Einfacher Name
Ein einfacher Name enthält nur die Namenszeichenfolge des Pakets, wie im folgenden Beispiel:
2. Pfadname
In vielen Fällen enthält das Paket andere Pakete. Wenn Sie ein Paket extern verwenden, können Sie den Pfadnamen verwenden, um den Pfad des Pakets anzugeben. Die grundlegende Syntax lautet: externer Paketname::dieser Paketname. Die folgende Abbildung zeigt, dass sich das Paket „Borrow“ im Paket „SystemInterface“ befindet:
Paket ist ein Gruppierungsmechanismus, sodass ein Paket beliebige Elemente in UML enthalten kann, z. B. Klassen, Anwendungsfälle, Schnittstellen, Komponenten, Knoten usw. Es kann auch andere Pakete, Anwendungsfalldiagramme, Kollaborationsdiagramme, Sequenzdiagramme usw. enthalten.
Es gibt drei Haupttypen der Elementsichtbarkeit in Paketen:
1. Öffentlich
Durch das Hinzufügen des „+“-Symbols vor dem Element wird angezeigt, dass das Element für alle in das Paket eingeführten Elemente sichtbar ist.
2. Privat
Durch das Hinzufügen eines „-“-Symbols vor einem Element wird angezeigt, dass das Element nur für Elemente im selben Paket sichtbar sein kann.
3. geschützt
Durch das Hinzufügen des „#“-Symbols vor dem Element wird angezeigt, dass das Element für Elemente im Paket sichtbar ist, die das Paket erben.
Die folgende Abbildung zeigt drei Möglichkeiten, die Sichtbarkeit von Elementen in einem Paket darzustellen:
Enthält drei Sichtbarkeitsdarstellungsmethoden für Elemente
Die Sichtbarkeit der drei Klassen „Klasse A“, „Klasse B“ und „Klasse C“ in der obigen Abbildung ist öffentlich, privat und geschützt.
Die Beziehungen zwischen Paketen umfassen hauptsächlich Abhängigkeitsbeziehungen und Generalisierungsbeziehungen.
1. Abhängigkeit
Die Abhängigkeitsbeziehung zwischen Paketen bezieht sich auf die Abhängigkeit zwischen mehreren Elementen in den beiden Paketen. Die Pfeile zeigen vom abhängigen Paket zum abhängigen Paket. Die Abhängigkeitsbeziehung zwischen Paketen kann Generalisierung, Implementierung, Import usw. sein. Die folgende Abbildung zeigt die Abhängigkeitsbeziehung zwischen den beiden Paketen:
Importabhängigkeit bedeutet, dass Elemente in einem Paket auf Elemente in einem anderen Paket zugreifen können. Dies kann durch Hinzufügen des Stereotyps <<import>> zum gepunkteten Pfeil dargestellt werden. Importabhängigkeiten sind nicht transitiv.
2. Generalisierungsbeziehung
Die Generalisierungsbeziehung zwischen Paketen ähnelt der Generalisierungsbeziehung zwischen Klassen. Diese Generalisierungsbeziehung zwischen Paketen bedeutet, dass spezielle Pakete Elemente in allgemeinen Paketen ersetzen und neue Elemente hinzufügen können. Tatsächlich ist die Generalisierung zwischen Paketen auch eine Abhängigkeitsbeziehung.
Die folgende Abbildung zeigt einige Stereotypen von Paketen, dargestellt durch unterschiedliche Grafiken oder Notationen:
Paketstereotyp
In der obigen Abbildung stellen sie von oben nach unten und von links nach rechts das Geschäftsanalysemodell, das Geschäftssystem (Geschäftssystem), das Geschäftsanwendungsfall-Analysemodell (Geschäftsanwendungsfall-Analysemodell) und das Domänenpaket (Domänenpaket) dar. , Schicht (Schicht) und Subsystem (Subsystem). Sie können bei Bedarf das entsprechende Stereotyp des Pakets auswählen und die Funktion des Pakets schnell identifizieren.
Bei der tatsächlichen Modellierung können die folgenden Prinzipien befolgt werden:
1. Prinzip der Wiederverwendungsäquivalenz
Versuchen Sie, ähnliche wiederverwendbare Modellelemente in einem Paket zusammenzufassen. Mischen Sie nicht wiederverwendbare Modellelemente und nicht wiederverwendbare Modellelemente in einem Paket.
2. Gemeinsames Wiederverwendungsprinzip
Fügen Sie mehrere Modellelemente, die in derselben Anwendung wiederverwendet werden müssen, in dasselbe Paket ein, um Abhängigkeiten zwischen Paketen zu reduzieren und die Paketunabhängigkeit zu verbessern.
3. Prinzip der gemeinsamen Schließung
Fassen Sie Modellelemente, die gleichzeitig geändert und gewartet werden können, in einem Paket zusammen, um zukünftige Wartung und Upgrades zu erleichtern.
4. Prinzip der nichtzyklischen Abhängigkeit
Die Abhängigkeitsbeziehung zwischen Paketen sollte keinen Kreislauf bilden: Das heißt, es darf nicht das Phänomen auftreten, dass A von B und B von A abhängt oder dass mehrere Pakete eine zirkuläre Abhängigkeit bilden.
Streng genommen sind Paketdiagramme keine UML-Diagramme im eigentlichen Sinne, sie spielen jedoch eine wichtige Rolle bei der Klassifizierung von Modellelementen, der Modellstruktur und dem Programmnamensraum. Im eigentlichen Modellierungsprozess können Sie die folgenden Methoden zum Zeichnen von Paketdiagrammen verwenden:
1. Analysieren Sie die Modellelemente des Systems und integrieren Sie konzeptionell oder semantisch ähnliche Modellelemente in ein Paket.
2. Markieren Sie die Sichtbarkeit jedes Elements im Paket.
3. Bestimmen Sie die Abhängigkeiten zwischen Paketen.
4. Zeichnen Sie die Paketkarte und optimieren Sie die Paketkarte.
In ProcessOn können Sie ein Paketdiagramm in einer UML-Diagrammdatei erstellen oder Sie können die an der Erstellung des Paketdiagramms beteiligten grafischen Elemente zum Flussdiagramm hinzufügen, um ein Paketdiagramm zu erstellen.
1. Erstellen Sie ein Paket
Ziehen Sie einfach das „Paket“-Element in der allgemeinen UML-Grafik aus dem Grafikkomponentenbereich auf der linken Seite des Editors in den leeren Bereich auf der rechten Seite des Editors, um die Erstellung des Pakets abzuschließen.
Erstellen Sie ein Paket mit ProcessOn
2. Benennen Sie das Paket um
Klicken Sie in der Paketgrafik auf „Paketname“, um das Paket umzubenennen.
3. Fügen Sie dem Paket Elemente hinzu
Beim Zeichnen kann der Benutzer die Grafik direkt aus dem Grafikkomponentenbereich auf der linken Seite des Editors in den leeren Bereich des Editors ziehen, um die Erstellung der Grafik abzuschließen. Anschließend können Sie die Grafik auswählen und die grafikbezogenen Eigenschaften über die Symbolleiste oben im Editor und das Werkzeugfeld rechts festlegen.
Fügen Sie dem Paket Elemente hinzu
4. Fügen Sie Verbindungen zwischen Paketen hinzu
Die Methode zum Zeichnen einer Verbindung besteht darin, die Tastenkombination „L“ zu verwenden oder das Element „gerade Linie“ aus der Basisgrafik im Grafikkomponentenbereich links in den leeren Bereich des Editors zu ziehen oder es direkt zu verschieben von einem Ende einer Grafik zum anderen. Wenn Sie eine Abhängigkeitsbeziehung hinzufügen möchten, wählen Sie „Abhängiges Paket“ aus, klicken Sie auf ein Ende davon und halten Sie die linke Maustaste auf das „Abhängige Paket“ gedrückt. Lassen Sie dann die Maustaste los, um die Einrichtung einer Abhängigkeitsbeziehung abzuschließen.
Fügen Sie Links zwischen Paketen hinzu
Im Folgenden werden zwei Beispiele für Paketdiagramme aufgeführt, um die spezifische Verwendung von Paketdiagrammen zu veranschaulichen.
Das erste Beispiel spiegelt die Organisation jedes Modellelements im Modellierungsprozess wider, wobei Pakete verwendet werden, um verschiedene Modelle entsprechend den Phasen der Systemanalyse und des Systementwurfs zu organisieren.
Die Organisation jedes Modellelements während des Modellierungsprozesses
Das zweite Beispiel beschreibt die Organisation von Elementen in der Systementwicklung. Die Benutzeroberfläche enthält verschiedene verwendete Benutzerschnittstellen, die BLL enthält verschiedene Klassen oder Schnittstellen für die Geschäftslogikverarbeitung, die DAL enthält verwandte Klassen der Datenzugriffsschicht und Common speichert einige Komponenten oder Klassen, die von verschiedenen Modulen des Systems gemeinsam genutzt werden.
Organisation verschiedener Elemente in der Systementwicklung