Agile: Real, or Just a Formality?
Compare how Agile is used in the service industry with how it is supposed to be implemented and decide if it's being done correctly.
Join the DZone community and get the full member experience.Join For Free
"Agile." What is the first thought that comes to your mind when you hear this word? Here are some obvious answers:
- "It's a software development methodology."
- "Yes, I know we work on Agile."
- "We are using Agile in our project. Daily Scrums/standup meetings, retrospectives, Show & Tell or Demos. That's what it is."
Let me introduce myself before I start writing about my experiences with this buzzword. I started my career in software development in 2004, about 14 years back. I have worked with 8 different companies and contributed to the development of 16 projects so far.
Years back when Agile wasn't a hot thing in the market, we used to follow waterfall model. Although everyone who has studied Computer Science or Information Technologies has read about other methodologies like Prototype, Spiral, Agile, etc. But how many of you have seen those in implementation?
Let's see what is Agile in simple understandable terms:
- Breaking all features of the desired system in very small chunks called Epics or User Stories
- Estimate them
- Perform development in fixed execution cycles, 2-6 weeks in most cases. We call these cycles Sprints.
- Prioritize the stories for every cycle
- Develop & test the stories
- At the end of each cycle, do a demo of new developments which are completed
- Move the leftovers to next cycle/sprint
Some of you might disagree that Agile is the best fit for new developments and will say that it is good for enhancements only. Or you might have better arguments too. In fact, following Agile has certain benefits which make it a better fit for any development project in today's competitive and constantly changing world.
Agile takes care of non-performing people by itself
How many times does an employee say the same status in morning standup meetings? After a few days either he/she starts performing, finds the solution of the problem he is stuck with, or hands it over to someone else.
Agile has the ability to improve on estimations as well as tracking
Within 1-2 consecutive sprints, we start to correct on our estimations if they are too relaxed (the team is free mostly) or impossible to achieve (the team is constantly working hard and yet the stories are slipping on the calendar).
Agile helps team members connect to each other and keep a healthy work environment
The Scrum meetings are not supposed to be taken care of by the Project Manager, but rather a different person who is lively and can keep the conversation happy and witty. This gives an opportunity to everyone in the room to exchange the smiles and laughs, which is a very big advantage of Agile over other methods where you do not have the whole team in the same room every single day. Most importantly the retrospections give an opportunity to each team member to share the concerns if there are any and they can be addressed.
Agile in the Service Industry
Okay so have got a new project, we will follow Agile.
In reality what is actually happening is:
- Project Manager converting all stand-ups to status and scolding meetings
- In some cases, only the PM and leads are taking the stand-up (again status meeting, not standup)
- He/she is the PM, Scrum Master as well as Product Owner (killed Agile totally here)
- No burn-down charts prepared to see how are we going
- In short, the process Agile on paper and FrAgile Waterfall in reality
I have seen many projects running on their own methodology and they call it Agile. If you religiously follow Agile, the yelling, misunderstandings, slippages, and unhealthy environment will automatically be taken care of. This will be a little learning curve of Agile, which isn't bad if you do it once. It will not just improve you as a professional but will also help the organization. So learn it and get certified !!
Opinions expressed by DZone contributors are their own.