Understanding What it Means to be Agile
Before understanding what an agile transformation is, an understanding of what it means to be agile needs to be identified. Agile, loosely defined, is the “ability to move and think quickly and easily” or “to move in a quick, coordinate fashion.In the world of software development, one of the main goals of adopting and transforming to Agile ? is to produce working, quality software in short, fast increments also known as continuous delivery. This often requires that teams are able to accept and implement fast, changing requirements.
Agile, as it relates to project management for software development, is sometimes used as synonym for Scrum, Kanban or other type of framework. This is an incorrect and misleading way to describe what it means to be agile. Agile is a set of principles and values listed formally in the Agile Manifesto, established in 2001.
The four main values are:
The authors of the Agile Manifesto did not provide a prescription or a formula on how to become agile. The Manifesto does not mention Scrum or any other variety of processes or methodologies. They simply described a small set of values written as simple statements, but are still challenging for most organizations to understand and embrace.
Many people are surprised to be informed that it is a misperception to believe that an organization can’t be agile if they exercise a waterfall methodology. In fact, only one of the Agile Manifesto value statements mention software and none mention a methodology. It is also incorrectly assumed that Agile is a methodology.
Agile is best described as an umbrella of values and principles and under it are many different sets of frameworks that help an organization achieve agility. Agility is the goal while Scrum, Lean, Kanban or other type of framework is often the “how”. Agile transformation does not mean prescribing to a methodology.
The agile transformation definition is as an act of transforming an organization’s form or nature gradually to one that is able to embrace and thrive in a flexible, collaborative, self-organizing, fast changing environment. The Agile Manifesto values and principles can be taught and exercised throughout any type of organization as it does not just apply to development teams.
The entire organization needs to understand the definition of an agile transformation and the value of it in order to benefit from the rewards of achieving true, healthy agility. The complete cultural and organizational mind set must change to one that embraces a culture of self-organization and collaboration.
Agile Lean transformation is transforming to agility while implementing and recognizing Lean practices and values. Lean, originally intended for manufacturing, was later recognized as applicable and appropriate for software development. The main goal of Lean is to maximize customer value while minimizing waste.
The Key Principles of Lean
Lean has 7 key principles (sometimes referred to as “practices”) that apply to software development:
Agile values and principles support creating working quality software rapidly. In order to achieve the best benefit, the software should have some value to the end user.
Eliminating waste (activities that are not providing value such as defects, non-productive meetings, waiting, inventory, etc.) naturally allows time to be spent on activities to be spent on things of value.
The result is the ability to rapidly release working quality software that a customer is going to value. By using a Lean practice, you are achieving a goal of Agile hence, Agile Lean transformation could be considered a healthy marriage of lean and agile principles and values.
Combining Lean and Agile helps to guide an organization into agility and Lean thinking faster without prescribing a specific set of actions (or process).