MSF Agile - what's it all mean?
With the looming public release of Microsoft Visual Studio 2005 Team System, we are all hearing about "MSF Agile". Do we know what MSF Agile means to our projects?
Some of us in the software development industry already know what Agile Software Development is, while others have been so focussed on the PMI groundswell that the word "agile" never reached their ears.
What frightens me is that MSF Agile is likely to be the first introduction to Agile Software Development for many software developers and project managers in 2006 and 2007. Why is that a problem? Is there something wrong with MSF Agile? The issue is that, like MSF, MSF Agile is not a prescriptive methodology. It never claimed to be. It is a framework, with which one may develop or compare methodologies; and it contains many excellent resources to help practitioners study patterns and practices in software development. It is akin to a set of principals and ideas without a detailed application guide or set of practical examples. As such, developers and project managers who might not be otherwise educated about Agile Software Development methodologies and practices are likely to be lulled into a belief that by using Visual Studio 2005 Team System, they are practicing Agile Software Development!
Don't get me wrong. I believe that MSF Agile will be a beneficial guideline for certain audiences. I just don't think that the average guy on the street, writing C# 2.0 code or crafting a project gantt chart is going to benefit directly from studying MSF Agile. These folks (in my humble opinion) might be better served to enter the agile community with something like SCRUM or Crystal Clear. Once they've applied the specific practices to live projects, then MSF Agile might hold more meaning to them.
What I'd like to see out of Team System is a set of process guidance templates for each of the major Agile Software Development practices. While I don't think it would be appropriate for Microsoft to take on this responsibility, I would hope to see more TFS templates coming out of the agile community for SCRUM, XP, Crystal Clear, Lean and the like. I definitely like what Howard van Rooijen is doing with SCRUM work items for TFS. If TFS had a gallery of these templates from the agile community (perhaps through MSDN), then developers and PMs using TFS would have more visibility into the fact that there really are well defined methodologies for Agile Software Development.
All of that said, I love what I see coming out of Visual Studio Team System as it relates to Agile Software Development. Microsoft has incorporated many tools, reports and views that will make feature driven development practitioners and Scrum Masters very happy. Work item backlog integrated with change history, defect and velocity reports, unplanned work analysis... all of these things should get project leaders in the agile community very excited.
Suggestions for the uninitiated:
- Read the very succinct wiki on Agile Software Development
- Listen to the Agile Toolkit Podcast (many of the Agile Manifesto signatories are interviewed here)
- Pick one of the Agile methodologies to study, buy a book, read articles on-line about it.
(Extreme Programming, Scrum, Adapdive Software Development, Crystal Clear, DSDM, Feature Driven Development, Lean Software Development)
- If you're still interested, then get into a project with an experienced Agile Software Development practitioner or team.
Interesting links related to Agile Software Development and MSF Agile:
Agile Manifesto (the unifying beliefs)
http://www.agilemanifesto.org/
Short introduction to Agile Software Development
http://www.agilealliance.com/intro
MSF for Agile Software Devleopment
http://msdn.microsoft.com/vstudio/teamsystem/msf/msfagile/default.aspx
An early blog by Scott Bellware, somewhat critical of MSF Agile
http://geekswithblogs.net/sbellware/archive/2005/02/03/21964.aspx
Microsoft VSTS
http://lab.msdn.microsoft.com/teamsystem/
Microsoft's David Anderson gives a webcast about Lean Thinking in MSF v4.0
http://haloscan.com/tb/agileman/Lean_Thinking_in_MSF_v4_0_Webcast