Expanding the Team
There's an unlikely parallel between this summer's blockbuster "Pirates of the Caribbean: At World's End" and Microsoft's plans for the next two editions of Visual Studio Team System (VSTS).
Besides the fact that both are sequels, each is rooted in exhaustive and expensive efforts with huge audiences at stake. "Pirates" director Gore Verbinski mounted the "World's End" production simultaneously with the three-part series' prior installment, a strategy he has since told one film critic was "basically a mad idea."
Verbinski was referring to the sheer magnitude of his project, not the final results. But both films, for all their mega-budget grandiosity and sweeping scale, were widely savaged by critics, who called them bloated and incomprehensible in spite of their box office success.
If there's a lesson to be learned through the "Pirates" production saga, Microsoft appears to be unwittingly taking it under advisement as far as Team System goes.
Right now, teams in Redmond are making incremental improvements to the first-generation VSTS2005. These will ship later this year under the banner of VSTS2008. At the same time, another phalanx of developers and architects is masterminding yet another incarnation of VSTS, a project now code-named "Rosario" that's expected to emerge in community technology preview (CTP) form later this year.
It's an ambitious effort for sure. Microsoft officials within the developer division say they have a long-term vision for Application Lifecycle Management (ALM), one that's closely tied to the company's overall "Dynamic IT" vision laid out in June at the Tech-Ed 2007 conference in Orlando, Fla. Gartner Research analyst and former VSTS insider Tom Murphy reveals that it's all part of a deliberate strategy by Microsoft to become more appealing to enterprises.
Says Microsoft Developer Division head S. "Soma" Somasegar: "We're trying to figure out how we can tie the operations world and the development world so they're speaking the same language."
Enterprises are dotted with "Chinese walls," Somasegar says, creating conditions where teams that should be connected are isolated and communication is sporadic at best. "When they're finished what they're doing, they throw it over the wall and say, 'hey, call me if there's a problem.'"
This effort is critical as Microsoft tries to crack the enterprise software space, where it faces daunting and entrenched competition from the likes of IBM Corp. and Oracle Corp. As a relatively new player in the ALM arena, Microsoft must contend with IBM's Rational line and Borland Software Corp.
||"We're trying to figure out how we can tie the operations world and the development world so they're speaking the same language."
|S. "Soma" Somasegar, Corporate Vice President, Developer Division, Microsoft
Microsoft says it too aims to tear down those barriers through VSTS. "It's a long-term vision," Somasegar says. "Five or seven years, however long it's going to take. What we want to do in Rosario is take some baby steps toward realizing that vision."
Eyes on '08
Microsoft officials aren't offering much in the way of specifics regarding Rosario, attempting in interviews to direct the conversation toward VS2008 and promising more details about Rosario in the fall.
For VSTS2008, the company is upgrading the components within the suite to varying degrees. A major new feature in the developer product is a function Microsoft calls "hotpathing," which can show users the direct path to a problem piece of code.
"Before, if you had a bug and had that brought back to you, you may have had to trace down an enormous stack to find exactly where the problem is," says Matt Nunn, a VSTS product manager. "What hotpathing allows you to do is very easily click on something and it takes you on the direct path, without looking at all the other calls that were made."
Other developer-specific improvements also revolve around performance. They include cyclomatic complexity calculations for pinpointing problematic code and the ability to profile Windows Communication Foundation-based apps.
The testing product is also getting some tweaks in the areas of Web services and load testing. Testers will be able to create more validation rules and bind XML and other data to Web tests. Load testing improvements include better management of results within the test repository and summary report support for multiple machine graphs, according to Microsoft.
Microsoft has already said it plans to add VSTS unit testing features to the Visual Studio Pro product, a move following widespread demand from customers. Nunn portrays the move as an opportunity for Microsoft to integrate the notion of testing more deeply into the developer base.
"It's about creating a culture of testing," Nunn says. "The culture of testing hasn't really been deeply embedded into the developer world. By having unit tests down there, even people writing applications can build unit tests that can be received by the test products. The unit tests are really written by the people writing the applications because they know what the stuff should do."
Microsoft is focusing on continuous integration in Team Foundation Server -- something Forrester Research Inc. ALM analyst Carey Schwaber calls "crucial" -- and the new MSBuild feature supports multi-threaded builds.
Developers will also be able to see detailed information about where and when a given section of source code was changed. And when activated, a "Get Latest on Checkout" feature will automatically grab the latest version of a file to work on.
Microsoft says it's making "performance improvements to improve virtually all aspects of version control performance" with "substantial" gains in performance for projects with hundreds of thousands of files; and assorted new admin/operations features such as simpler installation and support for SharePoint 2007.
In addition, VS2008 will deliver a new "top-down" designer for architects and project leads. "Whereas in the original version you were kind of fixed in the types of objects you could actually model, the top-down designer allows you to model anything whether or not it actually exists. You can represent it," Nunn says.
Michael Ruminer, a VSTS MVP and a consultant with Magenic Technologies Inc., is bullish about the '08 product. "I think there's some good stuff," he says. "There are definitely some significant improvements in the testing, which was badly needed. For most people, they definitely felt like the testing left a lot to be desired. It was half-baked."
Another common complaint about Team System has been its high price tag. Microsoft says no determinations have been made regarding pricing for either VSTS2008 or Rosario.
Still, Microsoft has already made substantial market inroads with VSTS2005, according to anecdotal evidence and Microsoft's own numbers. Visual Studio Product Manager Prashant Sridharan recently said some 60 to 70 percent of Visual Studio users are also involved with Team System, and that 25 percent of VSTS customers have bought the entire lineup. (Of course, these figures may also include MSDN subscribers who get the product but don't actually use it.)
Per Olsson, a systems developer from Sweden, says his company Redcats Nordic is using VSTS to build out e-commerce sites. Olsson says in Europe development often sees a single team member taking on multiple tasks and VSTS has made it easier to compartmentalize various functions in the lifecycle: "It solved a lot of problems for us. The roles are distinct," he says.
Terry Litz, president of Illinois-based Specialized Data Systems Inc., has been using VSTS since the early beta. "One thing that's kind of interesting is to be able to look at the source behind a page the same time you're looking at a page," he says of VSTS2008. "It seems to be running a little bit quicker. I like the backward-compatibility concept, being able to go back to 2005. Sounds like a good strong feature," adds Litz, whose company makes administrative software for schools.
Microsoft itself is also using VSTS, albeit not throughout the entire company, according to Nunn: "We're a new product. More and more parts of Microsoft are coming on board. [Right now] they're using internally developed tools which have been around for a long time. But we are helping them move to Team System."
In any event, for its foray into the decades-old ALM space Microsoft has done OK so far, suggests Forrester analyst Schwaber. "I think you need a reason not to use it if you're a .NET shop, because of the integration more than anything else," she says. "They're not as full-featured as Rational yet. Their tools for testers don't compare to Rational's yet. But in terms of an integrated suite that really helps you coordinate the full lifecycle, I think they're currently ahead."
But she points out that's not necessarily good enough to coax customers to migrate from their existing ALM tools. "People don't migrate SCM solutions very easily," she says "So, are [Rational] Clearcase shops starting to move? I've only seen a couple."
If you're the type to ponder metaphors, Microsoft certainly has provided one through Rosario, which is named after a resort on the Pacific island of Orcas, the former code-name for Visual Studio 2008. The Rosario roadmap ties neatly with Microsoft's Dynamic IT plans. According to Microsoft, Rosario will kick off an effort to thwart the longstanding divisions within IT organizations as well as the gap between the technical and business sides of an enterprise.
"We want to give you clear line of sight between your business goals and what is actually happening in your software development project," Somasegar says.
Some of the plans target predictable areas, such as bug testing, work item tracing and test automation. Overall, however, Microsoft has an overriding theme in mind for Rosario: collaboration. One specific way this will be targeted is through requirements management. Support is planned for a "go/no-go" release function, which will determine whether an app that is thought to be completed truly meets business requirements. Related functions include "comprehensive" dashboards and metrics to determine a project's progress.
Other parts of the roadmap consist of vague though compelling promises, such as the ability to manage a number of projects by "proactively load balancing resources according to business priorities."
Rosario will also allow "rapid integration of remote, distributed, disconnected and outsourced teams into the development process," according to the roadmap.
Microsoft is already making tangible moves toward improving collaboration between developers and other stakeholders. In June, the company released a VSTS add-in that connects Microsoft Office Project Server 2007 and Visual Studio 2005 Team Foundation Server (TFS), enabling project managers and developers to synchronize project, resource and work item data.
The previous tool allowed Project Server 2003 users to connect to Visual Studio 2005 TFS and pull out information, but didn't give teams of project managers the ability to collaborate -- the synchronization is done on the back-end.
"Project has continued to evolve to be more server-oriented and to be kind of a full-out project portfolio management tool as opposed to a project management tool," observes Gartner analyst Murphy, who worked at Microsoft in the VSTS team until last fall. "This is one of those fundamental things where Microsoft products need to support the Microsoft product line; I think of it as a basic blocking and tackling thing."
The Project Server 2007-VSTS link has had an interesting lifecycle. It started as a skunkworks project that was spun out to Microsoft partners. Then the source code was put on CodePlex, where users added "a rich set of functionality" to the connector, explains Sridharan: "We actually took the code back, polished it up and made it go through security testing." The Project Server 2007-VS2005 TFS connector will "likely be revved" for Visual Studio 2008, according to Sridharan.
Murphy says Microsoft, a company with an established track record for developer tools, should focus on improving requirements management and business analyst tools within VSTS.
Ruminer echoes Murphy's opinion but questions whether Microsoft is aligning its priorities in that direction. "I do fear the requirements management won't get as much focus as I'd like it to have," he says. "That's the area where I see the least momentum. When I hear the words 'integrating with IT,' that makes me think more about the architect [tool]. The reality on the ground is that it may be underutilized. I really hope they're not focusing too much on that area. I think it's a hard nut to crack, a very difficult and challenging thing."
Schwaber says Microsoft should work on building better communication and collaboration tools for VSTS. "It's great to have all the data in one repository, it's great to have a Web portal where you can see the results of the builds, the progress a team is making, but what about integrated IM?" she says. "What about more than just SharePoint, what about shared collaboration of artifacts among developers in real time? Shelving is a great thing, but it's not all that they can do, and I think IBM is doing more than Microsoft there."
IBM is also introducing collaboration themes to its ALM strategy. In June, IBM unveiled its Eclipse-based Jazz Project. The intent of Jazz is to build a collaboration platform for integrating tasks across the app-dev lifecycle.
Dreaming vs. Doing
It remains to be seen if all the functions pegged for Rosario will end up in the release to manufacturing (RTM) product. Microsoft officials have not pinpointed a Rosario release date, but have indicated a CTP will surface later this year.
But some argue that may be an ambitious expectation. "It is a lot," Schwaber says. "I think it's possible, but I think the timeline will be a little more than what they're currently estimating. I can imagine features dropping. They're trying to really make a splash in the ALM market. They want to have big launches, but they're also going to have dropped features."
Murphy says Microsoft is devoting "significant" resources to Rosario -- perhaps 500 people, he estimates -- and there's a deliberate reason for that: "The key here is that Microsoft is very cognizant of the need to be on a more predictable release schedule that's shorter overall. It's possible things have shifted a bit since I left, but the idea is to follow not too far behind VS2008." (Microsoft would not confirm the size of the Rosario team.)
Organizations may not always want to upgrade to each new version, Murphy notes, but IT operations do value predictability for planning purposes: "It's important for Microsoft to show they can be an enterprise-capable software company, not just from a technical perspective, but as an enterprise partner."
Murphy also says Microsoft has plenty of work to do regarding the linkages between developers and the rest of the business: "How do I manage that operational environment? Where's the link between what Visual Studio does today and what their operations management tools do? The concept of design for operations is solid, I just don't see anything in the tooling yet that says we've reached the promised land."