ソフトウェア開発者が DORA メトリクスを好む理由

ニュース

ホームページホームページ / ニュース / ソフトウェア開発者が DORA メトリクスを好む理由

May 22, 2023

ソフトウェア開発者が DORA メトリクスを好む理由

ディラン・エトキン著、InfoWorld | 技術者によって解剖された新興テクノロジー ソフトウェア エンジニアリング チームは、長年にわたって、本当に役立つハードメトリックを使用して効率を測定する方法を追い求めてきました。

ディラン・エトキン著、InfoWorld |

技術者が解剖する新興テクノロジー

ソフトウェア エンジニアリング チームは何年もの間、開発者にスパイされていると感じさせることなく、チームの改善に真に役立つ厳密な指標を使用して効率を測定する方法を追い求めてきました。 ついに、私たちはどこかに到着しました。

開発者なら誰でも、この業界が歴史的によく知られている、書かれたコード行やマージされたプルリクエストの数などの疑わしい指標に照らして測定されることの苦痛、あるいは潜在的な苦痛を知っています。 そして、エンジニアリングマネージャーなら誰でも、そのような措置がチームに反発や不信感を植え付ける可能性があることを知っています。

しかし、取締役会、エンジニアリング リーダー、開発者が同様に、プロセスが機能しているかどうか、チームが効率的かどうか、さらに改善するにはどうすればよいかを知りたい場合、行われている作業を測定する方法が必要です。

これを達成するために、いくつかの指標、フレームワーク、ベスト プラクティスが考案されました。 必然的に、他の人よりもうまくやる人もいます。 究極の目標は、開発者がすでに毎日使用しているツールやシステムの作業を測定することです。 DORA メトリクスはこれを行うことができ、それが DORA メトリクスが業界標準になりつつある理由の 1 つです。

これについてはさらに詳しく説明しますが、まず、他の種類のメトリクスについて理解しましょう。

ビジーネス メトリクスは、開発者のフロー時間を測定するものと考えることができます。 1 日に 2 ~ 3 回流れが中断されると、物事を成し遂げるのはほぼ不可能であることがわかります。

開発者の時間を守るために、人事システムやカレンダーに接続するエンジニアリング効率化ツールのカテゴリ全体が開発されました。 彼らは、開発者が従うべきコンテキストの切り替え、会議、時間のかかるプロセスが多すぎるかどうかを評価しようとします。

最終的に、これらの指標はコーディングの人間的な側面に注目することで燃え尽き症候群を防止しようとします。これは確かに重要ですが、これらの指標はあまり実用的ではありません。

開発者があまりにも多くの会議に参加していることがわかっている場合、必要な会議が開催され、フローもより効率的になる環境をどのように構築すればよいでしょうか? 忙しさの指標には、改善のヒントとなる一連の改善点は含まれていません。

DORA (DevOps Research Assessment) の創設者の 1 人である Nicole Forsgren は、開発者の生産性を理解することを目的としたこのフレームワークを開発しました。 しかし、SPACE フレームワークは、厳密な指標ではなく、開発者の精神状態と身体的健康に焦点を当てており、これらは開発者が仕事を全体的に楽しんだり、チームのエンジニアリング パフォーマンスに重要な要素であることは間違いありません。

SPACE フレームワークは、開発者の生産性の 5 つの側面を評価します。

忙しさの指標と同様に、SPACE フレームワークは有効な情報を取得しますが、それに基づいて行動するのは困難です。 これは主に、実行されている作業から測定するのが難しいベスト プラクティスであると考えてください。 簡潔さと目標指向の結果が欠けています。

これらは、簡単に操作できる厳しい対策であり、書かれたコード行数、マージされたプル リクエストの数、コーディングに費やした時間など、実際の開発者の労力は反映されません。 これらの措置は、最小限の命令でタスクを完了した開発者がリーダーであったパンチカード プログラミングの時代から生まれました。

しかし、開発者は、実際には重要なことは何も測定していないことを知っています。 アプリケーション内で最も重要な 5 行のコードを作成できますが、これらのコードは非常に複雑なので、それらが正しい 5 行のコードであることを確認するには 2 週間かかります。 あるいは、あまり役に立たないコードを 500 万行も書くこともできます。 マージされたプルリクエストの数を測定する場合も同様です。 これにより、全体のバッチ サイズについて少し知ることができますが、驚くほど洞察力があり、チームの改善に役立つわけでもありません。

これらの対策に照らして開発者を批判すると、開発者はあなたが開発者や開発者の仕事を理解していないことがわかるでしょう。 さらに、これらのことを個人の尺度で測定することは有害です。 開発者は監視され、裁かれていると感じ、さらに追い詰めるでしょう。