# Konventionelles UML Klassendiagramm erstellen



## snibbe (22. Dez 2012)

Hallo Leute,
ich bin gerade dabei eine Aufgabe bzgl.eines konventionellen UML Klassendiagramms zu bearbeiten. Es geht um ein System zur Zimmerreservierung sowie der Abrechnung in einem Hotel.

Folgende Geschäftsprozesse sollen unterstützt werden:

*Reservierung:*
- Zimmer reservieren
- Reservierung streichen
- nicht erschienene Reservierungen entfernen

*Ankunft Gast:*
- Abgleichen mit eventuell vorhandener Reservierung
- Zimmer zuordnen
- Preis nennen

*Abreise Gast:*
- Rechnung automatisiert erstellen
- Rechnungsbetrag vereinnahmen und in die Kasse buchen
- eventuell Rückfrage beim Kreditinstitut

*Besonderheiten:*
- Stammkunden erhalten möglichst immer dasselbe Zimmer
- Jederzeit ein Abruf der aktuellen Zimmerbelegung
- Jederzeit ein Umsatzbericht deslaufenden Monats

Meine bisherige Lösung sieht so aus:






Jedoch ist diese noch nicht richtig. Angemerkt wurde:

1. Dass "reservieren" so noch nicht möglich sei, da die Daten nirgends gespeichert werden.

2. Es entstand die Nachfrage warum jeder Kunde mindestens ein Zimmer bewohnt. Wenn er mehrere hat, sollen sich diese nicht unterscheiden.

Zu 1.: Muss hier ein mehrdimensionales Array verwendet werden, in dem jedem Zimmer dann eine Kundennummer zugeteilt wird, sofern es reserviert/bewohnt wurde?
Zu 2.: Diesen Punkt kann ich nicht nachvollziehen, da ja jedes Zimmer sowie jeder Kunde eine eigene Nummer hat. Demnach müsste es eigentlich möglich sein, jedem Zimmer einen Kunden zuzuweisen. Oder ist eine Zeitangabe wie z.B. Datum noch notwendig?


Für die Denkanstöße bedanke ich mich schon mal im Voraus.


----------



## Final_Striker (22. Dez 2012)

Wenn dem Kunden immer mindestens ein Zimmer zugeordnet werden soll, dann müssten seine Daten nach jedem Auschecken gelöscht werden, weil er dann ja kein Zimmer mehr hat. ;-)


----------



## snibbe (22. Dez 2012)

Ah, ist ja eigentlich logisch, danke  
Dann müsste ich in der Klasse noch eine Methode auschecken oder ähnlich implementieren.

Und zu dem 1. Punkt, führt da meine Überlegung bzgl. des speicherns in die richtige Richtung oder geht das anders einfacher?


----------



## AndiE (23. Dez 2012)

Bau doch Collectionen ein. Quellen dazu gibt es reichlich.


----------

