UML-Klassendiagramm-Tutorial: Abstrakte Klasse mit Beispielen

Was ist eine Klasse im UML-Diagramm?

A Klasse in UML Ein Diagramm ist eine Blaupause, die zum Erstellen eines Objekts oder einer Reihe von Objekten verwendet wird. Die Klasse definiert, was ein Objekt tun kann. Es handelt sich um eine Vorlage zum Erstellen verschiedener Objekte und zum Implementieren ihres Verhaltens im System. Eine Klasse wird in UML durch ein Rechteck dargestellt, das Zeilen mit Klassennamen, Attributen und Operationen enthält.

Was ist ein Klassendiagramm?

A Klassen Diagramm Im Software-Engineering handelt es sich um eine statische Struktur, die einen Überblick über ein Softwaresystem gibt, indem sie Klassen, Attribute, Operationen und ihre Beziehungen untereinander anzeigt. Dieses Diagramm enthält den Klassennamen, die Attribute und den Betrieb in separaten, dafür vorgesehenen Fächern. Klassendiagramme helfen beim Erstellen des Codes für die Entwicklung von Softwareanwendungen.

Klassendiagramme definieren die Objekttypen im System und die verschiedenen Arten von Beziehungen, die zwischen ihnen bestehen. Es bietet einen allgemeinen Überblick über eine Anwendung. Diese Modellierungsmethode kann mit fast allen objektorientierten Methoden ausgeführt werden. Eine Klasse kann auf eine andere Klasse verweisen. Eine Klasse kann ihre eigenen Objekte haben oder von anderen Klassen erben.

Vorteile von Klassendiagrammen

  • Klassendiagramm veranschaulicht Datenmodelle für sogar sehr complex Informationssysteme
  • Es bietet einen Überblick über die Struktur der Anwendung, bevor der eigentliche Code studiert wird. Dadurch kann die Wartungszeit leicht verkürzt werden
  • Es hilft, die allgemeinen Schaltpläne einer Anwendung besser zu verstehen.
  • Ermöglicht Drawing Detaillierte Diagramme, die den zu programmierenden Code hervorheben
  • Hilfreich für Entwickler und andere Stakeholder.

Wesentliche Elemente eines UML-Klassendiagramms

Wesentliche Elemente des UML-Klassendiagramms sind:

  1. Klassenname
  2. Attributes
  3. Einkauf & Prozesse

Klassenname

Klassenname in UML

Der Name der Klasse wird nur in der grafischen Darstellung der Klasse benötigt. Es erscheint im obersten Fach. Eine Klasse ist der Entwurf eines Objekts, das dieselben Beziehungen, Attribute, Operationen und Semantiken aufweisen kann. Die Klasse wird als Rechteck dargestellt, einschließlich ihres Namens, ihrer Attribute und Operationen in separaten Fächern.

Following Bei der Darstellung einer Klasse müssen Regeln beachtet werden:

  1. Ein Klassenname sollte immer mit einem Großbuchstaben beginnen.
  2. Ein Klassenname sollte immer in der Mitte des ersten Fachs stehen.
  3. Ein Klassenname sollte immer eingetragen werden fett Format.
  4. Der Name der abstrakten UML-Klasse sollte kursiv geschrieben werden.

Attributes

Ein Attribut ist eine benannte Eigenschaft einer Klasse, die das modellierte Objekt beschreibt. Im Klassendiagramm wird diese Komponente direkt unter dem Namensfach platziert.

Attribute in UML

Ein abgeleitetes Attribut wird aus anderen Attributen berechnet. Beispielsweise kann das Alter des Schülers anhand seines Geburtsdatums leicht berechnet werden.

Attribute in UML

Attributmerkmale

  • Die Attribute werden im Allgemeinen zusammen mit dem Sichtbarkeitsfaktor geschrieben.
  • Öffentlich, privat, geschützt und Paket sind die vier Sichtbarkeiten, die jeweils durch +, -, # oder ~-Zeichen gekennzeichnet sind.
  • Sichtbarkeit beschreibt die Zugänglichkeit eines Attributs einer Klasse.
  • Attribute müssen einen aussagekräftigen Namen haben, der ihre Verwendung in einer Klasse beschreibt.

Beziehungen

Es gibt hauptsächlich drei Arten Beziehungen in UML:

  1. Abhängigkeiten
  2. Verallgemeinerungen
  3. Verbände

Abhängigkeit

Eine Abhängigkeit bezeichnet die Beziehung zwischen zwei oder mehr Klassen, bei der eine Änderung in einer Klasse Änderungen in der anderen erzwingen kann. Allerdings wird dadurch immer eine schwächere Beziehung entstehen. Abhängigkeit gibt an, dass eine Klasse von einer anderen abhängig ist.

