UML-Klassendiagramm-Tutorial: Abstrakte Klasse mit Beispielen

Was ist eine Klasse im UML-Diagramm?

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

Was ist ein Klassendiagramm?

A Klassen Diagramm In der Softwareentwicklung ist dies eine statische Struktur, die einen Überblick über ein Softwaresystem bietet, indem sie Klassen, Attribute, Operationen und ihre Beziehungen untereinander anzeigt. Dieses Diagramm enthält den Klassennamen, die Attribute und die Operation in separaten, dafür vorgesehenen Bereichen. 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 illustriert Datenmodelle auch für sehr komplexe 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 das Zeichnen detaillierter 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. Attribute
  3. Einkauf & Prozesse

Klassenname

Klassenname in UML

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

Bei der Darstellung einer Klasse müssen folgende 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.

Attribute

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.

In den folgenden UML-Klassendiagrammbeispielen hat Student eine Abhängigkeit von College

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 so gewählt werden, dass er die Rolle der Klasse angibt, die am Ende des Assoziationspfads angehängt ist.
  • 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 ein spezieller Typ der Aggregation, der eine starke Eigentümerschaft zwischen zwei Klassen anzeigt, 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 abstrakte Klasse ist nützlich, um die Funktionalitäten in den Klassen zu identifizieren. Betrachten wir ein Beispiel für eine abstrakte Klasse. Angenommen, wir haben eine abstrakte Klasse namens Bewegung mit einer darin deklarierten Methode oder Operation. Die in der abstrakten Klasse deklarierte Methode heißt 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 System der Geldautomaten ist sehr einfach, da die Kunden nur einige Tasten drücken müssen, um Bargeld zu erhalten. Es gibt jedoch mehrere Sicherheitsebenen, die jedes Geldautomatensystem durchlaufen muss. Dies hilft, Betrug zu verhindern und Bankkunden Bargeld oder erforderliche Daten bereitzustellen.

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: Konzeptdiagramme beschreiben Dinge in der realen Welt. Sie sollten ein Diagramm zeichnen, das die Konzepte im untersuchten Bereich darstellt. Diese Konzepte beziehen sich auf Klassen 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 zum Entwerfen von Klassendiagrammen

Klassendiagramme sind die wichtigsten UML-Diagramme, die bei der Entwicklung von Softwareanwendungen verwendet werden. Beim Zeichnen eines Klassendiagramms sollten viele Eigenschaften berücksichtigt werden. Sie stellen verschiedene Aspekte einer Softwareanwendung dar.

Hier sind einige Punkte, die beim Zeichnen eines Klassendiagramms beachtet werden sollten:

  • 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 der Zeichnung muss sie 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.

Schlussfolgerung

  • 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 abzubilden wie Java, C++, Rubin, Python, usw.

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