Thursday, July 3, 2008

Agile is Not Easy

On Apr 30, InfoQ posted an article "实践敏捷很容易:为期两天的“迷你”敏捷项目". It introduced the Code Jam that was hold by ThoughtWorks. Absolutely, this form of Code Jam was very useful and interesting. It would help the developers to master the agile methodology, idea and principles. But I don't be agree with the author's opinion partly. I think whether agile is easy should depend on the specific situation.

In Thoughtworks, most of the developers are familiar with Agile Methodology. They are all agree with the idea and principle of Agile. So we don't need persuade them to accept this methodology. They know about the process of agile development. They are used to using TDD and Pair Programming to develop the software. They enjoy the communication. They appreciate for the efficiency of Standup Meeting. They are fond of Retrospection to summarize the good experience and shortage to help improving the development process. In a whole, they are excellent team members and the team is more professional. This team is a real agile team. In this team, maybe everyting is going on well.

But the thing is not alway nice. If your team members all are fresh guy with Agile Methodology, what should you want to do? More serious if most of team members have not master the basic skill for developing project, what should you want to do again? Can you say: Agile is easy?

In this situation, How to implement agile and what to practice agile are the first task you should complete if you are an agile coach or ScrumMaster in Scrum. You should introduce some issues related Agile Methodology to everybody. You should let them master the agile knowledge, and think everything during developing project in agile thinking. You should be careful everytime and pay attention to every cicle of software development. If some mistakes happen, you must correct them in time. You should negotiate with your leader and customer, and try your best to prevent your members from interfering by others. It's your responsibility as "Collie". At the same time, you are a guide to lead them walking on the right way to destination. Besides, you should build the harmonious environment to prompt the communication between the members.

There are many problems you should solve as well. Anyway you can't escape. Unfortunately, my project is in this situation now.