Which description most accurately describes a development team? Which one should?
Part of what seems to stall most teams and produce sub-standard product littered with bugs and inefficiencies seems to most often come from a company culture that defines the work to be done and the time frames the work is to be completed in outside of the development group. This produces a feeling of exclusion and leads to phrases like "They never let me clean up the code/re-factor/work on anything cool."
Agile takes some steps to help fix this but, as I've mentioned before, if the rest of the company doesn't buy into the process nothing will come of it. If you can get only one thing out of Agile, make sure it is the concept of estimating little bits of the work to be done. This one little thing can be the first stepping stone in getting your development department to start hunting prey efficiently.
Once you have estimating in your control, the next step is to define an anatomy of an estimate. I've worked to create a multi-part plan for each story card to be completed that included improving the app, giving the developer some buy-in and a sense of ownership. What comprises an estimate are:
- Building Tests (TDD)
- Coding Feature
- Increasing Test Coverage in area (NCover, NUnit)
- Fixing Bugs
- Re-factoring
- Buffer
- Round-Up
Each of these steps build on each other over time, and there is some limiting that must be put in, lest the entire application be in a constant state or re-factor. Simply put the total work or 3 -5 should not exceed the work in 1 and 2. This means on a first pass in an area, maybe only #3 will be done. Next passes may include #4, etc. The order is also important. An area should not be re-factored until it is close to bug free. Bugs should not be fixed unless there is adequate test coverage in the area to be fixed.
This begins to take some of the scope of work to be done away from Product Manamement and Business Analists and gives the individual developers some discretion in what they will be working on. They will no longer be eating what they come upon, but activly seeking prey.
No comments:
Post a Comment