Updated: Customizing MSF for Agile Software Development

The software development community has been looking for the silver bullet that will allow us all to magically deliver software with little effort and with the precision of a manufacturing line. If you have read my articles before, you are aware of my position on this. There can be no single software development process that fits all projects.

That’s why we’ve created two software development processes, MSF for Agile Software Development and MSF for CMMI Process Improvement. All joking aside, we made the two MSF processes so that you can customize them. That way, you can add the secret sauce that gives your group its competitive advantage while taking advantage of ours.

This blog entry will begin the discussion of how to customize MSF. The first step is to download the MSF for Agile Software Development Source. Take a look at the EULA (Source/EULA) before making any modifications. In the source is a collection of xml files (see Source/XML) such as "BuildProduct.xml". Each of these files represent a workstream or area of the MSF process. There is also one larger file called "ProcessGuidance.xml". The smaller files are compiled into this larger file by a yet to be released tool called MSFWinBuild. This tool has been the victim of a variety of circumstances here at Microsoft. I am working hard to get it to all of you.

Figure 1: MSF for Agile Software Development in InfoPath

However, if you make changes directly to "ProcessGuidance.xml", you can see these changes in "edit"mode. Simply use the "processguidance.htm" in the Source directory as your entry point. It is slower than the compiled html from MSFWinBuild but it works. You have to edit the ProcessGuidance.xml directly (i.e. without InfoPath). We’ll talk more about these in future posts and in the customization guide. This blog entry is only the beginning, but it should help you get started.

Until next time!