Zum Inhalt springen

UML Klassendiagramm Hilfe


Levent

Empfohlene Beiträge

Hallo,

ich bin was Klassendiagramme angeht noch ein Neuling. Ich muss aber eins erstellen, damit ich verstehe, wie das Programm funktioniert und es anschließend dann programmieren kann. Kann mir bitte einer hier helfen? Hier die Aufgabenstellung:

Die Software einer Autovermietung verwaltet Kunden und Fahrzeuge. Ein Kunde kann über mehrere Buchungen verfügen. Zu einer Buchung gehört genau ein Fahrzeug.

Ein Fahrzeug kann nacheinander von mehreren Kunden gebucht werden.

Kunden erhalten bei Ihrer ersten Buchung eine eindeutige Kundennummer, und es werden der Name und die Adressdaten festgehalten. Für jeden Kunden kann die Liste seiner Buchungen angezeigt werden.

Für die Fahrzeuge werden der Fahrzeugtyp, das Kennzeichen und das Baujahr registriert. Zu jedem Fahrzeug läßt sich eine Liste ausgeben, die anzeigt wann und von wem es gebucht wurde.

Bei den Buchungen hält die Software deren Anfangs- und Enddatum sowie eine Buchungs-nummer fest. Zu jeder Buchung lassen sich die Fahrzeugdaten und die Kundendaten anzeigen.

Buchungen für bestehende oder neue Kunden werden zentral von der Autovermietung erfaßt. Außerdem kann die Autovermietung eine bestimmte Kundenbuchung oder eine bestimmte Fahrzeugbuchung anzeigen lassen.

Das Anzeigen der Kundenbuchungsliste oder der Buchungsliste eines Fahrzeuges wird eben-falls von der Autovermietung angestoßen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Bis jetzt habe ich 4 Klassen:

Kunde

-nummer:int

-name:String

-adresse:String

Fahrzeug

-typ:String

-kennzeichen:String

-baujahr:String

Buchung

-anfangsDatum:String

-endDatum:String

-nummer:int

-fahrzeugDaten:String

-kundenDaten:String

Autovermietung

-kundenBuchung:String

-fahrzeugBuchung:String

-buchunglistenKunde:String

-buchunglisteFahrzeug:String

Kardinalitäten und Assoziationsnamen habe ich noch nicht gemacht aber was ich nicht an der Aufgabe verstehe ist, dass Klassen etwas anzeigen können.Wie soll man das darstellen?

"Außerdem kann die Autovermietung eine bestimmte Kundenbuchung oder eine bestimmte Fahrzeugbuchung anzeigen lassen"

Link zu diesem Kommentar
Auf anderen Seiten teilen

Überdenke noch mal die Typen Deiner Attribute, es ist nicht sinnvoll fast alles als String zu deklarieren wie z.B. Datum, Listen und weitere Datenfelder.

Kardinalitäten und Assoziationsnamen habe ich noch nicht gemacht aber was ich nicht an der Aufgabe verstehe ist, dass Klassen etwas anzeigen können.Wie soll man das darstellen?

Naja anzeigen würde ich hier mit "auf dem Bildschirm anzeigen" gleichsetzen bzw. man würde hier eine Methode überladen (in Java toString()), die das ermöglicht

HTH Phil

Link zu diesem Kommentar
Auf anderen Seiten teilen

Kunden erhalten bei Ihrer ersten Buchung eine eindeutige Kundennummer, und es werden der Name und die Adressdaten festgehalten. Für jeden Kunden kann die Liste seiner Buchungen angezeigt werden.

Kunde

-nummer:int

-name:String

-adresse:String

Um flashpixx' Anmerkung etwas zu verdeutlichen:

Stell dir vor du hast jetzt eine Instanz der Klasse Kunde mit der nummer 12345. Nun möchtest du wissen aus welcher Stadt kommt den mein Kunde? Diese Information ist im Attribut Adresse hinterlegt aber wirst da nicht ohne weiteres rankommen. Denn so wie es dein Modell im Moment vorsieht werden alle Adressdaten, sprich Straße, HausNr, Ort, PLZ, Land, ... etc., in nur diesem einem Attribut. Rufst du nun z.B. kunde.getAdresse() auf erhälst du einen einzigen String mit allen Infos der im schlimmsten Fall nicht einmal ordentlich strukturiert ist. Und jetzt musst du den String "aufbrechen" und dir irgendwie die Stadt rausfischen. Nicht wirklich einfach zu bedienen.

Außerdem hat der Kunde im Moment keinerlei Infos zu seinen bisherigen Buchungen. Wie also willst du dir, wie in der Anforderung geschildert, alle Buchungen eines Kunden anzeigen lassen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...