コンテンツにスキップ

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の属性を自動的に決定する手法についての研究は多いため、論文を調べれば公開されているデータセットが見つかると思われる

来週の計画

  • これまでの成果を踏まえて研究の見通しを立てる