Software projects fail because people don’t communicate. Sure, they nod at you in the hallway, or they send passive-aggressive emails, or they drop stickynote-encrusted spec documents on your chair when you’re out to lunch, but they don’t really communicate.
Communication, after all, implies understanding. And if there’s one thing most software projects lack, it’s understanding.
Now I’m not talking about “Honey, I swear that it will never happen again!” type understanding. I’m talking about the understanding that lets one person say “Sell more!’ a second to respond “We need to maximize engagement opportunities at the customer-facing end” a third to nod and mumble “I grok that and will create the work items necessary to fold the process into our SOA” and a fourth to reply “grep?” without a fistfight errupting.
Getting to that level of understanding is difficult at best (some might say impossible). In a story I wrote a few months ago, Fixing the Requirements Mess, several companies described the sometimes long, painful process necessary to retool development efforts throughout an enterprise, bringing those efforts in-line with actual business needs–and speeds.
Now if something is confusing, painful and long, there’s someone out there willing to sell you a CD-shaped bandaid–with a six- or seven-digit pricetag–that promises to make everything OK (Though unlike a Curad, removing these types of bandages is bound to hurt a lot no matter how fast you pull). In the developer space, this has typically been the likes of IBM Rational (the 800-pound gorilla of the big-enterprise market) and smaller, niche players such as Telelogic, Borland and SteelTrace.
But they’re all about to get some new competition–from Microsoft.
Later this month, the company will launch Microsoft Visual Studio 2005 Team Foundation Server. I recently met with S. “Soma” Somasegar, Microsoft’s development division VP and Rick LaPlante, general manager for the developer division about Team Foundation Server. Even after setting my reality-distortion shields on “full,” I found myself nodding in agreement about much of what they were saying.
- It’s about communication, not creating process.
- Developers simply do what they want to do–write code–because tight integration between the Visual Studio IDE and the server handles all the project management stuff automagically.
- You can pick any methodology at the beginning of a project–it comes with templates for Agile and CMMI, you can write your own, and third parties are reportedly working on other methodology plugins right now.
- If you’re a CMM shop, the server can produce reports that will include up to 300 pieces of the evidence you’ll need to pass your audit.
- The server’s features present as Web services and are available to third-party tools. There’s already even a plug-in for Eclipse from Teamprise.
It’s designed from the ground up to provide visibility into the development process, whether for compliance purposes or simply to be able to tell end users where the project stands at any given moment without relying on vague “Oh yeah, everything’s going fine” statements from the folks in the trenches.
- Microsoft says the whole thing will cost a mere 10 to 30 percent of other software lifecycle management tools.
You should be able to set up a development project with the tools in days, not months, and without a long-term consulting engagement. (Says LaPlante, “We want to make big consulting services a liability for our competitors.”)
It all sounds good in the marketing spiel, of course. Reality will be rougher ground to travel. For starters, there’s the whole integration thing. Like all Microsoft products, this works best as a suite that includes Visual Studio, Project, SQL Server, Foundation Server and so on. The external hooks are nice, but we’ll have to see whether third parties have any luck building tools that function on par with native Microsoft code.
And, of course, the products don’t really get much beyond the boundaries of the development group. Team Foundation looks like it will surround development efforts with a container the clarity of a fishbowl rather than a bowling ball. But you’ll still need business analysts and the like standing outside where it’s dry to translate business requirements into something Nemo can understand–and to keep overeager end users from dumping a whole box of food into the tank in an effort to make him code faster.
Team Foundation Server has been in beta for a while now, and I’d love to hear from people with experience in it. Post a comment below, or drop me an email to tell me what you think.