アクティビティの戻り値をシミュレーションで利用

<< 目次を表示 >>

ページ位置:  シミュレーション > 振る舞いモデルのシミュレーション >

アクティビティの戻り値をシミュレーションで利用

アクティビティ要素は、その処理の結果得られる出力を、戻り値として生成することができます。この戻り値を処理の次の内容にどのように渡して利用するのか、シミュレーションで利用できます。以下の3つのパターンが考えられます。

 

 

アクティビティの戻り値を渡す

(この表現方法は、Enterprise Architectのシミュレーションのための固有の方法です。)

アクティビティが戻り値を持つ場合に、アクティビティ要素から次のアクション要素のアクションピンにオブジェクトフローの接続で結びます。

 

 

このような表現方法をした後、アクティビティ要素の子要素の中で戻り値をJavaScriptで設定すると (例: this.return=12;) シミュレーション時にアクションピンにその値が渡されます。

 

 

アクティビティパラメータで渡す

アクティビティ要素がアクティビティパラメータを保持している場合は、その値が対応するアクティビティノードに渡され、その値はその後オブジェクトフローを経由して次のアクション要素が持つアクションピンに渡すことができます。

 

 

ローカル変数サブウィンドウでは、アクションピンに渡されるそのパラメータの既定の値を確認することもできます。アクティビティ要素の子アクションの中でJavaScriptを利用して値を更新することで、渡される値を変えることもできます。以下はその例です。

this.ActivityParameter1=20;

 

 

振る舞い呼び出しアクション

アクティビティ要素は処理の中で複数回利用することもできます。その場合、その利用するごとにアクティビティのインスタンスを別々に分けたいと思うかもしれません。このような場合には、振る舞い呼び出しアクション要素を利用することで、アクティビティのインスタンスを作成し、振る舞いを実行することができます。アクティビティパラメータの入出力は、振る舞い呼び出しアクションの入出力のアクションピンに対応づけられます。

 

 

処理の一部にアクティビティ要素を含む内容をシミュレーションする場合には、振る舞い呼び出しアクションの入力となるアクションピンに、入力値(上の図の例ではAction1のピン)を渡すと、アクティビティ要素のインスタンスが生成されます。この振る舞い呼び出しアクションはアクティビティの振る舞いを実行しますが、その際に入力ピンの内容は対応するアクティビティパラメータの値として扱われ、出力ピンは出力アクティビティパラメータの値が渡されます。アクティビティの戻り値はアクションピンを通して、オブジェクトフローで接続されている次のアクションに渡されます。アクティビティ要素内に定義するアクティビティ図として処理を記述しますが、アクション要素の効果として、以下のように、JavaScriptを利用してアクティビティ要素の入出力の値を制御することができます。

 

sim.buf=this.inParam;

this.outParam=sim.buf + 11:

 

 

参照: