SlideShare a Scribd company logo
Simple Measurements
                     Schalk W. Cronjé
                    ysb33r @ gmail.com
                         @ysb33r




CT SPIN 2012                             © Schalk W. Cronjé
What is Agile?




CT SPIN 2012                    © Schalk W. Cronjé
“What is Agile?” - Responses

       ●   “Continuous development done in small iterations”


       ●   “Adapting to rapid change, predictable periodic
           delivery of usable software”


       ●   “Developers and testers work together from
           beginning to end”


       ●   “You'd only get a cynical answer from me”

CT SPIN 2012                                             © Schalk W. Cronjé
Being an Agile Fundamentalist
                                                      ●   Increased revenue
                                                      ●   Reduction in costs
                                                      ●   Faster response times
                                                      ●   Less rework



Agile is the continuous delivering of value
to stakeholders
                      ●   Customers
                      ●   Users
                      ●   Developers & Testers
                      ●   Governments & Legislators
                      ●   Societal Institutions
CT SPIN 2012                                                            © Schalk W. Cronjé
"The engineering method is the use of
         heuristics to cause the best change in a
           poorly understood situation within the
                   available resources."

                                        - Billy V Koen




CT SPIN 2012                                   © Schalk W. Cronjé
Accuracy is to precision
                             as
               engineering is to mathematics




CT SPIN 2012                              © Schalk W. Cronjé
Accuracy is to precision
                             as
               engineering is to mathematics



               Be accurate enough
       to get there, but no more accurate


CT SPIN 2012                              © Schalk W. Cronjé
Software Engineering


       ●   Implies measurement
       ●   Implies Kolb / Shewhart / Deming Cycles
       ●   Is not code craftsmanship
       ●   SE receives bad press
               –   Perceived difficulty in measurement
               –   Lack of measurement in S/W dev



CT SPIN 2012                                             © Schalk W. Cronjé
Simple Measurements:

               A foundation of software engineering,
                                NOT
                   a tool for measuring humans




CT SPIN 2012                                      © Schalk W. Cronjé
Why are you not measuring
                 your process today?




CT SPIN 2012                               © Schalk W. Cronjé
How do you know when your
                delivery was successful?




CT SPIN 2012                               © Schalk W. Cronjé
Signature Skills

       ●   Three parts
               –   Preferred Task
               –   Preferred Cognitive Approach
               –   Preferred Technology
       ●   This may affect how/what you measure!
       ●   Combat with
               –   Appropriate team composition
               –   Reviews / quality measures


CT SPIN 2012                                       © Schalk W. Cronjé
Batch Development


        Feature 1 Dev                     Feature 1 QA
        Feature 2 Dev                     Feature 2 QA
        Feature 3 Dev                     Feature 3 QA
        Feature 4 Dev                     Feature 4 QA


                              delivered
                                build




CT SPIN 2012                                        © Schalk W. Cronjé
Batch Development
    Total Time = devt1 .. devt4 + qat1 …qat4 + fixdelay + fixtime + retest time

         Feature 1 Dev                                        Feature 1 QA
         Feature 2 Dev                                        Feature 2 QA
         Feature 3 Dev                                        Feature 3 QA
         Feature 4 Dev                                        Feature 4 QA


                                      delivered
                                        build



                                 defect trickle feed


   Bug                                                          Feature 5+ QA
   DB                                                          Retest fixes QA
                                      delivered
                                        build
          Feature 5+ Dev



CT SPIN 2012                                                            © Schalk W. Cronjé
Time Factors
                                                                                Building test
                                                            understanding      infrastructure
                                                               specs
         Feature 1 Dev                                                      Feature 1 QA
         Feature 2 Dev                                                      Feature 2 QA
         Feature 3 Dev                                                      Feature 3 QA
         Feature 4 Dev                                                      Feature 4 QA
                                                basic build
                                                verification
                                              delivered
                                                build

                         time from raising defect until it is
                                available for testing
                                        defect trickle feed                    time to
                                                                               re-test

   Bug                                                                       Feature 5+ QA
   DB                                                                        Retest fixes QA
                                              delivered
                                                build
          Feature 5+ Dev



CT SPIN 2012                                                                             © Schalk W. Cronjé
Taking an Economic View

       ●   It helps to quantify the effects of multiple interacting
           variables
       ●   It helps us to understand that the customer is not the only
           judge of value
       ●   By using an economic framework it can allow us to
           maximise value, including
               –   cycle time
               –   product cost
               –   development expense
       ●   It helps to communicate with non-technical decision
           makers

CT SPIN 2012                                                     © Schalk W. Cronjé
"If you only quantify one thing,
                  quantify the cost of delay."

                                        - Don Reinertsen




CT SPIN 2012                                      © Schalk W. Cronjé
Cost of Delay – Quality Issue


       ●   One small feature, not properly tested
       ●   Found post-release
       ●   Time wasting by users having to manual work
           quantified => £35,000
        TotalManualTimeSpent x AvgCostToCompanyPerUser +
        TimeToRework x AvgCostToCompanyPerDev




CT SPIN 2012                                        © Schalk W. Cronjé
"A pilot who sees from afar
               will not make his boat a wreck."

                                              - Amen-en-apt
                             (Egyptian philosopher, ~700BC)




CT SPIN 2012                                         © Schalk W. Cronjé
David Anderson's Six Steps


       ●   Focus on quality
       ●   Reduce Work-in-Progress
       ●   Deliver often
       ●   Balance demand against throughput
       ●   Prioritise
       ●   Attack sources of variability to improve
           predictability

