NTTグループのソリューションガイド
ビジネスコミュニケーション

エンタープライズICT総合誌 月刊ビジネスコミュニケーション

本誌の概要 ホーム
要求工学 第11回:ジャクソンの問題フレーム
NTTデータ 技術開発本部 副本部長 山本修一郎
NTTデータ 
技術開発本部
副本部長 
山本修一郎

問題フレームの合成

実際の問題は一つだけの問題フレームで記述するには複雑であり、問 題を複数の部分問 題に分けて組み合 わせる必要があ る。部分問題は十 分に小さく単純にしておくことで明 確で理解しやすいインタラクション を持つようにすることができる。

核となる部分問題を開発者が認識 していれば、問題の変化に対しても、 核となる部分からの差分を把握する ことで、複雑な問題の理解を容易化 できるし、ソリューションを作成し やすくなるだろう。

図7 統計パッケージに対する問題フレーム

たとえば、図7に示す統計パッケ ージは、変換問題フレームと編集問 題フレームの組み合わせである。変 換問題フレームでは入力データから 統計データを生成する。編集問題フ レームでは統計計算式を編集・保存 する。

問題フレームと非機能要求

問題フレームで解決できる問題は機能要求である。非機能要求に関する検討項目も重要である。

非機能要求の例として信頼性に関する要求を問題フレームで表現することを考える。問題フレームの合成 を用いることにより、信頼性をどの ようにして実現するかを別の問題フ レームとして扱うことができる。問 題フレームの機械によって機能をモ デル化しているため、信頼性に対す る潜在的な脅威を別の機能に対応付 けることで実現することになる。

図8 乱用問題フレーム

悪意を持ったユーザーによる資源 に対する乱用を表現する乱用問題フ レームの例を図8に示す。この図で は、信頼性に対する脅威が反要求で 示される。

問題フレームと他の手法との関連

コンテクスト図

問題フレームは、構造化分析手法 のコンテクスト図と似ている。コン テクスト図ではシステムのコンテク ストに注目して、システムと外部と のインタラクションを明示的に記述 する。これに対して、問題フレーム では問題のコンテクストに着目す る。問題フレームではドメイン間の 関係を記述する。ドメインは問題ド メインの構成要素である。

図9 コマンド制御のユースケース

ユースケース図

ユースケースも機能 要求を記述する方法で ある。ユースケースで は外部環境とシステム の振舞いに関するシナ リオを記述する[3]。問 題フレームでは実世界に対する機械 (機能)の内部的な振舞いではなく、 機械が外部とのインタラクションで 満たすべき要求条件を抽出する。図 3で示したコマンド問題フレームに 対するユースケースを図9に示す。 図3と図9とを比較してみて欲しい。 ユースケースが機械の内部的な要求 に対するシナリオを記述することが 良く分かるだろう。また、このユー スケース図ではユースケースが1個 しかないが、複数のコマンドを分析 する場合には、コマンドごとにユースケースを記述する必要がある。

まとめ

今回はジャクソンの問題フレーム について紹介した。ジャクソン自身 が書いた論文は彼のホームページで も見ることができる[4]。 問題フレームに関する 書籍では問題フレーム の利用法と問題の分析 と構造化の考え方を説明している[5]

さて、問題フレーム は、ソフトウェア開発 の最も早い段階で、要 求や問題の構造を分析 できる点で、問題理解にとっては効 果的な手法である。複雑な問題につ いては、より基本的な問題フレーム を発見しその組み合わせを検討でき る点で問題の特徴づけに役立つであ ろう。問題フレームは問題分析に関 する経験を再利用する手段としても 有効だろう。最近ではゴール分析や XP(eXtreme Programming)への 応用も進んでいる。XPではストー リやメタファなどを用いて問題を理 解していく。問題フレームはXPに おけるストーリの記述手法と考える ことができる。

また問題フレームの意味を形式的 に定義する理論的な研究だけでなく、 eコマースや産業界における実証的な 研究も報告されている。問題フレーム は今後も発展していくことだろう。

参考文献

  • [1] M. A. Jackson, Problem Analysis Using?Small Problem Frames, South African?Computer Journal 22; Special Issue on?WOFACS’98, pp47-60, 1999
  • [2] 1st International Workshop on Advances and Applications of Problem Frames - Summary Karl Cox1, Jon G. Hall2, Lucia Rapanotti2
  • [3] 山本修一郎、UMLの基礎と応用, http://www.bcm.co.jp/site/2002/uml/uml1.htm
  • [4] Michael Jackson (not the singer), http://mcs.open.ac.uk/mj665/
  • [5] Problem Frames: Analysing and Structuring Software Development Problems (Addison-Wesley, 2001)
前へ  1  2  3 

広告募集 ページ先頭へ
Copyright:(C) 2005 BUSINESS COMMUNICATION All Rights Reserved. ※本サイトの掲載記事、コンテンツ等の無断転載を禁じます。