BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース OverOpsが第2回の年次DevOps調査結果をリリース

OverOpsが第2回の年次DevOps調査結果をリリース

原文(投稿日:2020/07/20)へのリンク

継続的信頼性(continuous reliability)プラットフォームベンダのOverOpsは、先日実施した調査の結果から、DevOps向け投資活動の中において、企業が最も多くの投資を行っているのが、ソフトウェア開発の定常的フローの実現を目的としたものであることを確認した。調査からは、継続的インテグレーション(54パーセント)や継続的デリバリ(42パーセント)といったプラクティスが、投資のトップ分野であることが明らかになっている。"2020 State of Software Quality"と題されたこの調査では、エンジニアリングチームが最先端のテクノロジやプラクティスを支持する中で、特に自動コード分析の採用が増えていることも確認されている。

同調査は、開発者やQA専門家、DevOpsエンジニア、サイト信頼性エンジニア(SRE)などを含む、600人のITプロフェッショナルを対象に実施された。回答者の多くは、新たなコードや機能を、2週に1回から1日数回までのペースでリリースしている、と回答している。これは"move fast"のトレンドを表している反面、テストや可観測性(observability)といったソフトウェア品質保証の重要なコンポーネントについての報告は、それぞれ34パーセントと21パーセントに留まっている。

意外なのは、調査回答者の大半(70パーセント)が、自分たちにとっては品質がスピードよりも重要である、と答えていることだ。これは回答者たちが、リリース前のコード品質を最高のものにするため、たとえロードマップにいくらかの遅れが出たとしても、運用展開前に可能な限りテストを実施することを優先している、ということであるのは明らかだ。

Consortium for IT Software Quality (CISQ) アドバイザリボードメンバのHerb Krasner氏は、"DevOpsへの移行と、チームがソフトウェアを提供する速度の向上は、これまでになかったものです。同時にそれは、より高いリスクと脆弱性に対処することでもあります"、と述べている。

この点を強調する事実として、調査結果からは、コード品質の向上(60パーセント)と開発者の生産性向上(52パーセント)が主要な目標であることも明らかになっている。MTTI(Mean Time to Identify)やMTTR(Mean Time to Repair)の削減は、いずれもリストの末端に近かった。

これら企業の次の関心領域を表すものとしては、DevOpsおよびマイクロサービスの話題を、それぞれ58パーセントと45パーセントの回答者が挙げている。エラーが起こりやすい手作業プロセスの必要性を打ち消す手段としては、静的および動的コード分析手法の人気が高まっている。その他の手法として、可観測性やSRE、"シフト・レフト"、"シフト・ライト"などもリストに挙げられている。

その一方で、45パーセントの回答者がmove fastのプレッシャを受けており、結果として品質保証のための時間が不十分になっている、と答えている。アプリケーション品質における課題として最も多く報告されているのは自動化の欠如(48パーセント)で、可視性、データ、メトリクスの欠如(25パーセント)と監視プロセスおよびツールの不足(29パーセント)がそれに続いている。

調査回答者の半数以上が、少なくとも週1回以上、運用環境で重要な、あるいはユーザに影響する問題に遭遇していることを明らかにしている。この結果は、リリースプロセスの後半にテストによって発見されたバグがリリース遅延の最大の理由であると47パーセントの開発者が回答した、GitHubのDevOps Surveyの結果とも相関していると思われる。

その結果、運用時の重大な障害の40パーセントが、内部的な監視や警告ツールではなく、エンドユーザやカスタマによって最初に報告されている。これにより、3分の2のソフトウェア開発者が、少なくとも週1日をコードのトラブルシューティングに費やす結果となっているのだ。

繰り返し発生する運用時エラーの根本原因に関する質問に対しては、34パーセントの回答者が、適切なプロセスや文化が存在しないため、という考えを回答している。チームメンバの不足(24パーセント)や予測に頼ること、あるいは十分なツールがないこと(22パーセント)などが、エラーが意図に反して運用環境に流出する他の原因として挙げられている。

ログや警告に目を移すと、ログ管理(63パーセント)ツールや警告(61パーセント)ツールが運用パイプラインでは選択されている。ソフトウェアデリバリライフサイクル内での品質を保証するため、調査回答者の多くが手作業テストと自動テストを合わせて使用していることを報告している。

アプリケーションの品質評価には、参加者の多くがサービス実行時間(42パーセント)とユニットテストの成功/失敗率(41パーセント)を挙げている。これは同時に、ソフトウェア品質を評価する普遍的標準が存在しないことを物語っている。

OverOps 2020 State of Software Quality全体は、OverOpsのWebサイトからダウンロードすることができる(登録が必要)。

この記事に星をつける

おすすめ度
スタイル

BT