I enjoyed taking the class and look forward to taking more classes in the future.... More Testimonials »

Effective Software Configuration Management Using Team System 2008

Delivery Options

Class Description

Class Overview

This Visual Studio Team System training course provides students with the knowledge and skills to effectively identify, manage, and track changes to software. Intended for teams working in parallel, this course focuses on using Visual Studio Team System 2008 to maximize productivity while minimizing mistakes to reduce the amount of effort expended when changes must be made.

This VSTS course is intended for current software development professionals who want to work more effectively in parallel. Some students may be part of distributed teams who work on the same project as others but without ideal communication. Other students may be working on multiple versions of the same application at the same time. Regardless of the situation, students will be able to learn and get hands-on experience with all of the Software Configuration Management related features of Visual Studio Team System 2008.

Class Goals

  • Understand Software Configuration Management (SCM)
  • Understand Team Systems support of SCM
  • Identify and control changes using Team System
  • Ensure changes are properly implemented using Team System
  • Use Team System to report changes to others who may have an interest
  • Protect Visual Studio projects by placing them under Team Foundation Version Control
  • Work with Version Control in a multi-user environment
  • Enforce quality using check-in constraints
  • Automate the software build process using Team Build
  • Ensure quality using build verification tests

Class Outline

  1. Introduction to Software Configuration Management
    1. Introduction to Software Configuration Management
    2. Team System support of SCM
    3. Team System support for identifying change
    4. Team System support for controlling change
    5. Team System support for ensuring changes are being properly implemented
    6. Team System support for reporting changes
    7. Lab: Review the SCM environment and project scenario
    8. Lab: Meet the team and review their security permissions
    9. Lab: Review the architecture and related projects
  2. Identifying Change - Team Projects
    1. Introduction to team projects
    2. Planning and creating team projects
    3. Configuring team projects
    4. Configuring security, areas, iterations, version control settings
    5. Methodologies and process templates
    6. Managing work items
    7. Team Explorer and other client applications
    8. Managing the project portal
    9. Lab: Create and configure a team project
    10. Lab: Secure a team project and its SharePoint project portal
    11. Lab: Create and review work items using various client applications:
    12. Lab: Use Team Explorer, Microsoft Excel, Microsoft Project, and the Web Access Power Tool
    13. Lab: Upload documents to the project portal
    14. Lab: Explore the process template
    15. Lab: Explore the widget: Process Editor (optional)
  3. Controlling Change - Team Foundation Version Control
    1. Introduction to controlling change
    2. Using version control as communication
    3. Planning version control, creating and managing workspaces
    4. Integration with Visual Studio 2008, alternate clients using MSSCCI provider
    5. Get, check-out, pending changes, check-in, changesets, undo
    6. Viewing history, annotating files, comparing revisions
    7. Migrating from VSS and other SCC systems (optional)
    8. Lab: Configure Team Foundation Version Control
    9. Lab: Create and manage workspaces
    10. Lab: Setup SCM folder structures
    11. Lab: Work with folders and files - get, check-out, check-in, view pending, view history, etc.
    12. Lab: Explore version controlled artifacts using the Web Access Power Tool
    13. Lab: Explore the widget: MSSCCI provider (optional)
    14. Lab: Explore the widget: Workspace Sidekick (optional)
  4. Controlling Change - Parallel Development
    1. Introduction to parallel development, terminology
    2. Parallel development scenarios, locking models
    3. Branching, merging, and promotion modeling
    4. Branching patterns, conflict detection and resolution
    5. Shelving, unshelving, achieving peer review using shelving
    6. Securing version control, specifications
    7. Using Team Foundation Server 2008 Power Tools
    8. Lab: Understand and resolve conflicts in a multi-user environment
    9. Lab: Branch code, manage branches, merge changes between branches
    10. Lab: Use the command-line tool to perform a baseless merge
    11. Lab: Secure artifacts in version control
    12. Lab: Shelve and unshelve changes
    13. Lab: Explore the widget: alternate merge tool (optional)
  5. Ensuring Changes are Properly Implemented - Check-In Policies
    1. Ensuring changes are properly implemented
    2. Configuring check-in policies and notes
    3. Using Team Foundation Server 2008 Power Tools policy-pack
    4. Understanding policy failure, overriding, and managing overrides
    5. Creating, deploying, and testing a custom check-in policy
    6. Lab: Configure the work item association check-in policy
    7. Lab: Configure the code analysis check-in policy
    8. Lab: Migrate code analysis policy settings to Visual Studio projects
    9. Lab: Create a unit test and manage test lists
    10. Lab: Configure a unit testing check-in policy
    11. Lab: Use the Custom Path policy to scope other check-in policies
    12. Lab: Create, deploy, and test a custom check-in policy (optional)
    13. Lab: Explore the widget: Policy Override Notification Tool (optional)
  6. Ensuring Changes are Properly Implemented - Team Build
    1. Overview of Team Foundation Build
    2. The Team Build process
    3. Creating and queuing build definitions
    4. Running tests and computing code coverage
    5. Automating Team Build
    6. Continuous integration
    7. Customizing MSBuild, targets, tasks, and creating custom tasks
    8. Lab: Create a Team Build definition
    9. Lab: Queue (execute) the automated build in various ways
    10. Lab: Schedule an automated build
    11. Lab: Ensure a quality build by enabling code analysis
    12. Lab: Enable build notifications
    13. Lab: Configuring continuous integration
    14. Lab: Customize Team Build definition and create custom MSBuild tasks
  7. Reporting Change - Queries, Reports, and Traceability
    1. Methods to track and report changes
    2. Understanding quality metrics
    3. Using queries to track work items
    4. Auditing work items and achieving traceability
    5. Running reports and creating custom reports
    6. Working with the warehouse controller service
    7. Understanding and configuring notifications
    8. Lab: Query work items from team explorer
    9. Lab: View work item audit history and trace work items to changesets
    10. Lab: Use WIQL to query work items
    11. Lab: Use Fiddler and SQL Server Profiler to understand WIQL execution
    12. Lab: Use the Visual Studio SDK to learn about WIQL execution
    13. Lab: Query work items from Microsoft Office and Internet Explorer
    14. Lab: Create an Excel Pivot table and chart work item data
    15. Lab: Run reports from the project portal, Report Manager, and Team Explorer
    16. Lab: Explore the Team Foundation Server data warehouse
    17. Lab: Create and execute a custom report
    18. Lab: Explore the widget: Warehouse Status Update Tool (optional)
  8. SCM Patterns and Best Practices
    1. Terminology and nomenclature
    2. Common scenarios and SCM patterns for those scenarios
    3. Best Practice: when to create a new team project
    4. Best Practice: when to branch and merge
    5. Best Practice: managing workspaces
    6. Best Practice: balance speed and quality
    7. Best Practice: balance autonomous work and integration
    8. SCM Implementation in an agile software development
    9. Various How-To topics
    10. References

Class Materials

All students receive a course manual or book and all the class examples.

Students in private onsite classes will also receive:

Class Prerequisites

Experience in the following areas is required:

  • Working on a team-based software development project and be familiar with their organizations Software Development Life Cycle.
  • Familiarity with one or more software development methodologies
  • Visual Studio (any version)
  • Basic foundations of .NET
  • Basic C# .NET code (all source code will be provided)

Technical Requirements

Our computer technical requirements and setup process is easy, with support just a click away.

Client Success
  1. Independent Survey
  2. Client List
  3. Testimonials
Join The Team
  1. Learn how you can become a Webucator Trainer
  2. Career Opportunities
Training Classes
Locations
Live eLearning

Like a class you would go to, but you don't have to go anywhere. More...

Customized Onsite Training

The trainer comes to you and delivers a class customized for your team. More...

Self-Paced eLearning

Our least expensive option. You proceed through the course entirely at your own pace. More...

Reference Library
Partner Programs
© Webucator, Inc. All rights reserved. | Toll Free: 877-932-8228 | UK: 0808-101-3484 | From outside the USA: 315-849-2724| Fax: 315-849-2723