Skip to main content
QUICK REVIEW

[論文レビュー] How Do Software Developers Use GitHub Actions to Automate Their Workflows?

Timothy Kinsman, Mairieli Wessel|arXiv (Cornell University)|Mar 22, 2021
Software Engineering Research参考文献 38被引用数 65
ひとこと要約

本研究では、926のプロジェクトを対象に回帰不連続設計を用いて、オープンソース開発者がGitHub Actionsをどのようにワークフロー自動化に活用しているかを調査した。その結果、採用により拒否されたプルリクエストの数が増え、マージされたプルリクエストにおけるコミット数が減少することが判明し、開発者による肯定的な評価とは裏腹に、ワークフローの摩擦が生じている可能性が示唆された。

ABSTRACT

Automated tools are frequently used in social coding repositories to perform repetitive activities that are part of the distributed software development process. Recently, GitHub introduced GitHub Actions, a feature providing automated workflows for repository maintainers. Although several Actions have been built and used by practitioners, relatively little has been done to evaluate them. Understanding and anticipating the effects of adopting such kind of technology is important for planning and management. Our research is the first to investigate how developers use Actions and how several activity indicators change after their adoption. Our results indicate that, although only a small subset of repositories adopted GitHub Actions to date, there is a positive perception of the technology. Our findings also indicate that the adoption of GitHub Actions increases the number of monthly rejected pull requests and decreases the monthly number of commits on merged pull requests. These results are especially relevant for practitioners to understand and prevent undesirable effects on their projects.

研究の動機と目的

  • オープンソースプロジェクトがワークフロー自動化にGitHub Actionsをどのように使用しているかを理解すること。
  • イシュートラッカーにおける開発者間のGitHub Actionsに関する議論を検討すること。
  • GitHub Actionsの採用が、プルリクエストの数、コミット頻度、レビューサイクルといったプロジェクト活動指標に与える影響を評価すること。
  • 自動化が貢献者参加度やコード品質に及える潜在的な意図しない影響を特定すること。

提案手法

  • RepoReapersデータセットおよびGitHub APIを用いて、3,190のアクティブなGitHubリポジトリからデータを収集した。
  • `.github/workflows/`ディレクトリ内のYAMLファイルの有無を検出することで、GitHub Actionsの採用状況を特定した。
  • Actionsに関する209件のGitHubイシューを手動で分析し、開発者の感情や懸念をカテゴライズした。
  • 回帰不連続設計(RDD)を用いて、Actions採用前後のプロジェクト活動指標の変化をモデル化した。
  • 統計的制御およびプラセボテストを実施し、モデルの妥当性を確保するとともに、交絡要因を低減した。
  • ワークフローファイルのコミット履歴を追跡することで、Actionsの時間的変化と安定性を分析した。

実験結果

リサーチクエスチョン

  • RQ1RQ1: OSSプロジェクトはどのようにGitHub Actionsを使用しており、その採用はどれほど一般的か?
  • RQ2RQ2: 開発者はイシュートラッカーでGitHub Actionsの使用についてどのように議論しているか?
  • RQ3RQ3: GitHub Actionsの採用が、プルリクエストの数、コミット頻度、クローズまでの時間といったプロジェクト活動指標に与える影響は何か?

主な発見

  • 調査対象の416,266リポジトリのうち、わずか0.7%がGitHub Actionsを採用しており、使用は限定的だが拡大傾向にあることが示された。
  • 70%のActionsが継続的インテグレーション、ユーティリティ、デプロイメントのカテゴリに使用された。
  • GitHubのイシューでの議論は主に肯定的であり、他のツールからの移行や機能要望が一般的なテーマであった。
  • GitHub Actionsの採用により、月間の拒否されたプルリクエスト数に統計的に有意な増加が見られた。
  • また、マージされたプルリクエストあたりのコミット数も減少しており、マージ後のコードイテレーションが減少している可能性を示唆している。
  • プルリクエストのクローズまでの時間に有意な変化は認められず、自動化が解決時間を加速または遅延させなかったことが示された。

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

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

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

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