How to adopt and manage an agile project approach
At Adaptable, we pride ourselves on always doing the right thing for the right project. This includes picking the right project management methodology. “Agile” has a reputation in some circles for being a bit of a “buzzword”. But for us, it’s a useful framework and approach to have in our toolkit for some – not all – projects.
Although agile development is fairly prominent in digital product development, if you haven’t worked on this kind of project before you might not have encountered it. We’ve recently had some questions as part of our proposal process around the reasons why we might recommend an agile project approach, so we thought we’d share a bit of wisdom on the topic.
Covered in this post:
- What the agile methodology is
- The benefits of adopting an agile methodology
- When agile is the right approach and when it isn’t
- How agile works from a commercial/contractual perspective
- Best practices for managing an agile contract
- Successful examples of agile projects methodology in action
What is the agile methodology?
Agile is a project management methodology which uses an iterative approach to break development down into feature-based chunks. These chunks of development are completed within relatively short, pre-defined time constraints known as “sprints”. Agile projects are structured in this way so that we can use sprints to make rapid improvements and iterations to a product we are helping to create.
Agile vs other project methodologies
One of the most common methodologies adopted in digital projects besides agile is waterfall. In waterfall, product development occurs in a linear sequence. The project tasks are completed in a rigid order and rely on previous stages being completed before the next stage can occur. The goal in a waterfall project is typically to agree on and work towards a “perfect specification” – i.e. completely scoping out and costing the deliverables or the end product from the start and setting out a timeframe to deliver this within.
Agile, on the other hand, puts less emphasis on planning around perfect specifications and milestones and more on quicker delivery, prioritising problem-solving, iterating and learning throughout the process.
Benefits of an agile project approach
For certain projects, there are several key benefits to adopting an agile project approach over a waterfall methodology.
Note – waterfall can and often is the right approach for some projects, but agile is widely accepted as an ideal methodology for digital products, and it’s the one we adopt, for reasons we’ll come to shortly.
Here are some of the main benefits of an agile project approach:
- Flexibility and adaptability – as you’re not tied down to specific milestones or deliverables, you can adapt the focus and the activity of each sprint to better suit your objectives and priorities.
- Enhanced communication and transparency – as sprints are concentrated periods of activity, you tend to benefit from more frequent communication and updates, particularly as there’s much emphasis on collaboration between you (the client) and us (the agency).
- Continuous delivery and feedback loop – with agile sprints you’re able to launch, test and improve your platform faster and more efficiently than you would if you adopted a waterfall approach. This means you can constantly be collecting user feedback on your product and using that to inform your focus and further development.
- Increased stakeholder engagement and satisfaction – the continuous and iterative nature of development in an agile project and the more frequent updates mean that key stakeholders in the business can have more visibility over the process and progress.
When is agile the right approach?
As we’ve touched on, agile isn’t the right approach for every project, and it’s our job as your digital partner to determine whether or not it’ll benefit you and our partnership. And ultimately, lead to a better end product.
Agile project management tends to work best when:
- The market is changing rapidly – if you’re launching a product or service in an emerging market, or it’s a new idea that’s evolving quickly, there’s a strong chance that the needs of your users will be constantly shifting. Equally, possible solutions to your challenges and objectives will be evolving all the time too. Agile helps you adapt to changing conditions much more easily, and quickly bring in features and improvements in response to user feedback.
- The problem you’re trying to solve is complex – if you’re trying to launch a brand new product from scratch, or majorly overhaul your digital processes, it’s likely there’s not a simple out-of-the-box solution or indeed a clearly defined scope. Agile can help by focusing on the overall goal of the product, and allowing for development to be guided by real-time testing as you go.
- Requirements can be prioritised – a classic fall-down of some digital projects is trying to cram too many features into the first release. Agile is best for you if you’re looking to release in iterations and have a clear view of which features are a priority at which stages of the process.
- You have a highly engaged customer base – agile relies heavily on user feedback and collaboration, so tends to work best when you have a group of customers or users readily available and willing to provide this insight.
Approaching agile contracts from a commercial perspective
If you’re more accustomed to fixed-fee, waterfall-style projects, it might seem at first like the commercials around agile are more complex and open you up to more risk. But if we work together to set out and agree on clear guidelines and best practices from the outset, it doesn’t have to be any different.
Due to the ever-evolving nature of requirements in an agile project, an agile agreement will tend to focus less on deliverables and more on goals. An agile contract will consider outcomes and interactions that will take place between the customer and supplier, rather than pre-defined plan and set of requirements. There will however usually be a scope or statement of work which will cover what goals we are aiming for across the working relationship with us.
You’ll usually sign up for a certain number of blocks of time with your chosen partner – and a sprint will consist of a pre-defined block of time – so you’re essentially committing to the future development time rather than agreeing on what the deliverables will be and paying for that.
Obviously, you’ll need to balance the collaborative nature of an agile agreement with protecting your commercial interests. You need to ensure that you have defined the principles of the agreement with your partner, and that they will be sufficiently governed by both you and them. It also helps if your chosen partner has experience delivering successful agile projects (just like we do – more on that shortly!)
What should be in an agile contract
An agile contract should set out:
- Project outcomes/objectives
- Rules of engagement and how the project will be managed
- Roles and responsibilities of the various parties involved in the project
- “Definition of ready” – understanding what needs to be in place for developers to begin developing a solution to the needs/objectives set out in the project
- “Definition of done” – when all conditions/acceptance criteria have been met and accepted
- How performance will be measured/managed
- Pricing (most commonly per sprint)
- Any other legal and commercial considerations
Keeping an agile project on the right track
Without proper governance from both sides of the agreement, the fluid nature of an agile project can lead to development being derailed or becoming focused on the wrong things.
You can make sure that your agile project stays on track by:
- Ensuring that you’ve signed up to the kind of contract detailed above and have a system in place to govern it.
- Nominating someone from your side to own, oversee and lead the project – particularly if some of your team members are forming part of the development team.
- Fully embracing the collaborative nature of agile and making yourself and stakeholders available to move sprints along in a timely manner.
- Having clearly defined goals and objectives for the project/product as a whole.
- Actively engaging your customer base in feeding back on and informing the ongoing development of the product.
From an agency side, we ensure that we keep agile projects on track by:
- Holding you accountable to anything we need you to provide from your side – time, feedback, objectives and direction.
- Assembling and providing the right team, from both a delivery perspective, and having a project manager in place with experience and expertise in agile.
- Using our agreed objectives to be proactive and move things forward where we can.
- Guiding you carefully through the process, particularly if you haven’t worked on an agile project before.
Agile in action
We adopted agile early on in our journey as our chosen methodology for digital products. We’ve worked on numerous successful projects that have been driven by agile. One of our most recent (and ongoing) agile projects is with connectivity providers Tiviti.
Agile case study: Tiviti
Tiviti is a ground-breaking solution providing connectivity-as-service for enterprise-level organisations. Moving away from convoluted, multi-supplier contracts and clunky dashboards often associated with procuring networking and IT, they’re revolutionising the industry to deliver better flexibility, more visibility and cost-saving.
As a ground-breaking service, Tiviti needed a ground-breaking platform to help their customers access and manage it. We’ve been working with Tiviti over a number of years on the continuous development of their self-service customer portal, offering visibility and control on par with what you’d expect from leading utility providers.
Structuring this project as agile sprints has helped us develop the product with enhanced collaboration with Tiviti and incorporate vital user feedback into each iteration. As more organisations subscribe to Tiviti, the platform can grow and improve to better meet their needs. It’s currently being used by large organisations including Social Chain, Wrigleys Solicitors and East Anglia Children’s Hospice.
If you’re on the verge of a new digital project, and agile is a viable option, there are a few things you should consider:
- Agile project management breaks up the development of a product or website into feature-based chunks, known as sprints
- Structuring a project in this way provides many benefits over other methodologies, such as waterfall, including:
- More flexibility and adaptability
- Enhanced communication and transparency
- Continuous delivery and user feedback
- Increased stakeholder engagement and satisfaction
- Agile isn’t right for every project, but it’s well-suited to new product launches in fast-movement markets or organisations, where user feedback is readily available and features can be prioritised for development in each cycle
- Having the right commercial agreement, governance and structure in place is vital to a successful agile project
Full disclosure, this post borrows heavily from this great government resource on contracting for agile. Check it out for more in-depth guidance on the commercials and recommend governance structures surrounding contracting an agile project.