ニュース

GitLab、ソフトウェアリリースの迅速化に役立つ4つのベストプラクティスを発表

 米GitLabは4日、ソフトウェアリリースの迅速化につながる4つのベストプラクティスを発表した。

 GitLabでは、アジャイルで効率的な組織に共通する点を知ることが目的に、2023年に実施したグローバルDevSecOps調査で、5000人以上の開発、セキュリティ、運用担当者に、デプロイメント頻度からチームが実践しているプラクティスまでの幅広い項目について質問した。

 この調査の結果から、ソフトウェアリリースの迅速化とデプロイメント頻度の向上に役立つベストプラクティスとして、「クラウドでのアプリケーションの実行」「BizDevOps」「CI/CD」「DORAなどのメトリクス」の4つが確認できたとしている。

 クラウドでのアプリケーションの実行については、クラウドにデプロイする一般的な利点の1つは開発スピードの向上で、今年の調査でそれに関する重大な事実が明らかになったと説明。アプリケーションの少なくとも25%をクラウドで実行している回答者は、1年前に比べてソフトウェアリリースが迅速化されたと答えた人の割合が2.2倍に上っており、アプリケーションの半数以上をクラウドで実行している回答者は、1日に何度も本番環境にデプロイしていると答えた人の割合が4.2倍に上っているという。

 一方、何人かの回答者は、クラウドコンピューティングがソフトウェア開発にもたらす可能性がある複雑性を認めながらも、クラウドの価値についてコメントしていると説明。クラウドファーストのソフトウェア開発モデルへの移行が進む中、開発プロセス全体にわたってセキュリティを最優先にしながら、クラウドでのネイティブな開発を可能にするテクノロジーを導入する必要があるとしている。

 BizDevOpsは、方法論として話題をほぼ独占しているDevOpsやDevSecOpsからさらに踏み込み、開発/セキュリティ/運用チームにビジネスチームを組み込み、実践している組織もあると説明。ソフトウェア業界のあるIT運用マネージャーは、「ソフトウェアプロジェクトの大規模化や複雑化に伴い、開発者は設計担当者、テスト担当者、プロジェクトマネージャー、ビジネスステークホルダーなど、他のチームメンバーとの緊密な連携が求められるようになる」と述べ、ビジネスとの連携の重要性を強調しており、BizDevOpsを実践している組織の回答者は、1年前に比べてソフトウェアリリースが迅速化されたと答えた人の割合が1.4倍に上っているという。

  CI/CDは、ソフトウェア開発ライフサイクルの自動化が、ソフトウェアリリースの迅速化と効率化に役立つのは当然だが、その証拠として効果を数値化すると分かりやすいと説明。調査の結果、CI/CDを実践している回答者は、1日に何度もデプロイしていると答えた人の割合が2倍に上っており、1年前に比べてソフトウェアリリースが迅速化されたと答えた人の割合も1.2倍に上っているという。

 一方、CI/CDについては課題を指摘する声もあり、例えば航空宇宙/防衛業界のあるIT運用アソシエイトは、ソフトウェア開発の効率化を妨げる要因として「CI/CDをまったく理解していない経営層」を挙げているという。また、バイオテクノロジー業界のあるソフトウェア開発インターンは「CI/CDを自動化するツールは、コードエディター、APMソフトウェア、欠陥トラッカーとともに、開発サイクルの迅速化と品質向上に役立つ」とする一方で、「企業は開発者の生産性向上に役立つツールに投資したがらない」と述べているという。これらの回答は、開発プロセスの早い段階へのセキュリティの組み込みや、一層緊密なフィードバックループの構築など、CI/CDを他のDevSecOpsプラクティスに統合して、開発のサイロ化解消を支援するツールに投資する価値を裏付けるとしている。

 DORA(DevOps Research and Assessment)などのメトリクスについては、調査によると、主要な開発メトリクスの追跡に意識的に取り組んでいる組織は、メトリクスの改善につながる可能性が高くなっていると説明。DORAメトリクスやその他の類似メトリクスを追跡している組織の回答者は、1日に何度もデプロイしていると答えた人の割合が1.4倍に上っているという。

 リリース速度とデプロイメント頻度、およびソフトウェアリリースの迅速化や1日複数回のデプロイメントを実現するすべてのプラクティスの詳細については、GitLabの2023年のDevSecOps調査レポート「Productivity & Efficiency Within Reach(手の届くところにある生産性と効率性)」で確認できる。このレポートでは、生産性と効率性に大きく影響する可能性がある2つの重要な要因として、「新人の開発者のオンボーディングに必要な期間」と「組織にとっての開発者の募集・雇用・定着の難しさまたは容易さ」についても掘り下げている。また、現在の状況と回答者を成功に導く可能性が高いプラクティスを紹介している。