【バグ管理の作法】
エンピリカルソフトウェア工学に触れる
第3回:エンピリカルアプローチの実例
著者:奈良先端科学技術大学院大学 松本 健一
公開日:2007/12/19(水)
マルチベンダー開発における障害修正工数の要因分析
最初の例は、「マルチベンダー開発における障害修正工数の要因分析」である。エンピリカルアプローチとしての段階は「観察の実施」、粒度は「インプロセス」である。
開発プロジェクトは物理的に離れた計7拠点で実施され、プロジェクト発足当初からEASEプロジェクトとIPA/SECそれぞれの研究員がプロジェクト定例会議に参加し、データ収集体制を構築すると共にデータ分析を担当した。
データ収集は、設計工程から総合試験までを対象とし、開発で利用される構成管理ツールと障害管理ツールを介して行われ、分析にはEASEプロジェクトが開発した「EPM」と「EPMPro*」が用いられた。
観察された主な現象(事実)は「障害の発見が遅れると修正工数が極端に大きくなる」「障害がプログラム中に滞留する時間が長くなると修正工数は大きくなる」「障害の再現度や重要度も修正工数に影響する」である。
EPMPro*の出力例
(画像をクリックすると別ウィンドウに拡大図を表示します)
ここで示した2つのグラフは、これら観測された現象に「開発者による解釈やノウハウを加えて作成したもの」でEPMPro*の出力例である。開発作業や障害対応の遅延を検出し、進行中のプロジェクトのコントロールへの応用が期待されている。
なお、分析に利用したEPMはEASEプロジェクトのEPMページからダウンロード可能である。現在、IPA/SECにおいて、「EPMツール検証プロジェクト」が実施されている。興味のある方はぜひご参照されたい。また、EPMPro*についてもEASEプロジェクトまでご連絡いただきたい。
次に、オープンソースコミュニティのコミュニケーション構造分析の例を紹介しよう。 次のページ