Zum Inhalt springen
Read this post in: de_DEen_USes_ESfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW
Home » UML » Von Use Case zum MVC-Framework: Ein Leitfaden für die objektorientierte Systementwicklung

Von Use Case zum MVC-Framework: Ein Leitfaden für die objektorientierte Systementwicklung

Klassendiagrammesind eine zentrale Komponente der objektorientierten Programmierung und helfen Entwicklern, die Struktur ihrer Software und deren Interaktionen zu visualisieren. Bei der Softwareentwicklung ist es wichtig, Klassen anhand eines Use Cases zu identifizieren, um ein genaues und effektives Klassendiagramm zu erstellen. In diesem Artikel werden wir die Schritte zur Identifizierung von Klassen anhand eines Use Cases und die anschließende Erstellung eines Klassendiagramms erläutern. Außerdem werden wir besprechen, wie ein Klassendiagramm in ein detailliertes MVC-Klassendiagramm verfeinert werden kann.

MVC framework

Schritt 1: Use Cases identifizieren

Bevor ein Klassendiagramm erstellt wird, ist es unerlässlich, das Problemfeld und die Use Cases zu verstehen, die die Software adressieren wird. Ein Use Case stellt eine bestimmte Funktionalität dar, die das System seinen Benutzern bereitstellen muss. Die Identifizierung von Use Cases kann durch Gespräche mit Stakeholdern, die Überprüfung von Anforderungsdokumenten und Brainstorming-Sitzungen erfolgen.

Schritt 2: Klassen identifizieren

Sobald die Use Cases identifiziert sind, können Sie mit der Identifizierung der Klassen beginnen, die zur Unterstützung dieser Use Cases erforderlich sind. Eine Klasse ist eine Vorlage zum Erstellen von Objekten, die Eigenschaften und Methoden enthalten. Klassen können reale Entitäten oder abstrakte Konzepte darstellen.

Zum Beispiel, wenn der Use Case die Verwaltung von Kundendaten betrifft, könnten Sie eine Customer-Klasse identifizieren, die Eigenschaften wie Name, Adresse und E-Mail enthalten würde. Wenn der Use Case die Verarbeitung von Zahlungen betrifft, könnten Sie eine Payment-Klasse identifizieren, die Eigenschaften wie Zahlungsbetrag, Zahlungsmethode und Zahlungsdatum enthalten würde.

Schritt 3: Beziehungen identifizieren

Nach der Identifizierung der Klassen müssen Sie bestimmen, wie sie miteinander verbunden sind. Beziehungen zwischen Klassen können durch Assoziation, Aggregation oder Komposition dargestellt werden.

Die Assoziation stellt eine Beziehung zwischen zwei Klassen dar, bei der eine Klasse die Dienste einer anderen Klasse nutzt. Die Aggregation stellt eine Beziehung zwischen zwei Klassen dar, bei der eine Klasse eine andere Klasse als Teil enthält, aber der Teil unabhängig vom Ganzen existieren kann. Die Komposition stellt eine Beziehung zwischen zwei Klassen dar, bei der eine Klasse eine andere Klasse als Teil enthält und der Teil nicht unabhängig vom Ganzen existieren kann.

Schritt 4: Klassendiagramm erstellen

Anhand der identifizierten Klassen und Beziehungen können Sie ein Klassendiagramm erstellen. Ein Klassendiagramm ist eine visuelle Darstellung der Klassen und ihrer Beziehungen. Es zeigt die Eigenschaften und Methoden jeder Klasse sowie die Beziehungen zwischen den Klassen.

In einem Klassendiagramm wird jede Klasse als ein Kasten dargestellt, wobei der Klassenname oben im Kasten steht. Die Eigenschaften der Klasse werden in der Mitte des Kastens aufgelistet, und die Methoden unten im Kasten. Die Beziehungen zwischen Klassen werden durch Linien dargestellt, wobei verschiedene Linientypen unterschiedliche Arten von Beziehungen anzeigen.

Schritt 5: Das Klassendiagramm in ein detailliertes MVC-Klassendiagramm verfeinern

Nach der Erstellung eines Klassendiagramms können Sie es in ein detailliertes MVC-Klassendiagramm verfeinern. Das Model-View-Controller (MVC)-Muster ist ein Software-Entwurfsmuster, das eine Anwendung in drei miteinander verbundene Komponenten aufteilt: das Modell, die Ansicht und den Controller.

Das Modell stellt die Daten und die Geschäftslogik der Anwendung dar. Die Ansicht stellt die Benutzeroberfläche der Anwendung dar. Der Controller verwaltet die Kommunikation zwischen Modell und Ansicht.

Um das Klassendiagramm in ein detailliertes MVC-Klassendiagramm zu verfeinern, müssen Sie identifizieren, welche Klassen das Modell, die Ansicht und den Controller darstellen. Die Modellklassen sollten die Daten und die Geschäftslogik der Anwendung enthalten. Die Ansichtsklassen sollten die Benutzeroberfläche der Anwendung enthalten. Die Controllerklassen sollten die Kommunikation zwischen Modell und Ansicht verwalten.

