As elements of class design, SOA (service-oriented architecture), and topology change, the validation flags raised in the
various designers change as well. The ideal would be to identify problems as maps are drawn. Instead, validation is performed
as an independent step, as when saving a file. The first release of VS Team will also lack the ability to simulate a topology.
Without this, the exploration of options for resolving design conflicts won’t be any more efficient than trading e-mails containing
designs and advising, “Try this and get back to me.”
Staying in control
The best feature of VS Team Foundation may be its completely rewritten SCCS (source code control system). This replaces the
weak Visual SourceSafe, which provided only basic
source-code control to small groups of developers. Microsoft estimates that VS Team Foundation will scale to handle as many
as 500 developers per group.
The new SCCS emphasizes scalability and parallel development. Missing are two features relevant to many enterprise projects:
remote teams and distributed builds. VS Team Foundation has no specific facility for linking external teams, including consultants
and outsourcing firms, into the life cycle as more restricted and closely monitored participants.
One SCCS feature stands out: The ability of a VS Team System client to “shelve” a project. This takes a snapshot of the project
and stores that state in SCCS. Shelving allows developers to quickly switch projects, to safely hang up a project until the
next workday, or to move from one machine to another, for example, from work to home. When the project is unshelved, the workspace
and all associated checked-out code appears in the workspace in its previous state.
The work-item tracking system built into VS Team Foundation resembles a bug-tracking system. Items are placed in topic-oriented
queues and assigned to participants. This arrangement is typical, except that Microsoft extends work-item tracking throughout
the life cycle, so that nondevelopment groups responsible for operations and technical documentation can also use this functionality.
But overall, the tracking system seems a bit loose. It would be better if the system captured some context for each item so
that the recipient wouldn’t have to duplicate the submitter’s effort.
VS Team Foundation captures the status of work items, along with knowledge derived from individuals’ use of the tools, in
a SQL Server metrics warehouse. The new SQL Reporting Services (code-named “Rosetta”) will provide views into that warehouse.
Participants can, within the limitations of privileges, dump their work items to Excel for off-line perusal and modification.
As for testing, VS 2005 will deliver a set of testing tools unprecedented in previous versions. The editor will automatically
generate unit tests for everything but C++ code. Code coverage will show the programmer, down to the line of code, what has
been tested. Static analysis tools for both .Net managed code and C++ unmanaged code will be in the box. These scan through
code looking for potential bugs, deviations from good programming practices, and holes that could be used to compromise the
application.
Profiling takes a stopwatch to your code to help you find performance bottlenecks at a fine-grained level. As with code coverage,
the profiler shows its results in the VS 2005 editor. Load testing identifies potential bottlenecks and scalability issues
in running applications, including anything that uses HTTP for a transport (for example, Web pages and SOAP Web services).
Finally, project managers can lay out policy requirements that define minimum testing requirements and acceptable results.
From language improvements to life-cycle management, the new VS Team suite and the VS development environment itself seem
almost certain to make Microsoft programmers and their bosses happier. But will these new products sustain Microsoft’s momentum,
particularly as it tries to move upscale into more challenging enterprise development environments? As usual, the company
seems unlikely to get the new stuff completely right the first time. But salves for the disgruntled and nods to enterprise
work modes should make VS 2005 and VS Team the most attractive development products Microsoft has released in a long time.