Last week I went to an Agile software development presentation. In this presentation, presenters was trying to recap why are we doing Agile, and how should we do better. Bascially there are a few things to actually achieve by doing certain processes:
- communication (standup, coloation)
- feedback (retrospection, continue integration, automated testing)
- courage (big visible chart, adaptive planning)
- simplicity (incremental design, just enough documentation)
- respect (pairing, self team organisation)
For example, by doing standup meeting, working in the same area, we should get a better communication through the team. And by doing retropsection, continue integration and automated testing, we should get early feedback, etc...
The real purposes of doing those processes are to gain the benefit of better communication, early feedback, courage to adapt, simple and just in time delivery, respect and ambrace team work. The processes are actually created to help the team to deliver the product in a fast and successul way, but not created as a steps for people to just follow and think of following such processes will get the value of Agile. Therefore, people should NOT say that they are performing Agile by just applying those Agile processes.
So if any of the Agile process is not helping the team to achieve those 5 key points above, we should certainly drop it. At the end of the day, Agile should be agility, flexiblity.
No comments:
Post a Comment