2016-03-21 9 views
0

Wie kann ich dieses UML-Klassendiagramm verbessern und welche Fehler habe ich gemacht?Wie verbessert/bearbeitet man in diesem UML-Klassendiagramm?

Ich bin wirklich verwirrt über die Beziehung zwischen Expense und Category, weil Category und Expense selbst existieren können: Sie können Expense registrieren und nicht einer Kategorie zuweisen, oder das Gegenteil tun, können Sie neue Kategorien hinzufügen Kategorienliste und so weiter ...

Benötige ich wirklich separate Listenklassen?

enter image description here

+0

Wenn Sie die Semantik von CategoryList erklären, wäre es möglich, eine sinnvollere Antwort zu geben. –

Antwort

1

Ich würde nur Ihre Category der Kategorie Klasse machen und diese löschen. Ich kenne Ihre Domain nicht, aber unter der Annahme, dass eine Ausgabe einer oder mehreren Kategorien zugeordnet werden kann, können Sie dies durch Hinzufügen einer Multiplizität klären. Sie sollten auch die freigegebene Komposition (Hohldiamant) löschen, da sie Ihrem Modell keine echten Informationen hinzufügt.

bearbeiten Nach Ihren Kommentar würde ich es wie folgt Modell:

enter image description here

Die Darstellung der Kategorie als Liste wäre Aufgabe einiger Anzeigen oder Steuerung sein, die bestehenden Kategorien darstellt. Man könnte sich Ihre CategoryList-Klasse als solchen Controller vorstellen.

+0

Die Hauptidee war, dass der Benutzer eine Kategorie aus einer Kategorie auswählen kann, um sie dem Aufwand zuzuordnen, oder er kann diesen Schritt überspringen, so dass Ausgaben ohne Kategorien existieren könnten und ein Aufwand nur einer Kategorie zugewiesen werden könnte. "Sie sollten auch die gemeinsame Zusammensetzung (Hohldiamant) fallen lassen" - sollte ich einfach die Assoziation verwenden? – CrushJelly

+0

Sie meinen, es gibt mehrere Listen, oder ist es nur eine Liste mit allen Kategorien? –

+0

Es gibt eine Liste mit allen Kategorien, Sie können eine Kategorie auswählen, eine neue hinzufügen und auswählen. – CrushJelly