ユースケースシナリオ
シナリオを用いる設計技法で、読者にとってより馴染みのあるのはユースケースシナリオであろう。ユースケースとは「外部から見て分かるシステムの要求を記述」したものである。この場合「外部」とは利用者だと考えてよい。一般的に、ユースケースシナリオは、ITシステムを利用するユーザと、ITシステムとの間の相互作用を時系列で記述したものである。
ユースケースシナリオはITシステムに対する機能要求を記述するために用いるものと認識されている。しかしながら「ITシステム」をビジネス全体に、「アクター」を取り引き相手だと置き換えて、ビジネスユースケースシナリオを記述するという考え方も成り立つ。このような視点でシナリオを書くことで、業務分析に利用することもできる。
通常、ユースケースシナリオには「シナリオはステップごとに記述する」「事前条件や事後条件を定める」「基本パスの他に代替パス(例外処理)も書ける」「必要によっては、繰り返しや条件分岐も記述する」という構造がある。
先ほどのCarrollの方法だとシナリオはまさに普通の文章であった。これに比べると、ユースケースシナリオはプログラミングにおける手続きの記述に似ている。そのため、非技術者にとっては若干敷居が高くなる。
業務分析においてビジネスユースケースシナリオを作成することは、いきなりUMLでモデリングを始めるよりもやりやすい。とはいえ、論理的な構造を正確に記述できるようになるためにはそれなりの訓練が必要となる。
SBVA法を着想するに至るまで
ここまで述べてきたことの論点を整理しよう。
ITシステムを開発するために、業務分析をすることは業務を深く理解するために重要である。また業務に精通する非技術者にとって、抽象度の高いモデリング作業に参加するのは難しい。
自然言語でシナリオを記述する業務分析は非技術者にとっても馴染みやすいが、完成したシナリオからITシステムの要件定義にまで落とし込む道筋が明らかでない。また、ビジネスユースケースシナリオは、システム化との整合性も高いがやはり非技術者が簡単に作成できるものではない。
筆者は非技術者である利用者自身が、業務分析およびその先のシステム仕様化に主導的な立場で関わることが、ユーザにとって役に立つITシステム開発を成功させる早道だと考える。理想を言えば、ITシステムを欲するユーザが、UMLなどを使って最初から本質を捉えた抽象的なモデルを作成できるのが望ましい。しかし、現状では、このような方法が一般的になることはなかなか難しそうだ。
このような問題意識のもと、非技術者にとっても扱いやすい「シナリオ」を用いて、ITシステムの機能要件を体系的に導き出す方法論を作れないだろうかと考えて考案したのが、SBVA法なのである。
SBVA法の概要を図3に示す。SBVA法は大まかに3つの作業ステップ「1. 業務手順書の記述」「2. 業務鳥瞰図の作図と編集」「3. ユースケース図の作成」からなる。
「1. 業務手順書の記述」では、業務の「なま」の姿を自然言語によるシナリオで記述する。
「2. 業務鳥瞰図の作図と編集」ではシナリオから業務の全体像を示す鳥瞰図を作成し、この図解を編集する作業を通して本質的な業務の構造を抽出する。
「3. ユースケース図の作成」では編集が完了した業務鳥瞰図をUMLのユースケース図に変換する。
さて次回は、このSBVA法のもう一方の特徴である図解化の話題を中心に、SBVA法のコンセプトを説明していこう。
最後に、参考文献として「中鉢欣秀, ほか. シナリオの図解化によるユースケースモデリング. 東京 : 電子情報通信学会論文誌、Vol.J88-D-I,No.4,pp.813-828, 2005.」「要求開発アライアンス. 要求開発:価値ある要求を導き出すプロセスとモデリング. 東京 : 日経BP社, 2006.」「J.M.Carroll. シナリオに基づく設計. 東京 : 共立出版, 2003.」「G.Schneider. ユースケースの適用:実践ガイド. 東京 : ピアソン・エデュケーション, 2000.」をあげておく。 タイトルへ戻る