CT SPIN 2012                                          © Schalk W. Cronjé
Business Value Increments


       ●   Delivery is in business value increments
           (BVIs)
       ●   Only “done” when the increment is delivered
           end-to-end
       ●   No burning down of tasks ! (false economy)
       ●   Each increment must have at least one metric
           of the value it will deliver


CT SPIN 2012                                          © Schalk W. Cronjé
Properties of a Kanban System




CT SPIN 2012                          © Schalk W. Cronjé
Visualisation


       ●   Honesty!
       ●   Makes it transparent to everyone that is going
           on
       ●   Visual cue for bottlenecks
       ●   Manual board and easy-to-use online system




CT SPIN 2012                                       © Schalk W. Cronjé
Visualisation




CT SPIN 2012                   © Schalk W. Cronjé
Visualisation




CT SPIN 2012                   © Schalk W. Cronjé
Visualisation




CT SPIN 2012                   © Schalk W. Cronjé
Limit Work-in-Progress
           R e a d y   S p e c   S p e c         D e v   D e v           Q A   Q A              R e le a s e d
                                 C o m p le te           C o m p le te         C o m p l e te




       ●   Use a pull system
       ●   Managing queues are easier than managing time lines
       ●   Allows for better throughput utilisation
       ●   Identifies bottlenecks in the system
       ●   Measuring cycle time allows better prediction than traditional
           estimation



CT SPIN 2012                                                                                                     © Schalk W. Cronjé
Policies
           R e a d y   S p e c   S p e c         D e v   D e v           Q A   Q A              R e le a s e d
                                 C o m p le te           C o m p le te         C o m p l e te




       ●   Each stage has a policy
       ●   Describes generic activities required
       ●   “Definition of Done” for each stage




CT SPIN 2012                                                                                                     © Schalk W. Cronjé
Feedback & Batch Size


       ●   Faster feedback makes learning faster and
           more efficient
       ●   Faster feedback provides a sense of control
       ●   Large batches leads to slower feedback




CT SPIN 2012                                        © Schalk W. Cronjé
Measuring Cycle Time

       ●   Measure average time in system of each BVI
       ●   Less time is spent on estimating future delivery times
       ●   Historic data automatically takes into account any
           disruptions such as
               –   Operational issues
               –   Days off sick


                 AvgTimeInSystem x NoOfBVIs
      Time = ---------------------------------
                      Concurrency



CT SPIN 2012                                               © Schalk W. Cronjé
Historic Data vs Estimation




CT SPIN 2012                                 © Schalk W. Cronjé
Cadences


       ●   Delivery is done at regular cadences.
       ●   What is ready, is delivered, what is not, is left
           out
       ●   No artificial time-boxing or break points as in
           SCRUM-like approaches
       ●   Cycle-time leads to better predictability of what
           can actually be delivered


CT SPIN 2012                                           © Schalk W. Cronjé
Case study


               3 Teams – 3 Locations – 18 months




CT SPIN 2012                                       © Schalk W. Cronjé
Simple Flow Model
               Specify                            Develop                                  QA




     Kanban
      Board
                    Ready   Spec Spec              Dev   Dev             Q A   Q A             R e le a s e d
                                 C o m p l e te          C o m p le te         C o m p le te




CT SPIN 2012                                                                                              © Schalk W. Cronjé
Reduced Learning Time
       ●       Writing test specifications after the
               development is costly in time
           –   Knowledge decay
           –   Leads to incomplete designs
       ●       Move the test specification up-front before
               any development starts
           –   This is part of requirements discovery
           –   It broadens the perspective of the programmer
           –   Allows us to distinguish between automated checks
                  and human testing




CT SPIN 2012                                              © Schalk W. Cronjé
Reduced Learning Time
               Specify             Develop               QA




                                             Test specification




                +Time to specify                    -Time to re-work

                +Time to develop                    -Time to re-test




CT SPIN 2012                                                      © Schalk W. Cronjé
Changed the Flow Model
               Specify    Develop & Check   Verify



       ●   Ensure the all automated checks are included
           in the development stage
       ●   Free up a Verification stage for exploratory
           testing and validating that process has been
           fulfilled.




CT SPIN 2012                                         © Schalk W. Cronjé
Real-world measurements
               Specify            Develop & Check             Verify


                            S1            S2          S3               S4
  READY                      4             6              5            1h
  SPEC                       1            0.5             6            0.5
  SPEC/Completed             2            0.5             1            0.5
  DEV + Check                2             1          13               4
  DEV + Check /              3             6              4            18
  Completed
  VERIFY                     3             7              8            1
  VERIFY/Completed           2             5              6            18
  Blockages                 0.5           1h              2            1h
  Total                     17            26          43               42

                         Average cycle days per feature

CT SPIN 2012                                                           © Schalk W. Cronjé
Pathology

                        S1           S2           S3      S4
  READY                  4            6               5   1h
  SPEC                   1           0.5              6   0.5
  SPEC/Completed         2           0.5              1   0.5
  DEV + Check            2            1           13      4
  DEV + Check /          3            6               4   18
  Completed
  VERIFY                 3            7               8   1
  VERIFY/Completed       2            5               6   18
  Blockages             0.5          1h               2   1h
  Total                 17           26           43      42

                     Average cycle days per feature

CT SPIN 2012                                              © Schalk W. Cronjé
Pathology
  Excessive long time between feature availability and testing. Is there enough
  testing bandwidth? Or is this team just cheating?

                                S1           S2           S3               S4
  READY                         4             6              5             1h
  SPEC                          1            0.5             6             0.5
  SPEC/Completed                2            0.5             1             0.5
  DEV + Check                   2             1           13                4
  DEV + Check /                 3             6              4             18
  Completed
  VERIFY                        3             7              8              1
  VERIFY/Completed              2             5              6             18
  Blockages                     0.5          1h              2             1h
  Total                         17           26           43               42

                            Average cycle days per feature

