Skip to main content

The ROI of Multiple Small Releases

In a few minutes how do you explain the benefits of multiple incremental releases to someone new to this agile mindset?  I'm convinced that if I try to use words (which is typically the case when caught in a hallway conversation) or even words and a few quick sketches - I will not do justice to the complex concept.  Why?  Because this concept deals with multiple what if scenarios that play out in long timeframes with little feedback.

So needing to have this conversation today, I had the time to do a search for some help.  And I found this wonderful article and video with a voice over explanation.

Business Benefits of Software Release in Multiple Increments

And there is an interactive Wolfram graphic you can play with yourself.


Now with this link and the video explanation (done with a german accent I think, gives it real authority) - I can solve the problem of coming to that shared understanding.

Understanding the Iterative Incremental approach

I've also found it very difficult to express the true depth of the meaning of the phrase Iterative and Incremental.  Many people confuse these terms for each other - yet they have very distinct meaning in software development.  When combined into an synchronistic term the mean compounds exponentially.  I've yet to be able to explain this phenomenon to my audiences satisfaction, so let me point you to others that will do much better.

The first is Jeff Patton's article Don’t Know What I Want, But I Know How to Get It - Why knowing what you want in agile development may be an impediment to getting it.  The next is Steven Thomas' iteration upon Jeff's attempt, titled Revisiting the Iterative Incremental Mona Lisa.  And he illustrated this article with a riff upon Jeff's Mona Lisa images which I believe were derived from some famous artist, Banksy I think.
Drawing Mona Lisa Iteratively and Incrementally

Now add to that the enlightenment that Joanna Rothman describes in her article Iterations and Increments:
"Iterative approaches do refine the feature as you proceed. Incremental approaches allow you to release something (which you may have refined or not). I like both." 
"Iterative approaches manage technical risk. Incremental approaches manage schedule risk. Agile, which uses both iterative and incremental approaches manage both technical and schedule risk."
Now, I've watched as an artist creates a fine art portrait such as the Mona Lisa.... and all three of these Agile experts are just wrong.  Neither the iterative nor the incremental nor the iterative and incremental process is how Mark Stevenson paints.  It is better described as magic.  I suggest you go watch a master at any creative endeavor work... it cannot be easily explained by a methodologist.  Perhaps that's were we are going wrong...

See Also:

When you come to a fork in the road, take it - Probabilistic Decision Making by Larry Maccherone

Feedback Loops and "Done" by John Cutler



Post a Comment

Most Popular on Agile Complexification Inverter

David's notes on "Drive"

- "The Surprising Truth about what Motivates Us" by Dan Pink.

Amazon book order
What I notice first and really like is the subtle implication in the shadow of the "i" in Drive is a person taking one step in a running motion.  This brings to mind the old saying - "there is no I in TEAM".  There is however a ME in TEAM, and there is an I in DRIVE.  And when one talks about motivating a team or an individual - it all starts with - what's in it for me.

Introduction

Pink starts with an early experiment with monkeys on problem solving.  Seems the monkeys were much better problem solver's than the scientist thought they should be.  This 1949 experiment is explained as the early understanding of motivation.  At the time there were two main drivers of motivation:  biological & external influences.  Harry F. Harlow defines the third drive in a novel theory:  "The performance of the task provided intrinsic reward" (p 3).  This is Dan Pink's M…

Exercise:: Definition of Ready & Done

Assuming you are on a Scrum/Agile software development team, then one of the first 'working agreements' you have created with your team is a 'Definition of Done' - right?



Oh - you don't have a definition of what aspects a user story that is done will exhibit. Well then, you need to create a list of attributes of a done story. One way to do this would be to Google 'definition of done' ... here let me do that for you: http://tinyurl.com/3br9o6n. Then you could just use someone else's definition - there DONE!

But that would be cheating -- right? It is not the artifact - the list of done criteria, that is important for your team - it is the act of doing it for themselves, it is that shared understanding of having a debate over some of the gray areas that create a true working agreement. If some of the team believes that a story being done means that there can be no bugs found in the code - but some believe that there can be some minor issues - well, …

Team Performance Model - by Drexler and Sibbet

Many of you have all heard of the Tuckman model of team dynamics (Forming, Storming, Norming, Performing).  It was created in 1966 and has become the most popular model for describing team behavior.  Is it time to level up in your mental model of team dynamics?  Are you ready for a richer more functional model?



Introducing the Team Performance Model by Drexler and Sibbet



Orientation - Why am I here?
"Orientation is about understanding the purpose of a team and assessing what it will mean to be a member.  you need to understand the reason the team exist, what will be expected of you and how you will benefit from membership.  In a new team, these are individual concerns, because the group is only potentially a team.  that is why these concerns are illustrated as occurring in your imagination at an intuitive level.  As a team leader it is important to provide time and space for people to answer these internal questions themselves."

Keys to when Orientation challenges are resolve…

Refactoring - examples from the book

Martin Fowler's book Refactoring:  Improving the Design of Existing Code has a simple example of a movie rental domain model, which he refactors from a less than ideal object-oriented design to a more robust OO design. Included in this Refactoring_FirstExample.zip Zip file are the Java source code files of the Movie, Rental, and Customer classes. Along with a JUnit CustomerTest class. Using these example source files you too can follow along with the refactoring that Fowler presents in the first few chapters of his book.


Do You Put “CSM” After Your Name?

I’ve noticed a new trend—people have been gaining titles. When I was younger, only doctors had initials (like MD) after their names. I always figured that was because society held doctors, and sometime priests (OFM) in such high regard that we wanted to point out their higher learning. I hope it was to encourage others to apply themselves in school and become doctors also. Could it have been boastful?

The Wikipedia describes these “post-nominal initials”:
Post-nominal letters, also called post-nominal initials, are letters placed after the name of a person to indicate that the individual holds a position, educational degree, accreditation, office, or honor. An individual may use several different sets of post-nominal letters. The order in which these are listed after a name is based on the order of precedence and category of the order. That’s good enough for me.
So I ask you: is the use of CSM or CSP an appropriate use of post-nominal initials?
If your not an agilista, you may wonder …