Im Folgendenwing Beispiele für UML-Klassendiagramme: Student ist von College abhängig

Beziehungen in UML

Verallgemeinerung:

Beziehungen in UML

Eine Generalisierung hilft dabei, eine Unterklasse mit ihrer Oberklasse zu verbinden. Eine Unterklasse wird von ihrer Oberklasse geerbt. Die Generalisierungsbeziehung kann nicht zur Modellierung der Schnittstellenimplementierung verwendet werden. Klassendiagramme ermöglichen das Erben von mehreren Superklassen.

In diesem Beispiel wird die Klasse Student aus der Klasse Person verallgemeinert.

Verband:

Diese Art von Beziehung stellt statische Beziehungen zwischen den Klassen A und B dar. Zum Beispiel; Ein Mitarbeiter arbeitet für eine Organisation.

Hier sind einige Regeln für die Assoziation:

  • Assoziationen sind meist Verben oder Verbalphrasen oder Substantive oder Nominalphrasen.
  • Der Name sollte die Rolle angeben, die die am Ende des Assoziationspfads angehängte Klasse spielt.
  • Obligatorisch für reflexive Assoziationen

In diesem Beispiel wird die Beziehung zwischen Student und Hochschule gezeigt, nämlich dem Studium.

Beziehungen in UML

Vielzahl

Beziehungen in UML

Eine Multiplizität ist ein Faktor, der einem Attribut zugeordnet ist. Es gibt an, wie viele Instanzen von Attributen erstellt werden, wenn eine Klasse initialisiert wird. Wenn keine Multiplizität angegeben ist, wird standardmäßig eine als Standardmultiplizität betrachtet.

Nehmen wir an, dass an einer Hochschule 100 Studenten studieren. Die Hochschule kann mehrere Studierende haben.

Anhäufung

Aggregation ist eine besondere Art der Assoziation, die eine Ganzheitsbeziehung zwischen einem Aggregat und seinen Teilen modelliert.

Beziehungen in UML

Beispielsweise besteht die Klassenkollegium aus einem oder mehreren Schülern. Bei der Aggregation sind die enthaltenen Klassen nie vollständig vom Lebenszyklus des Containers abhängig. Dabei bleibt die Hochschulklasse bestehen, auch wenn der Student nicht verfügbar ist.

Zusammenstellung:

Beziehungen in UML

Die Zusammensetzung ist eine besondere Art der Aggregation, die eine starke Eigentümerschaft zwischen zwei Klassen bezeichnet, wenn eine Klasse Teil einer anderen Klasse ist.

Zum Beispiel, wenn das College aus Studentenklassen besteht. Die Hochschule könnte aus vielen Studenten bestehen, während jeder Student nur einer Hochschule angehört. Wenn also das College nicht funktioniert, werden auch alle Studenten entfernt.

Aggregation vs. Komposition

Anhäufung Zusammensetzung
Aggregation bezeichnet eine Beziehung, in der die untergeordnete Klasse getrennt von ihrer übergeordneten Klasse existieren kann. Beispiel: Automobil (Elternteil) und Auto (Kind). Wenn Sie also das Auto löschen, ist das untergeordnete Auto weiterhin vorhanden. Kompositionsanzeigebeziehung, bei der das untergeordnete Element niemals unabhängig vom übergeordneten Element existiert. Beispiel: Haus (Elternteil) und Zimmer (Kind). Räume werden niemals zu einem Haus werden.

Abstrakte Klassen

Es handelt sich um eine Klasse mit einem Operationsprototyp, aber nicht mit der Implementierung. Es ist auch möglich, eine abstrakte Klasse zu haben, in der keine Operationen deklariert sind. Eine Zusammenfassung ist nützlich, um die Funktionalitäten der Klassen zu identifizieren. Betrachten wir ein Beispiel einer abstrakten Klasse. Angenommen, wir haben eine abstrakte Klasse, die als Bewegung bezeichnet wird und in der eine Methode oder Operation deklariert ist. Die innerhalb der abstrakten Klasse deklarierte Methode heißt a bewegen ().

Diese abstrakte Klassenmethode kann von jedem Objekt wie einem Auto, einem Tier, einem Roboter usw. zum Ändern der aktuellen Position verwendet werden. Es ist effizient, diese abstrakte Klassenmethode mit einem Objekt zu verwenden, da für die angegebene Funktion keine Implementierung bereitgestellt wird. Wir können es beliebig für mehrere Objekte verwenden.

In UML hat die abstrakte Klasse die gleiche Notation wie die Klasse. Der einzige Unterschied zwischen einer Klasse und einer abstrakten Klasse besteht darin, dass der Klassenname streng kursiv geschrieben ist.

Eine abstrakte Klasse kann nicht initialisiert oder instanziiert werden.

