Part9は,業務におけるシステムの「利用方法」をとらえました。Part10では,その事前条件と事後条件,入出力の基本フローを定義します。そして,システム利用者の立場で入出力データの構造を明確にします。
Part10は,演習編の8回目です。Part9からは,業務レベルではなく,システムレベルのモデリングを解説しています。システムレベルでは,業務要求からシステム要求を論理的に導くために,業務の構成要素としてシステムをとらえます。
Part10の演習の目的は,システムの利用方法であるユースケースの範囲を明確にすることと,システムで取り扱うデータを明確にすることです。具体的な作業として,演習では「ユースケース図」のユースケース定義と「データ図」を作成します(図1)。
Part9の最後では,理想的にはこうありたいというシステムから,現状を考慮した現実的なシステムへ,システムの範囲を見直すことについて解説しました。ただし,システムの範囲を見直した後のユースケース図を示さなかったので,今回はサンプルとして図2に中古車受注システムの見直し後ユースケース図を示します。
ユースケースの範囲を明確化
Part10の1つ目の演習は,構造化した文章で,システムの利用方法であるユースケースを定義することです。Part9は,システムの範囲をユースケース図で明確にしたとは言え,ユースケース図はシステムの概要を表しているに過ぎません。
今回は,ユースケース図における個々のユースケースを定義することで,システムの範囲をより明確にします。サンプルを図3に示します。
ユースケースを定義する要素としては,「○○を××する」という形式で表現するユースケース名,および,ユースケースの実行前後の条件である事前条件と事後条件,入出力を表現する基本フローを設定しました。事前条件や事後条件が必要なければ,特に記述しません。例えば図3の「在庫を検索する」というユースケースでは,事後条件を記述していません。
ユースケース名は,ユースケース図のユースケース名と同じです。例えば図2では「在庫を検索する」,「顧客を登録する」,「受注を登録する」,「在庫を引き当てる」という4個のユースケースがありますので,図3でも4個のユースケースを定義しています。
なお実際の開発業務では,個々のユースケースに識別子を割り当てて管理することが通例です。例えば「UC01」,「UC02」などを割り当てます。