ニューラルネットワークを適用した
ソフトウェア信頼性評価手法
土肥 正，尾崎 俊泊…l冊‖ll…州＝l川＝l州‖ll川‖lll川‖…lll川Ill川Illl…………‖‖川l川…州＝…………ll……l川＝州＝‖‖‖＝＝‖‖‖＝‖‖‖＝‖‖‖‖‖‖‖‖‖‖‖＝‖‖＝‖‖‖＝‖‖‖＝‖‖‖‖‖‖‖＝‖‖‖‖‖＝‖‖‖‖＝‖‖‖＝‖‖＝＝‖‖＝m‖‖l

推定の枠組みでは事後分布に任意のパラメータが含まれるため，ソフトウェア信頼性評価における統計的1． はじめに推定問題を完全に克服するまでには至っていない．

ソフトウェアの開発過程における最終段階であるテ

最近，ソフトウェアのフォールト発見過程を予測すスト工程において，製品の信頼性を定量的に評価するるための有力な手段として，人工ニューラルネットワことは開発管理上極めて重要な問題である．そこで，ーク（ArtificialNeuralNetwork）を応用することが提テスト工程において採集されたソフトウェアフォール案されている．Karunanithi，MalaiyaandWhitely［7−トの発見時間データから，ソフトウェアに潜在する総9］，Karunanithiand Malaiya［10，11］，Khoshg（）ftazlr

フォールト数ならびに当該製品の信頼性を推定するこandSzabo［12】，Shinohara，Imanishi，Dohiall（10s〜lkiとが必要とされている．このような背景から，過去20［13】は，生体の情報処理メカニズムをモデル化した階

数年間に渡り，ソフトウェア信頼度成長モデル（Soft−層型ニューwareReliabilityGrowthModel）と呼ばれる数多くのト型）ニューラルネットワークをソフトウェアの信頼確率モデルが提案されてきた［1，2】．

性予測に適用している．高軋松本，鳥居［14］はソフ

しかしながら，（i）ひとつのソフトウェア製品に対ラルネットワークや相互結合型（リカレントウェアフォールト発見時間データだけでなく，ソフするフォールト発見時間（もしくは，ソフトウェア故トウェア製品の種類や開発工程の規模を特徴付ける他障発生時間）の時系列データは通常1本しか採集されのデーない，（ii）テスト工程において観測されるフォールトいる．また，篠原，土肥，尾崎［15，16］は通常の階層発見時間データ数は必ずしも十分ではない等の理由

型ニューラルネットワークの代わりにGMDH（GI▼O11Ⅰ）

から，ソフトウェア故障則（もしくはフォールト発見

MethodofDataHandling）ネットワークを周いることメカニズム）を支配する確率過程を合理的に推定するにより，ソフトウエア信頼性評価における自己組織化ことは困難であり，いくつかの克服すべき問題点が残学習を可能にしている．

タも有機的に結合した予測モデルを構築してされていることに注意しなければならない．このよう本稿の目的は，ソフトウェア信頼性技術における話な問題点を回避するためのひとつの手段として，ソフ

題の中でも特に，ニューラルネットワークを適用した

トウェアのフォールト発見過程をある種の統計的時系

ソフトウェア信頼性評価手法について紹介することで列過程とみなすことにより，テスト工程の将来においある．まず次節において，基本的な階層型ニューラルて観測されるであろうソフトウェアフォールトの発見

ネットワークの動作規則ならびに学習アルゴリズムに時間を推定することが考えられる．Singpurwallaand

ついて解説し，3節でニューラルネットワークを飼いSoyer［3，4】，Chenand Singpurwalla［5】，Chatterjee，たソフトウェアフォールト発見時間データの解析例にMisraandAlam［6］はソフトウェアの信頼性予測に自ついて述べる．4節では，問題点と今後の展望につい己回帰モデルを適用し，その有効性について検証してて言及する．

いる．しかしながら，文献【3−5］で用いられたベイズ

どひ ただし 広島大学工学部第二類

2． ニューラルネットワークによる時系列予測

おさき しゆんじ 広島大学工学部第二類〒739−8527￣東広島市鏡山1−4tl

いま，時刻0でテストを開始し，時刻fにおいてれ（≧1）個のフォールト発見時間間隔iO≦γ1，…．J・ l

4川（14）© 日本オペレーションズ・リサーチ学会. 無断複写・複製・転載を禁ず.

オペレーションズ・リサーチ

れ）が観測されているものとする・このとき，テストが利用されることが多い．ここで，パラメータβJ（＞工程の将来におけるフォールト発見時開聞隔意宜（宜＝0）はしきい値であり，生理学的根拠から与えられるれ＋1，‥うを推定したい．将来におけるフォールト発定数である．最終的に，出力層ユニットからの出力は