CT SPIN 2012                                                               © Schalk W. Cronjé
Kanban fails when people
               don’t want to face the truth.

                                         - Hillel Glazer




CT SPIN 2012                                    © Schalk W. Cronjé
It all fell apart ...

       ●       Restructure – 3 teams + 3 managers
       ●       2 managers rejected Kanban
           –   1 manager wanted ScrumWorks
           –   1 manager used Microsoft Project
       ●       1 manager was forced not to use Kanban
           –   Switched to iteration-based deliveries
       ●       All teams forced back to time-based
               estimation




CT SPIN 2012                                            © Schalk W. Cronjé
It fell apart even more ...

       ●       1 team decided on 4 wks dev + 4 wks testing
           –   Quality was worse than before
           –   Cycle time was at least 8 calendar weeks per BVI

       ●       1 team did not deliver for over 5 months
           –   Finally delivered something the user did not want

       ●       None of teams have any measurements on
               cycle time; cannot predict how long delivery
               will take


CT SPIN 2012                                                © Schalk W. Cronjé
What did the team members
      say?
       ●   “I have lost visualisation. I have no idea what is going
           on”

       ●   “We are not using Kanban, because the company forced
           us to SCRUM”

       ●   “If I was given a choice, my the team and I would
           definitely go with Kanban”

       ●   “It is not the company 'standard' as such you need to
           'sell' the process frequently. “



CT SPIN 2012                                                   © Schalk W. Cronjé
Quantifying BVIs




CT SPIN 2012                      © Schalk W. Cronjé
Quantifying BVIs


       ●   Know what you want to achieve
       ●   Establish a scale for measurement
       ●   Decide how to measure
       ●   Make constraints explicit
       ●   Communicate




CT SPIN 2012                                   © Schalk W. Cronjé
Quantify BVIs - Example

          For all customer submissions that meets
          the following criteria, 80% should be
          handled by an automation system instead
          of a human and resolution achieved within
          30 minutes.

                         Criteria A
                         Criteria B
                             etc.


CT SPIN 2012                                     © Schalk W. Cronjé
Planguage


       ●   Created by Tom Gilb
       ●   Provides a structured way of quantifying
           requirements
       ●   Allows for reuse of specifications




CT SPIN 2012                                          © Schalk W. Cronjé
Quantify BVI - Planguage

      Name: Customer submissions resolved by automation systems

      Scale: Percentage of submissions resolved by automation in
      relation to all submissions

      Meter: Query on database using the following statement:
      SELECT … FRO M… WHERE . . .

      Goal: 80% [Criteria A, Criteria B]




CT SPIN 2012                                                    © Schalk W. Cronjé
Quantified BVI - Applying the
                        Economic Model

       ●   Compare to average human time to respond
           and volume covered
       ●   Extrapolate to time savings or cost savings
       ●   This allows for two measures of success
               –   Technical
               –   Financial



CT SPIN 2012                                       © Schalk W. Cronjé
End game




CT SPIN 2012              © Schalk W. Cronjé
Apply Lean Principles
                 to your Team
               Specify        Develop & Check       Verify



       ●   Start from where you are; model the workflow
       ●   Make the system pull-based
       ●   Reduce batch size; limit the work-in-progress
       ●   One feature end-to-end
       ●   If the flow breaks, fix it immediately




CT SPIN 2012                                                 © Schalk W. Cronjé
Apply Lean Principles
                 to your Team
       ●   Pair up people with different skills to work on
           same feature
               –   Feature teams are not a new concept
               –   Reduces mind-set trap, creative abrasion
       ●   Could be perceived to have higher person
           cost per feature
               –   Instead of distributing the person cost over
                   multiple queues, the cost is combined into a
                   single queue
               –   Can actually lead to reduced cycle time.
CT SPIN 2012                                                  © Schalk W. Cronjé
Apply Lean Principles
               Simple Measurements

       ●   Measure cycle time (now predict delivery)
       ●   Quantify requirements (know that you did deliver)
       ●   Use “Cost of Delay” (prioritise, show impact/risk)




CT SPIN 2012                                              © Schalk W. Cronjé
Thank you




CT SPIN 2012               © Schalk W. Cronjé

More Related Content

What's hot (20)

PDF
AD090 - Agile Landscape
Agile Dimensions LLC
 
PDF
Testing in an Agile Context 2011
Chris Sterling
 
PDF
The Software Debt Bubble: Is It About to Burst
Chris Sterling
 
PDF
Recognizing Software Debt - Beyond Agile Puget Sound
Chris Sterling
 
PDF
The DevOps Revolution And Beyond...
Chris Sterling
 
PDF
Integrating Quality into Portfolio Management
Brent Barton
 
PPT
Exploratory testing in practice, short story how approach influenced on strategy
Zbyszek Mockun
 
PDF
Requirements Engineering - The need for a solution - Marcel Overeem
Visure Solutions
 
PDF
Ralph jocham agile portfolio based release trains
Agora Group
 
PDF
Mary Poppendieck: Agile under contract
Agile Lietuva
 
PDF
Agile tour 2011 ralph jocham - scrum primer
Agora Group
 
PPTX
Qa Trends May09 V3
Pini Cohen
 
PPTX
AgileCamp 2015: Scrum for Full Scale Manufacturing, Joe Justice
Hyperdrive Agile Leadership (powered by Bratton & Company)
 
