mozilla/bugbug

Platform for Machine Learning projects on Software Engineering

What it solves

Bugbug は機械学習を用いて、面倒なソフトウェアエンジニアリングと品質管理タスクを自動化します。特に Bugzilla のような大規模バグトラッカーやコードリポジトリの管理負荷を対象とし、チームがバグのトリアージや欠陥予測、テストワークフローの最適化を支援します。

How it works

本プロジェクトは、バグレポートやコミットデータを分析するさまざまな ML クラスifier の学習とデプロイのためのフレームワークを提供します。これらのソースから特徴量を抽出し、Keras や scikit-learn パイプラインを含むモデルでデータを分類します。ユーザーは CLI スクリプトでモデルを学習させるか、Mozilla の CI プラットフォーム(Taskcluster)を通じて学習をトリガーできます。

Who it’s for

主に大規模プロジェクト(現在は Mozilla/Firefox に焦点)で作業するソフトウェアメンテナや品質保証エンジニア向けに設計されており、バグトリアージやリスク評価の自動化を可能にします。

Highlights

  • Diverse Classifiers: 担当者の提案、スパム検出、リグレッションの特定、実際のバグと機能要望の区別など、専門的なモデルを含みます。
  • Risk Prediction: リグレッションを引き起こす可能性や失敗により取り消される可能性のあるパッチを検出するクラスifier を提供します。
  • Test Optimization: 特定のパッチに対して最も関連性の高いテストを特定する testselect クラスifier を含みます。
  • Data Mining: Mercurial などのバージョン管理システムからデータを抽出し、学習セットを生成するツールを提供します。