見時間間隔は過去に観測されたα（2≦α≦m）個の時

隠れ層ユニットと出力層ユニット間の結合荷重1′′‡）と間間隔データに依存するものと仮定し，図1に示すよシグモイド関数Jo（・）を用いて，むうな，入力層ユニットα（≧1）個，隠れ層（中間層）ユ

盆叫＝わ（∑Ⅷアギ）

ニットむ（≧1）個，出力層ユニット1個の3層ニューラ

（4）

j＝1

ルネットワークによって動を予測することを考える．となり，乃（≧1）個めからm＋1（≧1）個めまでのここでは特に，Onelook−aheadpredictionを行う（すフォールト発見時開聞隔に対する推定値としてみなす

なわち，乳汁1を予測する）ことを仮定するが，時刻fことができる．

以降に現われるであろう複数個のフォールト発見時間

ネットワークの学習を行うための最も簡便かつ実刑

間隔孟叫1，蕊叫2…を予測したい場合には，複数個の的な方法として誤差逆伝搬法が知られている（例えば出力層ユニットをもつ多値出力ニューラルネットワーt17］）．これは，入力データに対するネットワークの出クを用いればよい．

力結果と教師信号（すなわち，観測値エ1，…，J‥ ）との2乗誤差を減らす方向に結合荷重としきい値の値を変更する学習アルゴリズムである．換言すれば，各人カバターンに関する2乗誤差の勾配ベクトルを計算し，その道方向に学習パラメータを更新するという，いわゆる最急降下法を利用するものである．

3．ソフトウェアフォールト発見時間データの解析
実際のソフトウェアテスト工程において観測された136個のフォールト発見時間データ［18］を使用し，逐次的に将来におけるフォールト発見時刻を推定するものとする．ここでは推定モデルとして，入力層ユニッlnput−1ayer hidden−layer output−1ayer

ト10，中間層ユニット10，出力層ユニット1の階層型ニューラルネットワーク（NN）と，代表的なソフトウェ

図1：階層型ニューラルネットワークの概念図．

ア信頼度成長モデルである（i）Jelinskia・IldMoran（1a（JM）モデル【19］（ii）SchickandWolverton（SW）モ

図1のニューラルネットワークにおいて，入力層ユデル［20］，（iii）Moranda（MR）モデル［21］をそれぞニットと隠れ層ユニットの間には結合荷重墟（戌＝れ比較する．特に，階層型ニューラルネットワークで1，t‥，α，j＝1，…，わ）が与えられており，隠れ層ユニットへの入力値と出力値は，それぞれは入出力応答にシグモイド関数を仮定するものとし，シグモイド関数に含まれるしきい値パラメータと各

αzJ＝∑魂紬

ユニット間の初期結合荷重に対する初期値は先行実験

哀＝1および一様乱数によりそれぞれ定めるものとする．教師信号として観測されたソフトウェアフォールト発見

zデ＝〟宕）

時間データを用い，ネットワークの学習には2節で述となる．ここで，（封1J，…，裾）＝（∬元一叶1，…，∬m），べた古典的な誤差逆伝搬法を採用する．

ブ＝1，・・・，あである．関数ム（うはニューロンの特性

JelinskiandMorandaモデル［19］はソフトウェア関数と呼ばれ，微分可能な非減少関数とする．通常，信頼度成長モデルの中で最も基本的かつ代表的なモ

以下のようなシグモイド関数

デルとして知られており，ソフトウェアフォールト発烏（z）＝

1999年8月号

1＋exp（−（z＋βJ））（3）

見時間間隔を表す非負で独立な確率変数列を芳ブ（ブ＝© 日本オペレーションズ・リサーチ学会. 無断複写・複製・転載を禁ず.

（15）町‖1，2，…，Ⅳ），ズ宣の実現値を諾壱，方言のハザード（故障）Morandaモデルでは，JMl＝3・760×10−1，JM2＝率を九盲（諾玄）＝Pr（弟∈［笹木勘＋d∬壱）】方言＞霊j）／d￡宜と9．201×10−2となった．一方，SchickandR．W）1vert．o11

すれば，モデル，Morandaモデルでは，SWl＝1．037，SW2＝3・229×10−1，MRl＝1・379×10−1，MR2＝7・879×10−2
九壱（諾￡）＝￠（Ⅳ−宜＋1）（5）となり，ニューラルネットワークによる予測は通常のによって与えられる．ここで，Ⅳ（＞0）はテスト開始

