3 Stimmen

UML-Sequenzdiagramm Eigenschaft aufrufen

In meiner Anwendung habe ich eine Document-Klasse und eine DocumentFact-Klasse. Die DocumentFact Klasse enthält Methoden, die mehrere Dokumente aus der Datenbank holen. Diese Dokumente werden in einem datatable oder dataset gespeichert. Beide (datatable, dataset) sind private Mitglieder der documentfact Klasse. Auf sie kann über Eigenschaften zugegriffen werden.

Meine Frage ist nun: Ist es in einem Sequenzdiagramm erlaubt, eine Eigenschaft wie diese aufzurufen:

Actor      Web interface    DocumentFact          Database
  |          |                 |                      |
  |input     |                 |                      |
  |------->  |  GetDocuments   |                      |
  |          |---------------->|                      |
  |          |                 | ExecuteSelectQuery() |
  |          |                 | -------------------->|
  |          |                 |                      |
  |          |                 |      Bool            |
  |          |                 | <--------------------|
  |          |                 |                      |
  |          |                 |   GetDataSet()       |
  |          |                 | -------------------->|
  |          |                 |                      |
  |          |                 |    DataSet           |
  |          |                 |<---------------------|
  |          |                 |                      |

Dabei ist GetDataSet eine Eigenschaft. Ist dies korrekt? Und wenn nicht, wie kann ich das richtig machen?

Anmerkung: Dies ist nur ein Teil meines Sequenzdiagramms, der Rest ist nicht relevant.

0 Stimmen

Wie kann ich sehen, was bearbeitet wird?

0 Stimmen

Klicken Sie auf die Worte "vor einer Stunde" in "vor einer Stunde bearbeitet".

5voto

Aaron Maenpaa Punkte 112919

Wichtig ist, dass die UML keine formale Notation ist. Sie können also tun, was immer Sie für sinnvoll halten. Wenn etwas nicht klar ist (oder Sie zu viel darüber nachdenken müssen, wie Sie es darstellen), sollten Sie wahrscheinlich eine Anmerkung hinzufügen.

Bei Sequenzdiagrammen habe ich es als sehr hilfreich empfunden, die Meldungen (oder Gruppen von Meldungen) zu nummerieren und einen laufenden Dialog (formatiert als nummerierte Liste) zu führen, in dem erklärt wird, was vor sich geht (... und warum man das so macht). Sie müssen bedenken, dass das Diagramm nicht für sich alleine steht, sondern in einen größeren Dokumentationskorpus integriert werden sollte, daher ist es nicht wirklich wichtig, wie eine Eigenschaft konkret dargestellt wird. Wählen Sie einfach eine Darstellung und erklären Sie, dass GetDataSet eine Eigenschaft von Database (oder was auch immer :) ist.

0 Stimmen

Sie meinen also, wenn ich den Nachrichten eine Nummer gebe und in meiner Dokumentation erkläre, dass die Nummer 6 (zum Beispiel) ein Eigenschaftsaufruf ist, reicht das aus?

0 Stimmen

Ja, und sie wird mit ziemlicher Sicherheit klarer sein als die Darstellung, die Sie allein für einen Immobilienanruf wählen.

1voto

batbrat Punkte 5055

Ich stand vor einem ähnlichen Problem, als ich meinen Entwurf dokumentierte. Ich habe einfach den Text "Eigenschaft" unter dem Methodenaufruf (unter dem Pfeil) hinzugefügt. (Ich habe nicht herausgefunden, wie man das in der UML richtig macht.) Das ist zwar nicht der UML-Standard, aber soweit ich weiß, hat das den Punkt gut getroffen. Natürlich kann es sein, dass das für Sie nicht gut funktioniert. In diesem Fall sind Sie mit Standard-UML besser dran.

0voto

rpattabi Punkte 9414

Sie können die Eigenschaft mit Stereotyp anzeigen. Zum Beispiel, wenn DataSet die Eigenschaft ist, und Sie den Getter aufrufen, verwenden Sie <<get>> Stereotyp. Es würde also wie folgt aussehen

     DataSet <<get>>
--------------------->

Ich bin nicht sicher, ob dies in der UML-Spezifikation steht. Aber dies entspricht dem Vorschlag von Scott Ambler in seinem ausgezeichneten Die Elemente des UML 2.0-Stils .

Er empfiehlt außerdem, die Stereotypen nach dem Namen beizubehalten.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X