In a fast paced world, speed to market is important. Traditional project management methodologies typically take a lot of time, effort and cost to plan and execute. With how fast technological improvements are being made, the end result, once deployed using a traditional project management approach, could see the technology being made redundant before it even reaches the release stage of a project. Agile gets around this by using an iterative release approach.
The Manifesto for Agile Software Development, commonly known as the Agile Manifesto outlines the core values of Agile project management and some of the principles include:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
While there is no disputing that project governance is important and that things need to be documented throughout the course of a project, Agile project management moves away from the rigidity of traditional PM methods and focuses on continuous improvement, scope flexibility, team input and delivering essential quality products, whereby stakeholders are continuously engaged and project team members are empowered to make decisions. Often Agile is used within a scrum framework and uses lean thinking to eliminate waste.
By focusing on continuous improvement, and delivering useable chunks of the project over time, cost is reduced and wasted effort is largely avoided, as change is responded to early on. At the end of each delivery cycle, often referred to as a Sprint, there is a Retrospective meeting where team members discuss areas where their efficiency could be improved. The team decides how to fix these problems, with the intent of improving their efficiency in the next Sprint.
Taking what the team members have learnt in previous Sprints and applying these learnings to future Sprints, allows for greater efficiency and potentially the production of more work with each new cycle. When planning for a sprint, the MoSCoW principle is a good one to follow. MoSCoW is a prioritisation technique that categorises things into Must Have, Should Have, Could Have and Won’t Have this time. This is an alternative to the traditional High, Medium and Low ranking of priorities and gives stakeholders and test users clear visibility into what to expect in each delivery cycle.
An Agile organisation is considered to be adaptable; flexible and able to change direction to meet customers’ needs; non-hierarchical; cohesive and aligned from the top down. Great Agile organisations seek excellence in all they do; have an open culture based on collaboration, where it is safe to express ideas and opinions; have strong leadership who lead with the values of Agile; and have an intrinsic attitude of continuous learning and development. Agile tends to fails when there is a lack of belief in it or a lack of skills to promote positive change; or when the business sees Agile as an IT process which they are not required to change for.
In summary, Agile can be an exceptionally valuable project methodology, but in order for it to be a success, there needs to be champions from both IT and the Business and team members need to feel empowered to make decisions and work autonomously.