記事
チュートリアル
インタラクティブ ガイド
DORA 指標:Open DevOps の成功を測定する方法
DORA(DevOps Research and Assessment)は、プロセスのパフォーマンスと成熟度を評価するために利用される DevOps 指標の標準セットを提供します。これらの指標は、DevOps が変更対応できる迅速性、コードをデプロイする平均時間、イテレーションの頻度、障害に関するインサイトについての情報を提供します。
このガイドでは、4 つの DORA 指標、その重要性、チームが Open DevOps を利用してパフォーマンスを測定する方法について概説します。
DORA とは
DORA は、Google Cloud のチームが指標の標準セットを利用して、DevOps のパフォーマンスを評価することに特に重点を置いたことが始まりです。その目標は、ベロシティを向上させながらパフォーマンスとコラボレーションを改善することです。現在のパフォーマンスに基づいて目標を設定したら、その目標に対する進捗を測定することで、これらの指標は、あらゆる場所の DevOps チームの継続的改善のツールとして役立ちます。
DevOps は、ビジネス・ソフトウェアとプロセスを円滑に継続して稼働させるために非常に重要です。それにより、ユーザーは作業に集中できます。DORA 指標は、DevOps チームによる次の作業をサポートする上で重要です。
- 現実的な対応の見積もりを提供する
- 作業計画を改善する
- 改善が必要な領域を特定する
-
技術投資と資源投資に関する合意を確立する
DORA 指標とは
DevOps チームの DORA 指標は、次の 4 つの重要な指標に重点を置いています。
- デプロイの頻度
- 承認からデプロイまでの時間
- デプロイが失敗する頻度
- サービスの回復、または障害からの回復に要する時間
これらの指標が DevOps のベスト・プラクティスである理由、その測定、チームがパフォーマンスを向上させるためにできることについて、以下でご説明します。
デプロイ頻度
DevOps チームは通常、各サイクルでの変更の数とリスクを減らすために、より小さい頻繁なデプロイでソフトウェアを提供します。より頻繁にデプロイすることで、チームはより素早くフィードバックを収集できるため、より速くイテレーションを行えます。
デプロイ頻度は、任意の環境で 1 日あたり完了したコード・デプロイの平均回数です。デプロイ頻度では、開発チームのスピード、その能力や自動化レベルを測定するため、DevOps の全体的な効率の指標になります。
作業量を減らすか、各デプロイの規模を縮小すると、デプロイの頻度を増やすことができます。
変更のリード タイム
変更のリード・タイムは、DevOps チームがコミットメントからデプロイまで、コードを提供する平均速度を測定します。これは、チームのキャパシティ、コードの複雑さ、環境の変化に対応する DevOps の全体的な能力を示します。
この指標によって、企業は、顧客や企業へのコードの提供速度を数値化できます。たとえば、スキルの高いチームの中には、変更の平均リード・タイムが 2 時間から 4 時間かかるチームもあれば、1 週間かかるチームもあります。
デプロイの作業量を減らし、コード・レビューを改善し、自動化を増やすと、変更のリード・タイムを短縮できます。
ソリューションを見る
優秀な DevOps チームのツール
関連資料
DevOps におけるチーム構造の重要性
変更エラー率
変更エラー率は、本番環境で障害を引き起こしたデプロイの割合です。デプロイの頻度と変更のリード・タイムは、DevOps の自動化と機能に関する適切な指標ですが、それらのデプロイが成功した場合に限ります。変更のエラー率は、頻度と速度への対抗手段です。
多くのデプロイ、特に重大な対応のデプロイでは本番環境でバグが発生する可能性があるため、この指標を測定するのは困難なことがあります。これらの課題の重大度や頻度を理解すると、DevOps チームは速度に対する安定性を測定できるようになります。
デプロイで進行中の作業の量を減らし、自動化も増やすと、変更のエラー率を低減できます。
サービス回復の所要時間
本番環境で不具合が発生した際の対応時間は非常に重要です。外部のセキュリティ脅威や、標準プロセスを停止させたバグであっても、DevOps チームは次の方法で迅速に対応する必要があります。
- バグ修正
- 新しいコード
更新
サービス回復の所要時間、つまり平均復旧時間は、本番環境で問題が発生してから解決されるまでの平均時間です。
対応計画によって、チームは問題が発生する前に対処する方法を理解できるため、最終的にサービス回復の所要時間を短縮できます。
DORA 指標が重要な理由
DevOps を理解するには、開発チームと運用チームが、以前はコラボレーションやお互いの作業に対するインサイトがほとんどなく、分離していたことを認識しましょう。DevOps は、広く採用されている方法ですが、この 2 つのチームを 1 つに統合しました。
DevOps のメリットの 1 つは、多くの専門分野にわたるチーム間のコラボレーションです。これにより、ソリューションの品質が向上し、デリバリーがより迅速になります。
DORA ではこれらの指標を利用して、チームのパフォーマンスを明らかにし、ランク付けします。各指標で、チームはレベル(低、中、高、エリート)を獲得します。たとえば、変更のエラー率で「エリート」のランキングを獲得するには、チームは一貫して 0 - 15% で実施する必要があり、回復の所要時間で「エリート」を達成するには、チームは 1 時間以内に課題を解決できる必要があります。すべての指標でのチームのランキングを統合して、総合ランキングが決定します。
自身のチームが業界と比較してどのような状況であるかを把握すると、重視する改善点を見極めるのに非常に役立ちます。DORA 指標は、目標を設定し、進捗を測定するためのベースラインとなります。
DORA 指標の導入方法
DORA 指標を導入する際は、4 つの測定値をまとめて分析します。たとえば、デプロイ頻度が一貫して高くても、変更エラー率も一貫して高ければ、全体像は捉えられません。
自動化とコード・レビューにさらに重点を置く必要がある可能性があります。同様に、変更エラー率が低いというのは素晴らしいことに思えますが、変更のリード・タイムが長すぎる場合は、作業を小さい単位に分割する必要がある可能性があります。
まず、変更、インシデント、デプロイでのデータ・ソースを解析する DevOps パイプラインを作成します。
- 発端からデータを抽出します。
- データを解析して、変更、デプロイ、インシデントの表に記入します。
- 指標に基づいてパフォーマンスを算出します。
Open DevOps は、ソフトウェアを開発、デプロイ、運用するためのツールをチームに提供します。Jira Software は Open DevOps を強化する、アジャイル・チームの No.1 ツールです。大手ベンダーや Marketplace アプリとの統合によって、チームは必要な DevOps ツールチェーンを構築できます。
DORA 指標とバリュー・ストリーム管理
バリュー・ストリーム管理とは、高品質のリリースを頻繁に顧客に提供することです。バリュー・ストリーム管理の成功指標は、顧客が変更の価値を実感することです。
DORA 指標は、バリュー・ストリーム管理において重要な役割を果たします。その理由は、次の指標を取得するためのベースライン指標を提供するためです。
- デプロイ頻度
- 変更のリード タイム
- エラー率
-
サービス回復の所要時間
顧客からのフィードバックと組み合わせると、DORA 指標によって、DevOps チームは改善の労力を重点的に費やす領域や、競合他社に対して自社のサービスを位置づける方法がわかります。
DORA 指標を利用して Open DevOps を成功させる
チームが DevOps を開始するにあたり、DORA 指標の導入はチームの成功に不可欠です。Open DevOps によって、チームは DORA 指標を追跡して DevOps の健全性を測定できます。
Open DevOps のネイティブな統合により、チームはエンドツーエンドのソフトウェア開発のためのツールチェーンを構築し、DORA 指標を導入して成功を測定できます。主な DevOps ツールには次のようなものがあります。
- Jira Software は、作業のスケジュールと追跡において、アジャイル・ソフトウェア開発チームの No.1 の選択肢です。
- Bitbucket を利用すると、開発チームはコードを保存・追跡し、変更を管理できます。
- Confluence は、チームが情報を取得、分析、共有するためのナレッジ・マネジメント・ツールやコラボレーション・ツールを提供します。
-
Jira Service Management によって、DevOps チームはインシデントを追跡・管理し、重要な DORA 指標を取得できます。
Open DevOps でソフトウェア提供プロセスを最適化し、チームの成功に向けて準備しましょう。Open DevOps には開発や運用に直ちに必要なものがすべて揃っています。
DORA 指標:よくある質問
DORA 指標の一般的な課題は何ですか?
DORA 指標を導入する場合は、チーム・メンバーと早期に方向性を決定します。データを収集してパフォーマンスに関する情報を公開することは、一部のメンバーにとって脅迫的に思えることがあります。これを軽減するには、全員に次の活動に参加してもらいます。
- データ収集
- アイデアの創出
-
目標の設定
達成可能なことと、それより高めの目標について尋ねましょう。
協力して結果を分析し、話し合います。自動化など、特定の分野に関して全員が意見を持っているでしょうが、賛同と協力を得るためには、メンバーにその分野を担当してもらうことが不可欠です。
Open DevOps で DORA 指標を利用して、会社が継続的に改善するにはどうしたら良いですか?
DORA 指標によって、チームはスピードと品質のバランスを取れるようになります。DORA のエリート DevOps チームのステータスを獲得することを目指すとしても、現状から始め、時間をかけてその目標に向かって努力しましょう。
チームが継続的な改善に取り組めるようにするには、野心的な長期目標を設定することもできます。ただし、短期の段階的な改善こそが目標に到達するための道だとわかっている必要があります。
DevOps の特定の領域について、目標を具体的で達成可能な指標に分割します。たとえば、復旧時間を 25% 短縮し、変更エラー率を 10% 以下にするとします。これにより、チームの現在の能力に基づいた有意義な目標を設定できます。
DORA 指標は Open DevOps の原則とどのように一致していますか?
特に複雑なプロジェクトの場合には、DevOps のパフォーマンスの測定は困難な場合があります。DORA では信頼性の高い指標を提供し、チームが状況に合わせてパフォーマンスを発揮できるようにします。
DevOps では、開発と運用を連携し、パフォーマンスと機能を向上させることを目的としています。DORA 指標は、これらの価値をエンドツーエンドの可視性でサポートします。継続的な改善を追跡できるチームは、モチベーションと集中力を維持できます。
この記事を共有する
次のトピック
おすすめコンテンツ
次のリソースをブックマークして、DevOps チームのタイプに関する詳細や、アトラシアンの DevOps についての継続的な更新をご覧ください。