Marrying Lean, Agile and Kanban to foster business transformation
- Usha Seetharaman, PMP, Tesco
Agile emphasizes on principles adapting to change and following iterations. Fast- Flexible-Flow and value-stream-mapping are the mantra of Lean. Kanban does not specify a technique for managing how work is done but seeks to control the amount of WIP. The advantage of Agile over Waterfall is that it enables in building the project in an evolutionary fashion, incorporating the learning throughout. Our architecture discipline states that we should start with the big picture, and not create a product by building it from small pieces but that has been ignored by Agilepractitioners. One process sees management as a crucial participant; others want to be shielded from the management's command-and-control.
The new focus is on enterprise-agility, driving business value and optimizing the whole. This paper suggests the strategy and pragmatic approach of combining the best practices of Lean-agile and Kanban and Lean-Startup that can be used complementarily to foster business transformation and innovation, adapting to change effectively and above all enjoy the journey of creating quality product that provides maximum business value.
Evolution of Quality Processes
The ultimate aim of any customer is:
Time to Market – Working software
Early Return on Investment
Ability to make changes quickly
We need to understand that processes have come into existence to help and ease the development process and not hinder the whole process of creating value. These issues gave rise to the evolution of iterative development and releases. Agile methodologies tried to focus on resolving this problem by delivering workable features to the client frequently and were successful to a large extent as well.
The major advantages of Agile are
Time to Market:
The agile manifesto preaches:
Advantages and Disadvantages of Scrum
Scrum is a prescriptive approach. It is a lightweight framework that empowers team to work efficiently with Business partners. Scrum when implemented efficiently exposes impediments well ahead of time.
It advises iterations and prescribes teams to break things into really small chunks. It advises on the amount of time to be spent on planning, retrospectives etc.This is a good thing for the teams to be focused on just the small piece of work to be delivered and tested and move on to the next. The downside of this is that over a period of time, the team misses on the big picture and tries to force-fit projects that cannot fit in this model.
Where is Scrum Appropriate
This works best for Maintenance / Support of existing features or adding new ones to retain the existing business. During this phase, incremental updates are required to be made to the product. This is the stage when the risk is least. The product management focus is typically on maximizing the return of investment: to minimize cost and increase revenue. The innovation is low, and there is little uncertainty about what the product should look like and do, and how it is built.
Experimentation and failure are hence not desirable. The need is to be able to churn out features in a rhythm to support the customers. Scrum best fits this way of working. This stage is more about effectiveness: quickly resolving uncertainty by acquiring knowledge and correcting from mistakes. A single product owner is desirable to enable effective decision making.
Time to marry Lean
In the case of new product development, it's better to opt for Lean + Scrum. In scrum since the team works on small chunks and sometimes fails to see the bigger picture.
Advantages of Scrum + Lean: Scrum#
Scrum # is an enhancement of Scrum embedded with Lean thinking. There are various tools that lean and Kanban uses that can be utilized to complement Scrum's way of working.
Value Stream Mapping
Plan-Do-Check-Act (or, Adjust)
Command and Control Vs Leading teams
View of Management in Traditional Models
o A "command and control" approach is followed which makes the implicit assumption that the relationship between the inputs and outputs of a software development process are stable and predictable and that the schedule of outputs will still be relevant by the time they appear
Scrum's View of Management
Lean's View of Management
Limit Work in Progress
Finally people and organizations needs to be aware that no one process is the solution to all problems. Instead of following a prescription the organization should be flexible enough to make changes and eliminate and adapt the processes as required.