In my last entry I talked about how to go about automating tedious tasks for developers. Of course, developers are not the only people involved in software development. What about automating stuff for everyone else?
Part of my job involves project management, and recently I've experienced the joy of having tasks automated for me. In particular, as described in an earlier blog entry, I have been able to set up a spreadsheet to connect to the work item tracking system in Visual Studio Team System and have burn down charts created for me (nearly) automatically - takes me 5 mins per day to update them. (I have talked with the team system guys, and it looks like I can do even better, using some of their built in reporting facilities - I just don't know how yet.) This has freed up loads of time, which I can now put to good use in the creative aspect of program management - working out what the product needs to do now and in the future, working through scenarios, writing specs, working closely with developers. I get the added benefit of having real-time tracking data at my finger tips which helps me identify risks and problems earlier.
One aspect of Team System that I like a lot, is its configurability. They realized that a closed world solution was not going to acceptable in managing software development projects. So they've made sure that you can get at the data through APIs, that you can design your own work item types (every organization needs to record slightly different information to the next), that the data can easily be exported to the Microsoft Office applications Excel and Project, that there's linkage to sharepoint for document storage. This makes it much more likely that you're able to customize the product to automate tasks that suit you or your organization's way of working. And so I've found for the work that I have to do.