見出し画像

Four Keysを品質の指標に使いたい

私のnoteにたどり着くような方に「Four Keysとは何か」を敢えて説明する必要はないとは思いますが、念のため・・・

Four Keysとは何か?チームパフォーマンスに重要な理由 | new relic 

Four Keysは、DORA(DevOps Research and Assessment)が6年におよぶ研究を踏まえて提唱した、ソフトウェア開発チームのパフォーマンスを測る4つの指標です。

Four Keysとは何か?チームパフォーマンスに重要な理由 | new relic 


上記からも分かる通り、Four Keysはチームの生産性可視化を主な目的とした指標です。具体的には「デプロイの頻度、変更のリードタイム、変更失敗率、デプロイ失敗時の復元までの時間」の4つを観測することで、チームのパフォーマンスを見える化しようというものですね。

しかし、なにしろ私は品質オタクですから、これを品質の観点からも活用する方法を模索したいのです。せっかく指標を取るのだったら、余すところなくしゃぶりつくしたい(そう思いませんか、品質オタクの同志たちよ!)

そんな気持ちであれこれ調べていたところ、非常によい情報に巡りあいました。

質とスピード(2022春版、質疑応答用資料付き) / Quality and Speed 2022 Spring Edition(和田卓斗さん)

質とスピード|実績・強み|ソフトウェアテスト・第三者検証のベリサーブ
※こちらは上記のスライドと同じ内容を記事にしたもののようです。

最高の開発者がいちばんきれい好きな開発者であることに気づいたとき、私はびっくりした。速いプログラマーは雑なプログラマーだと思っていたからだ。
だが、実際は正反対だった。私が会った中で最速のプログラマーは、コードを扱いやすいように保つことに特に注意を払っていた。

レガシーコードからの脱却(David Scott Bernstein)

この部分は眼からウロコが落ちる思いで何度も読み返し、感銘のあまり引用元の『レガシーコードからの脱却(David Scott Bernstein)』を衝動的にポチりました。
私は「QCDはトレードオフの関係にある」などとまことしやかに言い聞かされた育った世代ですが、言われてみれば、仕事が早くて優秀なエンジニアがとんでもないバグを作りこんだという場面には、これまで遭遇したことがなかった気がします。なるほどねぇ。

そういうわけで、このあたりの考え方を軸にFour Keysを使って品質を語る方法を模索してみようかと思っていますが、面白いもので、そういう目で探してみると色々と参考になる記事が見つかってきます。

残念ながらいまのところ私の職場ではFour Keysを活用していないため当面は机上で考えていくしかありませんが、Four Keysは開発チームのモチベーションアップにもよさそうなので、社内の先進派の人たちを巻き込んで、導入に向けて動いていきたいな・・・

ちなみに、「メトリクスってやつは、まず収集するところがメンドクサイんだよ」というのがロートルの感覚ですが、最近は便利なツールが色々ありますね。DX万歳!
Four Keysについては、下記がなかなかよさそうだという印象を持っています。

Findy Team+パフォーマンス改善に向けたアナリティクスツール 

このツールはなんと、GitとJIRAに連携させるだけで自動的にFour Keysなどに必要なデータを収集して可視化してくれるのだとか。ワンダフル!
私の画策がうまく実った暁には、ぜひ導入を提案してみたいところです。

本日の教訓:「常識」という岩をひっくり返すと、いいものが見つかることがある

ヘッダ画像:UnsplashGabriel Gusmaoが撮影した写真


この記事が気に入ったらサポートをしてみませんか?