【チュートリアル】 - 分析編

bn_sce

3. モデル・図の作成
3.2 シナリオ(scenario)の作成
jun 今度は、ユースケースを実行したときの流れを文章で表してみよう。これを「シナリオ」というんだ。シナリオは、これから実際にオブジェクトやクラスを考えていく上で大事な材料のひとつなんだよ。
 
<< シナリオ >>
◆「シナリオ」とは?
  • ユースケースの実例(インスタンス)。
  • ユースケースを実行したときの具体的な流れを文章で表したもの。
  • 各ユースケースは、複数のシナリオの集合として表現される。
  • 必要なクラスやオブジェクトを抽出するもとになる。
  • 実例を通して、システムの動きを具体的に表現できる。
◆「シナリオ」の種類

シナリオには、次の2種類がある。

  • 基本シナリオ:    すべて問題なく動作する事例
  • 2次シナリオ:    基本シナリオに対する例外

 

chen シナリオには、あるユースケースが何も問題なく動作する事例を記述した「基本シナリオ」と、この基本シナリオに対する例外の「2次シナリオ」の2種類があるのですね?
jun そうだよ。シナリオの書き方としては、ひとつのユースケースにおける処理の流れを、具体的な名前や値を入れた文章で書いていけばいいから、それほど難しくはないよ。

27_TIT_1

chen ユースケース図の「注文を登録する」ユースケースについて、次のような基本シナリオを作成してみました。

図3.2.1 Chen君が作成した「基本シナリオ」:「注文を登録する」ユースケースのシナリオ

wd_14.gif (41029 バイト)

  
chen 「注文を登録する」ユースケースを実行すると、注文を受けた商品がどこの配送センターで扱われているかによって、処理の流れが変わってきます。(1)のシナリオは、注文された商品はすべて指定配送センターで扱われていて、在庫もある場合です。商品は翌日の発送になります。(2)のシナリオは、注文された商品の中に、指定配送センターだけでなく、別の配送センターで扱われている商品も含まれていて、在庫がある場合です。別の配送センター扱いの注文商品がある場合、商品は定期便でいったん指定配送センターに集められます。そして、その翌日、指定配送センターから配送されます。
 

jun

 

基本シナリオとしては、こんな感じでいいだろう。では、2次シナリオもひとつ書いてみようか。2次シナリオは、基本シナリオに対する特殊な例や例外について考えてみればいいよ。
 

図3.2.2 Chen君が作成した「2次シナリオ」:「注文を登録する」ユースケースのシナリオ

wd_15.gif (24932 バイト)

chen これは、注文された商品の在庫がない場合についてのシナリオです。

 

ill_22

 

jun この場合はその商品に対して注文ができないわけだから、2次シナリオと言えるね。他にも、山田さんが顧客登録されていないケースや指定配送センターが指定されないケースなどが考えられるね。
chen はい。ところで、シナリオは、ひとつのユースケースに対してどの程度作成する必要があるのでしょうか?
jun 分析の段階では、基本シナリオを中心に作成するんだよ。そして、新しい振る舞いが出てこなくなったらシナリオの作成を終了していいと思ってくれればいいよ。設計の段階では、エラー処理なども考えなければならないから、2次シナリオがもっとたくさん必要になってくるよ。
chen 分かりました。新しい要素が見つからなくなる程度を目安にすればいいのですね。
jun そうだよ。また、シナリオを分析しているうちに出てきたユースケース記述のもれなどは、ユースケースのモデルやドキュメントにに反映しておくようにしよう。
chen はい、分かりました。
 

bn_note04

jun では次に、シーケンス図を作成しよう。

 

Prev. Next Home Top