Sobald Sie identifiziert haben, welche Klassen das Modell, die Ansicht und den Controller darstellen, können Sie das Klassendiagramm aktualisieren, um diese Zuordnungen widerzuspiegeln. Sie können unterschiedliche Farben oder Linienstile verwenden, um die Klassen des Modells, der Ansicht und des Controllers voneinander zu unterscheiden.

Beispiel: Autovermietungssystem

Problemstellung: Eine Autovermietungsgesellschaft möchte ein Software-System entwickeln, das Kunden ermöglicht, Fahrzeuge online zu mieten. Kunden sollten in der Lage sein, verfügbare Fahrzeuge zu durchsuchen, ein Fahrzeug zur Miete auszuwählen und eine Reservierung vorzunehmen. Das System sollte die Verfügbarkeit von Fahrzeugen sowie die von Kunden vorgenommenen Reservierungen verfolgen.

Schritt 1: Use Cases identifizieren

  • Verfügbare Fahrzeuge durchsuchen
  • Ein Fahrzeug zur Miete auswählen
  • Eine Reservierung vornehmen

Car Rental Use Case Diagram

Dieses Use-Case-Diagramm zeigt die drei Haupt-Use-Cases, die in Schritt 1 identifiziert wurden: Verfügbare Fahrzeuge durchsuchen, Ein Fahrzeug zur Miete auswählen und Eine Reservierung vornehmen. Der Akteur Customer interagiert mit dem CarRentalSystem, um diese Aktionen durchzuführen.

Schritt 2: Klassen identifizieren

  • Kunde
  • Fahrzeug
  • Reservierung

Schritt 3: Beziehungen identifizieren

  • Ein Kunde kann viele Reservierungen vornehmen, aber jede Reservierung wird von nur einem Kunden durchgeführt. Dies ist eine ein-zu-viele-Beziehung, die durch eine Assoziation zwischen den Klassen Customer und Reservation dargestellt wird.
  • Ein Fahrzeug kann von vielen Kunden gemietet werden, aber jede Miete betrifft nur ein Fahrzeug. Dies ist ebenfalls eine ein-zu-viele-Beziehung, die durch eine Assoziation zwischen den Klassen Car und Reservation dargestellt wird.

Schritt 4: Klassendiagramm erstellen

Car Rental Simple Class Diagram

Dieses Klassendiagramm zeigt die drei Hauptklassen, die in Schritt 2 identifiziert wurden: Customer, Car und Reservation. Es zeigt außerdem die in Schritt 3 identifizierten Beziehungen: eine ein-zu-viele-Beziehung zwischen Customer und Reservation sowie eine ein-zu-viele-Beziehung zwischen Car und Reservation. Jede Klasse enthält außerdem die in der Analysephase identifizierten Attribute und Methoden.

Schritt 5: Das Klassendiagramm in ein detailliertes MVC-Klassendiagramm verfeinern

  • Modell: Fahrzeug, Kunde, Reservierung
  • Ansicht: Benutzeroberfläche (UI)
  • Steuerung: FahrzeugvermietungsSteuerung

Dieses MVC-Klassendiagramm zeigt die drei Hauptkomponenten des Systems, die in Schritt 5 identifiziert wurden: Modell, Ansicht und Steuerung.
Das Modell umfasst die Klassen Customer, Car und Reservation sowie Methoden zum Suchen von Fahrzeugen und zum Buchen von Reservierungen. Die Ansicht wird durch die Schnittstelle CarRentalView dargestellt, die Methoden zum Anzeigen von Fahrzeugen und Reservierungsdetails definiert. Die Steuerung wird durch die Klasse CarRentalController dargestellt, die mit dem Modell und der Ansicht interagiert, um Benutzeraktionen zu verarbeiten und den Systemzustand zu aktualisieren. Das Diagramm enthält außerdem die Beziehungen zwischen den Klassen, die in früheren Schritten identifiziert wurden.

Refined Car Rental Class Diagram (MVC)

Beachten Sie:

  • DieModellumfasst die Kunde, Fahrzeug, und ReservierungKlassen sowie Methoden zum Suchen von Fahrzeugen und zum Buchen von Reservierungen.
  • Die Ansichtwird durch die Schnittstelle CarRentalView dargestellt, die Methoden zum Anzeigen von Fahrzeugen und Reservierungsdetails definiert.
  • DieSteuerungwird durch die Klasse CarRentalController dargestellt, die mit dem Modell und der Ansicht interagiert, um Benutzeraktionen zu verarbeiten und den Systemzustand zu aktualisieren.
  • Das Diagramm enthält außerdem die Beziehungen zwischen den Klassen, die in früheren Schritten identifiziert wurden.

Erstellen Sie das ERD basierend auf dem Ergebnis der Objektmusterung

Dieses ERD zeigt die drei Hauptentitäten, die in der Problembeschreibung identifiziert wurden: Customer, Car und Reservation. Es zeigt auch die Beziehungen zwischen diesen Entitäten: eine ein-zu-viele-Beziehung zwischen Customer und Reservation, eine ein-zu-viele-Beziehung zwischen Car und Reservation sowie keine direkte Beziehung zwischen Customer und Car. Jede Entität enthält die während der Analysephase identifizierten Attribute.

