In this edition of Interim Insight, we speak to Senior IT Consultant, Ray Bunton who provides a candid review of Waterfall and Agile and the benefits of adopting an agile delivery methodology.
What do waterfall and agile have in common?
Whatever delivery methodology we use there will always be common themes. There’s always a need to talk about scope and requirement, what we want to, do and how we want to do it, there’s always a design which is the blueprint/the instructions for what we want to produce as a set of products. We then get into the build stage where we talk about producing those viable products, obviously there’s a need to test them, independently and together and then it’s the handover stage where the discussion is about how you’re going to deliver those products post-test into the environment or state where the end users can consume them.
What about the people involved in the process?
The other common thing is no matter how you’re delivering is that you will always have people involved, people in various guises, senior stakeholders, designers and builders, some people are there to help, some people are there not to help so much, some are interested, some are not interested, and it’s all about how you interact with those people.
What are some of the myths?
The interesting thing about waterfall is it’s not always waterfall. So although you may think about steps which lead one after the other in a serial fashion unless you are delivering widgets on a car production line, in reality, I’ve never delivered any programme or project which didn’t have a certain amount of parallel working in between tasks in a waterfall situation, so you can still deliver in a reasonably good timeframe even though you are technically in a waterfall state.
On the other hand, Agile doesn’t necessarily mean quick, depending on the scope of the product owner and the minimum viable product and what you’re trying to achieve and the number of defects that you find, agile can sometimes be a bit slower, added to this is the fact that it’s not always possible to know when the end date is, with this type of methodology and this can cause problems within itself.
Why transition from waterfall to agile? – what’s the value?
Agile turns waterfall on its head, it’s about saying why bother trying to seek perfection upfront in a delivery cycle because we’re not going to find it so let’s accept that things will change. Instead in agile we have this concept of enough design upfront doing enough design to say we’re happy to move into a build now and we don’t have to gold-plate so when we move into build we can do quick rapid sprints, iterative build and test cycles, several times, and build up a product as we’re going along. This allows us to tweak the design and scope as we’re going along whilst stakeholders may want to change the way the whole product is delivered.
Taking this approach means that we aren’t gold-plating at the start we’re finding problems quickly we have this concept of fail fast finding problems quickly and fixing them quickly and make changes before we get into the latter stages of the delivery.
What are the benefits of working this way for the team?
Delivering in this way drives positive behaviours for team members and the wider business, the delivery lead or programme manager has to feel that they can empower people and delegate, their mindset has to change, they have to let go and feel that people have the freedom to find problems and find their way through as a team together. For the team they’ll feel great! empowered and motivated and that they’re getting things done and moving together towards an end goal.
What about Senior Management?
One really important part of agile is having the support of the management structure, it’s a learning journey for senior managers in an organisation, they have to learn that in this mode when we’re going through these build and test cycles in rapid succession we can’t always know where the end date is, we know where we are right now, but we don’t always know where we’re going to necessarily, as such they’ve got to let go a bit and also empower colleagues in the organisation and spread the word.
What’s the key to empowering teams and organisations?
With agile it’s about being very positive, there’s no room for naysayers or negativity, it’s about one team, it’s not about this role and that role, mucking in and getting things done, building up a great team ethic which then spreads in an organisation in a very positive and infectious way and that’s how we build a message of cultural change using agile rather than waterfall.
What do you think these methodologies will look like in the future?
My belief is that whatever you call it agile or waterfall or whatever there’s always be something else along the line, someone will come along with something else that will be adopted and used to deliver programmes and projects but what I believe you will see in the world that we work in now regardless of the type of methodology are these really positive aspects of delivery.