Overview
Jonathan and I recently attended a presentation on application lifecycle management and Visual Studio Team System (VSTS). The meeting was lead by Brian Prince from Microsoft, Jeff Hunsaker from Cardinal Solutions Group, and Alexei Govorine from Quick Solutions Group on behalf of the Central Ohio Application Lifecycle Management (ALM) Group (http://www.coalmg.org/). The meeting was sponsored by Microsoft, Cardinal Solutions Group, and Quick Solutions Group.
The presentation focused on using VSTS as a framework within which you could manage your application development process from start to finish and showed how VSTS could be used as a flexible framework that can integrate with existing systems and be customized to fit almost any process. We will try to provide a summary of the topics covered in the presentation below.
Components that make up Visual Studio Team System
There are a number of pieces that make up the Visual Studio Team System. All clients within Team System tie into the Source Control system within Team Foundation Server (TFS).
- Team Foundation
- Visual Studio Team Explorer
- Provides access to projects, work items, build management and detailed reports showing bug trends in TFS and integrates into Visual Studio
- Must be installed separately
- Team Project Portal
- Site hosted in SharePoint that is created for each team project
- Useful store for documents, reports and other features common within SharePoint
- Team Foundation Server
- Provides a common area for collaborating on projects across all teams
- Houses projects, work items, version control, build services, and security for accessing various pieces of each project
- Allows users to subscribe to alerts
- Integrates with Microsoft Project and Excel
- Team Foundation Server Power Tools
- This set of tools is highly recommended
- Features Include:
- Build notification
- Process Template Editor
- Check-In Policy Pack
- Best Practices Analyzer
- Work Item Templates
- TFS Server Manager
- Alert Editor
- …lots more
- Visual Studio Team Explorer
- Architecture Edition
- Features Include:
- Application and infrastructure modeling
- Verification of software flow and deployment
- Features Include:
- Code analysis, profiling, and metrics
- Code development
- Unit testing
- Features Include:
- Load testing
- Manual testing
- Recording of tests for playback by developer
- Management of test cases
- Features Include:
- Deployment of changes
- Change management (for schemas)
- Data generation
- Unit testing for stored procedures
- Features Include:
- Create, view, query for, and track work items
- Manage project document libraries
- Manage the software build process by running builds and reviewing results
- Generate reports to track status and trend information over time for a team project
- Benefits of Implementing TFS
- Enable software development teams to work, communicate, and collaborate more productively
- Enhance predictability and quality throughout the application lifecycle
- Allow project managers/leads to make informed, better decisions through real-time visibility into project status and quality
- Help development team to define, adopt and enforce consistent process in order to accelerate development cycles
Things to Think About
What should a person implementing TFS keep in mind or do to ensure that they see the proper ROI after completing the rollout. Below are the lists of frequently asked questions based on the different types of the product.
- For project managers/architect, please read the Process Templates and Tools FAQ.
http://msdn.microsoft.com/en-us/teamsystem/aa718926.aspx - For software architects/developers, please read the Team Foundation Server FAQ
http://msdn.microsoft.com/en-us/teamsystem/cc307885.aspx - For TFS administrators, please read TFS 2008 Setup and Administration FAQs.
http://social.msdn.microsoft.com/Forums/en-US/tfssetup/thread/568daed8-0d29-46c0-8510-5e274e8b5ebf
Things to Watch Out For
Please use the following link and keep track of any latest issues or bugs related to the VSTS. http://msmvps.com/blogs/vstsblog/archive/tags/Issues+and+Hotfixes/default.aspx
References
- SDLC in a box (http://www.sdlcinabox.com/)
- MSDN Team System home (www.microsoft.com/teamsystem)
- Software Engineering with Microsoft Visual Studio Team System ( Paperback ) by Sam Guckenheimer (Author), Juan J. Perez (Author)
Contributors:
Brian Cordell - Application Architect
Jonathan Li - Application Architect