Managing a Project With Visual Studio Team System
VSTS can provide a wealth of information on the health and progress of a project.
by Peter Varhol
June 28, 2006
Managing modern software projects is hard. Software is more complex, with more functions, to be sure. But that's not the only issue. There are an increasing number of dependencies between components, and those components rely more on operating system and network services that add additional layers of complexity. There are more technologies to understand and apply, and many of these technologies are so new that few developers have become experts with them.
The trend toward distributed software is also an important factor. Many people work on different parts of the software, and bringing all the parts together requires detailed planning, flawless execution, and even a bit of luck. Mixing legacy components with new components in a loosely coupled architecture is possible in theory, but often a headache in practice.
Despite better tools, the use of ever-more sophisticated methodologies, and often-heroic individual efforts, most projects still don't come in on time. The failure doesn't reflect upon any individual or function within the project; rather, it is the nature of software development and how we organize and manage the process.
There is no silver bullet to managing a project to come in on time and budget. Hard work makes a difference, but it is more important to work smart. The key to successful software project management is unbiased information. Project managers have to know when a development effort starts going off track, what is sending it off track, what factors are affected, and how a problem in one area can snowball across the entire project.
Control is another aspect of successful project management. Software developers might be loath to consider their effort controlled, but that's precisely how a good project manager keeps efforts coordinated and on track. It is an orchestration between all members of the development team, one that depends on the quality of information available and the ability to act on that information.
This is where Visual Studio Team System excels. Thanks to code quality tools, built-in process support, integration with project management tools, and a host of other features, Team System provides a wealth of information on the health and progress of a project. And it does so not by requiring a specific regimen, but rather by tying together data from a variety of tools that developers use.
Define a Project Portal
At the most fundamental level, you can start by defining both a project portal and a methodology to use for the project. The portal is both a Web site and a database for project information such as work item queries. Team System supports two methodologies, the Microsoft Solutions Framework and Agile development. For Visual Studio users, this portal is accessible through the IDE; others who aren't running Visual Studio can access it through the Web site.
Many development teams spend a significant amount of time establishing and maintaining a project portal. Creating one with just a few clicks of the mouse button is a good start, but continually populating it with data and creating reports can be a full-time job on some projects.
Back to top