ユースケースの目的は今の仕事と対象システムの範囲で区切る

ユースケースの目的を探すとき、「主アクターは本当は何を望んでいるのか」と問うだけでは、目的を上へたどるのを止められない。「生きるために稼ぐ」「知的好奇心を満たす」「社会貢献を果たす」までたどれても、今回必要なシステムの振る舞いや完了条件は決まらない。

要求分析のユースケースで目的のレベルを考えるなら、「この場面で、このシステムから何を得られれば、ひと仕事を終えられるか」と問う。Cockburn の Writing Effective Use Cases の草稿でも、「主アクターが本当に望むもの」という問いには「そのシステムから、今」という限定がある。細かな操作を目的として書いてしまったときに、利用者にとって意味のある仕事まで引き上げるための問いである。

たとえば経費精算では、「金額を入力する」は仕事を進めるための操作で、「立て替えた交通費の精算申請を済ませる」は一区切りの仕事になる。その上には承認や振込まで含めた「立替金を回収する」があり、さらに「生活に必要なお金を確保する」へとつながる。

申請を受け付けるシステムが対象なら、「精算申請を済ませる」が利用者の目的の候補になる。申請が受け付けられれば、申請者はいったん別の仕事へ移れるからだ。経理部門全体の業務を対象にするなら、承認や振込まで含む目的も検討できる。同じ主アクターでも、対象範囲が変われば、扱う目的の範囲も変わる。

目的を上へたどる問いと、完了を具体化する問いを対にすると区切りやすい。「それをすることで何を達成したいのか」で操作から目的へ進み、「今回は何がどうなれば完了と言えるのか」で到達点を確かめる。上位の動機は背景として残し、今回記述する目的には、対象システムとの相互作用で達成を判断できる区切りを置く。

これは 要求分析のユースケース での粒度の話であり、人生の究極的な目的を発見する手順ではない。コンセプトの粒度を目的から考える 場合とも、何を一まとまりとして説明したいかを定めてから境界を選ぶ点でつながる。

Alistair Cockburn, Writing Effective Use Cases, 1999年草稿、PDFの125–126ページ。

https://people.scs.carleton.ca/~jeanpier/5104F19/T2-%20The%20Stakeholder%20Perspective/Cockburn-EfectiveUseCases.pdf#page=125

#requirements #use-case