In an opinion piece on eWeek today (Dog Food Doctrine Deserves Debate), Peter Coffee raises a concern that our (Microsoft’s) dogfooding of Team System may be of little value if your process doesn’t match ours.
I wonder, though, if Visual Studio Team System will be a well-tailored fit for organizations that are only like Microsoft in the sense that they also produce software. The manner in which Microsoft designs and delivers product, and the kind of developer that the company is trying to enable and empower, may not look all that much like the manner in which an enterprise team has to work with business process owners, deliver incremental capabilities into heterogeneous IT environments, and respond under pressure to immediate and unpredictable demands of its own in-house clients and their supply-chain partners.
It’s essential to look at developer tools in the context of the process that you actually have, which may or may not bear close resemblance to the process envisioned by the toolmakers
However, we don’t expect people to follow the same processes that we use at Microsoft. Note, I said processes. Part of our internal dogfooding effort includes multiple teams of various sizes, projects, and processes putting Team System through its paces.
One of the key goals in the design of Team System, and in particular – Team Foundation Server, is that it be a flexible platform for supporting any number of processes. I suspect that most internal software development teams at non-software companies are very similar to teams at Microsoft who build line of business applications for in-house clients.
The challenges and solutions required to run an enterprise are similar across most companies large enough to justify an internal development team. The one characteristic which may be different for internal, non-product group teams at Micrososft and internal teams at most other companies is the fact that we may be more aggressive in adopting new technology – especially our own.