Agile Metrics in Action: How to measure and improve team performance
Christopher W. H. Davis
Copyright
For online information and ordering of this and other Manning books, please visit www.manning.com. The publisher offers discounts on this book when ordered in quantity. For more information, please contact
Special Sales Department Manning Publications Co. 20 Baldwin Road PO Box 761 Shelter Island, NY 11964 Email:
orders@manning.com2015 by Manning Publications Co. All rights reserved.
No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by means electronic, mechanical, photocopying, or otherwise, without prior written permission of the publisher.
Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in the book, and Manning Publications was aware of a trademark claim, the designations have been printed in initial caps or all caps.
Recognizing the importance of preserving what has been written, it is Mannings policy to have the books we publish printed on acid-free paper, and we exert our best efforts to that end. Recognizing also our responsibility to conserve the resources of our planet, Manning books are printed on paper that is at least 15 percent recycled and processed without elemental chlorine.
| Manning Publications Co.20 Baldwin RoadPO Box 761Shelter Island, NY 11964 | Development editor: Dan MaharryTechnical development editor: Michael SmolyakCopyeditor: Linda RecktenwaldProofreader: Elizabeth MartinTechnical proofreader: David PombalTypesetter: Marija TudorCover designer: Marija Tudor |
ISBN: 9781617292484
Printed in the United States of America
1 2 3 4 5 6 7 8 9 10 EBM 20 19 18 17 16 15
Brief Table of Contents
Table of Contents
Foreword
Although it is still fairly young, the software development industry has matured considerably in the last 15 years and gone through several major transformations:
- Just a short while ago, it seems, the waterfall lifecycle was pretty much the only option for software development projects. Today, agile methodology is also frequently used.
- New development engineering practices have entered the game, such as SCM, issue tracking, build standardization, continuous integration, continuous inspection, and so on. In most organizations, it is now the norm to have a complete software factory.
- Although they started out minimalistic, modern IDEs have become a widely adopted productivity tool for developers.
This is all great news; and whats more, there is strong traction to continue these efforts and make the software development world even better. It is amazing how many development teams are seeking a common Holy Grail: continuous delivery. In other words, teams want a software development process that is predictable and repeatable, and that enables a shift to production at any time in a controlled manner.
Despite all the good things that have happened within the industry in recent years, there is a general consensus that we are not quite there yet. Software development is not yet a fully mastered science, and delivery generally still is not reliable. Projects are often delivered late, with a reduced scope of features, generating frustration at all levels in organizations and justifying their reputation for being both expensive and unpredictable.
One aspect that is missing from the recent improvements in our industry is measurement: measurement of what we produce, of course, but also measurement of the impact of the changes we make to improve delivery. We should be able to answer questions such as, Did this change improve the process? and Are we delivering better now? In many cases, these questions are not even asked, because doing so is not part of the company culture or because we know they are difficult to answer. If we, as an industry, want to reach the next level of maturity, we need to both ask and answer these questions. Many companies have realized this and have begun to move into the measurement area.
This is the journey that Chris will take you on in this book. It will be your steadfast companion on your expedition into measurement. Whether you are just starting out or are already an advanced measurer, Agile Metrics in Action will provide you with a 360-degree guide: from theory to practice; from defining what you should be measuring, in which area and at which frequency, to who should be targeted with which indicators; and from how to gather the numbers and which tool to use to consolidate them, to how to take action on them. The book focuses mostly on agile teams, but much of it can also be applied in other contexts. All this is done using existing tools, most of them open source and widely used.
But thats not all! For each area of measurement, Chris presents a case study that makes it concrete and applicable, based on his own experiences. Whatever your current maturity level with regard to measuring your development process, you will learn from this book. Enjoy!
O LIVIER G AUDIN
CEO AND C OFOUNDER
S ONAR S OURCE
Preface
At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
agilemanifesto.org/principles.html
Development teams adopt agile practices differently based on team members, time commitments, the type of project being developed, and the software available, to name only a few factors. As quoted from the Agile Manifesto, teams should have regular check and adjust periods where they can reflect on how well theyre working and how they can improve. This book demonstrates how to gather performance data to measure an agile team, interpret it, and react to it at check and adjust intervals so the team can reach their full potential.
After years of working on agile teams, Ive noticed that many times teams check and adjust based on gut feelings or the latest blog post someone read. Many times teams dont use real data to determine what direction to go in or to rate their team or their process. You dont have to go far to find the data with development, tracking, and monitoring tools used today. Applications have very sophisticated performance-monitoring systems; tracking systems are used to manage tasks; and build systems are flexible, simple, and powerful. Combine all of this with modern deployment methodologies and teams shipping code to production multiple times a day in an automated fashion, and you have a wealth of data you can use to measure your team in order to adjust your process.
Ive used the techniques in this book over the years, and it has been a game changer in how my teams think about their work. Retrospectives that start with conversations around data end up being much more productive and bring to light real issues to work on instead of going off of guesswork or opinion. Being able to set metrics with a team and using them in Scrums, retrospectives, or anywhere else throughout the development process helps the team focus on issues and filter out noise or celebrate parts of the process that are working well.
Finally, having this data at their fingertips typically makes managers and leadership teams happy because it gives them real insight into how the teams theyre sponsoring and responsible for are really performing. They can see how their initiatives affect their teams and ultimately the bottom line.