Articles

Iterative and Incremental Development

Iterative and Incremental Development in Practice

Iterative and Incremental Development in the Enterprise. When you get into complexity, predictive planning is ineffective because you are under conditions of unpredictability. Updating the work plan is very costly.

The planning mode that is valid in this context is the adaptive mode that proceeds in small steps (iterations) followed by a review of what has been accomplished after each step taken.

Iterative Process

The next step may include modifications of what has been done (an iterative process that literally leads to renewing what has just been developed).

Incremental Process

Otherwise it may include the development of new elements that build on previous ones (incremental process).

Integration of the two approaches

I have always found it difficult to explain to people, how the integration of these two approaches can happen in practice.

This is especially important with physical products and complex projects in general.

Then with Piergiorgio Lovato, we designed an experiential course on adaptive planning, with a formative game consisting of building a small house with Legos.

This house has only, 2 windows and 1 door.

Iterative and incremental in development

People involved in the training are divided into two teams:

      • A group of people act as observers in the context

      • A group physically builds the house

    Piergiorgio plays the role of the client and I play the role of the project leader

    Adaptive versus classical predictive approach

    We build the house a first time in this mode:

        • The driving style of the project is command and control. 

        • Development is in predictive mode

        • Only when the work is finished do we ask for feedback from the client.

        • Small changes requested by the client turn out to have a great impact.  

      We build the house a second time in these other ways:

          • The driving style of the project is participative

          • Development is iterative and incremental

          • We interact with the customer at every iteration

          • Small changes requested by the client turn out to have a small impact. 

        At the end of this experiential journey, the observer team tells what they observed of the two ways of working.

        The team of developers tells how they experienced the two modes of work. 

        The goals that are achieved are:

            • Experience the difference between a predictive and an adaptive approach.

            • Understand the effect that leadership style, command and control, has versus a participative style.

            • Understand what the iterative process (modification of what has been built) means in physical reality and how cumbersome it can sometimes be.

            • Understand the undisputed advantages of an incremental approach when it is applicable.

            • Understand why it is necessary to proceed in small steps (iterations) to reduce non-value work for the customer.

          In all the cases in which we had this experiential game played, all the people involved were able to experience the validity of the adaptive approach over the classical predictive approach.

          All found the latter mode of construction far preferable to the former.

          Leave a Reply

          Your email address will not be published. Required fields are marked *

          Other insights into Agile product development that you might be interested in

          Discovery & Construction

          Product Discovery Product Construction

          I talk to you about innovative product development, inspired by the book “
          Inspired: How to Create Tech Products Customers Love ” by Marty Kagan. There is a big difference between leading companies and others in the product creation process. The key concept is “product discovery”: exploring and testing ideas before investing heavily. This is integrated with “product delivery” or “construction.” The author of the book stresses the importance of prototypes, which in HW I prefer to call “pretotypes,” and tools such as Lean Canvas and Story Mapping. There is too much focus on Scrum, when instead it is important to create truly useful functionality. The book is recommended for those who want to truly innovate.

          Read More "

          The pretypes i.e., the forerunners of the product

          Pretypes are quick and inexpensive demonstrators to test key ideas before creating complete prototypes. I am talking about an automated palletizing project where we made a pretotype of the most critical component, which was the tray, in just 15 days. We saved several months and significant investment. This pretotype allowed us to validate the best materials with which to build the final tray.

          Read More "

          What is the Agile Factory – StoryTime Interview

          In this interview with Antonio Panareo of Story Time, we talked about the agile innovation factory that I established during my last corporate experience. Establishing this agile factory was a real gamble and I talk about the experience I had with my teams.

          Read More "