Wiley Publishing, Inc.
10475 Crosspoint Boulevard
Indianapolis, IN 46256
2006 Wiley Publishing, Inc.,
Published simultaneously in Canada
ISBN 13: 978-0-7645-8436-7
Manufactured in the United States of America
10 9 8 7 6 5 4 3 2 1
Library of Congress Cataloging-in-Publication Data:
Professional Visual studio team system / Jean-Luc David … [et al.].
Includes bibliographical references and index.
ISBN-13: 978-0-7645-8436-7 (paper/website)
ISBN-10: 0-7645-8436-7 (paper/website)
1. Microsoft Visual studio. 2. Web site development—Computer programs. 3. Application software—Development—Computer
programs. I. David, Jean-Luc, 1971–
No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 646-8600. Requests to the Publisher for permission should be addressed to the Legal Department, Wiley Publishing, Inc., 10475 Crosspoint Blvd., Indianapolis, IN 46256, (317) 572-3447, fax (317) 572-4355, or online at http://www.wiley.com/go/permissions.
LIMIT OF LIABILITY/DISCLAIMER OF WARRANTY: THE PUBLISHER AND THE AUTHOR MAKE NO REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE ACCURACY OR COMPLETENESS OF THE CONTENTS OF THIS WORK AND SPECIFICALLY DISCLAIM ALL WARRANTIES, INCLUDING WITHOUT LIMITATION WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE. NO WARRANTY MAY BE CREATED OR EXTENDED BY SALES OR PROMOTIONAL MATERIALS. THE ADVICE AND STRATEGIES CONTAINED HEREIN MAY NOT BE SUITABLE FOR EVERY SITUATION. THIS WORK IS SOLD WITH THE UNDERSTANDING THAT THE PUBLISHER IS NOT ENGAGED IN RENDERING LEGAL, ACCOUNTING, OR OTHER PROFESSIONAL SERVICES. IF PROFESSIONAL ASSISTANCE IS REQUIRED, THE SERVICES OF A COMPETENT PROFESSIONAL PERSON SHOULD BE SOUGHT. NEITHER THE PUBLISHER NOR THE AUTHOR SHALL BE LIABLE FOR DAMAGES ARISING HEREFROM. THE FACT THAT AN ORGANIZATION OR WEBSITE IS REFERRED TO IN THIS WORK AS A CITATION AND/OR A POTENTIAL SOURCE OF FURTHER INFORMATION DOES NOT MEAN THAT THE AUTHOR OR THE PUBLISHER ENDORSES THE INFORMATION THE ORGANIZATION OR WEBSITE MAY PROVIDE OR RECOMMENDATIONS IT MAY MAKE. FURTHER, READERS SHOULD BE AWARE THAT INTERNET WEBSITES LISTED IN THIS WORK MAY HAVE CHANGED OR DISAPPEARED BETWEEN THEN THIS WORK WAS WRITTEN AND WHEN IT IS READ.
For general information on our other products and services please contact our Customer Care Department within the United States at (800) 762-2974, outside the United States at (317) 572-3993 or fax (317) 572-4002.
Trademarks: Wiley, the Wiley logo, Wrox, the Wrox logo, Programmer to Programmer, and related trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other countries, and may not be used without written permission. Visual Studio is a registered trademark of Microsoft Corporation in the United States and/or other countries. All other trademarks are the property of their respective owners. Wiley Publishing, Inc., is not associated with any product or vendor mentioned in this book.
Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic books.
William A. Barton
Mary Beth Wakefield
Vice President and Executive Group Publisher
Vice President and Publisher
Joseph B. Wikert
Media Development Specialists
Graphics and Production Specialists
Mary J. Gillot
Quality Control Technicians
Proofreading and Indexing
Christine Sabooni, Techbooks
About the Authors
Erik Gunvaldson is the Technology Development Manager in the Microsoft Enterprise Partners Group where he is currently focused on process methodologies and driving the Software Factories vision across Microsoft partners. Prior to the fall of 2005, Erik was the first Microsoft Technical Evangelist for Visual Studio 2005 Team System. In this role, Erik was responsible for the Team System Technology Adoption Program (TAP) for partners and enterprise customers. Before coming to Microsoft, Erik worked for several large enterprises in roles ranging from C++ developer and software manager to distributed application architect. Erik's professional goal is to automate the building of software solutions to the point where it is 90 percent inspiration and 10 percent perspiration. When not spending time thinking about software, Erik enjoys spending time with his wonderful wife, Anna, their beautiful daughter, Katrina, and their big black lab, Joe.
Noah Coad is currently a Program Manager in the Developer and Test Tools product unit of Visual Studio Team System. His focus is on developer-driven testing, including unit testing and code coverage. As a community lead for Team System, Noah is responsible for engaging with MVPs, regional directors, and other key influencers. He is a former C# MVP and a developer at heart. While obtaining a B.S. in Computer Engineering from Texas A&M University, Noah worked as a contract programmer, taught .NET, and helped lead the initial C# online community. He enjoys mountain biking, hard-core coding, creating gizmos with microcontrollers, and spending time with his beloved wife, Dawn.
Darren Jefford is an Application Development Consultant working for Microsoft in the U.K. In his spare time (of which there isn't much), he likes to be with his young family, follow Formula 1, play the guitar, and tinker with digital photography.
Tony Loton is a Microsoft Certified Professional for .NET Solution Architectures and MSF 3.0. He works through his company, LOTONtech Limited (http://www.lotontech.com) as an independent consultant, instructor, and freelance author in addition to holding an appointment as Associate Lecturer for the United Kingdom's Open University. Tony graduated in 1991 with an honors degree in Computer Science with Management, and has authored many published works, including the book Professional UML with Visual Studio .NET and a Visual Studio 2005 article series for the MSDN Developer Center.
Christopher Bowen is the Lead Applications Architect at http://www.Monster.com in Maynard, Massachusetts, where he works on the design, implementation, and optimization of Monster's applications. Chris is highly involved in the .NET development community, contributes to running the Boston .NET User Group, and speaks on a variety of subjects at area developer events. He is a member of Microsoft's Patterns & Practices Customer Advisory Board and the Microsoft East Region Architect Council. Christopher holds a masters of science in Computer Science and a bachelors of science in Management Information Systems from Worcester Polytechnic Institute in Worcester, Massachusetts.
This book is dedicated to my beautiful, loving wife, Miho, for supporting me in a million ways. My family also deserves a loud, big round of applause for their ongoing patience and support. First and foremost, I would like to thank Rob Caron (and the rest of the Team System product group) for providing invaluable technical advice, comments, and resources (even at all hours of the night). Next comes Noah Coad, who is undeniably the nicest guy I've ever met and a great friend. He co-authored a chapter in this book despite his busy schedule, and helped out in countless ways. Erik Gunvaldson has contributed a great deal to this book—his breadth and depth of knowledge on Team System made an indelible impact on its contents. Mickey Gousset, a fellow Team System Most Valuable Professional (MVP) and all-around amazing guy, dedicated hours of his time to provide fantastic technical reviews in record time and really made a positive contribution—thanks, Mickey! Other product team members who have made significant contributions to the book include Sam Guckenheimer, Sean Sandys, Jennifer Norberg, Dominic Hopton, Ajay Sudan, Ayesha Mascarenhas, Buck Hodges, Khushboo Sharan, Bindia Hallauer, Beny Rubenstein, Chris Lucas, Rick LaPlante, Prasad Kakulamarri, Ed Hickey, and countless more. Next, I would like to thank all my co-authors for your amazing chapters—without you this book wouldn't exist: Erik, Noah, Darren Jefford, Christopher Bowen, and Tony Loton. Other MVPs and experts who have authored parts of the book (in its final stages) include Joe Sango, Etienne Tremblay, Steven Borg, Mickey Gousset, and Mike Diehl. Joel Semeniuk and Baryr Gervin provided some great feedback and technical edits on some of the chapters. A very special thanks goes out to the editors and publisher at Wiley Publishing: Robert Elliott for his ongoing support and advice. Other Wiley/Wrox contributors include Helen Russo and Bill Barton. Last, I'd like to thank Chris Dufour for being a great friend and soundboard. —Jean-Luc David
Many thanks to Thomas Delrue for providing the SDM sample at the end of Chapter 7. After teaching Microsoft .Net and related technologies in Belgium, Thomas moved to the United States to join the Visual Studio team at Microsoft Corporation. He currently works in the Distributed Systems Designers team as a Software Design Engineer in Test. He can be reached via his personal e-mail at email@example.com. —Erik Gunvaldson
Special thanks to Dawn Coad, my lovely, sweet wife, who has been my inspiration and support. She is truly God's gift and makes my life a joy. Many thanks to Jean-Luc David, who made this book possible and is one of our top Team System MVPs, and my team, including Chris Lucas, Rob Caron, Tom Arnold, Tom Marsh, and Dominic Hopton, who provided feedback and support for the material. —Noah Coad
I'd like to thank my fantastic wife, Julieann, and our wonderful children, Lucy and Toby, for their love, support, and patience. I'd also like to thank Duncan Pocklington, Dave Thomas, and the DSL Tools team in Cambridge, all of whom helped to get the boxes joined together. Last, but not least, thanks to Microsoft, Keith Everitt, Totem, and Simon Dutton, all of whom helped me get to where I am today! —Darren Jefford
I'd like to thank Bob Elliot for getting me and Jean-Luc together at the outset, and Brian MacDonald for his professional and friendly editorial advice throughout. I'd also like to thank Simon Williams, a colleague who took no reward for looking through my very first chapter drafts before anyone else saw them. As always, I'd like to acknowledge my close family—Debs, Becky, and Matt. You don't have to live with me; they do! —Tony Loton
Thanks and love go to my wife, Jessica, and our daughters, Deborah and Rachel, for their understanding and support throughout the creation of this book. Thanks to my family and friends for their understanding when I had to bow out of activities to research and write. Thanks to the Team System staff at Microsoft for their support and to the reviewers who helped to improve my chapters. Special thanks go to Jean-Luc David for inviting me to join in the creation of this book. Finally, I'd like to express thanks, love, and gratitude to my parents—Peter, my father, and Joan, my mother, in loving memory. —Christopher Bowen