要求定義
平成24年度シラバス
2012年1月11日
国立情報学研究所
トップエスイープロジェクト
代表者 本位田 真一
要求定義
白銀純子,位野木万里
要求工学は,通常,要求獲得,要求定義,要求検証,要求管理というプロセスから構成されるが,本講座はこのうちの定義を対象とし,要求の仕様化を取り上げる.要求工学作業が,設計や実装といったその後の作業と大きく異なるのは,第1に,その構成メンバーの多様性である.要求分析者がその共同作業者とするのは,問題領域の専門家やシステムの利用者であり,彼らはステークホルダーと呼ばれる非SW技術者である.経験も知識も,使用する言語も異なる人たちによる共同作業の現場では,予期せぬ,様々な問題が生じることになる.このことが要求工学プロセスの難しさの原因の1つとなっている.要求獲得が完了すると,要求分析者は,ステークホルダーを通して入手した,利用者のニーズや問題領域に関する知識から,ソフトウェアによる実現のための条件を定義しなければならない.これが要求仕様である.しかし,現実の問題領域は,複雑で,曖昧で,豊穣で,変化に富んでいる.このことが,ソフトウェアという,論理的で,厳密で,単純な仮想世界をその作業対象としてきたSW技術者に多くの混乱を与えることになる.要求分析者の2番目の作業は,現実世界からの要求を,正確で,完全で,矛盾も曖昧背も無い要求仕様に変換することである.これが,要求工学プロセスが難しいといわれる,もう1つの理由である.
本講座では,要求の仕様化について学び,受講者が要求工学の抱える困難さを理解し,優れた分析者のとしての扉を開くことの手助けになることを目指している.
要求工学手法については様々なものが提案されているが,現実の世界は,単一の手法によって取り扱えるほど単純ではない.要求分析者を目指す技術者は,今後,多様な手法だけでなく,ビジネス活動における力学を知り,人間関係の調整能力なども身につけてゆく必要がある.言い換えれば,要求工学は,現実世界との接点に立つ技術であり,そこでは,技術は.それを使えば問題が解決するわけではない.適切な技術を,適切に適用する必要がある.本講座では,現実世界に近い具体的な問題と場の設定を通して,それを解決するための技術と,その適用法について学習する.
本講座で扱う難しさは,要求者の意図を,設計者に正確に伝達するための要求仕様書を作成するスキルの習得である.しかし,問題領域についての知識を持ちあわせていないSW技術者に,現実世界の要求を正確に伝えるということは,容易な作業である.それは,要求仕様書を作成する分析者の,図や文章に関する表現能力に依存するとともに,設計者側の理解能力にも関連する課題である.例えば,この項のタイトルである「本講座で扱う難しさ」という日本語を理解するには,相当の時間を要するだろう.それは,理解力の問題なのか,表現力の問題なのか.これが,要求仕様書を作成する際の難しさである.
本講座では,クライアント獲得した知識や要求を仕様化し,要求仕様書にまとめあげ,評価するための技術の習得を目指す.
本講座では,要求を仕様書としてまとめるための基礎知識を学び,IEEE Std. 830-1998に基づいた要求仕様書の構成と,その品質評価法を習得する.最後に,作成されたそれぞれの成果物の発表と議論によって,技術の理解を深めることにする.
なお,本講座では, 一貫したテーマをもとに,グループ演習をとおして多様な技術の習得を目指す.
1.要求工学基礎
1.1 要求工学基本概念
2.要求仕様書
4.1 要求仕様書の構成
4.2 要求仕様書の品質
4.3 演習
3.レビュー&討論
前提知識
本講座の受講生は,UMLについての知識を習得済みとする.
第1回 要求工学概説
l 要求と要求仕様,要求工学プロセスモデル,機能要求,非機能要求
第2回 描画プログラム開発演習
l 演習(1)
第3回 要求仕様書の記述
l IEEE Std.
830-1998に基づいた要求仕様書記述
第4回 要求仕様記述
l 演習(2)
第5回 要求仕様書記述, レビュー
l 演習(3)
第6回 要求仕様書の品質および要求仕様書のレビュー
l IEEE Std.
830-1998での品質特性
l 演習(4)
第7回 要求仕様書のレビュー
l 演習(5)
第8回 成果発表
l 発表と討論
l まとめ
本講座を受講することにより,要求工学の難しさと多様さを体験し,要求分析者としての基礎技術を理解することができる.本講座を通して得られた技術は,実際の現場での経験を通して繰り返し磨きをかけることによって,本物の技術として定着するであろう.
また,本講座で得た知識は,要求分析講座をはじめとする他の講座を受講するための前提知識となる.
本講座では,次のツールを使用する.
・ ワードプロセッサー 又はText エディター
要求仕様書の作成
l 描画プログラム開発演習
l 要求仕様書作成
l 要求仕様書の品質検査
要求仕様書,グループ作業での貢献度などを総合して評価する.
(1) IEEE, Recommended Practice for Software Requirements Specifications. Std
830-1998, 1998.
(2) Jackson, M. Software Requirements and Specifications: A Lexicon of
Practice, Principles and Prejudices. Addison Wesley, 1995.
(邦訳:ソフトウェア要求と仕様,新紀元者,2004)
(3)
Robertson,
S. and Robertson, J. Mastering the Requirements Process, AddisonWesley,1999.
(邦訳があるが,原書の方が良い)
(4)
Jacobson,
I. et al. Object-Oriented Software Engineering, Addison Wesley, 1992.
(邦訳は,絶版)
(5) Cockburn, A. Writing Effective Use Case, Addison
Wesley, 2001.
(6)
玉井哲雄:ソフトウェア工学の基礎,岩波書店
2004.
その他,必要に応じて研究論文を紹介します.