In a video cast I was watching today (about new things in VS 2008 Beta 2) I heard an unexpectedly interesting part related to the fact that Microsoft building the Visual Studio 2008 was using Agile methodology: sprints, iterations etc.
Scott Gu was speaking in favor about the experiences Microsoft faced while working on VS2008 comparing with standard waterfall process used in VS2005 development
Soma called that paradigm shift: a shift from "Code Complete" to the "Feature complete", which is really awesome description.
By Code Complete he describes typical waterfall methodology:
- developers writes the code and at the end we have code complete ,
- testers are testing that code then and at the end we are in test complete phase
- then goes test automation phase with the automation test complete
With a feature complete, we have now on place Agile principles where the development phase goes in parallel with strictly defined resulting artifacts and expectations at the end of every small iterations which is been then tested by QA people, while development of another feature starts..
Soma also mentioned an interesting concept of feature based branching model, which is another step away from standard waterfall release oriented branching model
At the end of "Agile in MS" part of this video Soma spoke about the "Feature Crew", "Feature group" team organization Microsoft used in developing Visual Studio 2008 where for each feature they have 5-10 people consisted of developers, testers and project managers. That team is the smallest organizational unit of people working on one unit of work and they are responsible for the "feature complete". If a member of feature crew leave the team it is the feature crew responsibility to figure out how to reorganize on micro level to make their "feature complete"
All this changes were causing first 4-6 months an "growing pain", because they had to learn how to work in this small teams but by the time they came to Milestone 3 in Orcas they learn the new way of organization and overall effect of that reorganization was very good and feature teams are now working very well.
I was really stunt hearing that the biggest bastion of waterfall methodology felt down and that MS finally realized that it is year 2007 and not 1997
Check the video out at S. Somasegar (Soma) and Scott Guthrie on Orcas Beta 2: What's in it?