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

2006年6月7日水曜日

UML中級講座 第45回 CallAction

6月になって、清々しい日々が続いております(東京地方)。
今週から、リアルタイム系もしくは組込み系システムの資格制度である、OCRESのパイロット試験が開始されました。
当面、試験内容は英語のみですが、受験費用が60%ディスカウントされるそうです。

さて、本日は、呼び出しアクション( InvocationAction )の1つCallActionのメタモデルについて解説致します。

5−2−1 CallAction

CallActionは
、振る舞いを呼び起こすアクションで、CallBehaviorActionとCallOperationActionの2種類があります。
CallActionの動きとして、同期と非同期の二通りがあり、同期の場合には、戻り値を受け取るまで待機します。
図11-04のCallActionの属性、isSynchronous、が同期・非同期を示すブーリアン値で、' true ' が同期、'false' が非同期であることを示します。



図11−04


同期:
呼び起こした振る舞いが完了するまで待ちます。

非同期:
振る舞いを呼び起こすだけで、戻り値を待ちません。

【制約】
( i) 同期型のCallActionのみが、結果ピン(図11-04の 'OutputPin' メタクラス)を、持つことが可能です。
( ii ) 入力ピン(図11-04の argumentと言う役割名がついた方の' InputPin' メタクラス)の引数の数、順番、タイプ、多重度は(注*)、呼び起こす振る舞い、もしくは振る舞い特性のパラメータと一致しなければなりません。

(注*)振る舞いや操作のパラメータは、順序付きのリストとなります。