What does it mean to ‘be agile’?
We all want to be agile and nimble. Or in other words a state where we can change quickly, and adapt to the conditions in our environment. The same applies to organizations, where the ability to be agile can spell the difference between success and failure. So, what exactly does “being agile” mean? According to the Agile Manifesto—the holy bible for agile software development, being agile implies a mindset, where we value:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer Collaboration over contract negotiation
- Responding to change over following a plan
Values manifest themselves through the way we think and act in various scenarios. We design and implement certain activities with the mindset and associated values as the guiding light. Let’s say someone wishes to be healthy. In this context, being health conscious and the desire to be healthy is the mindset. What do you need to be healthy? Maybe sleep on time, exercise, have a balanced diet, meditate and more such activities. These are “practices” which align with the mindset.
What is a framework?
Different people may choose a different set of practices with varying degrees of commitment e.g. It may be ok for me if I sleep on time 6 days a week while someone may be ok with good sleep for just 4 days of the week; with varying order Again, I may prefer to exercise at 5 AM followed by a healthy breakfast while someone may prefer to exercise in the evening. Different routines, different activities, different ways of performing these activities-each one has something different that works for an individual. Now, imagine that I have tried the following way of staying healthy – Eating 3 meals a day with no fats along with 3 portions of fruit, cardio exercises for 30 minutes everyday, ensuring a minimum of 8 hours of sleep per day and 30 minutes of meditation in the evening. Also, I completely avoid eating out except on festivals and I give up on taking the elevator completely.
Let’s say this has worked wonders for me. Now I share this successful template with others. What have I done? I have effectively created a framework. It is a set of activities, done in a specific way and order which might be helpful for others.
It is not very different when it comes to agility. We saw the agile mindset and values a little earlier. There are different ways of implementing the values and principles associated with the agile mindset. Each of these “ways” has its own set of practices, patterns and personas and are classified as agile frameworks. Some of the most popular agile frameworks are Scrum, Scaled Agile Framework®, Nexus, Large Scale Scrum(LeSS).
Now the question is which framework is the best? This is similar to asking which is the best way of being healthy? If the focus is on the mindset and values, one would easily figure out that there is no one or “best” way. Each individual is different and a different “way” of staying healthy may work for each individual. The guiding principles may still be the same- they would be some combination of eating well, getting good sleep, work-life balance, exercise and a relaxed mind.
So, what are your options? Let’s start with Scrum, which is the most popular agile framework. Scrum is a simple framework which is very well suited for small teams which are trying to develop a new product or improve an existing product. Scrum is based on the principle of building incrementally with fast feedback loops, typically every 2 weeks- a period generally referred to as a sprint.There are three roles-Product Owner, who represents the customer to the team and hence helps them prioritize “user stories” or slices of value that the team intends to create. The Scrum Master is the facilitator and coach for the team and guides them to get better every day and every sprint. The team creates a product increment every sprint and demonstrates (a thin slice of) the working system that it developed in the sprint to the stakeholders. Based on the feedback they improve the existing slice or start implementing the next most valuable thing.
Extreme Programming, also known as XP is another framework which focusses on technical practices. Very rarely does scrum succeed without the focus on technical excellence that XP champions. Extreme programming promotes techniques like pair programming, behavior driven development, test driven development, etc. Scrum and XP are powerful together. In fact, XP started the concept of User Stories which were later adopted by Scrum.
If your work is more flow based and your intention is, to improve the lead time for your work items, then Kanban is a great choice. Kanban is suitable for teams who do not need to reset their work every two weeks through the mechanism of sprints. Kanban helps bring in the discipline of limiting work in progress. This helps us “stop starting” and “start finishing” work.
One of the typical challenges that organizations face is that agile manifesto values and principles as implemented by scrum are hard to apply in the context of large organizations where no one team delivers value to a customer directly. In such a scenario, one needs to think about personas, practices and patterns which can be applied in a scaled organization. It is here that scaling frameworks come into the picture. Some of the most popular scaling frameworks are Scaled Agile Framework(SAFe), Large Scale Scrum(LeSS) and Nexus.
What is SAFe?
An important thing to note is that a framework would work only if its underlying principles and values are well understood. Let us take a deeper look into Scaled Agile Framework®(SAFe®) in this context. SAFe is the most widely used framework when it comes to the topic of scaling. SAFe is a rich body of knowledge with proven practices, patterns and workflows for Business Agility. SAFe is in fact more than just a scaling framework and provides guidance on how enterprises can achieve business agility through lean agile portfolio management practices and agile practices at team and program levels.
SAFe can be thought of as an “operating system” for enterprise agility that works in parallel to the hierarchical organization but with a different objective. While the hierarchical structure of organizations is optimized for stability, the second operating system i.e. SAFe is optimized for customer centricity and innovation. SAFe is built heavily on principles of Lean in addition to Agile. The origin of Lean Manufacturing was the Toyota Production System developed by Taichi Ohno in the middle of the 20th century. Lean thinking relies heavily on concepts like working in small batches and applying work in progress limits.
SAFe has refined the principles of the agile manifesto and by bringing in Lean thinking into the mix, it has developed its own Lean Agile Principles. These principles are powerful and applicable to every part of the organization including portfolio and programs. The guiding philosophy of SAFe is to orchestrate the organization along value streams- which is a sequence of steps describing customer journey. What is more powerful than a cross functional team that plans, develops and demonstrates value creation in short cycles? The answer is a team of teams. SAFe introduces the construct of an Agile Release Train(ART) which is a team of teams organized along a value stream.
The Reasons behind SAFe’s success
What makes SAFe so powerful? It is the acknowledgement of the problem that having agile teams is not sufficient. An agile enterprise needs to be lean and nimble in the way it strategises, hypothesizes, builds and learns from it. SAFe promotes an organization-wide lean agile and systems thinking with lean economics and flow built in. If you are looking for a way to transform an enterprise’s way of collaborating and organizing with customer centricity in mind, SAFe is an excellent choice.
SAFe’s overarching guidance at the enterprise level makes it a great de facto choice for all enterprises. If you have prior experience with a framework like Scrum, SAFe makes the transition to business agility smoother. If you do not have any past experience with any agile framework, it helps you understand that every part of the organization needs to come together and collaborate in a fashion that customer success and centricity become our central focus. It is for this very reason that SAFe is the market leader when it comes to agility at scale.
If you have tried SAFe and it doesn’t work, it is quite likely that the foundation is weak and its principles and values have not been well understood. This is true for any other framework as well. Do not fall into the trap of adopting the roles and ceremonies of a framework like SAFe without getting the basics right. For example, the starting point of SAFe is getting all leaders through a “Leading SAFe” course so that leaders can unlearn some of the traditional ways of organizational design, responsibilities and measures of success.
Generally, no framework is a silver bullet for any problem. The first step is to identify the real problem and take inspiration from a framework or multiple frameworks to solve them. In most cases, a framework cannot be applied directly and in its entirety to an organization. The first step should always be to start with the guidance provided there and gradually evolve parts of it depending on your context. Just as we weigh the options of “build vs buy” when developing a solution, we need to take a similar pragmatic approach when it comes to frameworks. Building one’s own framework from scratch is likely to be costly and time consuming, Instead, buy or reuse an existing framework and improve it through principles of empiricism. This is the secret to succeeding with frameworks.