PDF
Agile Methods Experience Report by Andrew Rendell, Valtech
Valtech UK
 
PDF
QuickBooks Desktop Accessibility - How we did it.
Ted Drake
 
PDF
Scrumban Ideacamp - Amsterdam Scrum Gathering 2010
Proyectalis / Improvement21
 
PDF
Agile meets waterfall
Rakuten Group, Inc.
 
PDF
Continuous Deployment – Nextdoor.fi released every day at Scan-Agile 2011
Marko Taipale
 
PDF
Removing the Systemic Project Barriers
Jorvig Consulting Inc.
 
PDF
Agile Planning
Matt Block, CSP
 
AD090 - Agile Landscape
Agile Dimensions LLC
 
Testing in an Agile Context 2011
Chris Sterling
 
The Software Debt Bubble: Is It About to Burst
Chris Sterling
 
Recognizing Software Debt - Beyond Agile Puget Sound
Chris Sterling
 
The DevOps Revolution And Beyond...
Chris Sterling
 
Integrating Quality into Portfolio Management
Brent Barton
 
Exploratory testing in practice, short story how approach influenced on strategy
Zbyszek Mockun
 
Requirements Engineering - The need for a solution - Marcel Overeem
Visure Solutions
 
Ralph jocham agile portfolio based release trains
Agora Group
 
Mary Poppendieck: Agile under contract
Agile Lietuva
 
Agile tour 2011 ralph jocham - scrum primer
Agora Group
 
Qa Trends May09 V3
Pini Cohen
 
AgileCamp 2015: Scrum for Full Scale Manufacturing, Joe Justice
Hyperdrive Agile Leadership (powered by Bratton & Company)
 
Agile Methods Experience Report by Andrew Rendell, Valtech
Valtech UK
 
QuickBooks Desktop Accessibility - How we did it.
Ted Drake
 
Scrumban Ideacamp - Amsterdam Scrum Gathering 2010
Proyectalis / Improvement21
 
Agile meets waterfall
Rakuten Group, Inc.
 
Continuous Deployment – Nextdoor.fi released every day at Scan-Agile 2011
Marko Taipale
 
Removing the Systemic Project Barriers
Jorvig Consulting Inc.
 
Agile Planning
Matt Block, CSP
 

Similar to Simple Measurements #2 (20)

PDF
Inverting The Testing Pyramid
Naresh Jain
 
DOCX
Journey of a tester from Waterfall to Agile/Kanban Land - Hebrew
Yuval Yeret
 
PPT
Software Testing with Agile Requirements Practices
A B M Moniruzzaman
 
PDF
Ravit Danino HP - Roles and Collaboration in Agile
AgileSparks
 
PPTX
Agile testing for agile sparks kanban clients
Yuval Yeret
 
PDF
Discovery delivery 中国软件技术大会2011
Qiao Liang
 
PDF
QA is dead long live the new QA - Agile Dev and QA Conference Israel
Yuval Yeret
 
PDF
Lean startup
AgileOnTheBeach
 
PDF
持续交付软件之路 - Continuous Delivery
mingjin
 
PDF
How to live with agile - Aware in BugDay Bangkok 2012
Prathan Dansakulcharoenkit
 
PDF
Automate your way to agility
Yuval Yeret
 
PDF
PMI Ireland Annual Conference 2012 - Agile First Steps
Colm O'hEocha
 
PDF
Vaidyanathan Ramalingam Trade Off Economics In Testing Conference Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
PDF
Vaidyanathan Ramalingam Agile Testing Leadership Lessons Softec 2 July2011
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
PDF
Vaidyanathan Ramalingam Agile Testing Conference Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
PDF
Vaidyanathan Ramalingam Testing Checklist Conference Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
PDF
Vaidyanathan Ramalingam Waterfall Vs Agile Testing Conference Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
PDF
Vaidyanathan Ramalingam Software Testing Eco System Conference Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
PDF
Vaidyanathan Ramalingam Silicon India Testing Conference 2 July2011 Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
PDF
Vaidyanathan Ramalingam Agile Conference Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
Inverting The Testing Pyramid
Naresh Jain
 
Journey of a tester from Waterfall to Agile/Kanban Land - Hebrew
Yuval Yeret
 
Software Testing with Agile Requirements Practices
A B M Moniruzzaman
 
Ravit Danino HP - Roles and Collaboration in Agile
AgileSparks
 
Agile testing for agile sparks kanban clients
Yuval Yeret
 
Discovery delivery 中国软件技术大会2011
Qiao Liang
 
QA is dead long live the new QA - Agile Dev and QA Conference Israel
Yuval Yeret
 
Lean startup
AgileOnTheBeach
 
持续交付软件之路 - Continuous Delivery
mingjin
 
How to live with agile - Aware in BugDay Bangkok 2012
Prathan Dansakulcharoenkit
 
Automate your way to agility
Yuval Yeret
 
PMI Ireland Annual Conference 2012 - Agile First Steps
Colm O'hEocha
 
Vaidyanathan Ramalingam Trade Off Economics In Testing Conference Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
Vaidyanathan Ramalingam Agile Testing Leadership Lessons Softec 2 July2011
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
Vaidyanathan Ramalingam Agile Testing Conference Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
Vaidyanathan Ramalingam Testing Checklist Conference Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
Vaidyanathan Ramalingam Waterfall Vs Agile Testing Conference Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
Vaidyanathan Ramalingam Software Testing Eco System Conference Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
Vaidyanathan Ramalingam Silicon India Testing Conference 2 July2011 Speech
Skills2Talent (Integrated Talent Management and L&D Software - Hire to ROI)
 
Ad

More from Schalk Cronjé (20)

