ソフトウェア信頼性モデリング

テストをいつ打ち切り、いつリリースするか。故障データから信頼性を推定する確率モデルの研究。

ソフトウェアは知的生産物の代表例であり、開発の完全自動化は今なお困難です。一方で社会のソフトウェアへの依存度は高まり続けており、欠陥がシステム障害を引き起こし、重大な事故につながる例も少なくありません。

伝統的なアプローチでは、要求仕様定義・設計・コーディングを経て、最終段階のテスト工程で徹底的に欠陥を取り除き、リリースに足る信頼性を確保します。ここで問われるのは「どれだけテストすれば十分か」「いつリリースしてよいか」という定量的な判断です。

当研究室では、テスト工程で観測される故障データから信頼性を推定する確率モデルを研究しています。非同次ポアソン過程 (NHPP) に基づくソフトウェア信頼性成長モデルを中心に、Hawkes 過程を用いた自己励起型のモデル化、パラメトリック・ブートストラップによる区間推定、長期的な故障予測など、推定精度と実用性の両立を目指した手法を扱っています。

この分野の研究紹介

この分野の公開ツール

pysrat Python

非同次ポアソン過程 (NHPP) に基づくソフトウェア信頼性モデルを当てはめ、解析する Python パッケージ。

今後の主力パッケージ。

インストール

Rsrat R

故障データからソフトウェア信頼性を評価する R パッケージ。

Rphsrm R

位相型ソフトウェア信頼性モデル (PHSRM) を R で扱うパッケージ。

msrat R

開発工程で収集したメトリクスを使って信頼性を評価する R パッケージ。

gof4srm R

ソフトウェア信頼性モデルの適合度検定(Kolmogorov–Smirnov 検定、EIC)。

shinyRsrat R

Rsrat をブラウザから使えるようにした Shiny アプリ。

phsrm Java

位相型ソフトウェア信頼性モデルの Java 実装。

保証対象外

SRATS2017 C#

表計算ソフト上でソフトウェア信頼性を評価する Excel アドイン。

新しい Windows では動作しない可能性があります。

保証対象外 配布ページ

SRATS2010 C

SRATS の旧版(Excel アドイン)。

保証対象外