2015年5月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            
無料ブログはココログ

« 【ソフトウェア信頼度成長モデルを考える③】現場における様々な言い方、使われ方(3) | トップページ | 【ソフトウェア信頼度成長モデルを考える⑤】グラフが寝るとはどういうことか② »

2009年3月 4日 (水)

【ソフトウェア信頼度成長モデルを考える④】グラフが寝るとはどういうことか①

グラフが寝るとはどういうことなのだろうか。
テストを実施するにつれてバグが見つかりにくくなるから寝るという考え方は、直感的には理解できる。
故に手を出しやすいのであるが、何故寝るのかについては、直感ではなく、理論的に考える必要がある。

その上で、自分たちの開発において、グラフが論理的に寝ることの必然性が確認できれば採用すべきであるし、そうでなければグラフがきれいに描かれるからといって採用するべきではなかろう。

なぜ寝るのか。
①バグがテストケース全体にわたって同じ発生確率でばらまかれていること
が大前提である。
また、
②テストケースは、基本的に、特定の1機能のみに絞った確認を行うのではなく、1ケースで複数の機能の確認ができ、かつ、各機能は複数のテストケースで発見される可能性を有していること
が前提となる。

①の前提がなく、テストケースのある一群を実施している段階ではバグがほとんど出ず、別な一群で大量に出るようでは、実施順によってグラフの傾きが変わってしまう。
同じソフトウェアに対して、テストの実施順によって傾きや寝方が変わるというのは、モデルとして不適当であるということは理解できよう。
故に、①の前提が意味することは、ソフトウェア信頼度成長モデルにおいては、テスト順によらずグラフは同じ形で収束する、つまり寝ることが理論的前提となっているということである。

また、②の前提がなく、それぞれのテストケースで発見されるバグは他のテストケースでは見つからないようであると、こちらも実施する順番によって、グラフが寝たり立ったりする可能性が出てくる。

このように、信頼度成長モデルには、「テストケースの挙げ方」「テストの実施順」についての前提がある。
この前提があるからこそ、曲線が寝るということがソフトウェアの信頼度が上がることと結びつくのである。

そしてまた、この「テストケースの挙げ方」「テストの実施順」という前提故に、ソフトウェア信頼度成長モデルは直感的には容易に理解できるにも関わらず、実際活用してみると色々悩みが出てくる。既に挙げた「テストサイクルを通じて寝るように計画されている」や「同じテストを何ショットか繰り返すから寝るように計画されている」という、定量的把握とは言い難い活用法も出てくるのである。

« 【ソフトウェア信頼度成長モデルを考える③】現場における様々な言い方、使われ方(3) | トップページ | 【ソフトウェア信頼度成長モデルを考える⑤】グラフが寝るとはどういうことか② »

ソフトウェア開発品質・生産性私見」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/1048600/28416673

この記事へのトラックバック一覧です: 【ソフトウェア信頼度成長モデルを考える④】グラフが寝るとはどういうことか①:

« 【ソフトウェア信頼度成長モデルを考える③】現場における様々な言い方、使われ方(3) | トップページ | 【ソフトウェア信頼度成長モデルを考える⑤】グラフが寝るとはどういうことか② »