ソフトウェア信頼度成長モデルと比べて良好な結果を前にソフトウェア内に潜在する初期フォールト数を表得ることが示される．

すパラメータであり，￠（＞0）は残存フォールト1個当りの発見率を表す．JelinskiandMorandaモデルに0︵UOOO4﹁∠︵U O

モデル［20］とMorandaモデル［21］はそれぞれ次のよ0／0︵U O︵U︵U O O OMTBFの推定値を得る．一方，SchickandWoIverton︵Um）から最尤法により未知パラメータⅣと￠を推定し，OO

ウェアフォールト発見時間間隔データ（諾1，∬2，…，諾乃IハUFailures）はE［羞］＝1／￠（Ⅳ一宜＋1）となるので，ソフトO O

山田トー≧U＞てヱコ∈⊃Uるまでの平均時間であるMTBF（MeanTimeBetween

O O︵Uおいて，宜−1番目から五番目のフォールトが発見されー ＼D −− ＼、D ・一 ＼0 ・一 、、ロ ー→ 、、ロ ・・・・− ヽロ ー ＼〇 ・・・・− ＼C ＼0 ＼⊂） r■− 【■■− ⊂8 0 0＼ （｝、 ⊂）（＝〉 −・疇 ・一 「、I N 「√． r√．

うに与えられる．

numberofsonwarefrIults

九ま（∬壱）＝￠（Ⅳ−宜＋1）∬ゎ（6）

図2：累積MTBFの比較（NNv．s．JMMo（1cl）．

九豆（諾壷）＝彿吊．

（7）

ここで，た（0＜た＜1）はハザード率が幾何級数的に160000減衰する様子を描写するパラメータである．

MTBF を逐次予測した結果を表す．ここで，図中のJMlとJM2は，観測時点における全てのソフトウェ
アフォールト発見時間間隔データ（α＝れ）を最尤推定に用いた場合と，観測時点からさかのぼってニューラルネットワークの入力層ユニット数と同数（α＝10）のデータを用いた場合をそれぞれ意味している．この﹂凸ト∑U＞叫︼虐コ∈コU

図2に，乃 ＝ 61の時点からソフトウェアの累積

140000120000100000
80000
60000
40000
20000
0

一一 ＼0 ・・− ＼、⊂〉 ・一 ＼D ・一 ＼⊂〉 ・・−・＋ヽロ ーー ＼こ〉 − 、．ロ ・・疇 ヽ○ ＼、ロ ＼、ロ ト 「− ∽ 0 0、＼ t⊃ヽ ⊂） ⊂） − ・−・ ぐ＼l 「、I r√． ぐ「numberofsoftwarefnulrs

図から，ニューラルネットワークによる予測値は実際の累積フォールト発見時間間隔を若干少なめに見積もっているが，JelinskiandMorandaモデルではかなり

図3：累積MTBFの比較（NNv．s．SWModel）．

大きめの推定値を与えていることがわかる．同様に，
SchickandWolvertonモデル，Morandaモデ）L，との比較結果を図3と図4に示す．予測の傾向はほぼJelin−

4．いくつかの問題点と今後の課題

SkiandMorandaモデルの場合と同じであり，ニュー本稿では，ニューラルネットワークを用いたソフトラルネットワークに基づいた方法は真値と比べて楽観

ウェアの信頼性評価法について大まかに解説した，こ的な予測を行うことが結論付けられる．

こでは最も基本的なニューラルネットワークである階

最終的に，m＝61かられ＝136までの各時点で層型ニューラルネットワークを適用したが，相互結合の予測値に対する平均2乗誤差i（実測値一推定値）／型ネットワーク等の異なるアーキテクチャや改良され実測値）2を算出した結果を表1に示す．ここで，ニたネットワーク学習アルゴリズムを用いることによりューラルネットワークの予測値に対する平均2乗誤差予測精度が飛躍的に向上する点にも留意すべきであがNN＝4．550×10￣2となったのに村し，Jelinskiand

ろう．また，本稿では紙面の都合上ふれることができ

朋2（16）© 日本オペレーションズ・リサーチ学会. 無断複写・複製・転載を禁ず.

オペレーションズ・リサーチ

なかったが，ソフトウェアをテスト段階から運用段階ニューラルネットワークのもつ優れた情報処理能力に移行する時期を決定するソフトウェア最適リリースをソフトウェアの信頼性予測に適用することほ大変興

問題はソフトウェアの開発管理上重要な問題として認味深い反面，いくつかの問題点が指摘されていること識されており，ニューラルネットワークを用いた解法も事実である．例えば，が極めて有効であることが示されている［22−25］．