PDF
DocuOps & Asciidoctor in a JVM World
Schalk Cronjé
 
PDF
DocuOps & Asciidoctor
Schalk Cronjé
 
PDF
What's new in Asciidoctor
Schalk Cronjé
 
PDF
Probability Management
Schalk Cronjé
 
PDF
Seeking Enligtenment - A journey of purpose rather than instruction
Schalk Cronjé
 
PDF
Idiomatic Gradle Plugin Writing - GradleSummit 2016
Schalk Cronjé
 
PDF
Gradle in 45min - JBCN2-16 version
Schalk Cronjé
 
PDF
Cool Jvm Tools to Help you Test - Aylesbury Testers Version
Schalk Cronjé
 
PDF
Cool JVM Tools to Help You Test
Schalk Cronjé
 
PDF
Using the Groovy Ecosystem for Rapid JVM Development
Schalk Cronjé
 
PDF
Gradle in 45min
Schalk Cronjé
 
PDF
Basic Gradle Plugin Writing
Schalk Cronjé
 
PDF
Seeking Enligtenment - A journey of purpose rather tan instruction
Schalk Cronjé
 
PDF
Idiomatic Gradle Plugin Writing
Schalk Cronjé
 
PDF
Beyond Estimates - Probability Management
Schalk Cronjé
 
PDF
Documentation An Engineering Problem Unsolved
Schalk Cronjé
 
PDF
Idiomatic Gradle Plugin Writing
Schalk Cronjé
 
PDF
Gradle in a Polyglot World
Schalk Cronjé
 
PDF
Idiomatic Gradle Plugin Writing
Schalk Cronjé
 
PDF
Death of Agile : Welcome to Value-focused Testing
Schalk Cronjé
 
DocuOps & Asciidoctor in a JVM World
Schalk Cronjé
 
DocuOps & Asciidoctor
Schalk Cronjé
 
What's new in Asciidoctor
Schalk Cronjé
 
Probability Management
Schalk Cronjé
 
Seeking Enligtenment - A journey of purpose rather than instruction
Schalk Cronjé
 
Idiomatic Gradle Plugin Writing - GradleSummit 2016
Schalk Cronjé
 
Gradle in 45min - JBCN2-16 version
Schalk Cronjé
 
Cool Jvm Tools to Help you Test - Aylesbury Testers Version
Schalk Cronjé
 
Cool JVM Tools to Help You Test
Schalk Cronjé
 
Using the Groovy Ecosystem for Rapid JVM Development
Schalk Cronjé
 
Gradle in 45min
Schalk Cronjé
 
Basic Gradle Plugin Writing
Schalk Cronjé
 
Seeking Enligtenment - A journey of purpose rather tan instruction
Schalk Cronjé
 
Idiomatic Gradle Plugin Writing
Schalk Cronjé
 
Beyond Estimates - Probability Management
Schalk Cronjé
 
Documentation An Engineering Problem Unsolved
Schalk Cronjé
 
Idiomatic Gradle Plugin Writing
Schalk Cronjé
 
Gradle in a Polyglot World
Schalk Cronjé
 
Idiomatic Gradle Plugin Writing
Schalk Cronjé
 
Death of Agile : Welcome to Value-focused Testing
Schalk Cronjé
 
Ad

Recently uploaded (20)

PDF
The New Zealand Business Sales Report 2025_compressed.pdf
charlie630518
 
PPTX
Social Media Marketing for Business Growth
vidhi622006
 
PDF
Agentic AI: The Autonomous Upgrade Your AI Stack Didn’t Know It Needed
Amnic
 
PPTX
The Rise of Artificial Intelligence pptx
divyamarya13
 
PPTX
The Ultimate Guide to Customer Journey Mapping
RUPAL AGARWAL
 
PDF
🚀 Mohit Bansal_ Driving Urban Evolution Through GMI Infra (1).pdf
Mohit Bansal GMI
 
PDF
A Study on Analysing the Financial Performance of AU Small Finance and Ujjiva...
AI Publications
 
PPTX
Struggling to Land a Social Media Marketing Job Here’s How to Navigate the In...
RahulSharma280537
 
PDF
Alan Stalcup - Principal Of GVA Real Estate Investments
Alan Stalcup
 
PDF
Followers to Fees - Social media for Speakers
Corey Perlman, Social Media Speaker and Consultant
 
PPTX
Appreciations - July 25.pptxdddddddddddss
anushavnayak
 
PPTX
FINAL _ DB x Forrester x Workday Webinar Buying Groups July 2025 (1).pptx
smarvin1
 
PDF
NewBase 24 July 2025 Energy News issue - 1805 by Khaled Al Awadi._compressed...
Khaled Al Awadi
 
PPTX
Chapter 3 Distributive Negotiation: Claiming Value
badranomar1990
 
PDF
NewBase 26 July 2025 Energy News issue - 1806 by Khaled Al Awadi_compressed.pdf
Khaled Al Awadi
 
PPTX
E-Way Bill under GST – Transport & Logistics.pptx
Keerthana Chinnathambi
 
PDF
How BrainManager.io Boosts Productivity.
brainmanagerious
 
DOCX
India's Emerging Global Leadership in Sustainable Energy Production The Rise ...
Insolation Energy
 
PDF
Retinal Disorder Treatment Market 2030: The Impact of Advanced Diagnostics an...
Kumar Satyam
 
PPTX
Appreciations - July 25.pptxffsdjjjjjjjjjjjj
anushavnayak
 
The New Zealand Business Sales Report 2025_compressed.pdf
charlie630518
 
Social Media Marketing for Business Growth
vidhi622006
 
