480 likes | 701 Views
h ow ( fr ) agile we are metrics in an Agile world. Gaetano Mazzanti Gama-Tech. metrics. goals & proxies. !. goal #1. make money survive. deliver value to stakeholders make them successful / happy. success means different things to different people. proxy variables.
E N D
how (fr)agilewe aremetrics in an Agile world Gaetano Mazzanti Gama-Tech
metrics • goals & proxies !
goal #1 makemoney survive
delivervaluetostakeholders makethemsuccessful/happy
successmeans differentthings todifferent people
proxyvariables indirectmeasures
typicalproxyvariables efficiency schedulevariance budget # ofdefects
measurement alters behavior
which metrics? agile metrics for a linear, deterministic world traditional no metrics code & fix rigidprocess top-down no processchaos ordered complex chaotic
product development is complex • “self-organizing, non-linear, • feedback systems are • inherently unpredictable • they are not controllable“ • D.Meadows
however, we can • watch, learn and work • with the system
metrics • learn & change
single loop learning actions results lead to how which shape future efficiency doing things right incremental change
double loop learning values, assumptions actions results Chris Argyris guide how why lead to new/improved effectiveness doing the right things efficiency doing things right question assumptions radical change incremental change
learn, change,move on values, assumptions results actions definemetric* setexpirationdate resultok orexpiration date passed? metric *shared, simple, controllable, transparent, time-bound
Agile/Lean question assumptions command & control efficiency full capacity conform to plan reduce variability large batches large queues aligned self-organization focus on value optimize flow embrace change reduce waste small batches reduce queues
metrics • quadrants &queues
metrics quadrants* Business Lead Time Cycle Time Quality of Service (SLA) Throughput Business Value Revenues ROI Customer Satisfaction Bugs Product Process WIP Cadence CI Failures Rework Impediments Retrospectives Reviews Morale Code QualityTechnical Debt Test Coverage *thanks to MatteoVaccari Paolo Perrotta Fabio Armani Team Maturity
metrics quadrants* Business what!? no velocity? Lead Time Cycle Time Quality of Service (SLA) Throughput Business Value Revenues ROI Customer Satisfaction Bugs Product Process WIP Cadence CI Failures Rework Impediments Retrospectives Reviews Morale Code QualityTechnical Debt Test Coverage *thanks to MatteoVaccari Paolo Perrotta Fabio Armani Team Maturity
metrics quadrants Business Lead Time Cycle Time Quality of Service (SLA) Throughput Business Value Revenues ROI Customer Satisfaction Bugs Product Process WIP Cadence CI Failures Rework Impediments Retrospectives Reviews Morale Code QualityTechnical Debt Test Coverage fragile Team Maturity
metrics quadrants Business Lead Time Cycle Time Quality of Service (SLA) Throughput Business Value Revenues ROI Customer Satisfaction agile Bugs Product Process WIP Cadence CI Failures Rework Impediments Retrospectives Reviews Morale Code QualityTechnical Debt Test Coverage fragile Team Maturity
fragility code quality technical debt lack of advanced engineering practices (i.e. TDD, CI) => rework
code quality evolution a short video
agility backlog to do in progress done 2 2
agility being agile is not the goal, it’s a mean if you are really interested there are plenty of agility tests on the Internet: Nokia Test Scrum Open Assessment - ScrumAlliance Agile Maturity Model Agile Evaluation Framework Comparative Agility Assessment etc.
impediments, retrospectives, reviews # of questions answered # of questions asked # action items addressed # action items assignedat previous meetings # of WTFs ? WTF!? WTF!?
backlogs & taskboardseverywhere tasks/user stories defects/SLA tickets impediments action items (reviews) new age based pruning kill old items! old
queues add cycle time risk variability overhead reduce quality motivation stop starting start finishing
cumulative flow diagram arrivals queue size (WIP) cumulative quantity time in queue (cycle time) departures (throughput) time source: Donald Reinertsen
cumulative flow diagramincreasing queue sizeincreasing cycle time cycle time WIP cumulative quantity time source: Donald Reinertsen
cumulative flow diagramWIP is a leading indicator cycle time cumulative quantity WIP time source: Donald Reinertsen
cumulative flow diagramlarge batches large queues cumulative quantity time
cumulative flow diagramsmall batches small queues cumulative quantity time source: Donald Reinertsen
cumulative flow diagramsmall batches continuous flow cumulative quantity time
Kanban board WIP throughput cycletime = backlog to do in progress done 2 2 cycle time inspired by HenrikKniberg
no WIP limit -> queue! in progress backlog to do ready done 2 3
no WIP limit -> queue! backlog to do ready done in progress 2 3 flow= speed * density
Slack (%) optimize flow absorb variation
cumulative flow diagram backlog to do in progress # user stories cycle time WIP throughput done time
controlcharts source: SamuliHeljo
additional flowrelated metrics active WIP tasks that are really in progress and not waiting around (#,%,% of time spent) buffered WIP tasks waiting to be handed-off process efficiency active time / cycle time technical debtWIP / standard WIP # of projects a person works in parallel
Happiness Index niko-niko calendar
how long since? you talked to a customer last useful retrospective you learned something at work your boss last freaked out last critical bug 3 1 6 52 2 days days days weeks week
and don’t forget bus factor # of key developers that need to be hit by a bus to kill a project
“for every true one thousands are fake” “per una vera mille sono finte” F. De André
Gaetano Mazzanti Gama-Tech @mgaewsj info@gama-tech.net