‘Agile’ has become a staple in the business vocabulary these days, and in the world of project management it is providing the Commonwealth Government with a more flexible approach to managing complex projects than traditional methods.
What is agile?
Agile is a project management methodology characterised by the division of tasks into short phases of work, with frequent reassessment and adaption.
Under the traditional “waterfall” methodology, the project is divided into a sequence of distinct phases which are chronologically scoped in design and execution. It requires detailed requirements to be documented and agreed upfront.
An Agile approach breaks down the project’s goal down into small parts that are individually developed in short-time periods (sprints). It is based on an iterative process executed through collaboration between customer and supplier. Parties are not contracting for an end to end solution defined at the outset, instead agreeing to aspects of a solution which evolves incrementally to achieve the project’s objectives.
Interest in using Agile has grown significantly due to its potential to provide greater assurance of delivering required outcomes more quickly and maintaining better engagement and collaboration between the client and contactor.
Contracting for Agile
Traditional contracts were designed for waterfall contracts. Agile is a different approach and requires contracts developed specifically for this approach. The key elements of an effective Agile contract provide:
- Maximum flexibility – to accommodate the inherently unpredictable nature of Agile and an inevitable degree of failure or scope change
- Incremental scope development and scope delivery – defining the key project roles and process for managing the project (including scrum meetings)
- Strong service delivery governance framework – covering decision making processes and a clear definition of when a particular sprint is completed and accepted
Clear rights to exit at specified intervals – to ensure the project is not tied into long delivery cycles and allows the projects to ‘fail-faster’ if the client decides the project will not deliver its expected value.