Both iteration and increment are terms bound with the Agile approach. But, as usual, the devil is in the detail. The closer you look, the more these two terms differ. Let’s dive right into this comparison and see what iteration and increment mean and what are the major differences between them.
Iterative and Incremental – definitions
The brief and on-point definition comes from software engineer Raj Nagappan. He describes incrementation as a progressive process of growing something bigger in regular chunks. Meanwhile, iteration is about repeating an action several times over with the view to improve it or vary it somehow. In the Agile world, each framework puts a bigger emphasis on one of these elements, meaning it can be incremental or iterative.
Which approach is incremental?
The increment is one of the three artifacts mentioned in the Scrum Guide, alongside Product Backlog and Sprint Backlog. The Guide describes it as a concrete stepping stone toward the Product Goal. Each Increment is additive to all prior Increments and thoroughly verified, ensuring that all Increments work together. In order to provide value, the Increment must be usable.
Importantly, one Sprint can contain more than one Increment presented at the Sprint Review. Work towards must be within the teams or company’s Definition of Done – a pre-agreed list of the activities necessary to get a product increment to a done state by the end of a sprint.
This framework, roughly translated to “sign”, comes from Japan when it was implemented in Toyota factories around the 1950s and developed by Taiichi Ohno, an industrial engineer. Investopedia defines Kanban as an inventory control system used in just-in-time manufacturing to track production and order new shipments of parts and materials. It uses visual cues to prompt the action needed to keep a process flowing. One of the main goals of Kanban is to limit the buildup of excess inventory at any point on the production line.
How is this framework incremental? The IT world fell in love with Kanban due to its simplicity – to start using it, you just need boards and cards. One of these cards describes Continuous delivery. It’s the practice of releasing work to customers frequently. Another important element is Continuous integration – which automatically builds and tests code incrementally throughout the day. Together they form a pipeline that allows shipping software faster while ensuring high quality, describes Atlassian. Even more, Kanban and Continuous Delivery complement each other. As we read, both techniques focus on the just-in-time (and one-at-a-time) delivery of value. The faster a team can deliver innovation to the market, the more competitive their product will be in the marketplace. And kanban teams focus on precisely that – optimizing the flow of work out to customers.
Example of increment
Which approach is iterative?
According to the Lean Enterprise Institute, this approach centers around actions that directly and indirectly create value for the customer – and the people doing that work. Through ongoing experimentation, workers and managers learn by innovating in their work, be it physical or knowledge work, for increasingly better quality and flow, less time and effort, and lower cost. Therefore, an organization characterized by lean practice is highly adaptive to its ever-changing environment when compared to its peers, because of the systematic and continuous learning engendered by lean thinking and practice.
Product and process development in a lean approach focuses on bringing the best value to the customers. The key is the iterative approach. In Lean it means that iteration lasts from 1 to 4 weeks. During this time, teams focus only on these user stories, that can be developed within this iteration. Importantly, the end product of an iteration should be both running and be ready to release.
The Improvement Kata
Let’s circle back to Toyota. The car manufacturer didn’t rely solely on Kanban, but also another approach (philosophy) described in Mike Rother’s book Toyota Kata. The Kata is a term mostly used in the martial arts world – it describes a pattern of movements, and neatly translates to the management world.
The Improvement Kata is, as Atlassian describes, a method where team leaders and members continually practice a kata routine that develops and channels their ability to solve problems. Over time, the practices become second nature. These practices use experimentation to help work towards a complex goal by breaking it down into smaller, immediate targets. The progress happens through iteration when you improve targets over time.
Example of iterative
So Agile is …?
Time for the most complicated question of this article: is the Agile approach actually incremental or iterative? The short answer is: Agile is both. Mike Cohn, the Agile specialist, provides a bit longer answer:
Scrum and Agile are both incremental and iterative. They are iterative in that they plan for the work of one iteration to be improved upon in subsequent iterations. They are incremental because completed work is delivered throughout the project.
For instance, Scrum.org recommends the iterative-incremental method. Instead of fixed dates, organizations should adopt a more open-ended approach. It sounds like a revolutionary change, because, well, it is, especially in a world of deadlines and stakeholders expecting the proper results within a specific time window. But this approach moves more power to the team members and allows them to experiment and the best way to deliver value. In a long run, it helps to finish the project faster and with better results.
The benefits of the incremental–iterative approach
MVP Or MMP – what is the difference?
What are these abbreviations? Minimum Viable Product (MVP) is a version of a new product that allows a team to collect the maximum amount of validated learning about customers with the least effort. The main benefit from MVP is knowledge – you learn customers’ desires without the need to invest time, effort, and resources into a finished product.
Minimum Marketable Product (MMP) refers to the product that can be developed quickly and brings significant value to the customer. MVP and MMP differ, as the former focuses on the learning process to ultimately improve the finished product, while the latter is about increasing the earnings from the very beginning of a product’s development and life cycle.
Final Thoughts, and How BigPicture Can Help
Need software for your teams that work with many different approaches and frameworks, both based on increments or iterations? BigPicture can help. Our tool will help plan for multiple teams and on multiple levels, whatever your preferred Agile framework. BigPicture supports Scrum, SAFe®, LeSS, and more, allowing you to work on a level of various timeboxes, such as iterations, Program Increments, or whatever meets your unique requirements. With BigPicture you can, regardless of methodology, easily optimize your work and track progress on both high and granular levels.
Interested? Start your free trial now!