SPACEフレームワークの定義
SPACEフレームワークは以下の2つの主要な要素の組み合わせで開発者の生産性を測定します。
- 5つのカテゴリの評価指標
- 3つの適用するレベル(個人、グループ、システム)
5つのカテゴリの評価指標
一つの指標のみで開発者の生産性を測ることは困難であり、また一つの指標のみに注目すると、意図していない結果を引き起こすリスクが存在します。
SPACEフレームワークでは、そのようなリスクを避けるために、多面的に生産性を捉えるための方法として、以下の5つのカテゴリ(論文ではディメンションと表記)の評価指標を定義しています。
カテゴリ | 説明 | 例 |
---|---|---|
Satisfaction and well being | 開発者が自分の仕事、チーム、ツール、文化にどれだけ満足しているか。どれだけ健康で幸せか、そして仕事がそれにどう影響しているか。 | 業務難易度、必要なツールやリソースがあるか、自分のチームを薦めるかどうか |
Performance | 開発者が書いたコードが想定されたことを確実に実行したか。 | バグの発生数、コードクオリティ、顧客満足度、サービス稼働率、信頼性向上 |
Activity | 仕事をする過程で完了した行動やアウトプットの数。 | PRマージ数、コミット数、コードレビュー完了数、デプロイ頻度(Four Keys) |
Communication and collaboration | メンバーやチームがどのようにコミュニケーションをとり、協力し合うか。 | ドキュメント発見時間、新メンバーのオンボーディング時間や体験 |
Efficiency and flow | 個人であれシステムであれ、中断や遅延を最小限に抑えて仕事を完了させたり、進捗させたりする能力。 | 自チームのMTG数や時間、他チームとのMTG数や時間、CI/CDフローでのトイル消化数 |
生産性を単一の指標や一面的な観点から捉えるのではなく、これら5つのカテゴリに属する指標を複数選択することでより広範な視野で合理的に評価することが目指されています。
また、この5つの頭文字を取って、SPACEフレームワークという名称が付いています。
3つの適用するレベル(個人、グループ、システム)
5つのカテゴリの評価指標に加えて、SPACEフレームワークは個人、グループ、システムの3つのレベルで測定することを推奨しています。
この推奨は、各カテゴリを個人、グループ、システムレベルで別々に計測することを指示するものではありません。
個人のパフォーマンスも重要だが、チーム や 組織の成功に貢献することも生産性を測る上で重要であるということから、選択した指標が個人、グループ、システムのどのレベルが観測できるものなのかを意識し、なるべくバランスの良く最適化できるように構成しようということです。
例えば、コードレビューの速度を計測指標として選択した場合、個人のレビュー完了の早さとチームの制約の両方を反映することができるため、個人レベルとチームレベルの両方を観測できる指標となります。
コードレビュー完了数は、与えられた時間枠の中でどれだけのレビューが完了したかを示すため、個人レベルの指標です。
このように、選択した指標によって、どのレベルまで測定可能かが決まります。
選択した指標が特定の範囲に偏らないよう、カテゴリだけでなく観測レベルも多角的に捉えることが、このフレームワークのもう一つの主旨となっています。