Being Agile in a Waterfall World
Being Agile in a Waterfall World
As technology service providers, we work with a wide variety of customers and a multitude of mindsets. We also deal with differing expectations on how projects are to be delivered. More often than not, these are misaligned with our ideal approach. We want to be agile but our customer wants us to be waterfall.
Sometimes it feels that the path of least resistance may be the easiest option. Fighting against the status quo seems like more effort than just getting on with the project. You need to keep revenue flowing, expand your customer base and ultimately grow your portfolio of work. It’s a compromise, but one you make to get ahead.
The problem is, for more agile-minded teams, projects of this nature are deeply unsatisfying. The outcome can be of lesser quality than you feel capable of delivering, and in turn, the value to the customer is significantly diminished. The lack of flexibility is a hindrance to innovation.
As dire as this sounds, it doesn’t need to be. Experienced agile practitioners have the knowledge and the tools to elicit a much better experience. We can find ways to be agile in a in a waterfall world.
Start Off on the Right Foot
The success or otherwise of a project is often set at the beginning of the engagement. The way we negotiate, agree to working conditions and define scope, has a very significant influence on the outcome. Get off on the wrong foot and it's a very long road to build trust and develop a healthy working relationship.
A better way to start is by suggesting a short discovery phase tied to a smaller budget commitment. During this period, you work with the customer to define a shared vision, determine high-level requirements, and refine an overall budget for the project. It’s also an opportunity to build rapport with your customer and introduce them to a more agile approach.
Suggesting a more flexible change control procedure that accepts change as a constant, not an exception is also a good option. Rather than requiring onerous levels of documentation and formal approval, agree that change is a more fluid process. It should be readily negotiated at a team level as long as the impacts are well understood and it can be accommodated within the agreed budget.
Most importantly, recognise that the initial phase of the project is a critical point at which small changes can have a significant downstream effect. Focus on the commonsense aspects of agile practice and endeavour to find common ground with your customers. If need be, introduce them to your other more agile customers and discuss case studies that demonstrate the value of this more flexible approach.
Give It Some Structure
Whilst you may have managed to gain some formal acceptance of a more agile approach, it’s still an unfamiliar path for your customer. They may feel uncomfortable without the familiar crutches of a waterfall project, so it’s important to introduce some alternative structure at this point.
It may be too confronting to suggest the full adoption of agile framework like Scrum, but you can use familiar artifacts. Use a product backlog, sprint plans and burndown charts, rather than specifications, Gantt charts and budget reports.
Demonstrate the flexibility of agile while providing your customer with the comfort that you still have a plan, project requirements are well documented and they have the information required to track progress.
It’s also important to introduce them to the more collaborative and communicative nature of an agile project. Rather than periodic progress reports and project milestone meetings, it’s important to establish a schedule more fitting of an agile project.
If possible, get your customer accustomed to short daily catch-ups and more frequent demonstrations of progress. It helps them become more engaged, and emphasises the importance of their role in the project.
Be a Good Guide
We need to be sympathetic to those less knowledgeable or experienced with the agile methods with which we are most familiar. We also need to find ways to improve our working relationships in more waterfall-driven environments.
It’s certainly not necessary to evangelise an agile framework like Scrum in order to convince your customers to change the approach they are most familiar with. The gradual introduction of practices and techniques that we know are of benefit to their projects is the best place to start.
As agile practitioners, our role should be to guide our customers towards a more agile way of working and help them develop a different mindset towards project delivery. It’s not always easy to achieve the perfect balance, but any shift towards a more collaborative and commonsense way of working is worth the effort.
Jason Coghlan has over 15 years experience leading digital projects and managing technology-based businesses specialising in web application and product development. He is currently the client service director at PreviousNext, an Australian-based technology company.Learn More