Is “Agile” a process, a methodology, a framework, or something else? Depending on who you talk to, you will likely get different answers. Some say that “Agile” is a mindset. What does all of this mean in practice?
Let’s take a different approach to answering this question. Let’s explore some signs or antipatterns that may help us identify teams that are NOT Agile. You may have experienced this yourself already on your projects.
Warning Sign #1 – “I need all the details before I can estimate how much work that is”
The Agile way of planning work encourages us to work with what we know to avoid getting stuck analyzing every single detail of a problem before we start building the solution. This is the empirical approach which means we should learn from our experience. We should try to work in small increments and iteratively discover and refine the solution as we go.
Warning Sign #2 – “This is the way we have always done it”
Working in short iteration, by design, is a mechanism that helps our teams refine not just the products/solutions, but also the process that we are following to do the work. Working in an “Agile” manner, we have natural checkpoints for reflection, so we should try to take advantage of those opportunities to improve how we collaborate by investigating people, processes, and/or tools.
Warning Sign #3 – “The customer wants all of this so we need to give them everything!”
The Agile mindset encourage us to think about what is most important and valuable to the customers, and cut out anything that may not be meaningful. Even if the customer demands it, it’s our responsibility to evaluate the benefit of the work we do.
Warning Sign #4 – “We can’t change the schedule now; it’s already been submitted to management”
The world is changing at a tremendous pace, and the needs of the customers are also evolving rapidly. Keeping up with this demand will be a huge challenge for most organizations and teams, but those that are able to do so effectively will most likely stand out from their peers. Finding ways to embrace change is a key principle in the Agile mindset. We should not fear change, but use it to our advantage.
Warning Sign #5 – “We will work every weekend if we have to in order to finish this project on-time!”
Many teams are under tremendous pressure to deliver, but pushing the workers to the limit is not a sustainable solution. You may get some short-term wins, but you could also impact morale and product quality. Working with an Agile mindset means we should try to strike a delicate balance between speed, quantity, and quality. We should look at the big picture and strive for long-term success.
In closing, the Agile Manifesto, which is generally considered the doctrine for Agilists, embodies the principles of Agile software development. It discusses many practices such as:
- Reflect as a team regularly to find better ways of working
- Focus on simplicity and consciously stop doing unnecessary work
- Work towards a sustainable pace
It’s not always easy to formally “adopt Agile”, but it may make sense to find ways to in subtle ways leverage some of the principles to help improve the work that we do. You just might be surprised at the results!