Chris Menegay VP of Consulting Notion Solutions, Inc. DTL319
Agenda Review the problem Define the goals Overview of a possible solution
The Problem The development and test teams have built a wall Development work happens on one side of the wall Testing happens on the other Builds and test results are passed back and forth, but not in a collaborative fashion
Development Perspective Works on my machine! What build is being tested? How do I repro this? I already fixed this bug! The testers are clueless twits that don’t even know what good software is!
This is still broken? They said they fixed it! Do we have a new build? What’s supposedly fixed in this new build? Is the new build deployed to our QA environment? The developers are clueless twits that don’t even know what good software is! Test Perspective
Typical Workflow Version Control
Typical Workflow Version Control Build Process
Typical Workflow Test Environment Version Control Build Process
Typical Workflow Test Environment Version Control Build Process
Typical Workflow Test Environment Defect Tracking System Title Description Build version? Repro steps? What test case? What was the test environment like?
Breaking the Barrier Common bug tracking Consistent and predictable build deployment Shared test cases Reproducible test environment
Breaking the Barrier Common bug tracking Consistent and predictable build deployment Shared test cases TFS Build Test cases and bugs Code and bugs
Development Code QA Code Production Code
Development QA Production
Branching, Building and Deploying in TFS Chris Menegay VP of Consulting Notion Solutions, Inc.
Thing to Consider Builds can do ALMOST anything! Review MSDeploy Creating installers SMS/System Center Upgrades versus new installs Config files
Build Considerations Team Foundation Server
Build Considerations Team Foundation Server Build Process
Build Considerations VM Lab Team Foundation Server Build Process
Build Considerations VM Lab Team Foundation Server Build Process
Build Considerations VM Lab Team Foundation Server Build Process
Test Considerations VM Lab
Test Considerations VM Lab
“Repro” Considerations VM Lab
Testing with a VM Lab Chris Menegay VP of Consulting Notion Solutions, Inc.
Other Benefits VM Labs can be used for: Demos for customers Maintaining snapshots of old versions Production hot-fixes Tech writer access for screenshots Testing CI builds using GUI automation Load testing
Circling Back Creating installers Upgrades versus new installs Config files
Installers Setup and Deployment projects Not MSBuild compatible InstallShield Wise WIX!
Upgrades Blow away the bits! Upgrade the database Look at Visual Studio Team System 2008 Database Edition Creates upgrade scripts for you Can be integrated into Team Build Be sure to use GDR or GDR2!
Config Files Different for Dev/QA/Prod Some options: 3 configs in one branch, let build pick the right one Different configs - one in each branch
Summary Can’t we all just get along???
Sessions On-Demand & Community Resources for IT Professionals Resources for Developers Microsoft Certification and Training Resources Microsoft Certification & Training Resources Resources Required Slide Speakers, TechEd 2009 is not producing a DVD. Please announce that attendees can access session recordings at TechEd Online. Required Slide Speakers, TechEd 2009 is not producing a DVD. Please announce that attendees can access session recordings at TechEd Online.
Track Resources Visit the DPR TLC for a chance to win a copy of Visual Studio Team Suite. Daily drawing occurs every day in the TLC at 4:15pm. Stop by for a raffle ticket us/products/teamsystem/default.mspx Please visit us in the TLC blue area
Complete an evaluation on CommNet and enter to win! Required Slide
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. Required Slide