What’s Planned for Visual Studio Team System 2010
Bill Maurer, Developer Technology Specialist at Microsoft, held a conference presenting what new features Visual Studio Team System 2010 (VSTS) will have in the following key domains: Team Foundation Server, Source Control, Project Management, Testing, Development and Architecture.
The informative session was based on VSTS 2010 CTP, and Maurer could not guarantee all features presented will make it in the final version. He does not know when that is going to be released, but the usual plan is to ship with Visual Studio prior to the year 2010, at end of 2009. It all depends on beta.
Commenting on Office and SharePoint support, Maurer said:
Office and SharePoint support will likely be in core Visual Studio 2010, but I don't have a lot of details at this point. I've heard that SharePoint development gets much better in VS2010.
There was no news on Outlook integration, but Expression will be integrated into VSTS 2010.
Team Foundation Server (TFS)
Setup & Configuration. The setup and configuration process will be separated, and there will be an administration console for all TFS instances. That will result better installation and configuration process, plus companies will be able to run and single-point administer multiple TFS servers.
Architecture. TFS will have a new topology (seen below) which will enable Team Project Collections, Multiple Data Tier Instances, Application Tier Load Balancing and Failover. The end result: higher scalability.
Source Control & Build
Branch Visualization. In the source control area, Branch Visualization is a new feature allowing an user to see the migration path of a check-in to different branches of the code including a timeline when that happened. A merge is easily done with by dragging the check-in between the branches.
Build. MSBuild is going to be used but as part of a workflow-based build engine in order “to take advantage of the .NET 4.0 workflow improvements including the visualization tool”. There will be a visualization tool used to create complex builds based on .NET’s workflow capabilities resulting in parallel builds, distributed builds, improved custom builds. The build servers will be pooled to avoid assigning builds to the same server while others might be idle.
Continuous Integration. This feature already exists in TFS 2008, but it will be improved by adding Gated Check-in. Basically, when a code is gated checked-in, a build process kicks in and the check-in is rejected if the build is failing. Practically, the team is automatically prevented to be using a non-workable check-in.
Hierarchical Work Items. Work items will be organized hierarchically and all items in a hierarchy will be visible when selecting a node.
Link Types. Multiple types of links will be supported: Parent-Child, Predecessor-Successor, Test-Tested by, Related plus custom ones.
Lists of links. A work item can be linked with many other items using the link type of choice.
Agile Planning. Several Microsoft teams have been using Excel spreadsheets internally to manage their iterations, to allocate capacity, to track velocity, to create burndown charts, to monitor stories progress, etc. Those spreadsheets will be compiled into a workbook and offered to VSTS clients to manage their Agile projects.
Other. Query Folders, Ad-hoc Reports in Excel, Cross-project Reporting, Dashboard, Integration with MS Project Server.
Camano. Camano is a new test case management interface focused on requirements. Users can define manual tests containing the steps to performs, the tested stories, and the manual actions can be recorded and replayed automatically. Test cases can be organized in test suites.
A neat feature, the tool shows the requirements that have no tests written for them. It also enlists the builds and the recommended tests to be included in those builds.
Camano has a Test Configuration Manager used to define the environment in which tests will run including operating system and browser. The tests can be managed and their progress can be tracked.
Camano also improves the collaboration between testers and developers by automatically collection of defect and runtime details, eliminating the ping-pong effect or the Not Reproducible problem.
Test Lab Virtualization. A new component in the testing package is the tools necessary to create virtual test labs. That way, the entire testing process can take place on virtual machines rather than physical ones.
Historical Debugger. The historical debugger allows a developer to set up a break point and move from it backwards in time. Not just the application pointer is turned back but the entire application is gradually returned to previous states. This hugely improves the debugging process, and it has been a long awaited feature. Remote historical debugging is also possible.
Automated UI testing. Another powerful feature is automated UI testing. Developers will be able to record UI tests and play them back later. This applies to WinForms and web applications. WPF and Silverlight will probably come in a later update.
Test Impact Analysis. Targeted at teams will lots of unit tests, the Test Impact Analysis helps determine which unit tests are affected by a code change and suggests the test to be run.
New Team Edition. Developer and Database editions will be combined into one edition called Developer. Current customers of any of those two editions can get the other for free. The new combined edition will support other databases besides MS SQL. An Oracle and DB2 provider are already in the works.
UML. VSTS 2010 will include UML support: Activity Diagram, Use Case, Sequence, Component, Logical Class, Model Explorer, Architecture Layer, Architecture Explorer. Reverse Engineering support will also be added. Code Generation from DSL models.
The Layer Diagram will be used to enforced an architecture on the code a team will be writing.
The Architecture Explorer Diagram will offer multiple views of a system and show relationships between various elements.