2

In Rhapsody habe ich eine Schnittstelle entworfen, die aus einer Interface-Klasse und ein paar Nicht-Member-Funktionen besteht. Diese Nicht-Member-Funktionen habe ich direkt in ein Paket eingefügt, das parallel zum übergeordneten Paket der Interface-Klasse ist. Ich möchte Code von dieser Schnittstelle erzeugen, die gut funktioniert.IBM Rhapsody: Wie werden Nichtmitgliedsfunktionen in Sequenzdiagrammen verwendet?

Aber ich habe das Problem, dass ich nicht die Nicht-Mitglieder-Funktionen für Nachrichten in Sequenzdiagrammen auswählen kann. Das liegt daran, dass ich das Paket dem Vertrag eines Ports nicht zuordnen kann und auch keine Realisierungsbeziehung zwischen einer Klasse und dem Paket herstellen kann.

Gibt es eine Möglichkeit, diese Nichtmitgliedsfunktionen für Sequenzdiagramme in das Menü "Nachricht auswählen" zu bringen?

Antwort

0

Aber ich habe das Problem, dass ich nicht die Nicht-Mitgliederfunktionen für Nachrichten in Sequenzdiagrammen auswählen kann.

Das ist beabsichtigt. Wie soll das Sequenzdiagramm aussehen? Bitte legen Sie eine Skizze bei. Ich fürchte, das würde die UML-Spezifikation verletzen.

Ein Sequenzdiagramm konzentriert sich auf den Datenaustausch zwischen Lifelines. Eine Lebenslinie beschreibt die Zeitlinie für einen Prozess. In Rhapsody, ein Lifeline stellt das Objekt eines Klassifikators.

Eine asynchrone Nachricht kann als Aufruf einer Funktion auf dem Nachrichtenempfänger (wo der Nachrichtenempfänger eine Rettungsleine ist) gesehen werden.

Ihre Nicht-Mitgliedsfunktionen gehören nicht zu einer Lebenslinie und können daher nicht als Nachricht in einem Sequenzdiagramm angezeigt werden.

Was sind die Lebenslinien in Ihrem Sequenzdiagramm?

Gibt es eine Möglichkeit, diese Nichtmitgliedsfunktionen in das Menü "Nachricht auswählen" für Sequenzdiagramme zu bringen?

Nein, weil sie keine Mitglieder eines Klassifikators sind.

+0

Die Lebenslinie, an die ich eine Nachricht senden möchte (und für die ich eine Nichtmitgliedsfunktion auswählen möchte), stellt eine Komponente dar, die eine Schnittstelle sowohl aus Elementfunktionen (aus einer Interface-Klasse) als auch aus Nicht-Membern implementiert Funktionen. –

+0

@ J.R. * "Eine Schnittstelle, die sowohl aus Member-Funktionen als auch aus Nicht-Member-Funktionen besteht" * macht für mich keinen Sinn, wenn es um UML-Schnittstellen geht. – sergej

+0

Es ist nicht unbedingt nur eine Interface-Klasse, ich spreche von einer Schnittstelle auf einer höheren/logischen Ebene (für mich kann eine Schnittstelle auch aus mehreren Interface-Klassen oder - wie oben erwähnt) aus einer Interface-Klasse und Nicht-Member-Funktionen bestehen). Am Ende möchte ich in der Lage sein, zwei Dinge zu erreichen: 1) Verwenden Sie die Methoden in Sequenzdiagramme 2) generieren Code aus der Schnittstelle –