第3回:DevSecOpsは生産性と運用効率を向上させる
今回は「第3回:DevSecOpsは生産性と運用効率を向上させる」についてご紹介します。
関連ワード (調査からひもとくDevSecOpsの現状と課題、開発等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、ZDNet Japan様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
実例を通じてアジャイル開発や継続的なインテグレーション/デプロイメント(CI/CD)など、モダンな開発環境と運用をどのように実現していくのかを紹介する本連載。今回のテーマは開発における生産性と効率性です。実際に、現在どの程度の開発生産性が実現できているのか、また開発者を支援する施策にはどのようなものがあるか。GitLabが実施した最新のグローバル調査の結果から見ていきます。
開発に携わるなら(特に技術責任者の場合)当然のように理解できるのは、開発における生産性と効率性は最優先事項だということでしょう。これは、GitLabが全世界の開発・セキュリティ・運用に携わる5000人以上のプロフェッショナルを対象として2023年に実施した最新のグローバル調査からも確認できます。
専門家の皆さんならご存じの方も多いと思いますが、DevSecOpsとは、DevOpsの間にセキュリティ(Sec)を組み込んだ造語です。開発チームと運用チームが連携して開発サイクルを回していくソフトウェア開発手法に、セキュリティの実践を融合させる考えです。いまやアプリケーションがビジネスや日常生活に果たす役割は大きくなっています。サイバー攻撃の脅威が高まるなか、常に安全性を維持していくことは欠かせません。DevSecOpsを実現するためのノウハウやプロダクトは数多く出てくるようになり、より高等なDevSecOpsへのアクセスや活用がしやすくなる環境も整ってきています。
グローバル調査より「DevSecOpsの手法を採用することで得られたメリットは?」との設問に対して、回答の上位2つは「運用効率の向上」と「開発者の生産性向上」でした。ITの専門家によると特に開発者の生産性向上は、組織全体にわたりDevOpsを拡張させていく際に最も重要な要素となります。
実際のところ、どのくらいの生産性を達成できているのでしょうか。近年ではCI/CDツールを採用することや、チーム内の連携を強めるBizDevOpsへの取り組みも普及しています。これらのツールは生産性向上に寄与します。「ソフトウェアリリース頻度を前年より高めることができた」という回答もあり、ある程度のアプリケーションをクラウド環境で稼働させているという傾向も見られます。クラウドツールの使用と生産性の向上には明らかな関連性があるようです。
本番環境へのデプロイ頻度を問うと、「少なくとも数日に1回」が回答者の62%を占めています。そのうち13%は「1日に数回」という高い頻度でした。逆に「1カ月に1度」は14%、「数カ月に1度」は4%と、デプロイ頻度が少ない回答者が少数派であることが分かります。
デプロイをより頻繁に実践すると、開発チームはよりタイムリーにフィードバックを得ることができます。すると開発者はコードの記憶が新鮮さを保っているうちに修正できるので、デプロイをより頻繁に、より早く、より簡単にできるようになります。調査結果によるとこれらのツールは開発メンバーの生産性を高めるだけではなく、幸福感を維持することに寄与するとのことです。忘却の彼方にあるコードを記憶から掘り起こして修正することは苦痛とまでは言いませんが、より多くの労力がかかってしまうからです。
チーム全体の生産性を測定する1つの要素として、新しいチームメンバーのオンボーディングがあります。職場で使う多くのツールのセットアップやキャッチアップに時間がかかるようでは生産性の向上は難しく、下手をすれば職場に見切りをつけて次の転職先を探してしまうかもしれません。