December 8, 2014
How to make ‘Agile’ work for you?
You have decided to jump into the ‘Agile’ bandwagon, convincing your team that the traditional waterfall model is outdated. You lug your team into a week of ‘agile’ training and the team, refreshed by a new set of terminologies to boast, is all geared up with their sleeves rolled. Congratulations! You’ve taken the first step.
However, as you may have already realized, ‘Agile’ is no fool-proof model, if not conceptualized and executed right. Many teams struggle to make agile sustainable for them from initiation to closure. Here are a few tips that should help you to stay on top of your game and not fall into the usual ‘agile’ pitfalls.
Agile is not an excuse to stop planning: Most new adaptors are under the myth that agile implies planning can be deferred or it can be done in an ad hoc fashion. As a matter of fact, it is just the opposite. Establishing a solid plan at the beginning is a complete must for the rest of the pieces to fit into the puzzle.
For e.g., you need to have the right org structure with roles and responsibilities – product owner, product manager, scrum master, etc. – clearly defined. You also need to be able to breakdown the project into ‘epics’ and smaller tasks that can be accommodated into sprints. All this happens only when you start off at the right foot.
‘Lean’ is the mantra: Lean teams working on lean stories, is the sure way to go in agile.
With respect to team size, agile can only work well for small teams of about 6-8 in size. The project is approached as smaller product deliveries with each lean team working on a product, which can be independently taken to production. The key here is to streamline in a manner that the dependencies on other products are made redundant with clean interface points supported by test driven development.
The idea behind lean stories is straightforward. The bulkier a story, it tends to remain unfinished and gets moved to the next sprint or it has less clarity for the developer to execute or even worse, difficult to write a test case for.
Invest in the right set of ‘tools’: The agile manifesto spells out, “Individuals and interactions over processes and tools”. While, teamwork and people interaction certainly scores in agile, do not get it confused for not investing in the right tools to make agile work.
While you may think it’s cool to have sticky notes on whiteboards or excel sheets to track your stories, some great tools are available in the market to support continuous integration (e.g. Jenkins, Cruise Control/Go), collaboration (e.g. JIRA, Version One) and test-driven development (e.g. Mockito, jMock).
Ultimately, just remember that agile is not a magic wand. It is a methodology and a bunch of techniques, but more importantly, a culture and a thought process. If you manage to pick a few fancy terms and a couple of quick fix processes and leave out the overall concept, it’s not going to work for you. You have got to adapt it as a whole.