Steve Mathieu asked in a newsgroup post what our extensibility mechanism is going to be for the Work Item Tracking components of Team System.

“can i use the web services to create, update and delete work item?”

Although there is a publicly visible web service, this is not the recommended way to extend Work Item Tracking. Instead, we’re providing a richer client side object model which sits on top of the web service. The APIs provided by this object model will allow you to write managed code to manipulate work items (creation, updating values, deletion etc) and also support validation of the updates against rules that are defined in the Work Item Type definition. We actually do a lot of work behind the scenes in the object model code to optimize communication with the web server so it’s definitely an advantage if you use our object model instead of calling the web service directly.

Extensibility is a huge part of Team System – and the Work Item Tracking components in particular. The object model I’m describing is what we’re using to write all of our own client side functionality against, and you have the opportunity to use all the same APIs to extend or create your own tools/clients for Team System Work Item Tracking.

Unfortunately, our APIs aren’t well documented (yet) but you can bet that we’ll have plenty of samples for you to play with by the time we launch – and hopefully by Beta (but I’m making no promises…). Hopefully you’ll see more from me (and others) blogging about this over the next few months.