高品質な要求仕様の定義のためのUMLモデリングとプロトタイプの段階的な自動生成の研究

 
小形 真平
信州大学 工学部 情報工学科 助教


[背景]ソフトウェア開発における要求分析の重要性の高まり
[問題]顧客からの要求漏れや顧客ー開発者間の誤解
[貢献]要求仕様を効率的かつ段階的に洗練する手法の提案

開発者は,大規模化・複雑化するソフトウェアシステムを顧客の要求を満たすように効率的に開発しなければならない.しかし,要求分析の失敗を主な理由として,手戻りによる工程の遅延や総費用の増大が生じ,多くの開発プロジェクトが失敗している.

この失敗は,「要求漏れ」や「顧客や要求分析者,テスト計画者等の間の要求の誤解」に起因する.そのため,早期段階から彼等が要求に対する共通認識を得て,十分なV&V(Validation & Verification)が行えるように,分析工程から実装工程まで一貫した仕様の記述方法やV&Vの支援は必要であるが,その研究は不十分である.

ところで,MDA(Model Driven Architecture)は,システムの振舞いや構造の仕様をUML(Unified Modeling Language)モデルとして作成し,分析や設計の工程に応じて段階的に詳細化することにより,要求仕様を満たす製品を開発しやすいことが期待される手法である.しかし,顧客は一般にソフトウェア開発の知識に乏しく,要求は曖昧かつ不完全になりやすいため,分析者はその要求を十分かつ厳密に仕様化することは困難である.この問題に対し,準形式的な言語であるUMLは,分析者が要求仕様を繰り返し洗練して厳密な仕様を徐々に作り上げるプロセスへの利用に適するが,非形式な自然言語を用いる要素(アクティビティ図のアクション等)を如何に洗練できるかが問題改善の焦点となる.

本研究では,業務系Webシステム開発を対象としたMDAに基づく要求分析手法を実現する.具体的には,ユースケース分析に基づく機能要求のモデリング方法や,V&Vの支援を目的としたモデルからのWUI(Web User Interface)プロトタイプや統合テスト仕様の自動生成方法およびプロトタイプ等を活用したモデルの段階的な洗練プロセスを提案する.

本研究が扱う課題は,第一に,要求仕様の「要求漏れ」や「顧客と分析者の間の誤解」である.システムとその利用者がやりとりする際の操作手順,入出力データの構造や具体値,業務シナリオは顧客に分かりやすく,かつその妥当性は重要である.これらの側面について,顧客が仕様を確認しやすいように,本研究では,分析者がこれらの側面をモデリングする方法と,そこからWUIプロトタイプを自動生成する方法を提案した.

第二に,「分析者とテスト計画者や設計者の間の要求の誤解」である.顧客と異なり,テスト計画者等は要求を実現する視点からモデルを正確かつ十分に理解できる必要がある.この課題に対し,まず,顧客が妥当性を確認したモデルは,テスト計画者等に要求を正確かつ十分に伝えられることが期待される.加えて,本研究では,テスト計画者がモデルを検証しやすいように業務シナリオから統合テスト仕様を自動生成する方法を提案した.

評価として,従来手法との比較評価やシステム開発実験,開発現場の仕様の再定義の事例に適用した結果,提案手法は要求漏れや誤解の抑制,開発の効率化に有効であった.今後の課題として,非機能要求のモデリングとV&Vの支援や,設計工程の支援を検討する.
 
 
 (2012年8月31日受付)
 
取得年月日:2012年3月
学位種別 :博士(工学)
大  学 :芝浦工業大学

推薦文:(ソフトウェア工学研究会)


要求仕様の品質を高めるためにプロトタイピングなどの手法があるが高コストという課題があった.本研究ではシナリオ定義を工夫することでプロトタイプやテスト仕様を自動生成する方法を提案している.実用性のある研究であり研究会推薦博士論文にふさわしいと判断する.

著者からの一言


本研究では,分析者が要求を自然に定義する方法や,その定義の適切な抽象度が何かを模索することに非常に苦労しました.しかし,適用事例を経て企業の方や多くの学生が利点を感じたとの結果を得て,そこに注力して良かったと実感しています.今後とも有用な手法の提案を念頭に研究に従事して参りたいと思います.