Skip to main content
QUICK REVIEW

[論文レビュー] Machine Learning for Software Engineering: A Tertiary Study

Zoe Kotti, Rafaila Galanopoulou|arXiv (Cornell University)|Nov 17, 2022
Software Engineering Research参考文献 176被引用数 4
ひとこと要約

本研究は、ソフトウェア工学(SE)における機械学習(ML)に関する83件の二次的レビューを統合し、6,117件の一次的論文を分析することで、トレンド、課題、研究ギャップを特定した。MLは主にソフトウェア品質とテストに応用されており、人間中心のSE分野では不足している。今後の進展のためには、データパイプラインの改善、段階的学習の採用、産業界との連携強化といった具体的な対策が提案される。

ABSTRACT

Machine learning (ML) techniques increase the effectiveness of software engineering (SE) lifecycle activities. We systematically collected, quality-assessed, summarized, and categorized 83 reviews in ML for SE published between 2009-2022, covering 6,117 primary studies. The SE areas most tackled with ML are software quality and testing, while human-centered areas appear more challenging for ML. We propose a number of ML for SE research challenges and actions including: conducting further empirical validation and industrial studies on ML; reconsidering deficient SE methods; documenting and automating data collection and pipeline processes; reexamining how industrial practitioners distribute their proprietary data; and implementing incremental ML approaches.

研究の動機と目的

  • 既存の二次的文献を統合することで、機械学習(ML)がソフトウェア工学(SE)に応用されている現在の状況を体系的かつ証拠に基づいて概説すること。
  • 大規模なレビュー・オブ・レビューを通じて、SE分野のうちMLが最も頻繁にターゲットにされている分野、使用されるML技術、研究ギャップを特定すること。
  • MLベースのSE研究におけるデータ品質の欠如、産業的関連性の不足、実証的検証の不十分さといった課題を浮き彫りにすること。
  • MLのSE応用の堅牢性、スケーラビリティ、実世界への適用可能性を向上させるための実行可能な研究戦略および産業界連携戦略を提案すること。
  • ML for SEとSE for MLという関連分野を明確に区別し、研究の範囲と方向性を明確にすること。

提案手法

  • PRISMAおよび三次的研究ガイドラインに従い、2009年から2022年までの間に発表されたMLを用いたSEに関する83件の二次的レビューを体系的に収集・品質評価した。
  • SWEBOKの知識領域(KAs)およびサブドメインを用いて分類し、MLの応用をSEライフサイクル全体にわたってマッピングした。
  • 学習タイプ、タスクタイプ、モデルタイプ、データタイプに基づく四軸分類スキームを用いて、レビューに登場するML技術を分類した。
  • 研究者間の合意形成を図りながら、手動による反復的コーディングを実施し、各レビューからSEタスク、研究トピック、ML技術を抽出・分析した。
  • ドキュメンテーション、パイプライン自動化、データ共有の実施状況を評価することで、データ収集の実践、モデルの一般化可能性、産業的関連性を評価した。
  • 研究者および実務家に向けた提言を、発見に基づいて統合した。具体的には、実証的検証の必要性、産業界の事例研究、データ管理の改善が含まれる。

実験結果

リサーチクエスチョン

  • RQ1二次的レビューによると、機械学習の応用が最も頻繁にターゲットにされているソフトウェア工学の知識領域とタスクは何か?
  • RQ2SE分野で使用されている主要なML技術タイプ(例:教師あり学習、オンライン学習)は何か?また、採用度と一般化可能性の観点から、それらを比較するとどうなるか?
  • RQ3MLの産業的採用を阻害する主な障壁は何か?特に、データ品質、パイプライン自動化、特許情報の共有の欠如について。
  • RQ4SEの手法やデータ収集の実践における欠陥は、ソフトウェア工学におけるMLモデルの信頼性とスケーラビリティにどのように影響を与えるか?
  • RQ5学術的ML研究と産業的SE実務の間のギャップを埋めるための研究戦略および連携戦略は何か?

主な発見

  • ML for SEの研究の大部分はソフトウェア品質とテストに集中しており、データの主観性やラベル付けの難しさのため、人間中心の分野(例:ソフトウェア要件、職業的実務)には顕著に注目が薄い。
  • 教師あり学習と分類タスクが支配的であり、リアルタイムおよび変化するシステムに有益であることが示されているにもかかわらず、モデルベース学習に比べてオンライン/段階的学習の採用は低い。
  • データパイプラインの透明性に深刻なギャップが存在し、多くの研究でデータ収集プロセスが文書化されておらず、自動化もされていない。これは再現性とスケーラビリティを損なう要因となっている。
  • 特許情報の共有が欠如していることが、産業的関連性を阻害しており、実世界のSE環境におけるモデルの性能と一般化能力を制限している。
  • 古く不適切なSEの手法が、堅牢なMLモデルの開発を妨げており、手法の再評価およびハイパーパrameterチューニング、クラス不均衡の適切な処理の改善が求められる。
  • ハイブリッド、アンサンブル、段階的ML技術は、研究分野としてまだ十分に掘り下げられていないが、SEの文脈においてモデルの信頼性と適応性を向上させる有望な研究分野である。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。