[Prev] [Next] [Contents]
M-base: Application Development Environment based on
``a Domain model ≡ a Computation model'',
``Analysis ≡ Design ≡ Programming''

4 使用例




 ここでは,3節の開発環境の概要で用いた「会議開催システム」を 例題システムとしてとりあげて, M-baseの使用例を紹介する.




M-baseを起動すると 図4.1のようなウィンドウが開く.



図4.1:初期画面


 図4.2の画面で,対象システムの名前, 機能(シナリオ)の登録等を設定することが出来る. 機能の登録は, ``New Scenario''ボタンをクリックし, 機能名を入力することにより行なえる. ここでとりあげた会議開催システムでは,会議の予約,キャンセル, 予約状況の参照を設定した.



図4.2:機能(シナリオ)一覧


 図4.2の機能(シナリオ)のうち,``予約''を選択し, ``Select Scenario''ボタンをクリックすると, 図4.3のウィンドウが開く.
 このウィンドウは,動的モデルを作成するものである. 上部にあるモードは左から,``選択'',``オブジェクト'', ``メッセージ'',``アクタ''である.
 また,下部のキャンバスで動的モデルを作成する.



図4.3:動的モデル作成画面


 まず,アクタとオブジェクトの配置を行なう. それぞれ,上記のアクタ,あるいはオブジェクトのモードを選択して キャンバス上の適当な位置でクリックすることによりその位置に 各々のアイコンが表示される. オブジェクト名は,アイコンの下の入力部で設定できる. 図4.4は,アクタと事務局オブジェクトを配置しているところである.



図4.4:オブジェクトの配置


 ``選択''モードを選択して,オブジェクトのアイコンをダブルクリックすると, オブジェクトの詳細設定画面が開く. 図4.5は事務局オブジェクトのアイコンを変更しているところである.



図4.5:オブジェクトの詳細設定画面


 オブジェクトの配置が終ると,オブジェクト間のメッセージを 決定する. メッセージのモードを選択して,メッセージの送り元と送り先オブジェクト をクリックすると選択されたオブジェクト間に結線される.
 図4.6はアクタから事務局オブジェクトへの予約メッセージを 設定しているところである.



図4.6:メッセージ交信の抽出


 すべてのメッセージの抽出が終ると, 次は,メッセージの送信順番を決めることによって, メッセージ変換列を作成する.
 ``選択''モードで,メッセージ部分をダブルクリックすると, 図4.7のように``Message:予約''といったウィンドウが 開く.ここで, メッセージの送信順番を入力する.



図4.7:メッセージ変換列の作成


 これらの作業をすべて終了すると,図4.8のようになる.



図4.8:会議開催システムの最終的な動的モデル


 動的モデルの作成が終了したら,オブジェクトの詳細化を行なう. 図4.9は事務局オブジェクトの詳細設定ウィンドウである.
 このウィンドウの構成は, 上部は左側から,オブジェクトのアイコンと名前, 属性一覧,メソッド一覧, 左下に選択されたメソッドの意味定義, 右下に自動生成されたスクリプトが表示されている.  なお,この詳細設定ウィンドウは図4.5と基本的には同じであるが, さらに,メソッド関連の意味定義とスクリプトの表示がされている.



図4.9:オブジェクトの詳細化





 図4.8の動的モデル作成ウィンドウの``Simualtion''メニューを 選択すると,シミュレーションが開始する. シミュレーションを開始すると,図4.10のようなウィンドウが開く. 大きなウィンドウはイベントトレース図であり, 右下の小さなウィンドウは,シミュレーションの制御用ウィンドウである.



図4.10:シミュレーションの初期画面


 ``Start''ボタンをクリックすると,シミュレーションを開始し, アクタから事務局にメッセージが送信され,その様子がイベントトレース図中に 表示され,意味定義が挿入される.

 さらに,``Next''ボタンをクリックすると,事務局から会議室予約のメッセージが会議室管理に送られる. 図4.1はその様子を示している.



図4.11:シミュレーション開始


 このような動的モデルの作成とシミュレーションを繰り返して行ないながら アプリケーションを構築していく.

[Prev] [Next] [Contents]

Software Engineering Lab., Meiji Univ.