ゆめみでは全社的に GitHub Copilot の利用を推進しています。
ただGitHub Copilot Businessを全社的に導入する前に1つのプロジェクトで先行して導入実験を行っておりました。
このプロジェクトでGitHub Copilot の満足度アンケート(NPS調査)とFindyTeam+の調査を行ったので結果を共有してみようと思います。
導入しようか検討されている場合のご参考になれば。
ゆめみの GitHub Copilot 導入後のNPS(PSJ)およびFindyTeam+の調査結果
以下NPS(PSJ)のアンケート内容と結果です。
- 計算方法はNPSの日本版の計算式であるPSJを採用しております。( -100 〜 100 )
- 点数 0〜10点で各項目を評価
- ※計算式:(推奨者 − 批判者)/全体人数 × 100
- 推奨者:8点以上
- 中立:5〜7点
- 批判者:4点以下
- ※計算式:(推奨者 − 批判者)/全体人数 × 100
- 点数 0〜10点で各項目を評価
総合PSJ: 45.8
質問 | PSJ値 |
---|---|
GitHub Copilotを利用して、どれくらい満足していますか? | 75 |
GitHub Copilotを使用することで、プロジェクトの生産性が向上しましたか? | 75 |
GitHub Copilotを導入する前と比べて、コードの品質やセキュリティに関して向上を感じていますか? | 37.5 |
GitHub Copilotを導入したことでテストコードのカバレッジが向上したと感じますか? | 0 |
GitHub Copilotを導入したことでドメインについて熟慮する時間は増えましたか? | 0 |
あなたはGitHub Copilotを同僚や友人におすすめしますか? | 87.5 |
以下 メンバーの感想をまとめメリット・デメリットを記載しました。
メリット
- 単純な入力が自動生成されることで、作業効率が大幅に向上しており、全体として非常に助かっている。
- ダミーデータの作成や同じような実装を繰り返す時に自動補完してくれるため、時間節約につながる。
- コード補完を頻繁に行ってくれるため、特定のコードの補助だけでなく全体的にコード作成がスムーズになる。
- コメントなど日本語を考える部分でも補完してくれて便利である。
- NPS(PSJ)の結果を見ると、GitHub Copilotの満足度とプロジェクトの生産性、友人に推奨するかどうかのスコアは高い。
デメリット
- Copilotの適切な使い方を覚えないと、使えないコードが提案されるという感覚がある。
- 類似の実装があまりない場所については頻繁に間違った候補が出てくるため、間違った推薦があると煩わしい。
- プロジェクト内のコードに引っ張られている感覚が強く、テストコードではCopilotからの提案が漏れを防ぐことはあるが、それがプロジェクト全体の効率改善に直結するわけではない。
- NPS(PSJ)の結果を見ると、コードの品質やセキュリティの向上、テストコードのカバレッジ向上、ドメインについて熟慮する時間が増えたかどうかのスコアは低い。
Findy Team+
分析
- GithubCopilot導入後、1日の1人当たりのプルリク数が1.2から2.1に増加
- 導入前はおおよそ0.8~1で推移している
- その後一番低い時点でも1.3でおおよそ1.6くらいを目処に推移
- プロジェクト開発を促進するために増員を2回行っておりGithubCopilotのみの影響ではないが開発に貢献している可能性はある。
総評
結論として、GitHub Copilotはエンジニアリングにおける効率・生産性向上に対して大きなメリットを提供していることが確認できます。
特に単純な入力やダミーデータの自動生成、日本語コメントの補完など、エンジニアの手間を省き作業効率を向上させることが評価されています。
しかし一方で、その使用方法を完全に理解しコントロールするまでの学習曲線や、一部のコード提案の精度に関する問題点も指摘されています。
テストコードのカバレッジやドメイン熟考の時間増加については現時点での効果を実感していないエンジニアも一定数おられます。
これはCopilotの能力や使用方法、またはエンジニアの期待とのギャップかもしれません。
Findy Team+の情報からも一人当たりのプルリク数の向上も見られることから一定の貢献は予想されます。ただしプロジェクト改善の影響もあり誤差の範囲の可能性も少し残っています。
これらの点も含めた使い方の共有や、これらの課題を解決するための新たな機能提供などが期待されます。
全体的には、GitHub Copilotはエンジニアリングの生産性を向上させる有用なツールであることが確認できましたが、さらなるパフォーマンス向上とユーザーエクスペリエンス改善が求められることも明らかになりました。
余談
- GitHubからも導入に関する調査報告がありました。
- ゆめみではGithub Copilotなど生産性向上を目的としたAI支援について推進しています。
- ただしクライアント側でAIの利用が禁止されている場合は利用しておらず、プロジェクトの状況に合わせて実施しております。