Agentic AI: The Autonomous Upgrade Your AI Stack Didn’t Know It Needed
Amnic
 
The Rise of Artificial Intelligence pptx
divyamarya13
 
The Ultimate Guide to Customer Journey Mapping
RUPAL AGARWAL
 
🚀 Mohit Bansal_ Driving Urban Evolution Through GMI Infra (1).pdf
Mohit Bansal GMI
 
A Study on Analysing the Financial Performance of AU Small Finance and Ujjiva...
AI Publications
 
Struggling to Land a Social Media Marketing Job Here’s How to Navigate the In...
RahulSharma280537
 
Alan Stalcup - Principal Of GVA Real Estate Investments
Alan Stalcup
 
Followers to Fees - Social media for Speakers
Corey Perlman, Social Media Speaker and Consultant
 
Appreciations - July 25.pptxdddddddddddss
anushavnayak
 
FINAL _ DB x Forrester x Workday Webinar Buying Groups July 2025 (1).pptx
smarvin1
 
NewBase 24 July 2025 Energy News issue - 1805 by Khaled Al Awadi._compressed...
Khaled Al Awadi
 
Chapter 3 Distributive Negotiation: Claiming Value
badranomar1990
 
NewBase 26 July 2025 Energy News issue - 1806 by Khaled Al Awadi_compressed.pdf
Khaled Al Awadi
 
E-Way Bill under GST – Transport & Logistics.pptx
Keerthana Chinnathambi
 
How BrainManager.io Boosts Productivity.
brainmanagerious
 
India's Emerging Global Leadership in Sustainable Energy Production The Rise ...
Insolation Energy
 
Retinal Disorder Treatment Market 2030: The Impact of Advanced Diagnostics an...
Kumar Satyam
 
Appreciations - July 25.pptxffsdjjjjjjjjjjjj
anushavnayak
 

