What is an Agile Mindset? An Agile Mindset refers to attitudes, values, and principles that embrace flexibility, collaboration, and continuous improvement in the face of uncertainty and change. It is closely associated with Agile methodologies, such as Scrum, Kanban, and Extreme Programming, commonly used in software development but adopted in various other industries.
Four Values of the Agile Manifesto1
We get values and what we prioritize in the work from the Agile Manifesto. We must prioritize what we value, no matter what the work effort, not just for software projects and product development. The things we value will guide our decision-making and put some stuff off the metaphorical table. If our organization’s culture does not share these values, the likelihood of an agile approach working will be slim to none, and slim is dead.
- Individuals and Interactions over processes and tools.
- Working software (product) over comprehensive documentation.
- Customer collaboration over contract negotiation.
- Respond to change over following a plan.
The Twelve Agile Manifesto Principles2
Along with the values, we have the 12 agile principles. When coupled with the values, we have a description of our approach to the work that, to be productive, must be congruent with the organization’s culture. Both have cultural implications; you will note there is no mention of specific processes or written processes. This is mainly a cultural change.
- Customer satisfaction through early and continuous software.
- Accommodate changing requirements throughout the development process.
- Frequent delivery of working software.
- Collaboration between the business stakeholders and developers throughout the project.
- Support, trust, and motivate the people involved.
- Enable face-to-face interactions.
- Working software is the primary measure of progress.
- Agile processes to support a consistent development pace.
- Attention to technical detail and design enhances agility.
- Simplicity.
- Self-organizing teams encourage great architecture, requirements, and designs.
- Regular reflections on how to become more effective.
Listed are key aspects of an Agile Mindset and how you might develop one:
Breakdown
Embrace Change:
Understand that change is inevitable and can bring opportunities for improvement. Instead of resisting change, be open to it and see it as a chance to learn and grow.
Know when to Decide
Every time we decide and put actions in place to move in that direction, we make change more expensive. The longer we move on this determined path, the more we invest in time and materials, all of which are costs. This previous investment will make changing difficult even when our solution is not optimal. There is often a reluctance to change the course of the project as that can increase the budget and perhaps extend the project's duration.
The solution to this problem is to delay making long-term impactful decisions until we know enough to make an informed decision. Agile has a vital learning component; we prioritize the immediate, essential needs. As we learn, we make decisions based on what we have learned. A good product development treatment of the concept is found in The Lean Machine: How Harley-Davidson Drove Top-Line Growth and Profitability with Revolutionary Lean Product Development.
Customer-Centricity:
Prioritize the needs and satisfaction of the customer. Regularly gather feedback and adjust your approach to meet customer expectations better. This involves a focus on delivering value continuously.
For external customers, we sometimes focus heavily on our organization. Sometimes, this is because the customer is not in front of us daily. Looking forward to the long term, we must deliver value to get more work from a particular external customer possibly. Sometimes, this means bending the rules of our organization.
Iterative and Incremental Progress:
Break down large tasks into smaller, manageable chunks. Work on these in iterations, allowing for regular feedback and adjustments. This approach promotes a steady stream of deliverables and ensures that the project always aligns with current needs and priorities.
I think of this as creating a WBS for each large task. The WBS could be a formal format or just sketched out on a sheet of paper or whiteboard.
Collaboration and Communication:
Foster a culture of collaboration and open communication. Encourage team members to share ideas, knowledge, and feedback regularly. This helps in creating a more responsive and adaptive work environment.
Agile means fast moving and may not allow for formal meetings to discuss everything. Yes, Agile methodology recommends daily meetings, carried out in a very specific way. Before the great technology jump, I worked on the management idea of Manage by Walking Around (MBWA). It provided an opportunity of one-on-one time with team members who may not always speak up in formal meetings.
Continuous Improvement:
Reflect on your work regularly and identify areas for improvement. Encourage a culture where teams are always looking for ways to enhance their processes and outcomes. This can involve regular retrospectives and a commitment to refining your approach.
One possible way to do this is to apply Kaizen to your daily work. Demonstrate to your team how it might help them.
Adaptability:
Be willing to adapt to changing circumstances. This may involve adjusting plans, priorities, or processes based on new information or feedback. An Agile Mindset values adaptability over rigid adherence to a predefined plan.
This is always a hard step for waterfall methodologists, but it can be done.
Empower Teams:
Trust and empower your teams to make decisions. Encourage autonomy and provide the necessary support and resources. This helps in fostering a sense of ownership and accountability among team members.
The adage of ‘We win as a team and if we don’t win, it is my fault’ applies. Being a dictator on a project is no fun for anyone. Fostering a sense of ownership is tricky. Some members of the team fear failure. The trust component here is that the project manager has to protect team members from the ramifications of failing. In other words, allow the members to do things that might lead to less-than-perfect results and guide them to a more acceptable result.
Focus on Value:
Prioritize delivering value to the customer. This involves understanding the customer's needs and aligning your work to meet those needs efficiently and effectively.
The customer is King.
To develop an Agile Mindset, start by understanding the principles and values of Agile methodologies. Attending training sessions or workshops, reading books, and engaging with experienced Agile practitioners. Practice these principles in your work and be open to learning from both successes and failures. It's a continuous learning process involving individual growth and team collaboration.
Decisions and Change
From our experience, no one wants to make decisions or change. We have worked for organizations where even executive decisions were made by teams so no one individual would be blamed for a bad decision. That did not last too long, as the majority rule created ‘we told you so’ situations. Agile mindset requires the ability to decide and learn and adapt. Making a decision that has poor results is only a learning event from which we can redirect our efforts.
Change is hard for most people. As you begin working on developing an Agile Mindset you may experience your own pushbacks, e.g. procrastination, trying something that doesn’t go well, the trick is not to quit. Also, working through your own pushbacks will help you when your team starts pushing back.
1 https://agilemanifesto.org/
2 https://www.agilealliance.org/agile101/12-principles-behind-the-agile-manifesto/