2013-07-28 9 views
5

Ich habe eine Aufgabe, ein Klassendiagramm für eine bestimmte Software zu erstellen. Jetzt identifizierte ich die wichtigen Klassen und verknüpfte sie und sie sind in Ordnung.Zugriffsebene im Klassendiagramm anzeigen

Die Sache ist, dass ich zwei verschiedene Klassen mit einer anderen gleichen Klasse verbunden haben, aber mit unterschiedlichen Zugriffsstufen. Zum Beispiel habe ich Admin und Clerk Klassen mit Video Klasse zugeordnet. Die Clerk kann nur anzeigen, während Admin in der Lage ist, anzuzeigen und zu bearbeiten. Kann ich diese Unterscheidung im Klassendiagramm zeigen?

+0

Ich würde denken, solche * Details der Implementierung * sind über den Rahmen eines Klassendiagramms, nicht wahr? –

+0

@retailcoder Das denke ich auch, aber nicht ganz sicher. Ich dachte, es könnte etwas sein und ich habe es jetzt nicht getan. –

+3

Normalerweise sollten Sie dies nicht in einem Klassendiagramm anzeigen, aber Sie könnten abhängig davon, wie es modelliert wird. Wenn der Administrator und der Clerk beide Methoden haben, die das Video akzeptieren, auf das reagiert werden soll, dann könnte die Anwesenheit/Abwesenheit der relevanten Methoden in diesen Objekten ihre Berechtigungen ausdrücken. Dies könnte weiter unter Verwendung von Schnittstellen definiert werden, die die Berechtigungen darstellen, die durch die geeigneten Akteure implementiert werden. Ich würde es vorziehen, mehr von der AOP-Route für diese Art von Autorisierung zu verwenden, wenn dies mehr mit der Geschäftslogik übereinstimmt. –

Antwort

1

Ja, Sie können dies in einem Klassendiagramm anzeigen, wenn die Klassen tatsächlich Teil der Problemdomäne sind. Wenn Sie diese Klassen als Teil der Lösungsdomäne modellieren, sollten Sie dies nicht tun. Für mehr zu diesem Thema, lesen Sie bitte den ausgezeichneten Artikel von Leon Starr, genannt How to Build Articulate Class Models and get Real Benefits from UML.