情報
- タイトル: 開発生産性の教科書
- Amazonのurl: https://amzn.asia/d/1UCIvZv
ざっくりメモ
開発生産性について、大系的に学べる。
その重要性や測定方法・向上策などが網羅的に書かれている。
開発生産性って何??
-
得られた成果物(アウトプット)/投入した生産要素(インプット)
- 明確に定まっているわけではないので自組織で定義する必要がある
- 例えば下記のような指標を使って定義することもできる
- リリースされた機能や修正の数 / 開発に費やされた時間(人時、人日など)
- PR数 / 開発に費やされた時間
- 提供された価値(ユーザー満足度、売り上げへの貢献など) / 開発チームの教育や育成に投資された時間と予算
- 例えば下記のような指標を使って定義することもできる
- 明確に定まっているわけではないので自組織で定義する必要がある
-
仕事量
-
期待値付加価値
-
実現付加価値の生産性
何がえられる??
開発生産性を測定することによって
- 改善しなくてはいけない部分の特定
- 技術負債・組織負債の可視化が可能になる
開発生産性を向上することによって
- バーンアウトの防止
- 少ない投資でより多くの成果を獲得
- プロダクトのサイクルへの貢献
- 採用への好影響
測定方法
Four Keys (DORAメトリクス)
- デプロイ頻度
- 新しいコードがプロダクション環境にリリースされる頻度。これは、開発チームの効率と、変更を迅速に提供する能力を測定する。
- 変更のリードタイム
- コードの変更が行われてからプロダクション環境にデプロイされるまでの時間。これは、開発チームの俊敏性と価値を素早く提供する能力を測定する。
- 変更の失敗率
- プロダクション環境へのデプロイ後に、障害や問題が発生する割合。これは、リリースプロセスの質と変更管理の効果を測定する。
- 平均修復時間
- システム障害が発生してから、サービスが復旧するまでの平均時間。これは、システムの回復力と問題解決の能力を測定する。
SPACEフレームワーク
- Satisfaction and Well-being: 満足度と幸福度
- チームメンバーや利害関係者の満足度。チームの指揮やモチベーション、プロジェクトの成果に対する満足度など。
- Performance: パフォーマンス
- チームの生産性や効率。タスクの完了速度、品質、達成された成果の量など。
- Activity: 活動
- チームメンバーの具体的な活動や行動。コミュニケーションの意hんど、会議への参加、作業時間の管理など。
- Communication: コミュニケーション
- チーム内・チーム外でのコミュニケーションの質と量
- Efficiency and Flow: 効率とフロー
- リソース(時間、予算など)の使用効率
独自の指標を当てははめて測定を行う。多角的測定が可能。
他にも
- プルリクエスト作成数
- マージまでの時間
- コードレビューの所要時間
- バグ検出率
- 1タスクあたりの平均開発時間
- ベロシティ
感想
開発生産性について、網羅的に学べるので、「そもそも生産性って何??」という方におすすめ。
ここで紹介されている指標を用いることで、定量的なデータ駆動による効果を周囲に示すことが可能になるので、物事への改善容易性が高くなると思った。
例えば職場にGitHub Copilotを導入したいが、上層部に説明する際の根拠が薄いという場合、この書籍に記されている開発生産性の指標を用いて説明することで、導入の容易性が高まるなど。
お気に入り度
⭐️⭐️⭐️⭐️