ストラタジーナム メニュー

2006年7月3日月曜日

UML中級講座 第61回 リンクアクション

5-6 リンクアクション
リンクアクションは、リンクの生成や消滅、リンク情報の読み書きを行うためのアクションです。
具体的には、ReadLinkAction、WriteLinkActionと言う2つのサブクラスで規定されておりますが、最初にその2つの共通のスーパーメタクラスであるLinkActionを解説し、その後、個々のアクションについて触れてゆきます。

5−6−1LinkAction

図 11−08

リンクの特定
LinkActionはReadLinkActionとWriteLinkActionの共通のスーパーメタクラスであり、対象のリンクを特定するための情報構造を持っています。
図11−08に示されるとおり、LinkEndDataはリンク端を意味し、LinkActionは2つ以上のLinkEndDataを持ち、それぞれが対応する関連端(図中のProperty)と関係づけられています。

入力ピン(InputPin)は、サブクラスで規定されるアクションによって使い方が変わってきます。
一例としてWriteLinkActionの場合、リンクを形成する関連端ごとに、接続対象のオブジェクトもしくは値が指定されている必要があります。

5−6−2 ReadLinkAction

図 11−09



ReadLinkActionは、対応する関連に沿って1つのリンク端へ誘導し、入力ピンに指定されていないリンク端(オープンエンドと呼びます)のオブジェクトを出力ピンに置きます。
オープンエンドにたいし、誘導可能性がなかったり、可視性が適切でない場合は、アクションのセマンティックスは定義されていません。

入力ピンは、リンク端のソース側を指定し、ターゲット側をオープン(指定しない状態)にします。
なお、3項関連以上のn項関連では、1つのリンク端をオープンにします。