2025年8月2日
今週の活動
- バグレポートの分析方法の検討
- バグを体系的に分類する方法(欠陥分析手法)
- ODC(Orthogonal Defect Classification)
- 1992年に発表された、ソフトウェアの欠陥の分類手法
- Defect Typeという属性を用いて、実際に行われた修正の性質を分類
- Function: 新しい機能の追加、既存の機能の大幅な変更
- Interface: モジュール間の接続部分(API、プロトコル、データ形式)
- Checking: 入力値の検証、条件判定、エラーハンドリング
- Assignment: 変数への値の代入、変数の初期化、データ構造
- Timing/Serialization: 並行処理、同期処理、処理順序
- Build/Package/Merge: コンパイル、リンク、設定ファイル、依存パッケージ
- Documentation: マニュアル、設計書、コメント
- Algorithm: アルゴリズムの効率性や正確性
- IEEE 1044(IEEE Standard Classification for Software Anomalies)
- 1993年に発表された、ソフトウェアの異常の分類手法
- Typeという属性を用いて、実際に行われた修正の性質を分類
- Data: 変数の初期化、データ型、変数名
- Interface: モジュール間インターフェース
- Logic: 条件分岐、ループ、アルゴリズム
- Description: ソフトウェアの使用方法、インストール方法、操作方法などのマニュアル
- Syntax: プログラミング言語の規約
- Standard: 標準
- Other: いずれのTypeにも該当しないもの
- ただし、2020年にInactivateされているため、標準としてはあまり人気がないと推測される
得られた成果
- バグ混入データやバグ修正データにODCの属性を付与すれば様々な観点からバグを分析できる
直面した課題
- ODCの属性の値を自動的に決定するためのデータセットが必要
- 基本的に1人で研究を行っており、アノテーション一致度を測るための手法(例: カッパ係数)を使って学習用データを作成できないため
- ODCの属性を自動的に決定する手法についての研究は多いため、論文を調べれば公開されているデータセットが見つかると思われる
来週の計画