Modellbasierte Entwicklung einer COBOL-Anwendung
Modellbasierte Entwicklung einer COBOL-Anwendung
Modellbasierte Entwicklung einer COBOL-Anwendung
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
48 Das Fallbeispiel »Kundenmappe«<br />
Die Attribute haben immer einen konzeptionellen Typ – dieser ermöglicht Abbildung<br />
der Attribute in ein technisches Modell, indem man den konzeptionellen Typ in <strong>einer</strong><br />
konkreten technischen Umgebung verf<strong>einer</strong>t.<br />
Ein Attribut kann mit Stereotypen genauer definiert werden. Zum Beispiel, bedeutet<br />
das Stereotyp «primaryKey», dass es sich beim Attribut um einen eindeutigen Schlüssel<br />
handelt, d. h. es ist ausgeschlossen, dass zwei Adresssätze dieselben Nummern<br />
haben können. Kann auf ein Attribut nur lesend zugegriffen werden, ist es mit dem<br />
Stereotyp «readonly» zu kennzeichnen.<br />
Der BeteiligteParteiVerwalter hat als öffentlichen Dienst, die Aufgabe zu einem Adresssatz<br />
eine beteiligte Partei zu finden. Dazu muss er prüfen können, ob eine beteiligte<br />
Partei für den Adresssatz existiert. Für den Fall, dass keine vorhanden ist, muss er<br />
in der Lage sein, eine neue beteiligte Partei zu erstellen. Wenn eine beteiligte Partei<br />
nicht konsistent ist, hat der Verwalter die Verantwortung diese zu löschen. Eine beteiligte<br />
Partei ist genau dann nicht konsistent, wenn der zugeordnete Adresssatz nicht<br />
existiert. Alle Verantwortungen, die keine öffentlichen Dienste darstellen, werden<br />
durch private Operationen spezifiziert (vgl. Abbildung 4-13). Während der Laufzeit<br />
steht eine Instanz von BeteiligteParteiVerwalter in Beziehung zu <strong>einer</strong> Instanz von<br />
der Klasse Adresssatz (als Parameter) und zu <strong>einer</strong> Instanz der Klasse BeteiligtePartei.<br />
Diese Beziehungen werden durch Assoziationen modelliert.<br />
«control»<br />
BeteiligteParteiVerwalter<br />
+ findeBeteiligtePartei(adresssatz : Adresssatz) : BeteiligtePartei<br />
- prüfeExistenz(adresssatz : Adresssatz) : Ja/Nein-Wert<br />
- erzeugeBeteiligtePartei(adresssatz : Adresssatz) : BeteiligtePartei<br />
- löscheBeteiligtePartei(beteiligtePartei : BeteiligtePartei)<br />
Abbildung 4-13 Die Steuerungsklasse BeteiligteParteiVerwalter<br />
Abbildung 4-14 betrachtet die fachliche Entität BeteiligtePartei im Detail. Das Attribut<br />
beteiligteParteiNummer stellt den eindeutigen Schlüssel für diese Klasse dar. Eine<br />
beteiligte Partei enthält einen Beschreibungstext, der einen beliebigen Inhalt haben<br />
kann. Das Attribut vermögenswert stellt das gesamte Vermögen <strong>einer</strong> beteiligten Partei<br />
dar – eine für das Fallbeispiel gewählte Vereinfachung. Neben Attributen enthält<br />
diese Entität auch eine Operation. Eine beteiligte Partei hat die Verantwortung ihre<br />
Konsistenz sicherzustellen. Die Operation prüfeKonsistenz() modelliert diese Eigenschaft.<br />
Als Rückgabetyp ist ein Ja/Nein-Wert spezifiziert. Die Zuordnung der beteiligten<br />
Partei zu einem Adresssatz ist durch eine Assoziation modelliert.<br />
Die Klasse BeteiligtePartei ist abstrakt, also nicht instanzierbar. Für das Fallbeispiel<br />
gibt es nur eine Ausprägung, nämlich die NatürlichePerson. Diese Entität erweitert<br />
die beteiligte Partei um die Attribute anrede, vorname und name. Die Werte der Att-