欧州のテック企業CubeがGitLab DuoのAIを活用して安全なソフトウェア開発を推進
GitLab DuoとGitLab Ultimate
GitLab Ultimateがチームにもたらすメリットについて知りたいですか
オランダに拠点を置くCubeは、モバイルアプリ、ウェブサイト、Eコマースソフトウェアなどのソリューションの設計と制作を専門としたソフトウェア開発会社です。
同社は、エネルギー、不動産、ウェルネス、食品配達のほか、その他さまざまな市場において顧客のビジネスのデジタル化を支援しています。GitLabの長年のユーザーであるCube社は、GitLab Duoの人工知能(AI)機能を導入し、安全なソフトウェアを制作するプロセスの効率化とスピードアップを実現しました。
Cube社にとって、GitLab Ultimateの導入は組織全体を活性化させる画期的な決断でした。ほぼ全社員がDevSecOpsフレームワークに沿って作業し、効率的な製品開発、セキュリティ確保、およびデプロイに注力しています。2019年にGitLabを導入して以来、Cube社は常にプロセスの最適化方法を模索してきました。そして2024年春には、AI搭載のGitLab DuoをGitLab Ultimateプランに追加し、ソフトウェアアプリケーションやウェブサイトの提供、クライアントのバックグラウンドデータ管理の能力をさらに強化しました。
AIによるGitLab Ultimateのフル活用
Cube社は、オートメーションやセキュリティスキャン、バリューストリーム管理など、GitLab Ultimateの多様な機能を活用していますが、今年初めにアップグレードを決めた主な理由として、GitLab Duoの利用メリットがありました。DevSecOpsチームのメンバーは、コード作成とチャットアシストを活用した時間の節約を促進するために、人工知能の導入を求めてきました。
当初、同社はGitHubのCopilotツールとJetBrains AIアシストを試しましたが、いずれも、チームがSDLC全体にわたって必要とするシームレスなAIインテグレーションをサポートしていませんでした。Cube社は、デベロッパーをはじめ、テストエンジニア、セキュリティスペシャリスト、プロジェクトマネージャーといったすべてのチームメンバーがGitLab Duoを使用できる単一プラットフォームを必要としていました。
「コード提案、テスト生成、および要約(サマリー生成)などの機能を備えているGitLab Duoに決めました。その結果、すぐに効率性が改善されました」と、Cube社のオペレーションマネージャーであるMans Booijink氏は述べています。「1つのプラットフォームでAI機能のパッケージ全体を使用できることが理想でした」
Cube社は2024年春にGitLab Duoを導入し、AI活用の第一ステップとして、コード提案とAI搭載の会話型アシストであるGitLab Duo Chatの使用を開始しました。導入当初から、チームはすぐに効果を実感し始めました。特に、若手デベロッパーにとっては、コードを開発したり、大量のリクエストやコメントを理解したりする際に、AIアシストが大いに役立ちました。
「まだAIの使用を始めたばかりで、主に活用しているのはコード提案のみですが、すでに多くの従業員から、改善を実感したり、手作業が不要になったり、または時間が節約されたりしたことに対する喜びの声が上がっています」とBooijink氏は話します。「デベロッパーにとって、20~30件のコメントが投稿されたイシューをすべて整理することは非常に困難な場合があります。しかし、Duo Chatでは、重要な点や完了すべき点を尋ねることができます。すぐに全体像を把握できるため、適切な方向性がわかり、時間の節約を実現できます」
Cube社はAIの使用を始めたばかりかもしれませんが、すでにその成果を実感しています。
デベロッパーはGitLab Duoを使用して、長期的な取引のある顧客のために、モバイルアプリを改善し、新機能を追加しました。このアプリは、ユーザーが日々のガスや電気の使用状況を分析および管理したり、使用したエネルギーのうち太陽光発電によって生成された割合を確認できるものです。
コード提案とコード説明を使用することで、デベロッパーは時間と労力を削減しながら、重要な顧客から寄せられた改善リクエストに迅速に対応できます。
チーム間およびSDLC全体でAIの活用を拡大
Cube社は、チーム全体およびソフトウェアデリバリーライフサイクル(SDLC)全体でAIの活用をどのように拡大していくかについて、すでに計画を立てています。
「安全なソフトウェアをより速く提供できるよう、GitLab Duoで利用できるすべてのAI機能を活用したいと考えています」とBooijink氏は話します。「それは、当社にとって非常に重要なことです。市場での競争力の維持には、迅速かつ効率的であることが必要とされます。そのためには、マージリクエストのサマリー、脆弱性の説明、そしてイシューやマージリクエストのサマリーといったAI機能を、SDLC全体で活用する必要があります。すべてが1つのシステムにまとまっている点が気に入っています」
Booijink氏は、セキュリティに焦点を当てたAI機能をチームで使用し始めることを切望しています。具体的には、マージリクエストを実行する前に潜在的なコードリスクを検知し、直ちに警告を発することができる機能です。またBooijink氏は、GitLabのセルフホスト機能のロードマップに期待を寄せており、セキュリティ脆弱性の修正にもAIを活用する予定です。
「今後GitLabのセルフホスト機能がさらに充実することは、当社にとっても好都合です」とBooijink氏は述べています。「さらなる時間の節約と効率性の向上につながるでしょう。そのため、リリースされ次第、すべてを試してみたいと考えています」
Cube社が使用するAI機能が増えるにつれ、GitLab Duoを使用するチームメンバーの数も増えていくとBooijink氏は予想しています。実際、同氏は、2024年7月にはDevSecOpsチームメイトの60%がAIを使用し、年末までには100%に達すると見込んでいます。現在、一部のデベロッパーは依然としてCopilotを使用しています。しかし、GitLab Duoを使用することでコード提案だけでなく、多様なAI機能を活用できるため、Booijink氏は、これらのデベロッパーが同僚に続いて自発的にGitLab Duoに移行することを期待しています。
「もちろん、提案機能が便利であることに変わりありません。しかし、DevSecOpsのエンジニアには、コードの作成や確認以外にも、やるべきことがたくさんあります」とBooijink氏は付け加えます。「サイクル全体でメリットを得ることが理想的で、それを実現することで、効率性を高められるのです。それこそが、全員がGitLab Duoに移行すべき理由です」
AIによる長期的な成功を目指したDevSecOpsチームの構築
Cube社はこれまでにもAIトレーニングを提供してきましたが、今後さらに多くの教育機会を設ける予定です。社内の従業員が、チーム全体および開発ライフサイクル全体で人工知能の利用を継続的に増やしていく予定であるため、拡大に合わせたトレーニングの必要性を感じています。
経験の豊富なメンバーが他のメンバーに対してコーチングを実施し、前進しながら協力し合うことを奨励することも、こうした教育方針の一環です。
「チームが必要とする支援を提供したいと考えていますが、同僚同士が互いにコミュニケーションを取り合い、支え合うことも奨励しています」とBooijink氏は語り、GitLabユニバーシティを通じたコース提供も計画していることを付け加えました。「すでに、GitLabのコード提案におけるAIの活用方法について、従業員同士で知識を共有している場面を見ています。金曜日には、事例を大画面で提示し、知識共有を行ったりしています。お互いに学び合う文化が醸成されています」
Ultimateを導入してセキュリティを強化
Cube社がPremiumからUltimateに移行した理由は、GitLab Duoを利用できること以外にもあります。別の大きな理由のひとつに、依存関係スキャン、静的および動的アプリケーションセキュリティテスト、およびシークレット検出などの自動セキュリティ機能を追加できるという点でした。DevSecOpsチームは、これらの新しいセキュリティ機能が情報セキュリティに関する国際標準であるISO 27001認証の取得に役立つと認識していたため、すぐに導入を開始しました。
「開発やデプロイのスピードを落とすことなく、安全なソフトウェアを開発するのが容易になりました」とBooijink氏は言います。「当社は、新しいコードすべてに対して自動スキャナーを使用しており、そのスキャナーには、誰がそのコードに取り組んでいても、すべての脆弱性が適切に対処されるよう承認されたルールが設定されています。これにより、ソフトウェアのセキュリティ確保が容易になるだけでなく、常に問題が適切に対処されることが保証されるため、クライアントにとっても安心です」
チーム内および顧客とのコラボレーションの促進
DevSecOpsの本質はコラボレーションにあり、チームスポーツに例えることができます。そして、エンドツーエンドの単一プラットフォームを持つことが、そのコラボレーションを促進します。
Booijink氏は、GitLabでエピック、イシュー、マイルストーン、およびイテレーションを使用することで、チームに共通認識が生まれ、プロジェクトの進捗状況が継続的に共有され、簡単に協力し合えることを指摘しています。「プロジェクトを計画する時は、最初からGitLabを使用しています」とBooijink氏は話します。「何をすべきかについてイシューでコミュニケーションを取ります。そして、クライアントや他のステークホルダーもゲストユーザーとしてGitLabに参加し、協力し合い、質問をしたり答えたりできます。これはメールでのやり取りよりもはるかに効率的です」
Booijink氏はまた、クライアントが自らイシューを作成し、懸念やリクエストを提起さえできることに言及してます。「クライアントとつながり、取り組み事項やそれぞれの目的についてのインサイトを提示し、プロセスの進捗状況を共有し、すぐにクライアントの意見を得られるのは素晴らしいです」とBooijink氏は付け加えます。「これにより、コラボレーションがはるかに向上しました」
バリューストリーム管理のモニタリング
セキュリティやDevSecOpsプロセスの改善を目的としたバリューストリーム管理は、Cube社のチームにとって重要な要素となっています。Cube社は、GitLabのプラットフォームを活用して、障害や遅延が発生している部分を把握できるバリューストリームダッシュボードを作成し、大きな前進を遂げました。プロセスにおいて何がいつ発生しているかを可視化することで、問題の解決がはるかに容易かつ迅速になります。
この迅速な対応によって、Cube社はクライアントの期待に一貫して応えています。
「これにより、サービス品質保証に定義された応答時間をしっかりと管理できます」とBooijink氏は説明します。「クライアントがプロジェクトに対して新規チケットを作成した際の当社の応答時間は、契約条件の一部に定められています。これらのダッシュボードをモニタリングすることで、市場投入までの想定時間を把握できます。クライアントには定期的に応答時間の更新情報を共有する必要があり、ダッシュボードにはそれに必要な情報が表示されます。また、この情報のおかげで、ボトルネックを解消し、タイミングを改善できます」
これらの重要なダッシュボードの構築は、プラットフォームの一部として行ったため、より簡単でした。「GitLabがなければ、はるかに困難なものになったことでしょう」とBooijink氏は振り返ります。「GitLabはユーザーフレンドリーで、今ではプロセスや数値、データの裏にあるものがはっきりと理解できるようになりました。そして、どのプロジェクトでも同じように機能してくれます」
Booijink氏はさらに、AI機能、自動セキュリティスキャン、バリューストリーム管理など、Ultimateのすべての機能が単一プラットフォームの一部として備わっているため、GitLabを使用するCube社の従業員の作業負担が軽減されたことにも言及します。
ケーススタディに記載されている情報や関係者はすべて、発表時点のものです。