有名な IEEE の FTFI の表は信頼できるか?
障害がいくつの要因の組み合わせで発生しているかを示す例として、よく2004年 IEEEで発表された論文(Software Fault Interactions and Implications for Software Testing)の表(TABLE 1)が引用されます。
この表では、RAXからPOSIXまでは不完全なデータなので除くとして、残りの右側4つのデータは、数値の傾向が大きく異なる2つのグループに分けることができます。
2つの傾向は、Fig.1のグラフでよりはっきりと分かります。BrowserとSeverは、要因数(FTFI)の多い障害が多くを占めていますが、Med. DevicesとNASAのデータベースシステムは、要因数の少ない障害が多くを占めています。なぜこういう結果になったかというと、それぞれのソフトウェアが開発工程のどの段階でのデータなのかに違いがあるからです(TABLE 2)。
Medical DevicesはFielded productsとあり、市場出荷後のデータと考えられます。BrowserとServerはbeta releaseの段階のデータです。NASAのデータベースシステムは統合テストの段階のデータです。さらにソフトウェアのステップ数にも数千ステップから約200万ステップと大きな違いがあります。
こうした条件の違いを考慮に入れてデータを見ないと誤った解釈をする恐れがあります。
これらのデータから読み取れるのは、beta releaseの段階では、障害の要因数が1つより2つ以上のものが多いということです。これは、beta releaseのため一般公開直前の十分なテストを経た段階のデータであることを意味しています。このことは、私たちの経験からも一致するものです。また、NASAのデータベースシステムは、統合テストの段階のデータのため、障害の要因数が1つのものが最も多くなっています。これも私たちの経験と一致しています。
唯一、Medical Devicesは、市場出荷後にもかかわらず、障害の要因数が1つのものが最も多くなっています。おそらくこの製品は、市場で多くの障害を出したと思われます。
このようにデータの背景を知ることによって、より正確な知識を得ることができます。
この論文は Pairwise Testing のサイトの Reserch Paperse の27番にあります。
それでは、また。