Abstrakte Klassennotation
Abstrakte Klassennotation

In obigem abstrakte Klassennotationgibt es die einzige abstrakte Methode, die von mehreren Objekten von Klassen verwendet werden kann.

Beispiel eines UML-Klassendiagramms

Das Erstellen eines Klassendiagramms ist ein unkomplizierter Prozess. Es sind nicht viele technische Details erforderlich. Hier ist ein Beispiel:

Das Geldautomatensystem ist sehr einfach, da Kunden einige Tasten drücken müssen, um Bargeld zu erhalten. Es gibt jedoch mehrere Sicherheitsebenen, die jedes Geldautomatensystem erfüllen muss. Dies hilft, Betrug zu verhindern und Bargeld bereitzustellen oder zu benötigentails an Bankkunden.

Nachfolgend finden Sie ein Beispiel für ein UML-Klassendiagramm:

Beispiel für ein UML-Klassendiagramm

Beispiel für ein UML-Klassendiagramm

Überprüfen Sie auch: - UML-Diagramme: Verlauf, Typen, Merkmale, Versionen, Tools

Klassendiagramm im Softwareentwicklungslebenszyklus

Klassendiagramme können in verschiedenen Softwareentwicklungsphasen verwendet werden. Es hilft bei der Modellierung von Klassendiagrammen aus drei verschiedenen Perspektiven.

1. Konzeptionelle Perspektive: Konzeptuelle Diagramme beschreiben Dinge in der realen Welt. Sie sollten ein Diagramm zeichnen, das die Konzepte im untersuchten Bereich darstellt. Diese Konzepte beziehen sich auf die Klasse und sind immer sprachunabhängig.

2. Spezifikationsperspektive: Die Spezifikationsperspektive beschreibt Softwareabstraktionen oder Komponenten mit Spezifikationen und Schnittstellen. Eine Verpflichtung zur konkreten Umsetzung besteht jedoch nicht.

3. Umsetzungsperspektive: Diese Art von Klassendiagrammen wird für Implementierungen in einer bestimmten Sprache oder Anwendung verwendet. Implementierungsperspektive, Verwendung für Softwareimplementierung.

Best Practices für die Gestaltung des Klassendiagramms

Klassendiagramme sind die wichtigsten UML-Diagramme für die Entwicklung von Softwareanwendungen. Es gibt viele Eigenschaften, die beim Zeichnen berücksichtigt werden solltenwing ein Klassendiagramm. Sie repräsentieren verschiedene Aspekte einer Softwareanwendung.

Hier sind einige Punkte, die beim Zeichnen beachtet werden solltenwing ein Klassendiagramm:

  • Der dem Klassendiagramm gegebene Name muss aussagekräftig sein. Darüber hinaus sollte es den tatsächlichen Aspekt des Systems beschreiben.
  • Die Beziehung zwischen den einzelnen Elementen muss im Voraus identifiziert werden.
  • Die Verantwortung für jede Klasse muss identifiziert werden.
  • Für jede Klasse sollte eine Mindestanzahl an Eigenschaften angegeben werden. Daher können unerwünschte Eigenschaften das Diagramm leicht kompliziert machen.
  • Benutzernotizen sollten immer dann eingefügt werden, wenn Sie einen Aspekt des Diagramms definieren müssen. Am Ende des Dramaswing, es muss für das Softwareentwicklungsteam verständlich sein.
  • Bevor die endgültige Version erstellt wird, muss das Diagramm schließlich auf Normalpapier gezeichnet werden. Darüber hinaus sollte es überarbeitet werden, bis es zur endgültigen Einreichung bereit ist.

Konklusion

  • UML ist die Standardsprache zum Spezifizieren, Entwerfen und Visualisieren der Artefakte von Softwaresystemen
  • Eine Klasse ist eine Blaupause für ein Objekt
  • Ein Klassendiagramm beschreibt die Objekttypen im System und die verschiedenen Arten von Beziehungen, die zwischen ihnen bestehen
  • Es ermöglicht die Analyse und Gestaltung der statischen Ansicht einer Softwareanwendung
  • Klassendiagramme sind die wichtigsten UML-Diagramme, die für die Entwicklung von Softwareanwendungen verwendet werden
  • Wesentliche Elemente des UML-Klassendiagramms sind 1) Klasse, 2) Attribute und 3) Beziehungen
  • Das Klassendiagramm bietet einen Überblick über die Struktur der Anwendung, bevor der eigentliche Code studiert wird. Es reduziert sicherlich die Wartungszeit
  • Das Klassendiagramm ist nützlich, um objektorientierte Programmiersprachen wie Java, C++, Ruby, Python usw. abzubilden.

Überprüfen Sie auch: - UML-Diagramm-Tutorial für Anfänger: Lernen Sie UML KOSTENLOS online