I have heard from numerous people say that once you are on an Agile project, you never want to go back to Waterfall. I have done just that. And it is hard but it is doable and enjoyable with the right attitude. A lot of what you do in Agile you had done in Waterfall, it was just framed a little bit different. And you can still bring a lot of what you learned from Agile and use it in a Waterfall environment.
My current project is a Waterfall project. I actually have never seen such an extreme Waterfall environment before. The first phase of the project was to create a Business Requirement Document for compliance changes to the business that would affect the systems that were used by the business. Background documentation on the compliance changes and the business changes were thrown over the wall to our team. There was little interaction with SMEs. And there was a long and intensive approval process that involved many approvers.
Even with this project, we were able to find ways to bring parts of Agile to improve the process. Here are some of the things that we brought over from Agile:
- Daily Stand-up – a quick meeting where we would get briefed of any project changes, hear about accomplishments from the previous day, plan for the current day, and ask for help on any roadblocks.
- Burndown – list of the tasks that are still left to be completed and estimates on the hours remaining to complete each task.
- Small Chucks – breaking out each problem and task into smaller manageable pieces.
- Team vs Individual – the team is ultimately responsible for the project/product but each individual needs to own their task and be accountable to the team to do it to the best of their ability. If an individual needs help, then the team works collectively to accomplish the goal.
These Agile practices improved our ability to deliver what was needed to our customers. It allowed us to have frequent and regular communication with our team members, show progress, highlight risks/issues, keep things manageable, and work together as a team.
What agile experiences or practices have you brought into your non-agile projects?