Simple Measurements #2

  • 1. Simple Measurements Schalk W. Cronjé ysb33r @ gmail.com @ysb33r CT SPIN 2012 © Schalk W. Cronjé
  • 2. What is Agile? CT SPIN 2012 © Schalk W. Cronjé
  • 3. “What is Agile?” - Responses ● “Continuous development done in small iterations” ● “Adapting to rapid change, predictable periodic delivery of usable software” ● “Developers and testers work together from beginning to end” ● “You'd only get a cynical answer from me” CT SPIN 2012 © Schalk W. Cronjé
  • 4. Being an Agile Fundamentalist ● Increased revenue ● Reduction in costs ● Faster response times ● Less rework Agile is the continuous delivering of value to stakeholders ● Customers ● Users ● Developers & Testers ● Governments & Legislators ● Societal Institutions CT SPIN 2012 © Schalk W. Cronjé
  • 5. "The engineering method is the use of heuristics to cause the best change in a poorly understood situation within the available resources." - Billy V Koen CT SPIN 2012 © Schalk W. Cronjé
  • 6. Accuracy is to precision as engineering is to mathematics CT SPIN 2012 © Schalk W. Cronjé
  • 7. Accuracy is to precision as engineering is to mathematics Be accurate enough to get there, but no more accurate CT SPIN 2012 © Schalk W. Cronjé
  • 8. Software Engineering ● Implies measurement ● Implies Kolb / Shewhart / Deming Cycles ● Is not code craftsmanship ● SE receives bad press – Perceived difficulty in measurement – Lack of measurement in S/W dev CT SPIN 2012 © Schalk W. Cronjé
  • 9. Simple Measurements: A foundation of software engineering, NOT a tool for measuring humans CT SPIN 2012 © Schalk W. Cronjé
  • 10. Why are you not measuring your process today? CT SPIN 2012 © Schalk W. Cronjé
  • 11. How do you know when your delivery was successful? CT SPIN 2012 © Schalk W. Cronjé
  • 12. Signature Skills ● Three parts – Preferred Task – Preferred Cognitive Approach – Preferred Technology ● This may affect how/what you measure! ● Combat with – Appropriate team composition – Reviews / quality measures CT SPIN 2012 © Schalk W. Cronjé
  • 13. Batch Development Feature 1 Dev Feature 1 QA Feature 2 Dev Feature 2 QA Feature 3 Dev Feature 3 QA Feature 4 Dev Feature 4 QA delivered build CT SPIN 2012 © Schalk W. Cronjé
  • 14. Batch Development Total Time = devt1 .. devt4 + qat1 …qat4 + fixdelay + fixtime + retest time Feature 1 Dev Feature 1 QA Feature 2 Dev Feature 2 QA Feature 3 Dev Feature 3 QA Feature 4 Dev Feature 4 QA delivered build defect trickle feed Bug Feature 5+ QA DB Retest fixes QA delivered build Feature 5+ Dev CT SPIN 2012 © Schalk W. Cronjé
  • 15. Time Factors Building test understanding infrastructure specs Feature 1 Dev Feature 1 QA Feature 2 Dev Feature 2 QA Feature 3 Dev Feature 3 QA Feature 4 Dev Feature 4 QA basic build verification delivered build time from raising defect until it is available for testing defect trickle feed time to re-test Bug Feature 5+ QA DB Retest fixes QA delivered build Feature 5+ Dev CT SPIN 2012 © Schalk W. Cronjé
  • 16. Taking an Economic View ● It helps to quantify the effects of multiple interacting variables ● It helps us to understand that the customer is not the only judge of value ● By using an economic framework it can allow us to maximise value, including – cycle time – product cost – development expense ● It helps to communicate with non-technical decision makers CT SPIN 2012 © Schalk W. Cronjé
  • 17. "If you only quantify one thing, quantify the cost of delay." - Don Reinertsen CT SPIN 2012 © Schalk W. Cronjé
  • 18. Cost of Delay – Quality Issue ● One small feature, not properly tested ● Found post-release ● Time wasting by users having to manual work quantified => £35,000 TotalManualTimeSpent x AvgCostToCompanyPerUser + TimeToRework x AvgCostToCompanyPerDev CT SPIN 2012 © Schalk W. Cronjé
  • 19. "A pilot who sees from afar will not make his boat a wreck." - Amen-en-apt (Egyptian philosopher, ~700BC) CT SPIN 2012 © Schalk W. Cronjé
  • 20. David Anderson's Six Steps ● Focus on quality ● Reduce Work-in-Progress ● Deliver often ● Balance demand against throughput ● Prioritise ● Attack sources of variability to improve predictability CT SPIN 2012 © Schalk W. Cronjé
  • 21. Business Value Increments ● Delivery is in business value increments (BVIs) ● Only “done” when the increment is delivered end-to-end ● No burning down of tasks ! (false economy) ● Each increment must have at least one metric of the value it will deliver CT SPIN 2012 © Schalk W. Cronjé
  • 22. Properties of a Kanban System CT SPIN 2012 © Schalk W. Cronjé
  • 23. Visualisation ● Honesty! ● Makes it transparent to everyone that is going on ● Visual cue for bottlenecks ● Manual board and easy-to-use online system CT SPIN 2012 © Schalk W. Cronjé
  • 24. Visualisation CT SPIN 2012 © Schalk W. Cronjé
  • 25. Visualisation CT SPIN 2012 © Schalk W. Cronjé
  • 26. Visualisation CT SPIN 2012 © Schalk W. Cronjé
  • 27. Limit Work-in-Progress R e a d y S p e c S p e c D e v D e v Q A Q A R e le a s e d C o m p le te C o m p le te C o m p l e te ● Use a pull system ● Managing queues are easier than managing time lines ● Allows for better throughput utilisation ● Identifies bottlenecks in the system ● Measuring cycle time allows better prediction than traditional estimation CT SPIN 2012 © Schalk W. Cronjé
  • 28. Policies R e a d y S p e c S p e c D e v D e v Q A Q A R e le a s e d C o m p le te C o m p le te C o m p l e te ● Each stage has a policy ● Describes generic activities required ● “Definition of Done” for each stage CT SPIN 2012 © Schalk W. Cronjé
  • 29. Feedback & Batch Size ● Faster feedback makes learning faster and more efficient ● Faster feedback provides a sense of control ● Large batches leads to slower feedback CT SPIN 2012 © Schalk W. Cronjé
  • 30. Measuring Cycle Time ● Measure average time in system of each BVI ● Less time is spent on estimating future delivery times ● Historic data automatically takes into account any disruptions such as – Operational issues – Days off sick AvgTimeInSystem x NoOfBVIs Time = --------------------------------- Concurrency CT SPIN 2012 © Schalk W. Cronjé
  • 31. Historic Data vs Estimation CT SPIN 2012 © Schalk W. Cronjé
  • 32. Cadences ● Delivery is done at regular cadences. ● What is ready, is delivered, what is not, is left out ● No artificial time-boxing or break points as in SCRUM-like approaches ● Cycle-time leads to better predictability of what can actually be delivered CT SPIN 2012 © Schalk W. Cronjé
  • 33. Case study 3 Teams – 3 Locations – 18 months CT SPIN 2012 © Schalk W. Cronjé
  • 34. Simple Flow Model Specify Develop QA Kanban Board Ready Spec Spec Dev Dev Q A Q A R e le a s e d C o m p l e te C o m p le te C o m p le te CT SPIN 2012 © Schalk W. Cronjé
  • 35. Reduced Learning Time ● Writing test specifications after the development is costly in time – Knowledge decay – Leads to incomplete designs ● Move the test specification up-front before any development starts – This is part of requirements discovery – It broadens the perspective of the programmer – Allows us to distinguish between automated checks and human testing CT SPIN 2012 © Schalk W. Cronjé
  • 36. Reduced Learning Time Specify Develop QA Test specification +Time to specify -Time to re-work +Time to develop -Time to re-test CT SPIN 2012 © Schalk W. Cronjé
  • 37. Changed the Flow Model Specify Develop & Check Verify ● Ensure the all automated checks are included in the development stage ● Free up a Verification stage for exploratory testing and validating that process has been fulfilled. CT SPIN 2012 © Schalk W. Cronjé
  • 38. Real-world measurements Specify Develop & Check Verify S1 S2 S3 S4 READY 4 6 5 1h SPEC 1 0.5 6 0.5 SPEC/Completed 2 0.5 1 0.5 DEV + Check 2 1 13 4 DEV + Check / 3 6 4 18 Completed VERIFY 3 7 8 1 VERIFY/Completed 2 5 6 18 Blockages 0.5 1h 2 1h Total 17 26 43 42 Average cycle days per feature CT SPIN 2012 © Schalk W. Cronjé
  • 39. Pathology S1 S2 S3 S4 READY 4 6 5 1h SPEC 1 0.5 6 0.5 SPEC/Completed 2 0.5 1 0.5 DEV + Check 2 1 13 4 DEV + Check / 3 6 4 18 Completed VERIFY 3 7 8 1 VERIFY/Completed 2 5 6 18 Blockages 0.5 1h 2 1h Total 17 26 43 42 Average cycle days per feature CT SPIN 2012 © Schalk W. Cronjé
  • 40. Pathology Excessive long time between feature availability and testing. Is there enough testing bandwidth? Or is this team just cheating? S1 S2 S3 S4 READY 4 6 5 1h SPEC 1 0.5 6 0.5 SPEC/Completed 2 0.5 1 0.5 DEV + Check 2 1 13 4 DEV + Check / 3 6 4 18 Completed VERIFY 3 7 8 1 VERIFY/Completed 2 5 6 18 Blockages 0.5 1h 2 1h Total 17 26 43 42 Average cycle days per feature CT SPIN 2012 © Schalk W. Cronjé
  • 41. Kanban fails when people don’t want to face the truth. - Hillel Glazer CT SPIN 2012 © Schalk W. Cronjé
  • 42. It all fell apart ... ● Restructure – 3 teams + 3 managers ● 2 managers rejected Kanban – 1 manager wanted ScrumWorks – 1 manager used Microsoft Project ● 1 manager was forced not to use Kanban – Switched to iteration-based deliveries ● All teams forced back to time-based estimation CT SPIN 2012 © Schalk W. Cronjé
  • 43. It fell apart even more ... ● 1 team decided on 4 wks dev + 4 wks testing – Quality was worse than before – Cycle time was at least 8 calendar weeks per BVI ● 1 team did not deliver for over 5 months – Finally delivered something the user did not want ● None of teams have any measurements on cycle time; cannot predict how long delivery will take CT SPIN 2012 © Schalk W. Cronjé
  • 44. What did the team members say? ● “I have lost visualisation. I have no idea what is going on” ● “We are not using Kanban, because the company forced us to SCRUM” ● “If I was given a choice, my the team and I would definitely go with Kanban” ● “It is not the company 'standard' as such you need to 'sell' the process frequently. “ CT SPIN 2012 © Schalk W. Cronjé
  • 45. Quantifying BVIs CT SPIN 2012 © Schalk W. Cronjé
  • 46. Quantifying BVIs ● Know what you want to achieve ● Establish a scale for measurement ● Decide how to measure ● Make constraints explicit ● Communicate CT SPIN 2012 © Schalk W. Cronjé
  • 47. Quantify BVIs - Example For all customer submissions that meets the following criteria, 80% should be handled by an automation system instead of a human and resolution achieved within 30 minutes. Criteria A Criteria B etc. CT SPIN 2012 © Schalk W. Cronjé
  • 48. Planguage ● Created by Tom Gilb ● Provides a structured way of quantifying requirements ● Allows for reuse of specifications CT SPIN 2012 © Schalk W. Cronjé
  • 49. Quantify BVI - Planguage Name: Customer submissions resolved by automation systems Scale: Percentage of submissions resolved by automation in relation to all submissions Meter: Query on database using the following statement: SELECT … FRO M… WHERE . . . Goal: 80% [Criteria A, Criteria B] CT SPIN 2012 © Schalk W. Cronjé
  • 50. Quantified BVI - Applying the Economic Model ● Compare to average human time to respond and volume covered ● Extrapolate to time savings or cost savings ● This allows for two measures of success – Technical – Financial CT SPIN 2012 © Schalk W. Cronjé
  • 51. End game CT SPIN 2012 © Schalk W. Cronjé
  • 52. Apply Lean Principles to your Team Specify Develop & Check Verify ● Start from where you are; model the workflow ● Make the system pull-based ● Reduce batch size; limit the work-in-progress ● One feature end-to-end ● If the flow breaks, fix it immediately CT SPIN 2012 © Schalk W. Cronjé
  • 53. Apply Lean Principles to your Team ● Pair up people with different skills to work on same feature – Feature teams are not a new concept – Reduces mind-set trap, creative abrasion ● Could be perceived to have higher person cost per feature – Instead of distributing the person cost over multiple queues, the cost is combined into a single queue – Can actually lead to reduced cycle time. CT SPIN 2012 © Schalk W. Cronjé
  • 54. Apply Lean Principles Simple Measurements ● Measure cycle time (now predict delivery) ● Quantify requirements (know that you did deliver) ● Use “Cost of Delay” (prioritise, show impact/risk) CT SPIN 2012 © Schalk W. Cronjé
  • 55. Thank you CT SPIN 2012 © Schalk W. Cronjé

