Microsoft has always provided easy to use development tools for the individual developer. Now that Microsoft has moved firmly into Web services and enterprise applications, support of the individual developer, although important, is not sufficient.
There is a requirement to support teams that are made up of not just multiple developers but multiple skills across the development lifecycle. Architects, business analysts, programmers, process designers, testers and operations all need to communicate with each other and share artifacts. This is true if the team is developing bespoke solutions, implementing service-oriented architecture (SOA) solutions based on Web services, or creating new function within Microsoft's own development shop.
At Tech Ed 2004 Microsoft announced Visual Studio 2005 Team System. It is a set of new tools and extensions to existing tools to support the team environment. It is made up of four main components: Team Architect, Team Developer, Team Test and Team Foundation.
Team Foundation has support for change management, project management, item tracking and more. It helps to provide the communication between the users and the integration of the different parts that make up a complete development solution.
Team Architect provides a suite of solutions for modeling and designing the overall solution. Unified Modeling Language is the basis of these solutions, but Microsoft has taken a pragmatic view and looked at how UML is used and based on this experience is supporting the commonly used parts of UML (e.g. class diagram, activity diagrams and swim lanes) and extended those while ignoring some of the more esoteric parts of UML.
Team Developer will share these artifacts and there will be support for two-way communication between developer and architect so that the architect can review changes made by the developers. Team Developer interacts with the standard development tools and provides a set of unit testing tools and code analyzers.
Finally, Team Test provides the tools for integration and load testing that will ensure that the production environment is stable.
The creation of an integrated Team System means that the development process will be much more transparent and management can see the status of all the parts and have a better understanding of the metrics surrounding them. For example, the trend in the number of bugs found and fixed can be compared to the amount of new and modified code and the test coverage of that code. This will avoid the possibility of false dawns when the bug fix count has gone down but only because the test coverage has gone down.
This is a major amount of new function and development from Microsoft. The good news is that they are going to eat their own dog food (or if you prefer drink their own champagne) by using all this new function in their own development shops. Some of the functionality is already being used internally, and is the base for the productized versions, and some is being developed and used internally. Hopefully this internal use will have two effects firstly it will improve the usability and secondly ensure the reliability and scalability of the released versions.
Note the 2005 in the name. Beta versions of the parts will start appearing in the summer but the full released version will not be available until sometime in the first half of 2005.
Copyright 2004. Originally published by IT-Director.com, reprinted with permission. IT-Director.com provides IT decision makers with free daily e-mails containing news analysis, member-only discussion forums, free research, technology spotlights and free on-line consultancy. To register for a free e-mail subscription, click here.