Since 1994, Microsoft has had an application development methodology called the Microsoft Solution Framework.  While it's been available through Microsoft Consulting Services and in various MCSD trainings, we've never shipped it in a product.  In Visual Studio Team System, we are including a new version of MSF with several important updates.

First, we are releasing multiple flavors of MSF.  One process can't work for every project - so we're restructuring MSF with a base definition layer and a series of instantations.  In the first release, we will have two:

  1.  MSF Formal - aimed at larger scale, traditional projects that need and want a lot of “ceremony“ around handing off work products from group to group and phase to phase. 
  2.  MSF Agile - aimed at smaller iterative development projects.  We are very lucky to have hired Randy Miller, one of the big thinkers in the Agile movement, to help us design this version of MSF.  It's still in development so I'll describe this in more detail in future postings.

Second, methodologies can drive the tools.  We are introducing “methodology templates“ to the toolset.  At project inception, you can select one of the methodology templates stored on your VS Team System server.  This template describes:

  1. the work item types (”bug”, “scenario”, “risk”, etc) and their state transitions - this implements project workflow 
  2. predefined work item instances (“gather all user stories“) to guide the work
  3. check in rules that enforce policy around what a legal check-in looks like (e.g. “all check-ins must be run through a buddy build“)
  4. report layouts used by the data warehouse to show project status
  5. help files that describe how the methodology works

Thus, you can shape the behavior of the tools so that all team members can easily follow the prescribed methodology.

But, don't fear.  We aren't shoving this down your throat.  The templates are all editable.  You can create your own or elect to not use one at all.  We're already working with a number of third parties who plan to create their own methodology templates and I expect that there will be lots of them available from industrious individuals who want to show their own techniques.  In my talks with customers so far, I expect everyone will end up editing these templates for their own use. 

So with VS Team System, we'll let you use “our process, your process or no process“.