When you engage a digital agency to produce your website or apps it’s all the rage for them to talk about their ‘agile development’ approach. But what does that mean and what are the implications for marketers?
Despite its benefits of being fast and flexible, sometimes the agile approach seems to conflict with marketers’ objectives – predefining a number of features and requirements that will be delivered within a set budget and specific campaign timeline.
This article looks at the pros and cons of agile development for marketers and when agile should be used as opposed to more traditional approaches.
So what is agile development?
Agile development is an approach to developing websites or apps that emphasises close team collaboration, minimal pre-defined documentation, evolving requirements, incremental and iterative development and continuous testing.
It contrasts with the traditional waterfall approaches which are linear and sequential. With waterfall, once a stage of development is signed-off, there is generally no turning back unless the timeline and/or budgets are adjusted.
Agile is not new. The term ‘agile development’ was coined in 2001, in the agile manifesto that states a preference for:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
In practice, for marketers, that means that instead of producing in-depth documentation to define requirements upfront, only high level requirements (e.g. a prioritised wish list of features) need to be defined. Marketers collaborate closely with their agencies throughout development to evolve requirements and re-adjust the priority of features as the project evolves. The agency produces small and incremental releases of a project every few weeks, allowing the client to review what’s been delivered, see how it fits in with the big picture, test it with real users and adjust the next priorities accordingly.
What are the benefits of agile development for marketers?
With an agile approach a basic version of your website or app with the minimum required features (often known as the Minimum Viable Product) can be delivered quicker than with more traditional approaches. For instance, we were able to deliver a crowd-sourced scientific marketplace called Ximbio for Cancer Research Technology in just 3 months – a feat that would have taken at least twice that time with a traditional approach. This basic version (whether launched internally or externally to your customers) is then iterated upon, based on user feedback and business priorities.
As the name implies, an agile approach is far more flexible than traditional approaches because functions are bundled into user stories which are then allocated effort points. There are only so many points that each iteration (called a sprint) can contain and the sprints are prioritised depending on urgencies. Agile development can easily accommodate re-prioritisation and changes. Reprioritisation is more onerous with waterfall approaches – resulting in changes being postponed until after launch or the whole project being delayed and costs increased.
- Tried and tested
The roots of the agile philosophy are derived from lean manufacturing. The approach assumes that you wouldn’t want a web application, campaign or app to be developed in its entirety without having customer reviews, a chance to make changes, test and iterate. As agile is incremental, it allows teams to test features as they are developed as opposed to waiting for a grand reveal.
- Cost effective
The agile approach can be more cost effective than its traditional counterparts especially where a lot of technology work is involved. That’s because the agency has far less risk of requirements being misunderstood or changes being made to the original brief, so they don’t have to ramp up the costs to cover their risks. User stories lead the requirements and incremental, user-tested development reduces ‘over-baking’ features or the production of ‘wasted features’.
The agile approach incorporates a more playful and visually engaging management style, including gamification techniques like planning ‘poker’, and visual tools such as burndown charts, velocity diagrams and visual backlogs. The approach is invigorating, particularly in contrast to traditional approaches. Teams are further engaged by procedures like daily stand-ups, sprint planning and sprint reviews sessions, that make the project experience more exciting and ensure you get the most out of the team.
What’s not to like about agile?
All sounds great, right? Yes, although an agile approach can be tricky to incorporate into marketers’ existing work processes.
For instance, you need a new web application and when you’re doing a ‘beauty parade’ of agencies that are pitching for the job, you want to receive exact quotes and timescales for developing all of the features you require. With an agile approach the quotes you receive are for the agency’s time in delivering features that can be quite vague and are high level only. Although you prioritise these features along the way it can feel like there’s not as much control as with other approaches: you need to trust that you’ll collaborate well with your selected agency as they’re no longer following a very detailed brief.
Furthermore, while the flexibility inherent in the agile approach is great, it can backfire if you have multiple stakeholders and not one product owner that is responsible for specifying the sprints.
It’s true that with an agile approach you could get to the end of your budget and find that some of your requirements have still not reached the top of the priority list. However, that’s usually because the project has revealed that other features are more important, so it’s actually a good thing.
When should agile be used?
In my view, an agile approach should always be used, whether in part or entirety. The good thing about agile frameworks is that teams don’t have to adopt the full approach and in some instances they can go ‘partially agile’. Agile frameworks offer great communication models like EOD reports, reducing the amount of stakeholders, holding daily stand-ups and running user stories that can also be applied to waterfall projects, improving transparency, usability and feature planning.
This combined approach may be beneficial to small and less technical projects where changes are highly unlikely to occur, or in instances in which there are multiple stakeholders.
To work properly, agile development requires a single product owner who can make decisions on the fly without having to go through multiple sign offs. Consequently, it’s less appropriate for situations in which there are lots of stakeholders involved in the details of the project.
In reality, while agile development is a great approach, it is rarely applied alone and is usually blended with elements of more traditional approaches. According to Tom Grant, a Senior Analyst at Forrester Research, too much documentation can cripple a team’s speed but a total lack of documentation can damage a team’s success. It’s worth considering whether you should use agile with a lower case ‘a’ (i.e. a partially agile approach) or with a capital ‘A’. The latter would be more suitable for new highly technical marketing projects where small teams are able to make all the decisions without getting multiple sign offs.