GitLabは「AI」の組み込みを加速させる
──GitLabはGitを使ったバージョン管理システムとして創業されていますが、現在はDevSecOpsプラットフォームと呼んでいますね。まずは、その背景から教えてください。
創業は2011年、バージョン管理やソースコード管理でスタートしており、その後CI/CD(継続的インテグレーション、継続的デリバリ)を加えたことで、現在につながるプラットフォーム開発が始まりました。我々はビジネスの中核となる部分をオープンソースとして公開する“オープン・コア戦略”をとっています。
GitLabが提供するDevSecOpsプラットフォームは、ソフトウェア開発に関与する人すべてを1ヵ所に集めること、つまり開発やセキュリティ、運用、それぞれの担当者が同じプラットフォームを利用することで、一体となって作業ができることを目指しています。
では、なぜ我々がDevSecOpsに至ったのか。それは、一般的に「ソフトウェア開発の変革」が指摘されている中で、顧客と話していると技術的課題ではなく、考え方やプロセスを変えるという課題に直面していることがわかったからです。
具体的に「人」「プロセス」「ツール」という3つの側面から説明しましょう。
まず、人やチームにかかわる課題として、より少ない(人数や時間などの)リソースでの開発が求められていることが挙げられます。
プロセスでは、セキュリティをすべての開発プロセスに組み込んでいくことが課題視されているということ。実際に我々のグローバル調査によると、回答者の74%が「今後3年でセキュリティをシフトレフトさせていきたい」、つまり早期に開発プロセスの一部としてセキュリティを組み込んでいきたいと回答しています。
また、組織の中でバラバラの開発ツールを用いているという、ツール面での課題も挙げられるでしょう。こちらも66%が「すぐにでもツールの統合に着手したい」という調査結果が得られており、非効率な状態にある組織が多いと言えます。
だからこそ、DevSecOpsとして開発、セキュリティ、運用の各チームが1つのプラットフォームで作業するための方法を提案しているのです。
──最近では、生成AIを活用しているようですね。
数年前からAIに取り組んでおり、2023年5月のリリース16では「GitLab Duo」としてAIによる新機能を発表しました。
GitLab Duoは統合的なものであり、2022年のバージョン15で導入していたAI機能も含まれます。主なものとして、Code Suggestions(コードの提案)、コードの説明(Code Explanation)、Chat(チャット)、Test Generation(テストの生成)など、既に提供しているもの、実装予定のものとあわせて15の機能があります。
まずはコードの作成を高速・効率化するためにAIを活用していますが、高速化だけでは開発者の日常業務のうち25%程の改善にしか寄与できません。今後はセキュリティにも拡大していくことはもちろん、オンボードの効率改善、テストの高速化、ドキュメンテーション作成支援などでもAIによる支援を進めていきます。
当然ながらプライバシーや透明性も重要視しており、コードは企業にとって重要な知財であるため、我々は非公開のコードをトレーニングデータとして利用することはありません。
──セキュリティにもAIを活用するとのことですが、どのような機能を予定していますか。
(GitLab)バージョン15で加わったGitLab Duoの機能として、Test Generation(テストの生成)やVulnerability Summary(脆弱性の要約)があります。より品質の高いコードを書けるようにしたり、脆弱性を説明できるようにしたりとセキュリティの強化につながるでしょう。また、COBOLなどの古い言語を自動でリファクタリングする機能も拡充していきます。