Wednesday, March 25, 2009

It's not "lite"

I worry that some folks support agile development because they dislike process and consider this a way to get by with doing less stuff that they don't enjoy. Take for example a discussion with a team on a agile journey. Developers indicating some push back when the code stops working due to some changes in progress. They voice the position that there is extra work to make the temporary changes necessary to keep the code working for the periodic builds. They could use that time to create extra value or function. At the same time the testers don't seem very enthusiastic about testing the latest build and reporting bugs. As the mentor for this team I worry that we are getting off track.
My best response is that we choose not to reduce the risk of undertaking a complex software development effort by writing detailed specs and requirements documents. Instead we choose (or I believe we choose) to reduce risk by incrementally create function and create frequent builds of working code. That is our risk reduction strategy. It is a corner stone for our plan to deliver a successful end product. I acknowledge that their is some extra work to keep things working - perhaps with some temporary scaffolding or temporary code. This enables us to demo the code and learn from it over the life of the project and not have a big crisis at the end and a long difficult to predict period of instability.
Next time I'll ask do you want to write specs and that start or keep the code always running and fix the bugs as they come up. You can 't have your cake and eat it too. We are all on a journey...

No comments:

Post a Comment