全社導入時に設定した、リスク回避の「3ステップ」
全社導入は調査と評価を始めてからおよそ3カ月というスピードだったが、この「調査と評価」の具体的な内容について、堀江氏は以下の3ステップを挙げた。
- GitHub Copilotとは何か? を知る
- 導入するうえでの課題の整理
- 課題への対策の検討
「GitHub Copilotとは何かを知る」という点においては、まずCTOや情報システム部門と共にCopilotについて調べたうえで、GitHub社に疑問点のヒアリングや相談を行った。堀江氏は、調査過程において明らかとなった3つのリスクについても述べた。
1.セキュリティ上の懸念
Copilotが提案するコードに脆弱性が含まれている可能性と、プロダクトコードがCopilotの学習データとして利用される可能性の2種類からなる懸念点だ。脆弱性については、Copilotに組み込まれている脆弱性防止システムとGitHub Advanced Securityの組み合わせで強固に防ぐことが可能だ。
堀江氏は「開発者は自身で書いたコードの内容を、Copilotから受けた提案の中身も含めて理解した上で、プルリクエストを作成する必要がある。アーリーコードレビューも不可欠だ」と、リテラシーの重要性を力説する。
2.ライセンス侵害のリスク
ライセンス侵害のリスクについては、CopilotはGitHub上で公開されているOSSのコードを学習しているため、「コードを生成するためのコード」がライセンス侵害に問われる可能性がある。ZOZOでは、プロダクトコードをCopilotの学習に使用されない「Copilot Business」を使うことで、ソースコードの流出も含めた総合的な侵害リスクをケアしている。
さらにCopilotの提案がGitHubのパブリックコードに一致した場合に提案をブロックするよう設定を行い、第三者からもし損害賠償請求があった場合に備えてGitHub社から補償を受けられることも確認している。
3.導入による費用対効果
実際の開発業務ではコスト削減に効果がなかったというリスクだ。この点については最初にCopilotの試験導入を行い、効果を可視化して導入可否の判断を行った。
試験導入においては、全社導入後にCopilotを広めてもらうことも視野に入れ、「新しいツールに対して積極的」かつ「導入時にチーム内で有効な活用方法を実施できる」というパーソナリティを持つエンジニアを対象者としている。最終的に選ばれた56人の対象者が、2週間にわたって実際の業務でCopilotを使用。試験後には独自に作成したアンケートで定性評価を行い、最後に費用対効果の見積りを行った。
導入試験でわかったパフォーマンスの優秀さ
試験後アンケートで設定した、「Copilotを使うことで、1日あたりどれくらいの時間を節約できたか」という質問においては、全体の58%「1日あたり30分以上の時間を節約できた」と回答した。検索時間の削減やタスクの完了時間の短縮、満足度向上や精神的負担の軽減についても半数以上が効果を実感しており、堀江氏は「Copilotは反復的な作業への効果が非常に高いことが伺える」と所感を述べた。
しかしながら、一方でフロー状態(作業に没頭する状態)の入りやすさや生産性の向上についての設問においては、効果を感じなかった対象者が一定数いた。堀江氏は、フロー状態について「1日あたりのコーディングの時間に有意差がなかったことが原因」だと推測し、生産性についてはCopilotのサポート対象外言語のエンジニアの満足度が低かったことから、「非公式プラグインに依存したことが結果に反映された」と分析する。
次に費用対効果の見積もりを行い、「Copilotでどれくらいの時間を節約できたか」というアンケート結果から、月あたりの削減コスト額の計算をCopilotの利用量と比較した。この結果、毎月のコストメリットを「1人あたり4万4704円〜9万5604円」と見積もった。
ここまでのまとめとして、堀江氏は「セキュリティ上の懸念及びライセンシングのリスクについてはGitHub Copilot Businessを利用して低減し、導入による費用対効果についても十分な効果とコストメリットがあると判断したことから、Copilotを全社に導入することを決定した」と振り返った。