（i）ニューラルネットワークの設計ないし学習には往々にして試行錯誤的な要素が含まれているため，】00000

実際に信頼性予測ツールとしてシステム化する

90000﹄巧ヒ之む＞鵬葛ち2nUことが困難である場合が多い．すなわち，大域的8000070000

最適解を保証するような学習アルゴリズムの改60000

良や最適なネットワークサイズの決定法などを詳50000
40000

細に吟味する必要がある

30000
20000

（ii）実際のテスト工程においてはフォールト発見時間10000のグループデータしか記録されない場合が多い．

0■− ＼D ・・− ＼ロ ・・− ＼ロ ・一 ＼ロ ー− ＼、○ ・一 ＼○ ・− ＼J⊃ ・・− ＼ロ ＼○ ＼、ロ ト− 卜 ∞ 0 くフヽ ロ、＼ ⊂） く＝〉 ・−・ −■ N N M ぐ「

そこで，ヘビサイド関数を特性関数にもつ離散型

numberofsoftwarefaults

ニューラルネットワークを使用する等の工夫が必要とされる

図4：累積MTBFの比較（NNv．s．MRModel）．

（iii）ある定められた期間内にソフトウェア故障が発生する確率を表すソフトウェア信頼度を，ニューラルネット計算上において厳密な意味で如何に定

表1：平均2乗誤差．

義するかPredictionmodel meansquarederror等が問題点として挙げられている．今後，ニューラルNN

4．550×10￣2

ネットワークによるソフトウェアの信頼性予測手法のJM1

さらなる進展を期待したい．

JM2

3．760×10■1
9．201×10￣2

SWll．037

SW2

3．229×10￣1

本研究の一部は文部省科学研究費奨励研究（A）課題

MRll．379×10￣1

番号11780331の助成の下で行われたものである．

MR2

7．879×10￣2

謝辞

参考文献
［1］J・D・Musa，A・Iannino and K・OkllInOtO：Sojt−

これまで述べてきたように，ニューラルネットワー

クに基づいた予測手法は，従来のソフトウェア信頼度成長モデルに比べて概ね良好な結果を与える傾向にある［7−13，15，16】．現在まで，実に100を超えるソフトウェア信頼度成長モデルが提案されているが，実際に数多くの予測モデルの中から最良モデルを選択する手続きは必ずしも容易ではなく［1，2］，何らかの統一的な予測手法が必要とされていた．その意味で，ニューラルネットワークによるソフトウェアフォール

ト発見時間の予測は，従来から用いられてきた確率モ
デルと比較してソフトウェアのデバッグ過程に対する物理的意味づけを必要としない点で大変便利である．

1999年8月号

ぴαγe月eg壱αみ盲g軸ク〟eαβ祝γeγ乃e†1ち Pred五c抽m，4岬頼≠

iion，McGraw−Hill，NewYork，1987．
［2】山田茂：ソフトウェア信頼性モデル一基礎と応札日朴才支連，1994．
［3］N・D．SingpurwallaandR．Soyer： AssessiIlg（s（）ftwar（一）
reliability growth using arandom coe鮎ieIlt a11tOrf▲−gressive process andi七S rami丘cations ，1EEE乃・ar ・SoftwareEng．，Vol．SE−11，PP．1456−1464，1985．

［4］N・D・SingprWal1aandR・Soyer＝ NonhonlOgelleO11SautoregressIVePrOCeSSeS丘）rtraCking（software）relia−bility growth，and their Bayesian analysIS ，］．Roy．
∫まαま五βま・ぶoc・，Volt B−54，pp．145−156，1992．

【5］Y・Chen and N．D．Singpurwal1a： A non−Ga11SSiall
Kalman丘1termodelfortrackingsoftwarerelial）ilitv∫ね蕗占才・g五れ盲cα，Vol．4，pp．535−548，1994．

© 日本オペレーションズ・リサーチ学会. 無断複写・複製・転載を禁ず.

（17）413，

［6］S・Chatterjee，R・B・MisrandS・S・Alam‥ Prediction
OfsoftwarereliabilityuslnganautOregreSSiveprocess［21】P・B・Moranda＝ Predictionofsoftwarereliability（111トing debugglng，九孟．J・勒β・∫c壱．，Vol・28，pp．211【216，1997・，Proc．1975Annu．Reliab．Main一丈α五れαれCe∫ymp・，pp・327−332，1975・［7］N・Karunanithi，Y．K・MalaiyaandD・Whitley‥ Pre−
dictionofsoftwarereliabilityuslngneuralnetworks［22］土肥正，西尾泰彦，篠原康秀，尾崎俊治‥ ニューラル，

