Put the Team in Lifecycle Management
Microsoft's enterprise version of Visual Studio 2005 stresses team development.
by Patrick Meader
TechEd, May 24, 2004
Emphasizing improved collaboration between development and IT operations teams for lifecycle management, Microsoft announced at TechEd today the enterprise version of its upcoming programming suite, Visual Studio 2005 (code-named Whidbey). Called Visual Studio Team System, the enterprise version of VS 2005 incorporates a range of lifecycle management tools and team-oriented features intended to reduce the time and cost of developing enterprise-scale applications, as well as facilitate the creation of applications based on service-oriented architectures (SOAs).
Microsoft is building its enterprise lifecycle features around three versions of the tool that it calls Team Architect, Team Developer, and Team Test. The team management features are collectively called Team Foundation and include tools that focus on change management, reporting, work-item tracking, and project management.
Visual Studio Team System expands considerably the lifecycle management tools provided out of the box by Visual Studio. The tools that comprise Team Architect, a trio of designers for modeling and implementing applications, have been publicly discussed by Microsoft previously. Code-named Whitehorse (see "Whitehorse Rides to Modeling's Rescue," in Resources), these designers consist of a distributed application designer that provides whiteboard-style application design, WSE support, and the ability to validate your application design against your logical infrastructure; a logical infrastructure designer that lets you take a snapshot of your existing environment and enforce the proper settings and constraints for a large-scale deployment in a variety of settings; and a class designer that enables code modeling, generation, and two-way synchronization between a project's code and its underlying model.
Note that this class designer does not depend on UML, but instead relies on a new notation developed by Microsoft, which asserts that a new approach was necessary to achieve two-way application design (see "Build Distributed Apps a New Way" and "Model Apps More Effectively" in Resources). Visio will still be part of the Visual Studio package and will maintain support for UML-based modeling, but that might be for legacy support more than any other factor. Visual Studio itself is headed in a different direction.
One of the main goals of this trio of designers is to help people involved in different parts of the application creation process to work together more seamlessly. Architects can lay down the design of an application for the developers, whose own changes to the model are reflected back when they make changes as they code the application. Similarly, developers are connected more closely to the IT people who deploy and maintain the application by being able to validate whether an application can deploy in a given environment before the deployment is ever attempted.
Team Architect and Whitehorse have gotten most of the attention so far, but Visual Studio Team System includes other lifecycle management tools. Team Developer provides tools for static code analysis, code profiling, determining code coverage, and integrated unit testing. In many cases, Microsoft is offering the tools it uses internally to test the applications it creates. Together, these tools are intended to help developers catch errors and security issues earlier in the process. Third-party companies have long provided add-on products that provided these capabilities for Visual Studio, but this is the first time such tools have been incorporated directly into the VS tool by Microsoft itself.
Similarly, the Team Test portion of Visual Studio Team System incorporates tools and services that have long been available only from third parties. Team Test includes tools for load testing and test-case management, as well as an application verifier. The load testing tools let you load-test Web services using protocol-based scripts and do performance-counter collection and threshold monitoring.
Underpinning the lifecycle management tools is a set of team-oriented tools and services Microsoft calls Team Foundation. Visual Studio Team System will ship with a variety of tools and wizards for project management, change management, reporting and analysis, portfolio creation and navigation, and creating project portals for team development. The emphasis of these tools and services is facilitating team development that can scale as your development and projects scale.
Visual Studio has long incorporated team-oriented features similar to some of the features announced today, but they were relatively limited in scope and usually purchased from another party rather than built from the ground up by Microsoft. For example, Visual SourceSafe, Microsoft's version control system, works best with relatively small teams, and it doesn't scale well as the size of the team project increases beyond a handful of members. SourceSafe will continue to ship with Visual Studio 2005, but Microsoft recommends not using it for teams larger than one to five people.
Microsoft still encourages third-party companies to extend the functionality provided by Visual Studio through its Visual Studio Industry Partner (VSIP) program, and Microsoft mentioned a long list of companies that will continue to enhance and extend Visual Studio .NET as part of this program. However, Microsoft itself is also providing much more of the foundation for lifecycle management. This is not unprecedented for Microsoft. It has frequently incorporated functionality into its development tools that third parties had previously provided. For example, VB2 incorporated database capabilities directly into the product itself, when version 1 had left that to third parties. That decision was a huge step forward for the language and fundamentally enabled VB's eventual prominence as a business-oriented development language.
By incorporating these lifecycle and team management tools directly into Visual Studio .NET, Microsoft is attempting to take a similarly big step forward for creating applications based on SOAs. Simplifying the cost and effort required to create such applications would enable people who use Microsoft tools to operate more efficiently in heterogeneous environments that are now the norm in enterprise development, as well as enable Microsoft to compete better head-on with the likes of IBM and BEA, who are pushing in a similar direction (see "Gartner Touts SOA, Pushes Enterprise Service Bus" in Resources).
You will need to have both Windows Server 2003 and SQL Server 2005 to use Visual Studio Team System's server-side functionality. The client tools for unit testing, profiling, and so on don't rely on these tools. Visual Studio Team System integrates tightly with SQL Server 2005—SQL Server 2005 is installed with Visual Studio Team System, and many of the latter's collaborative and team features rely on SQL Server 2005 behind the scenes. Pricing and licensing terms for Visual Studio Team System and SQL Server 2005 are not yet available.
About the Author
Patrick Meader is editor in chief of Visual Studio Magazine.
|