ich möcht in einem UML Use Case die Fälle einer Benutzerverwaltung darstellen. Ich bin mir allerdings nicht sicher wie man korrekterweise folgende Fälle darstellt
Benutzer darf sich einloggen
Benutzer darf nur seine eigenen Daten verändern wenn er eingloggt ist
Benutzer darf nur Daten anderer Benutzer verändern, wenn er die Rechte dazu hat
nicht unbedingt komplett hilfreich, aber ich will mal was sagen :
was soll man denn bitte aus den Informationen ‚Benutzerverwaltung‘ + ‚Benutzer darf sich einloggen‘ an Werten für die Welt erschaffen?
da müssen doch wohl die einfachsten Beispiele die es gibt herhalten können,
wie man dann Bedingungen formuliert, ‚nur wenn eingeloggt‘ usw., das kann ich nicht sagen,
aber das muss sich doch in den einfachsten Regeln dazu ganz genau finden lassen, ohne Regeln/ Tutorial kann man eh nicht mit UML anfangen
(im Wiki-Artikel findet ‚Bedingung‘-Textsuche auch eine Stelle)
nebenbei immer etwas wunderlich, wie UML thematisch in ein Java-Forum passen sollte, aber bitte,
gut wenn hier überhaupt etwas los ist
passt einerseits ein wenig, als dass es da auch um UML für Login geht,
noch interessanter finde ich aber, dass das Thema dort geschlossen wurde
„Questions on Stack Overflow are expected to relate to programming within the scope defined by the community.“
edit: spezielle UML-Foren, besonders auf deutsch, sind freilich auch so rar wie leer, da würde ich auch nicht hinwollen
[QUOTE=SlaterB]nicht unbedingt komplett hilfreich, aber ich will mal was sagen :
was soll man denn bitte aus den Informationen ‚Benutzerverwaltung‘ + ‚Benutzer darf sich einloggen‘ an Werten für die Welt erschaffen?
[/QUOTE]
Naja erst einmal ist „einloggen“ ein Anwendungsfall
Ja schon klar nur wird jetzt User → Login ---- „include“ —> „anlegen“ dargestellt? Oder User ----> „anlegen“ — „include“ —> „login“… und User —> „bearbeiten“ — „include“ —> „login“.
Wie es korrekt lauten müsste da wäre ich z.B. dran am überlegen?
Naja vielleicht mal eine Anregung eine Forum für „UML“ / „BPMN“ etc. einrichten. Ich selber beschäftige mich mit Java. Deshalb hab ich es in „Allgemein“ gestellt.
Wundert dich das Slater??? IT und Deutschland passte doch noch nie zusammen
Benutzer darf sich einloggen
Actor: Benutzer → Use Case: Einloggen
Benutzer darf nur seine eigenen Daten verändern wenn er eingloggt ist
Actor: Benutzer → Use Case: Eigene Daten ändern
Die Vorbedingung „muss eingeloggt sein“ wird nicht dargestellt. Das ist nicht im Focus des Use Case-Diagramms. Das gehört in eine hinter dem Use Case liegende Beschreibung/Diagramm (z.B. ein Aktivitätsdiagramm).
Benutzer darf nur Daten anderer Benutzer verändern, wenn er die Rechte dazu hat
Das sieht nach einer Spezialisierung des Benutzer-Actors aus, z.B. Benutzer-Admin. Dann wäre es:
Actor: Benutzer-Admin → Use Case: Benutzerdaten pflegen
Zusammengefasst: Im Use Case Diagramm wird dargestellt: „Wer macht was“. Das „Wie“ wird in anderen Diagrammen näher spezifiziert.
Ich hab mir es mal angeschaut meine Frage (Interesse) diesbezüglich wäre dann schon ob ihr es auch so aufbauen würdet? Wie sieht es mit den Use Cases aus? Ich für meinen Teil wäre mir z.B. nicht sicher ob man ein Use Case „CRUD Managed xyz“ korrekt schreibt oder ob man CRUD jeden Case für sich betrachtet. Sprich jeweils einen Case für Create, Read, Update und Delete macht.
meine persönliche Sicht, falls noch nicht klar, sollte mit
[QUOTE=SlaterB]
was soll man denn bitte aus den Informationen ‚Benutzerverwaltung‘ + ‚Benutzer darf sich einloggen‘ an Werten für die Welt erschaffen?[/QUOTE]
eigentlich ausgedrückt sein,
man kann sinnlose Bilder malen, oder es auch sein lassen, und fertig,
außerhalb einer entsprechenden Uni-Vorlesung habe ich das auch quasi noch nie irgendwo gesehen
dass du daran, ich vermute aus ähnlicher Notwendigkeit, Interesse hast, ist verständlich,
aber hinsichtlich ‚ob ihr es auch so aufbauen würdet‘ vielleicht andere Formulierungen überlegen
[QUOTE=SlaterB]man kann sinnlose Bilder malen, oder es auch sein lassen, und fertig,
außerhalb einer entsprechenden Uni-Vorlesung habe ich das auch quasi noch nie irgendwo gesehen
[/QUOTE]
Erst einmal mit Uni hast du recht. Im übrigen: Ok, aber wie gehst du dran wenn du eine komplexe Aufgabe bekommst, von der du selbst nicht sehr viel Erfahrung hast. Benutzt du kein UML? Probierst du es mittels Try & Error? Dieses zumindest interpretiere ich aus deiner Aussage.
Benutzer darf nur seine eigenen Daten verändern wenn er eingloggt ist
Benutzer darf nur Daten anderer Benutzer verändern, wenn er die Rechte dazu hat[/QUOTE]
ist nie zu unterschätzen, reicht gegenüber Dummy-Bildern a la
Bild
[spoiler][/spoiler]
völlig
auch von komplexeren Beispielen a la gerade mal herausgesucht
Bild
[spoiler][/spoiler]
verspreche ich mir nicht viel,
eine Skizze hier und da X zu Y zu Z schadet nicht, aber auch durch einen Übersichtstext ‘es gibt X, Y und Z’ zu ersetzen ;),
Details sind darin unnötig, kann man an jeweiliger Stelle nachlesen,
UML-Klassendiagramme kommen dem ja näher, jeweils ein dicker Text-Block, simple Vernüpfungen
womöglich sind meine Projekte dafür zu simpel aufgebaut,
Error habe ich jede Menge, aber keine für die ich Schaubilder vermisst hätte
kleiner Tipp aus der Praxis: für Entwickler sind diese Use Cases völlig nutzlos und werden auch nicht benutzt. Keiner braucht diese Bilder mit einem Strichmännchen, einem Oval einem Rechteck wo irgendwo steht „User bohrt in der Nase“.
Ehrlich gesagt: diesen Teil vom UML habe ich kapiert - und ich kenne auch niemanden, der diese Nonsens Bilder in irgendeiner Form nützlich findet; mich würde mal interessieren ob jemand hier schon mal was nützliches damit gemacht hat…
Ich versuche es gerade. Hatten in der letzten Woche mehrere Gespräche über eine neue Software, und ich bin gerade daran, die Vorschläge und Ideen festzuhalten. Bei einfachen Fällen bekommt man hier eine „ganz ordentliche“ Übersicht welcher Nutzer was darf… Aber die hätte ich in einer Tabelle auch. Ich finde es persönlich gerade genau so nützlich wie „machen wir mal eine Mind Map“. Vielleicht ist ein Vorteil, dass es auch den Kollegen die Text eh überfliegen/überblättern ins Auge springt. Andere UML Diagramme halte ich für sinnvoller.
Das komplexe Beispiel von SlaterB ist gerade so ein bisschen mein persönlicher Horror geworden.
Naja, die Use-Case Diagramme sind ja auch nicht für die Entwickler da, sonder dafür mit dem Kunden abzustimmen was eigentlich gemacht werden soll. Und da erleichtert eben ein Diagramm meist das Verstehen, weil der Kunde sich mit dem Denken wie ein Programm aufgebaut ist eben nicht auskennt aber trotzdem überprüfen muss wie der Ablauf aussieht.