ネットワークを用いたソフトウェア最適リリース問題

PγOC，蝕d九f・勒mp・β0′如αre月eg壱αわ．βれタ・，pp．の幾何学的解法 ，電子情報通信学会論文誌，Ⅴ丑．丁81−124−130，IEEEComp11terSocietyPress，1991．

A，pp．110−118，1998．

［8】N・Karunanithi，D．WhitleyandY・K・Malaiya＝ Us−
1ng neuralnetworksin reliability prediction【23］Y・Shinohara，Y・Nishio，T・DohiaIldS・Osaki： All，1EEEOptimalsoftwarereleaseproblemundercostrate（・1・i−goβwαre，Vol．9，pp．53−59，1992．

terion：artificialneuralnetwork approa（：h，］．QILLd

凡才α慮れ壬eγlαれCe属■れg．，Vol．4，pp．236−247，1998．
［9］N・Karunanithi，D．WhitleyandY．K．Malaiya＝ Pre−
dictionofsoftwarereliabilityusingconnectionistmod−［24］篠原康秀，土肥屯尾崎俊治‥ GMDHネットワークに

els ，1EEE升ans．SoJhuare En9．，Vol．SE−18，pP．
563−574，1992．

［10］N・Karunanithiand Y・K・Malaiya： The scaling
PrObleminneuralnetworksforsoftwarereliabilitypre−
diction基づいたソフトウェア出荷スケジュールの生成アルゴリズム，日本信頼性学会誌，Vol．21，pp，210，1999．

［25】T・Dohi，Y・NishioandS・Osaki‥ OptiIIlalsoftwar（ゝ，Proc・3ndInt・Symp．SoβwareReliab．En9．，

pp・76−82，IEEEComputerSocietyPress，1992．

releaseschedulingbasedonartificialneuralnetworl
toappearinAnn・SoJhareEng．．

［11］N・KarunanithiandY・K・Malaiya： Neuralnetworks
払rsoftwarereliabilityengineering ，HandbookofSoftT
Ware Reliability En9ineering，M．R．Lyu（ed．），pP．
699−728，McGraw−Hill，NewYbrk，1996．

［12］T・M．Khoshgoftaar and R．M．Szabo＝ Predicting
SOftwarequality，duringtesting，uSingneuralnetworkmodels：aCOmparativestudy ，Ini．］．Reliab．Qual．
β垂．風関．，Vol．1，pp．303−319，1994．

【13］Y・Shinohara，M・Imanishi，T・Dohiand S・Osaki：
Softwarereliabilityprediction usingneuralnetwork
technique，Proc．2ndAusiralia−Japan Workshop on

gねcJもαβ加c〟odeね五m且れタ哀れeeγ五れタ，7七c／もれOgOタy＆〟α乃−

a9emeni，R・J・Wilson，D・N．P．MurthyandS・Osaki（edsL），PP・564−5717TechnologyManagementCentre，
TheUniversityofQueensland，Brisbane，1996．
［14］高田義弘，松本建一，鳥居宏次‥ ニューラルネットを用いたソフトウェア信頼性予測モデル ，電子情報通信学会論文誌，Vol，J77−DI，pp，454−461，1994．
［15］篠原康秀，土肥正，尾崎俊治： GMDHネットワークによるソフトウェアのテスト進捗度に対する予測評価 ，

電子情報通信学会論文誌，Vol．J80−A，pp．1982−1988，1997．

［16］篠原康秀，土肥正，尾崎俊治： 予測平方和を用いた改良型GMDHネットワークによるソフトウェア故障デー
タの解析 ，ソフトウェアシンポジウム，97論文集，ソフトウェア技術者協会，pp．205−211，1997．
［17］馬場則夫，小島史男，小揮誠一‥ニューラルネットの基
礎と応用，共立出版，1994．

［18］J・D．M11Sa： Software reliability data ，Tbchnical
属epor舌玄れ兄0γ柁e A豆r上）euegopme†l舌Ce†もねr，NewYork，
1979．

［19］Z・JelinskiandP．B・Moranda： Softwarereliability
researcll ，ぶね舌由壬盲cαg Comp視ねr j⊃eγかrmαれCe軌αg祝−

aiion，W・Fteiberger（ed・），Pp．465L484，AcademicPress，NewYork，1972．

［20］G・J・SchickandR・WoIverton： Ananalysisofcom−
petingsoftwarereliabilitymodels ，1EEE升ans．SoJま−WareEn9．，Vol．SE−4，PP．104−120，1978，

414（18）© 日本オペレーションズ・リサーチ学会. 無断複写・複製・転載を禁ず.

オペレーションズ・リサーチ、，