Today there is an increasing multiplication of concepts around the managing methods of development projects. But to succeed in adapting them to each context, it is important to first understand the basic principles.
PDCA, an iterative and incremental process:
In 1931, the physicist and statistician Walter Shewhart presented a method of quality management in the form of a four-step cycle: Plan, Do, Check, Act (PDCA). Deming’s wheel is its graphic representation: a wheel that illustrates, through the transition from one stage to another, a process of continuous improvement of a product or an organization.
The statistician Deming made this method famous and spread his new theories of management to Japanese industrialists in the 50s. Japanese industrials got interested in his teaching, which remained little known in the United States until 1980. The Japanese term for the approach inspired by this method is Kaizen, which can be translated as “continuous improvement”, the idea is to improve by following small concrete, simple steps.
Lean and Kanban, philosophies made in Japan:
“Kanban” means “label” or “form” in Japanese.
Originally, the Kanban and Lean philosophies came from a production management method deployed in Toyota factories in Japan since the 1950s, which aims to increase performance by eliminating waste and continuously improving. This method is based on two pillars: just-in-time (Flow, doing only what is necessary, the amount needed, when necessary) and jidoka (automation with a human touch). The idea of the TPS system (Toyota Production System) was developed, among others, by the engineer Taiichi Ohno.
The elimination of waste consists in eliminating activities that have no added value (muda), which are irregular (mura) and which are in excess or unreasonable overload compared to the means (muri). Kanban is an essential technique in this production approach at Toyota. It consists of concretely setting up a flow driven by the real need of the consumer of each job (and not pushed by assumptions upstream) and limiting the undelivered work in progress. This flow was followed using “cards” (in Japanese “Kanban”).
Subsequently, the term “Lean Manufacturing” was used in the 1990s to formalize the production process observed at Toyota, especially taking up the idea of eliminating waste and associated principles, then the method has continued to evolve. The term “Lean” was used in the book The machine that changed the World published in 1991. The book Lean Thinking by J. Womack and D. Jones was published in 1996.
Lean then moved beyond this framework of industrial production flow management, and Lean thinking was applied to several issues. Lean Management is the application of this thinking to the organization of work to optimize efficiency and evolution teams. And the Lean applied to software development is based, by analogy with industrial production, on the elimination of what has no value for the customer, just-in-time regular delivery, and continuous improvement.
Agile, for example Scrum, on a small and large scale:
The first publications on the foundations of the Scrum method took place in 1986 by Hirotaka Takeuchi and Ikujiro Nonaka and in 1995 by Ken Schwaber and Jeff Sutherland. The Scrum Guide was published in 2011.
In 2001, 17 experts in software development projects came together and capitalized on their experiences to write the “Agile Manifesto“. This synthesis recommends four values to be respected and 12 principles that follow from them, and recognizes as Agile the approaches that respect them:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
The Scrum method is one of the Agile methods. Teams must be multidisciplinary and autonomous. Work time is divided into iterations of fixed durations which are called “Sprints” (for example cycles of two weeks). At the beginning of the cycle we plan and at the end of the cycle we validate what has been done, we discuss how we can improve, we adjust and we continue.
The Kanban method described above can also be considered Agile.
If we now apply all these principles at the level of an entire department, “At Scale“, and not just as part of a team, we would organize the activity into sub-teams aligned to the business, where each is autonomous and agile, and we would organize the exchanges of these teams between them respecting the same values. It joins together the organizational model implemented by Spotify (a model communicated in 2012 by Henrik Kniberg and Anders Ivarsson) where these sub-teams are named “Squad” and the inter-squad communities are called “Chapter”.
On the other hand, for the teams to be truly autonomous and efficient, we need to gather all the skills needed to advance the project: a team that knows how to develop but who also knows how to deliver, monitor production incidents and who has the means (infrastructure and tools) to do it in a fluid way. The DevOps concept allows the alignment of development cycles, deployment and monitoring of production. A bit of history: the word was invented during the organization of the first “devopsdays” in 2009.
To maximize these improvements, we quickly realize that there is a need to go beyond the agility of development teams. The concept of Business Agility aims to extend the adaptability to the entire company in the face of the perpetual change of its environment. The company must be agile from start to finish, in its structure and its business concepts.
Lean / Startup => Lean Startup
The concept of Lean startup was originally developed in 2008 by Eric Ries. Based on his experience in startups he described a method of launching a new business, applying Lean thinking: The Lean Startup: How Today’s Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses. The principle is to start from the need of the customer and develop according to this need (as opposed to starting from a technology to develop). The essential and minimal need is first defined through testable hypotheses and is validated by the client (validated learning). This validation involves the production of a basic version of the product that meets the minimum identified need (Minimal Viable Product: MVP). The company then continues to work in learning and iteration (iterative design). Learning is done through the regular feedback of real clients. This concept is now applied beyond startups, in projects that launch new products on the market.
UX and Lean UX
UX (User Experience): The term was first used in the 1990s by Donald Norman. UX is the experience of the user who interacts with a product, a service or a system. It is therefore a concept much wider than the digital interface. Experience is about the perceptions you have when you use the product.
Lean-UX applies Lean startup principles to design projects to be agile.
It implies taking hypotheses, producing a basic version of the interface that meets the minimal need by focusing on the content rather than the graph, having it validated by the user, adjusting the assumptions made, and then continuing iteratively. This is like applying a cycle of “Think, Make, Check”.
The book Lean UX, written by Jeff Gothelf and Josh Seiden was published in 2013. It articulates the method around principles and stages such as: the cross-functional team, the access to the feedback of the user, the collaborative work on the design, the focus on Outcomes (results) rather than on outputs (deliverables)…
A team that follows the principles of Lean-UX can organize itself in an Agile way, in Scrum for example.
Note that Lean UX joins design thinking in several ways. Design Thinking is a solution-oriented, co-creative approach, inspired by methods used by designers in their work. Its origins date back to the 60s in the work on creativity techniques and design methods. The term was published in the 80s and the method adapted to the business published in the 90s. The method used today is iterative and cyclic, the steps are: Define (define the problem and expected result, observe the user, create an empathy), Ideate (brainstorm for multiple response ideas as needed), Synthesize and Prototype (Cross ideas and design prototypes to explore options), Test (Test solutions based on user feedback). The cycle then begins again to define the best solution, implement, test and adjust … Sprint design is a method that is inspired by it which consists of applying the 5 stages of design thinking with a time constraint, usually 5 days, to start a design project. The corresponding book, Sprint, was published in 2016.
All these concepts were built from the beginning by observing good practices where they present themselves: in martial arts, tea ceremonies, rugby, factories, supermarkets, startups… Why should you master them? Because by naming the new things, we learn them more easily and we manage to enrich them to eventually make further progress with them.