Published on March 6, 2014
Agile India 2014 BROKEN STATE OF PROCESS Why software process improvement is broken… and what to do about it…
A BIT ABOUT ME… ThoughtWorker Product Manager by trade See a lot of processes Unfortunate Six Sigma Black Belt Fascinated by process wonkery !2
GOAL: TRY, MEASURE, LEARN ! Software development processes… Be incremental about your process, just like your delivery !3
HOW WE THINK ABOUT PROCESS IMPROVEMENT IS BROKEN Too many people like me are telling you what you *should* do… !4
WE ARE OBSESSED WITH… Frameworks Methodologies Practices your ▫︎ Small batches, watchdelay queues easure ▫︎ Mair the cost of ▫︎ Pcrum/Kanban/SAFe ▫︎ S o TDD ▫︎ Do CI ▫︎ Do CD ▫︎ DeanUX ▫︎ LBurn up ▫︎ Run experiments ▫︎ Build, Measure, Learn ▫︎ Control chart ▫︎ ! ! ! All great guide posts but… !5
WHAT’S THE POINT? Why do we have processes in the ﬁrst place? Hans Splinter - http://www.ﬂickr.com/photos/archeon/ 4885276155/ via cc !6
REDUCE VARIATION IN A BUSINESS OUTCOME Your process shouldn’t get in the way… !7
A BAD PROCESS Doesn’t achieve the outcome ! OR ! Doesn’t reduce variation in that outcome ! !8
WHAT ARE YOUR OUTCOMES THEN? Jim Highsmith’s Agile Triangle Value (Releasable Product) ace Speed Quality Performance Compliance User Experience Responsiveness e Learning Figure 4: The Agile Triangle Customer Satisfaction … !9
PRINCIPLES OF PRODUCT DEV FLOW Read it Particularly the chapter on variation ■ Pay-oﬀ functions ■ Pay-oﬀ asymmetries ■ Some of it is wrong :-) Reducing variation isn’t bad, reducing it irrespective of the outcome is bad !10
HOW DO PROCESSES AFFECT YOUR OUTCOMES? Let’s talk about throughput to make things easy… !11
MARGINAL BENEFIT OF ADDITIONAL PROCESS It turns negative! Assuming small discrete steps as a simpliﬁcation… !12
ALL VARIATION IS REDUCED !13
INSTITUTIONAL MEDIOCRITY !14
REAL EXAMPLE - CUSTOMER CONVERSATION Problem: Poor Unit Testing Solution: Attach tests to stories, ﬁll out form ! Cost: 300 Devs X 10mins per check-in X 200 Days X 3 checkins per day = ! 30,000 Hrs or 15 Person Years !15
STANDARDIZATION Ut oh… Let’s challenge a scaling core belief !16
SCALED INSTITUTIONALIZED MEDIOCRITY !17
DIFFERENT TEAM OUTCOMES? How can you go “faster” if need to follow “slow” processes? ! Do you have “special” teams? http://en.wikipedia.org/wiki/File:Neus1.jpg via cc !18
WHAT HAPPENS WHEN OUTCOMES CHANGE? Speed Quality Performance Compliance User Experience Responsiveness Felix Burton - http://ﬂickr.com/photos/65328860@N00/14320717 via cc Org process rollouts tend to be big bang. Learning Customer Satisfaction … !19
STANDARDIZATION CREATES RESPONSIBILITY DISCONNECT Rarely do leaders blame the process for poor outcomes A2gemma - http://www.ﬂickr.com/photos/a2gemma/1448178195/ via cc !20
REPORTING IS NOT AN OUTCOME If you have a bunch of process or unnecessary standardization to facilitate the “right” report for managers or the PMO, you’re doing it wrong… Good reporting = side eﬀect of good process !21
SCALE ISN’T AN EXCUSE FOR PROCESS COMPLEXITY Scale brings complexity. Just like in a good product, your job is to strive for simplicity despite the complexity. Hide complexity from your teams. !22
WHY DO WE STANDARDIZE? ▫︎ People fungibility ▫︎ Reporting ▫︎ Management convenience ▫︎ Investment management ▫︎ Common language across teams !23
SOLUTIONS? Questions and practices as guide posts! !24
How complex is your process? ! Can a random team member accurately describe your process? !25
Are your processes any good? ! Are you hitting your outcomes? Are you hitting your outcomes consistently? !26
Do you have feedback loops across organizational hierarchy? ! Do your standards change? Is there a visible feedback mechanism? !27
How much time do you spend administering your processes a day? ! Do you “work the spreadsheet”? Does reporting take days? !28
TRY, MEASURE, LEARN Ideas Try Learn Data http://theleanstartup.com/ principles Steps Measure !29
EXPERIMENTS ▫︎ ▫︎ ▫︎ ▫︎ ▫︎ ▫︎ Clear hypothesis/problem statement Ability to measure the result Constant monitoring of biz outcomes Stop things that hurt outcomes or aﬀect variation (in an unwanted direction) Learn a bit about stats Rinse, repeat !30
MINIMUM VIABLE PROCESS from the minimum amount ▫︎ Startthe outcome you want. of process required to get ! ▫︎ Tweak until you get the right consistency (process costs) goals, as marginal ▫︎ Carefully add to support for other (try to subtract things, additions eventually turn negative ! and keep measuring outcomes!) ▫︎ The Improvement Kata looks interesting (I haven’t used it !31
MINIMUM VIABLE STANDARDIZATION ▫︎ Start from the minimum amount of standardization for visibility and communication. (e.g. 3 key metrics, or common names for work items) ▫︎ ! ▫︎ ! Make sure your base standardization gives teams plenty of wiggle room. Carefully add, measuring the outcomes !32
N ow O SS ! SHAMELESS PLUG !33
TRY, MEASURE, LEARN PROCESSES HAVE COST ! KNOW YOUR OUTCOMES ! Then have fun with all those frameworks, methodologies, and practices !34
THANK YOU! Twitter: @twchad
The Broken State of Process Improvement in Software Development ... Lean UX are driving new thought patterns in the software development world.
Development /Alumni Systems ... state process models as needed for improvement explanation and recommendations. Process models are used and updated ...
standard for software development. Development processes are ... This is the initial state. ... cost of software process improvement activities $ ...
Continuous process improvement is the set of on-going ... The state-of-the-art in system development management has evolved ... Open Source Software;
Continual improvement process ... than the radical changes that might arise from Research and Development; ... for software development process ...
... Handbook for Basic Process Improvement ... few people will know how to state the process improvement ... development, sharing knowledge ...
4 Steps for an Effective Business Process Improvement Cycle. ... employee development and training, ... What in the process is broken?
Business process Improvement ... This process includes overseeing the development of the organization's mission, ... Software Process Improvement (SPICE)
software development and process ... Siegel, J., Rozum, J., Carleton, A., “Software Process Improvement: State ... then be hierarchically broken in ...
Process improvement is a fundamental to business management. ... Processes are built to be broken; Forgetting about people: Process design and human nature;