TR-C-0117 :1995.4.7

灰塚凡樹

ドメインモデルによる要求理解について

Abstract:本稿では、ソフトウェア要求仕様に既存の要求仕様になかった、新たな要求が含まれていても、ソフトウェアが正しく動作できる要求仕様を自動的に獲得する手法を提案する。 欠落情報や曖昧性を含む要求仕様からソフトウェアが正しく動作できる要求仕様を獲得する事を要求理解という。しかし、正しい要求仕様を記述する事は大変難しい。ソフトウェアを必要とする人、即ち、ユーザが頭に描く要求をソフトウェア開発担当者に正確に伝え、仕様とする事は両者の協調作業が必要となり、認知科学の観点からも大変難しい事が知られている。また、ユーザ自身に要求仕様を記述させたとしても、要求の欠落のない、矛盾のない正しい仕様を記述する事を期待する事はできない。更に、ソフトウェア開発の専門家ですら、完全な仕様を記述できる訳ではない。 これまでの要求理解の研究においては、エンドユーザ(以降は非専門家と記す)と要求分析者の間のコミュニケーションを支援する事により、非専門家の曖昧な要求から正確な仕様を抽出する方法を提案したものがあるが、両者の間の認識のズレを完全に無くす事は困難であり、結果として得られる要求仕様が完全なものである事を期待する事は無理がある。また、既存のソフトウェア要求仕様の組合せによる要求仕様の生成を試みた例もあるが、新規に開発するソフトウェアの要求仕様が入力の場合、既存の要求仕様の組合せにより、正しい要求仕様を構成できるという保証はできない。 一般に、ソフトウェアの開発工程が後になる程、バグの修正に要する手間が大きくなる事が知られているが、要求仕様が正しいものであるならば、この要求仕様に基づき、自動的にソフトウェアを生成する事により、正しく動作するソフトウェアを開発する事は可能となる。 近年、通信サービスの分野においては、通信サービスの社会に対する役割は増大しつづけており、これに伴い今後益々、多種多様な通信サービスの早期な開発が必要となってくる。これは、専門開発要員の不足が生じる事を予想させる。そこで、我々は非専門家が記述した要求仕様を対象とした要求理解を実現する事により、非専門家の通信サービス開発への参画を可能にする事、及び、信頼性の高いソフトウェアの自動生成を効率良く実現する事を目的として、研究している。 我々の研究課題は多々あるが、ここでは、最も重要な課題である要求理解、即ち、ユー ザの不完全な要求仕様から自動的に正確な要求仕様を生成する方法について示している。 我々が考案した方法は、ソフトウェアが実現すべき機能を適用する実世界を1つの領域として、その領域固有の概念に基づき抽象化した世界(ドメインモデル)とユーザの要求仕様を対照し、正しい要求となる様に補完する事を特徴としている。