Car Rental ERD

Das ERD ist nur für die Modellierung der Datendauerhaltungsschicht des Systems verantwortlich, während das Klassendiagramm das gesamte System modelliert, einschließlich der Model-, View- und Controller-Schichten.

Mit anderen Worten stellt das ERD das Datenbankschema und die Beziehungen zwischen Tabellen/Entitäten dar, während das Klassendiagramm die Klassen und ihre Beziehungen, Attribute und Methoden darstellt, aus denen das gesamte System besteht.

 

Wie man fehlende Objekte identifiziert, um das Klassendiagramm zu verfeinern

Beim Erstellen des ursprünglichen MVC-Klassendiagramms ist es wichtig, die wichtigsten Objekte zu berücksichtigen, die an der Systemfunktionalität beteiligt sein werden. Wenn wir jedoch mit der Entwicklung von Anwendungsszenarien und entsprechenden Sequenzdiagrammen beginnen, können wir zusätzliche Objekte entdecken, die in das Klassendiagramm aufgenommen werden müssen, um das System vollständig darzustellen. Dieser iterative Prozess ermöglicht es uns, das Klassendiagramm zu verfeinern, während wir ein besseres Verständnis für das Verhalten und die Anforderungen des Systems gewinnen.

Car Rental MVC Sequence Diagram

Verfeinern Sie das MVC-Klassendiagramm mit fehlenden Objekten, die aus dem Anwendungsszenario entdeckt wurden

Wenn wir den Prozess des MVC-Sequenzdiagramms durchlaufen, können wir zusätzliche Objekte entdecken, die in das MVC-Klassendiagramm aufgenommen werden müssen, um das Verhalten des Systems vollständig darzustellen. Um das MVC-Klassendiagramm zu verfeinern, können wir die folgenden Schritte befolgen:

  1. Identifizieren Sie die fehlenden Objekte: Beim Erstellen des MVC-Sequenzdiagramms können wir einige fehlende Objekte identifizieren, die erforderlich sind, um die Interaktion zwischen den bestehenden Objekten abzuschließen. Diese fehlenden Objekte können neue Entitäten, Dienste oder Controller sein, die ursprünglich im ursprünglichen MVC-Klassendiagramm nicht berücksichtigt wurden.
  2. Fügen Sie die fehlenden Objekte zum MVC-Klassendiagramm hinzu: Sobald wir die fehlenden Objekte identifiziert haben, können wir sie zum bestehenden MVC-Klassendiagramm hinzufügen. Wir können auch die Beziehungen zwischen den bestehenden Objekten und den neuen Objekten entsprechend anpassen.
  3. Überprüfen und verfeinern Sie die Beziehungen: Nachdem wir die fehlenden Objekte zum MVC-Klassendiagramm hinzugefügt haben, sollten wir die Beziehungen zwischen den Objekten überprüfen und sicherstellen, dass sie das Verhalten des Systems genau widerspiegeln. Möglicherweise müssen wir die Beziehungen zwischen den Objekten anpassen, um die neuen Objekte zu berücksichtigen, und sicherstellen, dass das Diagramm weiterhin leicht verständlich bleibt.
  4. Iterieren Sie, wenn nötig: Wenn wir während des Sequenzdiagramm-Prozesses zusätzliche fehlende Objekte entdecken, können wir die oben genannten Schritte wiederholen, um das MVC-Klassendiagramm zu verfeinern, bis es das Verhalten des Systems genau darstellt.

Insgesamt ist das Verfeinern des MVC-Klassendiagramms durch den Prozess des Sequenzdiagramms ein iterativer Prozess, der es uns ermöglicht, sicherzustellen, dass das Diagramm das Verhalten und die Anforderungen des Systems genau darstellt.

Car Rental Class Diagram Refined (Miss objs discovered)

Fazit

Der Prozess der Klassenerkennung und der Erstellung von Klassendiagrammen ist ein wichtiger Schritt beim Entwurf und der Entwicklung von Software-Systemen. Er hilft sicherzustellen, dass das System gut strukturiert, leicht wartbar ist und die Anforderungen der Benutzer erfüllt.

Indem Entwickler die in diesem Artikel aufgeführten Schritte befolgen – beginnend mit der Anwendungsfalanalyse und endend mit der Erstellung eines MVC-Klassendiagramms – können sie sicherstellen, dass ihre Software-Systeme ordnungsgemäß entworfen sind, mit klar definierten Klassen, Beziehungen und Verantwortlichkeiten für jedes Systemkomponente.

Insgesamt kann der Prozess der Klassenerkennung und der Erstellung von Klassendiagrammen herausfordernd sein, ist aber ein wesentlicher Schritt beim Aufbau hochwertiger Software-Systeme, die die Bedürfnisse von Benutzern und Stakeholdern erfüllen.

Schreibe einen Kommentar