星期三, 九月 12, 2007

Fragile Agile?



 
 

Sent to you by Hudong via Google Reader:

 
 

via MSDN Blogs by andrewdelin on 9/11/07

Recently I reviewed a troubled project that over-ran (and over-spent) in delivering a custom Sharepoint solution to a customer. The project claimed to be "agile", by which they meant there was very little structure around the development process.

Looking deeper into the behaviour of this project, it was clear that certain fundamental Agile practices weren't in place. Notably, there was a failure to "get specific early" by writing decent user scenarios. These scenarios are intended to drive sufficient design activity so that development tasks can be articulated in enough detail. I call this "earthing the design", just like you ground an electric circuit. If the scenario isn't sufficiently detailed and the corresponding design is improperly resolved, a lot of churn will follow. This quickly leads to customer dissatisfaction.

("How detailed should my scenarios be?" There's a thread I like on this topic in the MSF forum, here.)

I also found this project had minimal testing practices and an immature approach to work backlog. So the measurement and transparency of progress were missing. The results of the final solution speak volumes: there were lots of areas where functionality didn't work properly, and a lot of post-implementation rework was required. The solution was fragile, brittle.

It's an unfortunate thing when a project is labelled "agile" under such circumstances; instead, it was really "unstructured".

The discipline of Agile development is in the executioh of team practices that are intended to capture and clarify specific scenarios of value, to illuminate design direction, enable incremental coding, and promote testing as a transparent indicator of progress to all stakeholders.

Our aim with MSF is to make these things easier by having the tools understand these practices and to support the team in applying them as they work: we call this 'process enactment'.

This lead me to thinking whether using the MSF Agile template in Team System would have helped this customer? They were new to the Agile space and could have used some guidance to get started. Would our Agile offering have been helpful, or would it have been hard to understand and apply?

I'd be interested to hear any feedback on how easy or hard it is to use the MSF Agile template for the first time: the more specific the feedback, the better.


 
 

Things you can do from here:

 
 

没有评论:

发表评论