Editor's Notes

  • #2: Many of things discussed has roots in Knowledge Management and ancient philosophy, beliefs and faiths. It is not new, but are generally ignored due to the strong influence of Taylorism especially in western contexts. This is an overview of things that work, that will need adoption in your context and are simple guidelines showing you how to do things.
  • #4: Cynical answers are usually indicative of organisational pathology
  • #5: You are not here to produce software, you are here to provide value to the business Also refer to Dave Nicolette ( http://davenicolette.wordpress.com/2012/08/14/how-to-avoid-the-local-optimization-problem-when-coaching-at-the-team-level-2/ ) “The goal is delivery effectiveness” Some still preach the Agile Manifesto, Some show you methods that will work
  • #6: Credit to Bob Marshall for introducing me to the work of Billy Koen (Texas University)
  • #13: From the work of Dorothy Leonard. Read “Wellsprings of Knowledge”
  • #14: One always has to revisit classic batch development, as it is where most organisations are still stuck.
  • #18: Read Don’s book: The Principles of Product Development. FLOW. Second Generation Lean Product Development Attention Principle: Time counts more than money
  • #31: Use of an online system provides automated measurement. It is important not to negflect having a BIG VISIBLE BOARD
  • #42: From “Quotable Kanban”
  • #54: Eclesiastes 4:9-10 Two are better than one; because they have a good reward for their labour. For if they fall, the one will lift up his fellow: but woe to him that is alone when he falleth; for he hath not another to help him up.