Work Items, an urgent need of evolution!

The development team I’m working on moved to Team System in September 2006. The shift from what we used before was pretty huge, mainly because we weren’t using SCM at all ("WinMerge rulez!" you may say).

Of course, things had to evolve smoothly, and I can say it did pretty well!

First we started using the Source Control part, discovering the many benefits of the Shelve feature (backup, code review helper) and the Workspace one (working on different versions at the same time became something easy).

The next step was introducing the notion of Work Items in our development.
I customized the CMMI Process Template, it was more a slaughter than a customization, I remove many WITs to keep only Task, Review and Bug. I also removed many fields "too complicated for us".
One of the great feature of Team System is you can keep on customizing your existing projects, your process evolves as your development does, thanks to the feedback of your teams.

Anyway, when everybody started being comfortable with these WITs, as I just didn’t wanted them to lay back and finally "stopping learning this Team System thing and start coding again!!!", I planned a major evolution of the whole thing.

Our goal, like many companies, is to progress in the CMMI certification, so I have to introduce more "CMMI proofed stuffs" in our project.

So I bring back "Change Request" (how could we’ve lived without it?) and "Issue" (because the life of a programmer is not always that easy…).

So here we are, using five types of Work Item: Task, Change Request, Bug, Issue and Review.

One thing immediately stroked me: all these types are for specific purpose, but the instances should "somewhere" be related, and because they’re used by different people (product leader, team leaders, developers) they should ease the communication in our team (and by ease, I mean things should be automatic).

All I was seeing in Team System is a bunch of Work Items, related with an iteration of development, a specific area of our project and Work Item Queries that returns already a lot of results where it’s hard to find what you’re looking for!

I think we can do better than that, don’t you? 🙂

See you at the next post!