Working with Microsoft® Visual Studio® 2005 Team System
Richard Hundhausen
A01TD0900052.indd 1
9/8/2005 2:12:00 AM
...
36 downloads
730 Views
6MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Working with Microsoft® Visual Studio® 2005 Team System
Richard Hundhausen
A01TD0900052.indd 1
9/8/2005 2:12:00 AM
PUBLISHED BY Microsoft Press A Division of Microsoft Corporation One Microsoft Way Redmond, Washington 98052-6399 Copyright © 2006 by Microsoft Corporation Information in this document, including URL and other Internet Web site references, is subject to change without notice. Unless otherwise noted, the example companies, organizations, products, domain names, e-mail addresses, logos, people, places, and events depicted herein are fictitious, and no association with any real company, organization, product, domain named, e-mail address, logo, person, place, or event is intended or should be inferred. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without express written permission of Microsoft Corporation. Microsoft, Active Directory, BizTalk, Developer Studio, Excel, InfoPath, IntelliSense, Microsoft Press, MSDN, MSN, Outlook, SharePoint, Visio, Visual Basic, Visual C#, Visual C++, Visual J#, Visual SourceSafe, Visual Studio, Windows, and Windows Server are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. This book expresses the author's views and opinions. The information contained in this book is provided without any express, statutory, or implied warranties. Neither the authors, Microsoft Corporation, nor its resellers or distributors will be held liable for any damages caused or alleged to be caused either directly or indirectly by this book.
A02LD0900052.indd 1
9/8/2005 2:12:17 AM
Table of Contents Foreword ...............................................................................................................................................xi Acknowledgments ........................................................................................................................... xiii Introduction ........................................................................................................................................xv Part I 1
Introducing Team System Overview of Team System ................................................................................................................ 3 Life Without Visual Studio 2005 Team System ............................................................................3 Global Communication ..........................................................................................................4 Too Many Tools .........................................................................................................................5 Solving Your Problems ...........................................................................................................6 Goals of Visual Studio 2005 Team System.......................................................................6 The Need for a Methodology............................................................................................................8 Microsoft Solutions Framework .........................................................................................8 How Team System Supports These Methodologies.................................................. 11 Customizing Methodologies............................................................................................. 13 Visual Studio 2005 Team System ................................................................................................... 13 Visual Studio 2005 Team Edition for Software Architects....................................... 14 Visual Studio 2005 Team Edition for Software Developers .................................... 14 Visual Studio 2005 Team Edition for Software Testers............................................. 14 Visual Studio 2005 Team Foundation Server............................................................... 15 Visual Studio 2005 Team Suite ......................................................................................... 15 Roles Within Team System ............................................................................................................... 15 Visual Studio 2005 Editions ............................................................................................................. 16 Visual Studio 2005 Express Editions ............................................................................................. 17 Visual Studio 2005 Standard Edition............................................................................................ 17 Visual Studio 2005 Professional Edition...................................................................................... 17 Integration with Other Microsoft Products ............................................................................... 17 Summary ................................................................................................................................................ 18
2
Team Foundation Server ................................................................................................................. 19 Team Foundation Server Components........................................................................................ 19
iii
A03TD0900052.indd 3
9/8/2005 2:12:35 AM
iv
Table of Contents
Team Foundation Server Architecture ......................................................................................... 20 Data Tier ................................................................................................................................... 20 Application Tier...................................................................................................................... 22 Client Tier................................................................................................................................. 23 Software Configuration Management (SCM)............................................................................ 24 Work Item Tracking (WIT)................................................................................................... 25 Version Control ...................................................................................................................... 27 Build and Release Management ...................................................................................... 35 Summary ................................................................................................................................................ 36 3
Team System Client Applications ................................................................................................. 37 Tools for Project Managers.............................................................................................................. 38 Visual Studio 2005 Team Explorer................................................................................... 38 Microsoft Excel ....................................................................................................................... 39 Microsoft Project ................................................................................................................... 43 Tools for Architects ............................................................................................................................. 44 Dynamic Systems Initiative (DSI)...................................................................................... 45 System Definition Model (SDM)....................................................................................... 46 Domain-Specific Languages.............................................................................................. 48 DSL Tools in Team System .................................................................................................. 50 Tools for Developers .......................................................................................................................... 62 Source Control Explorer...................................................................................................... 62 Class Designer ........................................................................................................................ 63 Pending Checkins.................................................................................................................. 64 Tools for Testers ................................................................................................................................... 65 Internet Explorer for All Team Members .................................................................................... 66 Command-Line Utilities.................................................................................................................... 66 Tools by Roles....................................................................................................................................... 67 Summary ................................................................................................................................................ 68
Part II 4
Team System for the Entire Team Project Managers .............................................................................................................................. 71 Organizing the Team ......................................................................................................................... 71 Starting a New Project ...................................................................................................................... 72 Selecting a Methodology ................................................................................................... 72 Configuring the Project Portal.......................................................................................... 73
A03TD0900052.indd 4
9/8/2005 2:12:35 AM
Table of Contents
v
Configuring Version Control Settings ............................................................................ 74 Managing the Ongoing Project..................................................................................................... 75 Configuring Security ............................................................................................................ 76 Creating Classifications........................................................................................................ 78 Creating Iterations ................................................................................................................ 78 Setting Check-In Policies .................................................................................................... 79 Uploading Documents and Other Assets ..................................................................... 81 Adding and Managing Work Items ................................................................................ 82 Summary ................................................................................................................................................ 91 5
Architects ............................................................................................................................................ 93 The Architect Role............................................................................................................................... 94 Infrastructure Architect .................................................................................................................... 94 Application Architect ........................................................................................................................ 95 DSI, SDM, and DSL Revisited........................................................................................................... 96 The Distributed System Designers ................................................................................................ 96 Security ..................................................................................................................................... 97 Interoperability....................................................................................................................... 97 Unified Modeling Language (UML) ............................................................................... 98 Custom Assemblies............................................................................................................... 99 Other Languages ................................................................................................................... 99 Existing Code Libraries ........................................................................................................ 99 Web Services, J2EE, BizTalk Server, and SQL Server .................................................. 99 The Logical Datacenter Designer ................................................................................................100 Creating Logical Datacenter Diagrams........................................................................100 The Application Designer...............................................................................................................107 Creating Application Diagrams ......................................................................................108 Connecting Endpoints.......................................................................................................110 Reusing Custom Application Prototypes ....................................................................111 Implementing the Classes ................................................................................................112 Settings and Constraints.................................................................................................................115 The System Designer .......................................................................................................................117 The Deployment Designer.............................................................................................................119 Validating the Deployment..............................................................................................120 Generating a Deployment Report.................................................................................121 What’s Next? .......................................................................................................................................123 Summary ..............................................................................................................................................124
A03TD0900052.indd 5
9/8/2005 2:12:35 AM
vi
Table of Contents
6
Developers ........................................................................................................................................125 Viewing Work Items.........................................................................................................................125 Implementing the Web Application or Service......................................................................127 Using the Class Designer ..................................................................................................128 Version Control ..................................................................................................................................130 Associating Check-Ins with Work Items ......................................................................131 Version Control Explorer...................................................................................................133 Pending Check-Ins ..............................................................................................................133 Shelving and Unshelving ..................................................................................................134 Version Control Check-In Policies..................................................................................136 Integrated Testing.............................................................................................................................136 Test-Driven Development.................................................................................................137 Unit Testing............................................................................................................................138 Code Coverage.....................................................................................................................141 Static Analysis .......................................................................................................................142 Profiling ..................................................................................................................................144 Team Foundation Build...................................................................................................................145 Build Type ..............................................................................................................................147 Executing a Build .................................................................................................................150 Viewing the Build Results .................................................................................................151 Reports..................................................................................................................................................151 Impact on Code Development.....................................................................................................153 Summary ..............................................................................................................................................154
7
Testers ................................................................................................................................................155 Viewing Work Items.........................................................................................................................156 Managing Tests..................................................................................................................................157 Test Manager ........................................................................................................................157 Test View.................................................................................................................................158 Test Projects...........................................................................................................................158 Testing in Visual Studio 2005.......................................................................................................159 Authoring Tests ....................................................................................................................159 Manual Tests..........................................................................................................................160 Generic Tests .........................................................................................................................162 Web Tests ...............................................................................................................................164 Load Tests...............................................................................................................................167 Ordered Tests........................................................................................................................169
A03TD0900052.indd 6
9/8/2005 2:12:35 AM
Table of Contents
vii
Test Results and Tracking Bugs ...................................................................................................170 Test Run Configuration......................................................................................................171 Summary ..............................................................................................................................................172 Part III 8
Methodologies and Extensibility Microsoft Solutions Framework .................................................................................................175 MSF and Team System.......................................................................................................176 Choosing a Process Template .........................................................................................177 What’s New in MSF 4.0 ...................................................................................................................177 MSF 4.0 Key Concepts .......................................................................................................180 MSF 4.0 Structure ................................................................................................................181 The MSF 4.0 Team Model.................................................................................................183 MSF 4.0 Cycles and Iterations .........................................................................................184 MSF 4.0 Governance ..........................................................................................................185 MSF for Agile Software Development .......................................................................................186 Roles.........................................................................................................................................186 Work Streams........................................................................................................................188 Disciplines ..............................................................................................................................191 Qualities of Service .............................................................................................................191 Governance and Tracks .....................................................................................................192 MSF for CMMI Process Improvement........................................................................................193 Principles ................................................................................................................................195 Mindsets .................................................................................................................................196 Roles.........................................................................................................................................199 Work Item Types..................................................................................................................206 Disciplines and Qualities of Service ..............................................................................207 Governance ...........................................................................................................................207 Implementing MSF 4.0 with Team System...............................................................................208 Customization and Extensibility.....................................................................................210 Summary ..............................................................................................................................................210
9
Customizing and Extending Team System ..............................................................................211 Customizing Versus Extending.....................................................................................................211 Customizing Team System ...............................................................................................212 Extending Team System ....................................................................................................224 Visual Studio 2005 Tool Integration .............................................................................238
A03TD0900052.indd 7
9/8/2005 2:12:36 AM
viii
Table of Contents
Extensibility Toolkit...........................................................................................................................239 Partners.................................................................................................................................................239 Borland....................................................................................................................................239 SourceGear ............................................................................................................................240 AutomatedQA.......................................................................................................................241 Identify ....................................................................................................................................241 Compuware ...........................................................................................................................242 AVIcode...................................................................................................................................243 Mercury Interactive Corporation ...................................................................................243 Serena......................................................................................................................................244 Conchango ............................................................................................................................244 Osellus .....................................................................................................................................244 Summary ..............................................................................................................................................246 10
Wrapping It Up: The Endgame and Deployment..................................................................247 Team Build ...........................................................................................................................................247 Deploying the Application.............................................................................................................248 Closing Down the Current Iteration...........................................................................................248 Continuing to Track Bugs and Defects ........................................................................248 Reporting................................................................................................................................249 Project Integration..............................................................................................................257 Summary ..............................................................................................................................................258
Part IV A
Appendixes A Day in the Life of Team System ..............................................................................................261 The Adventure Works Scenario....................................................................................................261 The Adventure Works Team ..........................................................................................................262 Stakeholder............................................................................................................................262 Business Sponsor .................................................................................................................262 Business Analyst...................................................................................................................262 Project Manager ..................................................................................................................263 Architect .................................................................................................................................263 Lead Developer ....................................................................................................................263 Developers.............................................................................................................................263 Testers......................................................................................................................................264
A03TD0900052.indd 8
9/8/2005 2:12:36 AM
Table of Contents
ix
Operations Manager ..........................................................................................................264 Using MSF for Agile Software Development...........................................................................264 Project Timeline ...................................................................................................................266 Iteration 0: Project Setup and Planning (3 weeks)...................................................266 Iteration 1: Release Candidate 1 (3 weeks).................................................................268 Iteration 2: Release Candidate 2 (3 weeks).................................................................270 Iteration 3: Stabilize and Deploy (3 weeks) ................................................................272 B
Distributed System Designer Reference...................................................................................275 Logical Datacenter Designer.........................................................................................................275 Windows Client ....................................................................................................................276 IIS Web Server ......................................................................................................................276 Database Server ...................................................................................................................277 Generic Server ......................................................................................................................278 Zone .........................................................................................................................................279 Application Designer .......................................................................................................................279 Windows Application.........................................................................................................280 ASP.NET Web Service .........................................................................................................280 ASP.NET Web Application.................................................................................................281 Office Application ...............................................................................................................282 External Web Service..........................................................................................................282 External Database................................................................................................................283 BizTalk Web Service ............................................................................................................283 Generic Application............................................................................................................284 Class Designer ....................................................................................................................................284 Class .........................................................................................................................................285 Enum........................................................................................................................................285 Interface..................................................................................................................................285 Abstract Class........................................................................................................................286 Struct........................................................................................................................................286 Delegate .................................................................................................................................286
C
Codenames .......................................................................................................................................287 Index ...................................................................................................................................................289
A03TD0900052.indd 9
9/8/2005 2:12:36 AM
A03TD0900052.indd 10
9/8/2005 2:12:36 AM
Foreword 4PGUXBSFEFWFMPQNFOUXJMMOFWFSCFUIFTBNFBHBJO)PXDBO*TBZUIBU -FUµTMPPLBUUPEBZµT SFBMJUZ5FBNTXPSLJOJTPMBUJPO OPUKVTUHFPHSBQIJDBMMZ CVUXJUIJOPVSPXOPG¾DFT*UµT TPNFUJNFTEJG¾DVMUUPQBTTJOGPSNBUJPOBNPOHQSPKFDUNBOBHFST BSDIJUFDUT EFWFMPQFST BOE UFTUFST±BOEJUµTFWFOIBSEFSUPQBTTUIBUJOGPSNBUJPOUP*58FTQFOEPVSUJNFJONFFUJOHT POUIFQIPOF BOEFYDIBOHJOHFNBJM BOENBOZPGPVSQSPKFDUTBSFEFMBZFE PWFSCVEHFU PS EPOµUNFFUPVSPSJHJOBMSFRVJSFNFOUT .JDSPTPGUMPPLFEBUIPXXFDPVMEDIBOHFUIJT±IPXXFDPVMEVTFUIFNPTUQSPEVDUJWF EFWFMPQFSUPPM .JDSPTPGU7JTVBM4UVEJP BOEFYQBOEJUUPJODMVEFGVSUIFSSPMFT QSPWJEJOH TUSPOHFSTVQQPSUGPSZPVSTPGUXBSFEFWFMPQNFOUMJGFDZDMF7JTVBM4UVEJP5FBN4ZTUFN JTUIFSFTVMUPGUIJTWJTJPO IBSEXPSL BOEJOWBMVBCMFDVTUPNFSBOEQBSUOFSGFFECBDL 4PGUXBSFEFWFMPQNFOUMJGFDZDMFUPPMTIBWFCFFOBWBJMBCMFGPSTPNFUJNF CVUUIFZIBWFCFFO DPTUMZ EJG¾DVMUUPVTF BOEIBSEUPTVQQPSU:PVBMTPNJHIUIBWFIBEUPCFOEBOEDIBOHF ZPVSJOUFSOBMQSPDFTTFT±UIFWFSZUIJOHTUIBUNBLFZPVSEFWFMPQNFOUTVDDFTTGVM±TPUIBUZPV DPVMEVTFUIFN*OUIF¾STUWJTJPOPG7JTVBM4UVEJP5FBN4ZTUFN ZPVXPVMECFBCMFUP VTFZPVSTUSFOHUIT±TVDIBTZPVSEFTJHO EFWFMPQNFOU BOEUFTUJOHQSPDFEVSFT±XJUI5FBN 4ZTUFNGSPNUIFTUBSU.JDSPTPGUIBTCVJMUUXPQSPDFTTHVJEBODFGSBNFXPSLTUIF.JDSPTPGU 4PMVUJPOT'SBNFXPSLGPS"HJMF4PGUXBSF%FWFMPQNFOUNFUIPEPMPHZ BOEUIF.JDSPTPGU 4PMVUJPOT'SBNFXPSLGPS$..*-FWFMNFUIPEPMPHZ5IFTFUXPQSPDFTTGSBNFXPSLTDBO CFVTFEBTUIFZBSFPSDBOCFDVTUPNJ[FE BOE.JDSPTPGUBMTPTVQQMJFTUPPMTGPSCVJMEJOHZPVS PXOQSPDFTTHVJEBODFGSBNFXPSL "TJNQPSUBOUBTUIF¾STUWJTJPOXBT SPMFTJOZPVSEFWFMPQNFOUMJGFDZDMFOFFEFEUPCF JOUFHSBUFETPUIBUUIFZDPVMETIBSFJOGPSNBUJPOFBTJMZBOESFVTFDPNQPOFOUT'PSFYBNQMF QSPKFDUNBOBHFSTXPSLCFTUXJUIQSPKFDUNBOBHFNFOUUPPMTTVDIBT.JDSPTPGU0G¾DF1SPKFDU PSFWFO.JDSPTPGU0G¾DF&YDFM)PXFWFS EFWFMPQFSTXBOUUPVTFUIFJS7JTVBM4UVEJP JOUFHSBUFEEFWFMPQNFOUFOWJSPONFOU *%& 0OFPG.JDSPTPGUµTHPBMTGPS7JTVBM4UVEJP 5FBN4ZTUFNXBTUPFOBCMFQFPQMFUPVTFUIFUPPMTUIFZµSFDPNGPSUBCMFXJUIBOEUPFOBCMF UIPTFUPPMTUPTIBSFJOGPSNBUJPOTFBNMFTTMZ "TBNFNCFSPGUIFEFWFMPQNFOUUFBNGPS7JTVBM4UVEJP *DBOBUUFTUUIBUCFGPSFXF FWFOUIPVHIUBCPVUNPEFMJOHFOWJSPONFOUT JOUFHSBUFEUFTUJOH PSEFWFMPQFSFOIBODFNFOUT XFFOTVSFEUIBUUIJTOFXSFMFBTFXPVMEJODSFBTFZPVSUFBNµTQSPEVDUJWJUZBOEFOBCMFZPV UPSFVTFPSDIPPTFZPVSEFWFMPQNFOUNFUIPEPMPHJFT8FUIFOMPPLFEEFFQMZBUUIFTQFDJ¾D EFWFMPQNFOUSPMFT±BSDIJUFDUT EFWFMPQFST UFTUFST BOEQSPKFDUNBOBHFST±BOEBUUIFUPPMT UIBUUIFTFUFBNNFNCFSTOFFEFEUPTVQQPSUFBDISPMF *OEPJOHUIJT XFGPDVTFEPOUIFQSFNJFSQSJPSJUJFTPGDVSSFOUBOEGVUVSFBQQMJDBUJPOT 'PSBSDIJUFDUT CFJOHBCMFUPWJTVBMMZNPEFMTFSWJDFPSJFOUFEBQQMJDBUJPOTBOEWBMJEBUF UIFNBHBJOTUUIFJS*5FOWJSPONFOUTOPUPOMZQSPWJEFEWBTUJNQSPWFNFOUTUPEFWFMPQFS xi
A04FD0900052.indd 1
9/8/2005 2:13:09 AM
xii
QSPEVDUJWJUZ CVUJUBMTPFOBCMFEUIFJEFOUJ¾DBUJPOPGQSPCMFNTCFUXFFOEFWFMPQNFOUBOE EFQMPZNFOUFBSMZJOUIFDZDMF'PSEFWFMPQFST CFJOHBCMFUPDIFDLUIFBDUVBMHSBNNBSPG UIFJSDPEF MPPLGPSTFDVSJUZJTTVFT BOEQSP¾MFDPEFXJMMQSPWJEFIJHIFSRVBMJUZFBSMJFSJO EFWFMPQNFOU'PSUFTUFST CFJOHBCMFUPJOUFHSBUFBOETIBSFUIFTBNFFOWJSPONFOUXJMMNFBO NPSFFGGFDUJWFUFTUJOH CFUUFSRVBMJUZ BOECFUUFSSFBMMJGFSFTVMUT'JOBMMZ GPSQSPKFDUNBOBHFST LOPXJOHUIFTUBUVTPGBQSPKFDUBUBOZUJNFBOESVOOJOHSFQPSUTBCPVUSFBMCVTJOFTTNFUSJDT JOTUFBEPGPOMZBCPVUCVHTBOEDPEF XJMMQSPWJEFHSFBUFSBOBMZUJDBMEFQUIBOESBOHFUIBO FWFSCFGPSF *GZPVµSFBOFYQFSUEFWFMPQFS OFXUPEFWFMPQJOHTPGUXBSF PSFWFOJGZPVµSFOPUJOWPMWFE JOUIFEFWFMPQNFOUQSPDFTT UIJTCPPLJTGPSZPV3JDIBSE)VOEIBVTFOIBTQSPWJEFEBO JOTJHIUGVMMPPLJOUPUIFWBMVFPGTPGUXBSFEFWFMPQNFOUMJGFDZDMFUPPMTBOEIPX7JTVBM4UVEJP 5FBN4ZTUFNDBOCFQSBDUJDBMMZVTFE3JDIBSEGPDVTFTPOFBDISPMFJOUIFEFWFMPQNFOU QSPDFTT IPXJUJOUFHSBUFTXJUIPUIFSSPMFT BOEIPX UPHFUIFS UIFZNBLFUIFQSPDFTT TUSPOHFS'PSUIPTFJOWPMWFEEJSFDUMZJOEFWFMPQJOHTPMVUJPOT UIJTCPPLXJMMIJHIMJHIUIPXUP ESBNBUJDBMMZJODSFBTFZPVSQSFEJDUBCJMJUZPGTVDDFTTBOERVBMJUZ'PSUIPTFPGZPVOPUEJSFDUMZ JOWPMWFEJOBQQMJDBUJPOEFWFMPQNFOUPSJOTVQQPSUJOH*5TPMVUJPOT UIJTCPPLXJMMQSPWJEFB WJFXPGIPXZPVDBOCFQSPEVDUJWFMZJOWPMWFEFBSMJFSJOUIFEFTJHOBOEEFMJWFSZPGFOEVTFS TPMVUJPOT .JDIBFM-FXPSUIZ -FBE1SPEVDU.BOBHFS 7JTVBM4UVEJP .JDSPTPGU$PSQPSBUJPO
A04FD0900052.indd 11
9/8/2005 2:13:09 AM
Acknowledgments 8IBUZPVBSFIPMEJOHJOZPVSIBOETXPVMETJNQMZOPUFYJTUXJUIPVUUIFIFMQPGTPNFLFZ QFPQMF8SJUJOHBCPPLPOQSFSFMFBTFTPGUXBSFSFRVJSFTTFWFSBM²GSJFOETBUUIFGBDUPSZ³BOE NBOZNPSFQFPQMFPOUIFPVUTJEFUPBDUBTTPVOEJOHCPBSETBOEDPVOTFMPST/FFEMFTTUP TBZ *IBENVDIIFMQXJUIUIJTFGGPSU 5IBOLTFTQFDJBMMZUP4UFWFO#PSH .BSUJO%BOOFS ,SJT)PSSPDLT +PIO"MFYBOEFS %BWF#PTU .BSUJO/BHFM BOE%FOOJT.JOJVNGPSTVQQMZJOHHSFBUDPOUFOUGPSUIJTCPPL*UXBTBTQSJOU UPUIF¾OJTIUPHFUUIFCPPLQVCMJTIFEJOUJNFGPS5FDI&EBOE XJUIUIFIFMQPGUIJT DSFX XFXFSFBCMFUPEPJU*µEMJLFUPUIBOLUIFNBHBJOGPSIFMQJOHNF¾OFUVOFJUGPSUIF SFMFBTFPG5FBN4ZTUFN .ZGSJFOETBUUIFGBDUPSZJODMVEF.JDIBFM-FXPSUIZ &SJD-FF "KBZ4VEBO 3PC$BSPO 3BOEZ .JMMFS %BWJE"OEFSTPO &SJL(VOWBMETPO %BWJE$IFTOVU 3JDL3BJOFZ BOE5PN"SOPME 5IBOLZPV HFOUMFNFO GPSHJWJOHNFEJSFDUBDDFTTUPXIBUFWFS*OFFEFE*BMTPBQQSFDJBUF UIFUJNFUIBU%NJUSJZ/JLPOPW ,FJUI4IPSU BOE#JMM(JCTPOTQFOUXJUINFBUWBSJPVTFWFOUT PWFSUIFMBTUDPVQMFPGZFBST FTQFDJBMMZBU5FDI&EJO4BO%JFHP XIFSFUIFZMFUNFBTL RVFTUJPOBGUFSRVFTUJPOBCPVU8IJUFIPSTF.ZGSJFOETBU.JDSPTPGU1SFTT 7BMFSJF8PPMMFZ BOE#FO3ZBO XFSFBMTPFTTFOUJBMJOIFMQJOHNFHFUUIJTEPOF *µEBMTPMJLFUPBDLOPXMFEHFUIFJOQVUPG%POJT.BSTIBMM $PSZ*TBLTPO #JMM4FNQG 4DPUU $BUF %BSSFM$BSWFS #SJBO3BOEFMM BOE$ISJT,JOTNBO5IFTFBSFBMMJO¿VFOUJBMQFPQMFJONZ MJGFBOESFHVMBSHVFTUTPONZ.4/.FTTFOHFS3FBEFSTMJLF1FUFS/PXBL +BTPO$BNQ BOE NZDPNQBESFTBU4PMJE2VBMJUZ-FBSOJOHIBWFBMTPQSPWJEFEWBMVBCMFGFFECBDL -BTU CVUOPUMFBTU *µEMJLFUPUIBOLNZMPWJOHXJGF,SJTUFOGPSBMMPXJOHNFUIFUJNFUPXSJUF UIJTCPPLJONZBMSFBEZIFDUJDMJGF BOEGPSQVUUJOHVQXJUINBOZNPSFJOTUBODFTPG²*µMMKVTU CFBOPUIFSNJOVUF³UIBOBOZPOFTIPVMESJHIUGVMMZIBWFUP
xiii
A05AD0900052.indd 13
9/8/2005 2:13:30 AM
A05AD0900052.indd 14
9/8/2005 2:13:30 AM
Introduction 8FMDPNFUP9QTMKPIYKVJ/KETQUQHV8KUWCN5VWFKQ6GCO5[UVGO*BNWFSZFYDJUFE BCPVUIPXUIFOFX5FBN4ZTUFNSPMFCBTFEFEJUJPOTPG7JTVBM4UVEJPDBOJOUFHSBUF UIFFOUJSFUFBN
Who Is This Book For? 5IJTCPPLXJMMCFPGJOUFSFTUUPNPTUNFNCFSTPGTPGUXBSFEFWFMPQNFOUUFBNT5IFTF JODMVEF CVUBSFOPUMJNJUFEUP QSPKFDUNBOBHFST BSDIJUFDUT EFWFMPQFST BOEUFTUFST5FBN NFNCFSTJOUIFTFSPMFTJOUFSBDUEJSFDUMZXJUI5FBN4ZTUFN0OUIFQFSJQIFSZPGBQSPKFDU *5PQFSBUJPOTQSPGFTTJPOBMTDBOCFOF¾UGSPNVTJOH5FBN4ZTUFNUPOFHPUJBUFBTVDDFTTGVM TPGUXBSFEFQMPZNFOU UIVTNBLJOHUIFJSKPCTFBTJFS#FZPOEUIJTDPSFUFBN BOZQSPKFDU TUBLFIPMEFSPSPUIFSEFWFMPQFSDBOVTFUIJTCPPLUPMFBSOUIFDBQBCJMJUJFTPG5FBN4ZTUFN BOEXIBUUPFYQFDUPGBUFBNUIBUVTFTJUQSPQFSMZ
Organization of This Book 9QTMKPIYKVJ/KETQUQHV8KUWCN5VWFKQ6GCO5[UVGOJTEJWJEFEJOUPQBSUTBOEDIBQUFST #FDBVTFUIFSFµTTPNVDIJOGPSNBUJPOUPDPWFS *µWFTMJDFEUIFCPPLJOUPGPVSQBSUT FBDI DPOUBJOJOHBMJTUPGDIBQUFSTBOEBOPQFOJOHQBSBHSBQIPSUXPBCPVUUIPTFDIBQUFST /BUVSBMMZ *SFDPNNFOESFBEJOHUIFCPPLGSPNDPWFSUPDPWFS CVU*SFBMJ[FUIBUXFµSFBMM CVTZQSPGFTTJPOBMT"NPSFTUSBUFHJDBQQSPBDINJHIUCFUPSFBEUIF¾STUUISFFDIBQUFSTJO 1BSUUPHFUBOJEFBPGXIBU5FBN4ZTUFNJTBOEXIBUGSPOUFOEBOECBDLFOETPGUXBSF BOETFSWJDFTNBLFJUXPSL5IFOSFBEUIFDIBQUFSTJO1BSUUIBUBQQMZEJSFDUMZUPZPV 1BSUTBOEQSPWJEFEFFQFSDPWFSBHFBOEEJTDVTTJPOPGSFBMXPSMEVTFPG5FBN4ZTUFN 5JNFQFSNJUUJOH ZPVDBOUIFOSFBEBOZDIBQUFSTUIBUZPVNJHIUIBWFTLJQQFE )FSFJTBCSJFGTVNNBSZPGXIBUFBDIQBSUPGUIFCPPLDPOUBJOT
N
1BSU ²*OUSPEVDJOH5FBN4ZTUFN ³QSPWJEFTBOPWFSWJFXPGUIFTPGUXBSF±JODMVEJOHUIF CBDLFOE5FBN'PVOEBUJPO4FSWFSBOEUIFWBSJPVTDMJFOUBQQMJDBUJPOT±UIBUZPVBOE ZPVSUFBNXJMMVTFUPJOUFSBDUXJUI5FBN4ZTUFN
N
1BSU ²5FBN4ZTUFNGPSUIF&OUJSF5FBN ³QSPWJEFTBEFUBJMFEMPPLBU5FBN4ZTUFN DPWFSJOHUIFSFMFWBOUUPPMTBOEUBTLTGPSFBDIUFBNNFNCFSCZUIFJSSPMF
N
1BSU ².FUIPEPMPHJFTBOE&YUFOTJCJMJUZ ³JODMVEFTBEFUBJMFEMPPLBU.JDSPTPGU 4PMVUJPOT'SBNFXPSLBOEIPXJUJOUFHSBUFTXJUI5FBN4ZTUFN BOPWFSWJFXPGUIF FYUFOTJCJMJUZGPVOEXJUIJO5FBN4ZTUFN BOEHVJEFMJOFTGPSXSBQQJOHVQBTPGUXBSF EFWFMPQNFOUDZDMFPSJUFSBUJPO
xv
A06ID0900052.indd 15
9/8/2005 2:13:47 AM
xvi
Introduction
N
1BSU ²"QQFOEJYFT ³JODMVEFTBSFGFSFODFTFDUJPO GPSCPUIJOGSBTUSVDUVSFBOE BQQMJDBUJPOBSDIJUFDUT PO.JDSPTPGU%JTUSJCVUFE4ZTUFN%FTJHOFST:PVµMMBMTP¾OEB GVOTUPSZCPBSEMJLFTDFOBSJPXIFSFB¾DUJUJPVTTPGUXBSFEFWFMPQNFOUUFBNVTFT5FBN 4ZTUFNUISPVHIPVUBQSPKFDUJUFSBUJPO
Prerelease Software 5IJTCPPLXBTSFWJFXFEBOEUFTUFEBHBJOTUUIF+VMZ$PNNVOJUZ5FDIOJDBM1SFWJFX $51 PG7JTVBM4UVEJP5FBN4ZTUFN5IJTCPPLJTFYQFDUFEUPCFGVMMZDPNQBUJCMFXJUI UIF¾OBMSFMFBTFPG7JTVBM4UVEJP5FBN4ZTUFN*GUIFSFBSFBOZDIBOHFTPSDPSSFDUJPOT UPUIFDPOUFOUUIBUBQQFBSTJOUIJTCPPL UIFZXJMMCFDPMMFDUFEBOEBEEFEUPB.JDSPTPGU ,OPXMFEHF#BTFBSUJDMF4FFUIF²4VQQPSUGPS5IJT#PPL³TFDUJPOJOUIJT*OUSPEVDUJPOGPS NPSFJOGPSNBUJPO
Online Companion Content 5IFPOMJOFDPNQBOJPODPOUFOUQBHFIBTDPOUFOUBOEMJOLTSFMBUFEUPUIJTCPPL JODMVEJOHB MJOLUPUIF.JDSPTPGU1SFTT5FDIOPMPHZ6QEBUFT8FCQBHF "TUFDIOPMPHJFTSFMBUFEUPUIJT CPPLBSFVQEBUFE MJOLTUPBEEJUJPOBMJOGPSNBUJPOXJMMCFBEEFEUPUIF8FCQBHF7JTJUUIF QBHFQFSJPEJDBMMZGPSVQEBUFTPO7JTVBM4UVEJP5FBN4ZTUFNBOEPUIFSUFDIOPMPHJFT 5IFPOMJOFDPNQBOJPODPOUFOUQBHFGPSUIJTCPPLDBOCFGPVOEBU JVVRYYYOKETQUQHVEQOOURTGUUEQORCPKQP
Support for This Book &WFSZFGGPSUIBTCFFONBEFUPFOTVSFUIFBDDVSBDZPGUIJTCPPLBOEUIFDPNQBOJPODPOUFOU "TDPSSFDUJPOTPSDIBOHFTBSFDPMMFDUFE UIFZXJMMCFBEEFEUPB.JDSPTPGU,OPXMFEHF#BTF BSUJDMF5PWJFXUIFMJTUPGLOPXODPSSFDUJPOTGPSUIJTCPPL WJTJUUIFGPMMPXJOHBSUJDMF JVVRUWRRQTVOKETQUQHVEQOMD .JDSPTPGU1SFTTQSPWJEFTTVQQPSUGPSCPPLTBOEDPNQBOJPODPOUFOUBUUIFGPMMPXJOH8FCTJUF JVVRYYYOKETQUQHVEQONGCTPKPIUWRRQTVDQQMU
Questions and Comments *GZPVIBWFDPNNFOUT RVFTUJPOT PSJEFBTSFHBSEJOHUIFCPPLPSUIFDPNQBOJPODPOUFOU PSRVFTUJPOTUIBUBSFOPUBOTXFSFECZWJTJUJOHUIFTJUFTBCPWF QMFBTFTFOEUIFNJOFNBJMUP .JDSPTPGU1SFTTBU OURKPRWV"OKETQUQHVEQO
A06ID0900052.indd 16
9/8/2005 2:13:47 AM
Introduction
xvii
0SWJBQPTUBMNBJMBU .JDSPTPGU1SFTT "UUO&GXGNQRGT5GTKGU'FKVQT 0OF.JDSPTPGU8BZ 3FENPOE 8" 1MFBTFOPUFUIBU.JDSPTPGUQSPEVDUTVQQPSUJTOPUPGGFSFEUISPVHIUIFBCPWFBEESFTTFT
A06ID0900052.indd 17
9/8/2005 2:13:47 AM
A06ID0900052.indd 18
9/8/2005 2:13:47 AM
Part I
Introducing Team System In this part: Chapter 1: Overview of Team System .........................................................3 Chapter 2: Team Foundation Server......................................................... 19 Chapter 3: Team System Client Applications......................................... 37
In this section, I’ll provide an overview of Team System and discuss why you need it. Software projects, regardless of size and team, typically suffer from common problems: lack of communication; too many tools to install, learn, and use; and difficulties arising because some team members are working remotely. Team System solves these problems by providing both state-of-the-art tools and designers in new editions of Visual Studio 2005, as well as high-performance, secure, scalable back-end services and databases to enable the team to work more effectively, both as individuals and as a team.
P01D0900052.indd 1
9/8/2005 2:31:02 AM
P01D0900052.indd 2
9/8/2005 2:31:02 AM
Chapter 1
Overview of Team System In this chapter: Life Without Visual Studio 2005 Team System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 The Need for a Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8 Visual Studio 2005 Team System. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Roles Within Team System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Visual Studio 2005 Editions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Visual Studio 2005 Express Editions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Visual Studio 2005 Standard Edition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Visual Studio 2005 Professional Edition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Integration with Other Microsoft Products. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 5IJTDIBQUFSSFNJOETVTPGKVTUIPXDPNQMJDBUFEPVSKPCTBOESFTQPOTJCJMJUJFTDBOCF*U TFFNTUIBUUIFGBTUFSBOENPSFDBQBCMFDPNQVUFSIBSEXBSFBOETPGUXBSFCFDPNF UIFNPSF DPNQMJDBUFEJUJTUPCVJMEJOUFMMJHFOUTZTUFNTUIBUTJUPOUPQ*TJUUIBUXFOPXIBWFBCSPBEFS SBOHFPGTPGUXBSFEFTJHOPQUJPOTUIBUNBLFTUIJOHTNPSFDPNQMJDBUFE 0SJTJUUIBUXFBSF TVGGFSJOHGSPNUIFTBNFPMEQSPCMFNTUIBUXFBMXBZTIBWF 5PRVPUFBOZHPPEDPOTVMUBOU ²*UEFQFOET³
Life Without Visual Studio 2005 Team System 8FµWFBMMCFFOUIFSF5IFSPMMPVUEFBEMJOFJTVQPOVT UIFEFWFMPQFSTBSFBUPEETXJUIUIF BSDIJUFDUTBCPVUTPNFUIJOH UIFUFTUFSTBSFTJUUJOHBSPVOEEPJOHOPUIJOH BOEQSPHSBNNFST BSFCVTZBEEJOHGFBUVSFTUIBUEPOµUNBQUPSFRVJSFNFOUT5PNBLFNBUUFSTXPSTF UIF DVTUPNFSJTDBMMJOH%PFTUIJTTPVOEGBNJMJBS #VJMEJOHTPGUXBSFUIFTFEBZTJTWFSZEJG¾DVMU&OUFSQSJTFEFWFMPQFSTDBOOPMPOHFSHFOFSBUF BTJOHMF.JDSPTPGU7JTVBM#BTJDFYFDVUBCMFBOEEFQMPZJUXJUIB.JDSPTPGU0G¾DF"DDFTT EBUBCBTFPOB¿PQQZEJTL/P UPEBZµTFOUFSQSJTFTDBMFBQQMJDBUJPOTIBWFNBOZMBZFSTBOE TFSWJDFT5IFTFQSPKFDUTSFRVJSFNPSFEFWFMPQNFOUFGGPSUBOEBSFIFMEUPBIJHIFSTUBOEBSE UIBOTJNJMBSQSPKFDUTGSPNBGFXZFBSTBHP:PVNVTUDPOTJEFSBMTPUIBUNPSFBOENPSF DVTUPNFST $IJFG*OGPSNBUJPO0G¾DFST $*0T
BOEPUIFSTUBLFIPMEFSTBSFSFBEJOHNBHB[JOFT BOE8FCMPHT"MUIPVHIUIFZNJHIUOPUCFBTUFDIOJDBMBTUIFEFWFMPQFST UIFZLOPXXIBU UIFZXBOU BOE NPSFJNQPSUBOUMZ UIFZQSPCBCMZLOPXXIBUUIFZEPOµUXBOUBTJNQMFFYF BOENECDPNCJOBUJPO 3
C01D0900052.indd 3
9/8/2005 2:09:46 AM
4
Part I: Introducing Team System
&OUFSQSJTFTDBMFTPGUXBSFIBTTJHOJ¾DBOUMZNPSFNPWJOHQJFDFTUIBOJUEJEPSZFBSTBHP 8FCCBTFEBQQMJDBUJPOT 9.- BOE8FCTFSWJDFTNJHIUNBLFTZTUFNTFBTJFSBOECFUUFS CVU UIJTJTGSPNUIFBSDIJUFDUµT TUBLFIPMEFSµT PSVTFSµTQPJOUPGWJFX5IFSFBDI JOUFSPQFSBCJMJUZ BOEFYUFOTJCJMJUZCFOF¾UTDBOOPUCFNBUDIFE5IFEPXOTJEFJTUIBUUIFTFTZTUFNTBSFOPU FBTZUPCVJME"MMPGUIFTFTFSWJDFT TUBDLT WFSTJPOT BOEBQQMJDBUJPOQSPHSBNNJOHJOUFSGBDFT "1*T LOPXOBT²9.-8FCTFSWJDFT³NBLFJUDIBMMFOHJOHGPSBOZTJ[FEUFBNUPQMVHUIF WBSJPVTFMFNFOUTUPHFUIFSBOENBLFUIFNXPSLFG¾DJFOUMZ
Global Communication (FPHSBQIJDBMMZTFQBSBUFEUFBNTBSFBSPBECMPDLUPTVDDFTTGVMMZCVJMEJOHBOEJNQMFNFOUJOH FOUFSQSJTFTDBMFBQQMJDBUJPOT*OBNPEFSOEBZFOWJSPONFOUUIBUJODMVEFTUFMFDPNNVUJOHBOE PVUTPVSDJOH UIFDIBODFTBSFHPPEUIBUZPVIBWFBUMFBTUPOFUFBNNFNCFSXIPJTQFSGPSNJOH QSPKFDUNBOBHFNFOU EFTJHO EFWFMPQNFOU PSUFTUJOHGSPNBSFNPUFXPSLTUBUJPO/PUFWFSZPOF POUIFUFBNDBOBDDFTTUIF-"/PSFOKPZWJSUVBMQSJWBUFOFUXPSL 71/ BDDFTT*UDBOCF BEWBOUBHFPVTUPIBWFUFBNNFNCFSTXIPXPSLSFNPUFMZ"QIZTJDBMTFQBSBUJPOCFUXFFO UIFEFWFMPQNFOUUFBNBOEUIFEBJMZCVTJOFTTOPJTFJTBLFZCFOF¾UJONPTUEFWFMPQNFOU NFUIPEPMPHJFT8IFOBQSPKFDUIBTUFBNNFNCFSTXPSLJOHSFNPUFMZ IPXFWFS JUµTJNQPSUBOU GPSBMMDPNNVOJDBUJPO JODMVEJOHDPEF UP¿PXTNPPUIMZUISPVHIBOZ¾SFXBMMT6TJOH-"/ CBTFEUPPMTTVDIBT.JDSPTPGU7JTVBM4PVSDF4BGFUPXPSLSFNPUFMZIBTIJTUPSJDBMMZOPUCFFO QSBDUJDBM"OZPOFXIPIBTBUUFNQUFEUIJTXJMMLOPXXIBU*BNUBMLJOHBCPVU*UXBTEPBCMF CVU POMZBGUFSZPVFTUBCMJTIFEB71/DPOOFDUJPOUPZPVS4PVSDF4BGFEBUBCBTF7JTVBM4PVSDF4BGFXBT OFWFSJOUFOEFEUPCFVTFEBTBUIJODMJFOUBQQMJDBUJPOPWFSQPSUBOEUISPVHI¾SFXBMMT Note That said, one of the new features with Visual SourceSafe 2005 is the ability to use it remotely through port 80, via an HTTP Web Service interface.
8IFUIFSUIFUFBNJTEJTUSJCVUFEBDSPTTUIFHMPCF DPVOUSZ DJUZ PSDVCJDBMGBSN DPNNVOJDBUJPOJTOFWFSFBTZ5FBNNFNCFSTUFOEUPMJWFJOUIFJSPXOTJMPT TFFJOH UIFQSPKFDUUISPVHIUIFJSPXOQFSTPOBMQPSUBM)PQFGVMMZ FNBJM UFMFQIPOF PSJOTUBOU NFTTBHJOH *. JTCFJOHVTFEGPSDPNNVOJDBUJPO±FTQFDJBMMZ*.*DBOµUUFMMZPVIPX FBTZJUJTUPDPMMBCPSBUFSFNPUFMZVTJOHUIJTUPPM$PQZJOHBOEQBTUJOHDPEF USBOTGFSSJOH ¾MFT BOEKVTUHFUUJOHBRVJDLRVFTUJPOBOTXFSFEGSPNBUFBNNBUFBSFBMMUBTLTUIBU*. IBOEMFTXJUIFBTF8IFO*XBT¾STUMFBSOJOH.JDSPTPGU/&5 *SFHVMBSMZQJOHFENZPOMJOF CVEEJFTUPBTLRVJDLBOETJNQMFRVFTUJPOTTVDIBT ²*OXIJDIOBNFTQBDFXPVME*¾OEUIF 5VTKPI$WKNFGTDMBTT ³*GJUµTOPUBCVTFE JOTUBOUNFTTBHJOHDBOHSFBUMZJODSFBTFUIFFG¾DJFODZ PGDPNNVOJDBUJPOBNPOHMJLFNJOEFEQSPGFTTJPOBMTPOBQSPKFDU0OMJOFMJWFNFFUJOHTBOE DPOGFSFODFDBMMTDBOCFQSPEVDUJWFBTXFMM BOEFNBJMTFSWFTBTBHSFBUBSDIJWFGPSRVFTUJPOT BTLFEJOUIFQBTUBOESFTPVSDFTQSPWJEFECZPUIFSUFBNNBUFT 0OFESBXCBDLUPBMMUIFTFWBSJPVTGPSNTPGDPNNVOJDBUJPOJTUIBUUIFZGPSDFEFWFMPQFST UPVTFBUPPMPVUTJEFPG7JTVBM4UVEJP7JTVBM4UVEJPJTTVQQPTFEUPCFPVSQSJNBSZ
C01D0900052.indd 4
9/8/2005 2:09:47 AM
Chapter 1:
5
Overview of Team System
EFWFMPQNFOUFOWJSPONFOU.BOZEFWFMPQFSTXJMMTQFOEFJHIUPSNPSFIPVSTQFSEBZJOTJEF UIJTJOUFSGBDF-FBWJOH7JTVBM4UVEJPBOEMBVODIJOHBTFQBSBUFUPPMTVDIBT.JDSPTPGU0G¾DF 0VUMPPL PSTPNFPUIFSDVTUPNUBTLPSCVHUSBDLJOHVUJMJUZ JTOµUBOFG¾DJFOUVTFPGZPVS UJNF*UµTBGBDUUIBUNBOBHFSTBOEPUIFSEFWFMPQFSTXJMMTFOEUBTLTJOMPUTPGEJGGFSFOUXBZT FNBJM JOTUBOUNFTTBHF WPJDFNBJM PSFWFOBTUJDLZOPUFPOUIFEPPS*USFRVJSFTBMPUPG FGGPSUUPQSPQFSMZBHHSFHBUFBOEPSHBOJ[FUIFTFXPSLJUFNT 3BUIFSUIBOSFRVJSJOHZPVUPFNCFE0VUMPPLPSBOPUIFSDPMMBCPSBUJPOUPPMJOTJEF7JTVBM 4UVEJP .JDSPTPGUIBTEFWFMPQFE5FBN4ZTUFN XIJDIJOUFHSBUFTUIFTFOEJOHBOESFDFJWJOH PGUBTLT CVHT BOEBDDPNQMJTINFOUTSJHIUJOTJEFUIFJOUFHSBUFEEFWFMPQNFOUFOWJSPONFOU *%& "TZPVµMMTFFMBUFS ZPVEPOµUIBWFUPMFBWF7JTVBM4UVEJPUPDPNNVOJDBUFXJUIPUIFS UFBNNFNCFSTBCPVUBQSPKFDU*GFWFSZPOFPOUIFUFBNVTFTJU FWFSZPOFXJOT
Too Many Tools *GZPVTUVEZBOZTJ[FETPGUXBSFEFWFMPQNFOUUFBN ZPVµMM¾OEBOBSSBZPGQSPEVDUTJO VTF1SPKFDUNBOBHFSTVTF.JDSPTPGU0G¾DF1SPKFDUBOE.JDSPTPGU0G¾DF&YDFMUPUSBDL SFRVJSFNFOUT JUFSBUJPOT QIBTFT NJMFTUPOFT BOEEFMJWFSBCMFT"SDIJUFDUTVTF.JDSPTPGU0G¾DF 7JTJPPSUIJSEQBSUZUPPMTUPEJBHSBNUIFJSEBUBDFOUFST OFUXPSLT BQQMJDBUJPOTFSWJDFT BOE DMBTTFT5IFEFWFMPQFSTIBWFJUFBTZ5IFZIBWFBOEXJMMDPOUJOVFUPVTF7JTVBM4UVEJPUP JNQMFNFOUUIFTFTFSWJDFTBOEDMBTTFT%FWFMPQFSTBOEUFTUFSTXIPXBOUUPUFTUUIFJSTPGUXBSF XJMMBMTPOFFEUPPMTUPQFSGPSNVOJUUFTUT DPEFDPWFSBHF TUBUJDBOBMZTJT MPBEBOE8FC UFTUJOH*GUIFUFTUFSTBSFMVDLZ UIFTFUFTUJOHVUJMJUJFTXJMMQMVHJOUP7JTVBM4UVEJPPSBUMFBTU SVOJONBOBHFEDPEF5IFFOESFTVMUPGVTJOHTPNBOZUPPMTJTBIBSEESJWFGVMMPGTPGUXBSF GSPNWBSJPVTNBOVGBDUVSFST/FXMZIJSFEUFBNNFNCFSTXJMMOFFEXFFLTPGUSBJOJOHUPHBJO FYQFSJFODFPOBMMUIFTFOJDIFBQQMJDBUJPOT8FMDPNFUPMJGFXJUIPVU5FBN4ZTUFN "OPUIFSQPUFOUJBMXFBLOFTTUPBQSPKFDUJTBMBDLPGHVJEBODF5IJTJTOPUUPTBZUIBUUIF QSPKFDUNBOBHFSTPSUFBNMFBETBSFXFBLJOEJWJEVBMT2VJUFUIFDPOUSBSZ$POTJEFSXIBU *TBJEFBSMJFSBCPVUIPXDPNQMFYUPEBZµTTZTUFNTDBOCF(VJEBODFDBOCFUIFCFTUXBZ UPBTTFNCMFBMMUIPTFTFSWJDFTBOEGSBNFXPSLT(VJEBODFDBOBMTPCFUIFNFUIPEPMPHZ UPGPMMPXUPTVDDFTTGVMMZDSFBUFUIFTPGUXBSF TQFDJGZJOHUIFUFBNNFNCFST QIBTFT BOE EFMJWFSBCMFJUFNT *IBWFNFUTPNFFYUSFNFMZTIBSQEFWFMPQFSTBOEBSDIJUFDUT CPUIJOTJEFBOEPVUTJEF .JDSPTPGU5IF.JDSPTPGU3FHJPOBM%JSFDUPSBOE.71QSPHSBNTBSFGVMMPGTVDIGPMLT )PXFWFS OPTJOHMFQFSTPODBOLOPXJUBMM8JUIBHPPETFBSDIFOHJOF BOBQQFUJUFGPS SFBEJOH BOEQMFOUZPGTQBSFUJNF BQFSTPOECPDPNFDMPTF6OMFTTTVDIBSBSFQFSTPOKPJOT ZPVSQSPKFDU ZPVµMMOFFEQSPDFTTHVJEBODFBOECFTUQSBDUJDFT QSFGFSBCMZDPNQJMFECZTDPSFT PGEPNBJOFYQFSUT8JUIUIJTTBGFUZIBSOFTT ZPVDBOHPGPSXBSEBOEXSJUFDPEF DPO¾EFOU UIBUZPVBSFQSPDFFEJOHBDDPSEJOHUPQVCMJTIFEBOEBHSFFEVQPOCFTUQSBDUJDFT&WFOUIFO BOZHVJEBODFJNQMFNFOUFEJOUIFEFWFMPQNFOUQSPDFTTOFFETUPCFDVTUPNJ[BCMF5IJT SFRVJSFNFOUJTJNQPSUBOUCFDBVTFJUFOBCMFTZPVSUFBNµTQBUUFSOTBOEQSBDUJDFTUPUSVNQ UIPTFDPNQJMFECZ.JDSPTPGU
C01D0900052.indd 5
9/8/2005 2:09:47 AM
6
Part I: Introducing Team System
Note Documenting and publishing best practices is exactly the job of the Microsoft Patterns and Practices team. This team is internally known as Prescriptive Architecture and Guidance (PAG). Their documentation gives best practice advice in every area imaginable: data, security, configuration, and deployment, just to name a few. You can find and download these Patterns and Practices online for free at http://www.microsoft.com/patterns.
"OPUIFSQSPCMFNXJUIVTJOHNVMUJQMFUPPMTSFMBUFTCBDLUPDPNNVOJDBUJPO/PUCFUXFFO UFBNNFNCFST CVUXJUIUIFQSPKFDU5IFQSPKFDUJUTFMGOFFETUPDPNNVOJDBUFXJUIUIF QSPKFDUNBOBHFSBOEPUIFSTUBLFIPMEFST5IFTFJOEJWJEVBMTOFFEUPIBWFUIFJS¾OHFSTPO UIFQVMTFPGUIFQSPKFDUBUBMMUJNFT5PEBZµTNBOBHFSTIBWFUPSFMZPO1SPKFDUPS&YDFMUP QSPWJEFUIFNXJUITVDIBEFUBJMFEBOEBDDVSBUFWJFX5IFTUBUVTPGUIFQSPKFDUQSFTFOUFE CZUIFTFUPPMT IPXFWFS JTPOMZBTBDDVSBUFBTUIFEBUBSFDFOUMZUZQFEJOUP1SPKFDUPS&YDFM EPDVNFOUT5IJTJTBEFQFOEFODZUIBUDBODBVTFQSPCMFNTXIFOBEIPDSFQPSUTBSFOFFEFE BOEUIFEBUBJTNJTTJOH*EFBMMZ UIFQSPKFDUNFUSJDTTIPVMECFSFMBZFEUPUIFQSPKFDUNBOBHFS JOSFBMUJNF XJUIPVUBEEJUJPOBMBHHSFHBUJPO4VDINFUSJDTNJHIUJODMVEFPVUTUBOEJOHUBTLT TBUJT¾FEUBTLT DPEFDIVSO UFBNFG¾DJFODZ BOECVHT5IFTFNFUSJDTTIPVMECFBWBJMBCMF SFNPUFMZBOEBDDFTTFEJOBOFBTZUPVTFXBZ TVDIBTGSPNB8FCCSPXTFS
Solving Your Problems 4PNFTPGUXBSFEFWFMPQNFOUQSPCMFNTXJMMOFWFSCFTPMWFE*ONBOZQSPCMFNBUJDTJUVBUJPOT UIFDVTUPNFS UFBN QSPKFDU CVEHFU BOEPSUJNFGSBNFEJG¾DVMUJFTBSFCFZPOEUIFIFMQ PGBOZUPPMPSNFUIPEPMPHZ4USBJHIUFOJOHPVUTVDIQSPCMFNBUJDTJUVBUJPOTJTCFZPOEUIF TDPQFPGUIJTCPPLBOE5FBN4ZTUFN*TVHHFTUJNQSPWJOHDPNNVOJDBUJPOBNPOHBMMUIF QFPQMFJOWPMWFE±BOEOPUKVTUGSPNBUFDIOJDBMWJFXQPJOU CVUBMTPGSPNBQTZDIPMPHJDBMPS QIJMPTPQIJDBMPOF 8IBUBCPVUUIFTQFDJ¾DQSPCMFNTUIBU*TQFOUUIFMBTUGFXQBHFTFOVNFSBUJOH :PVLOPX UIFQPPSUFBNDPNNVOJDBUJPO QSPCMFNTXJUIXPSLJOHSFNPUFMZ UPPMTUIBUEPOµUJOUFHSBUF MBDLPGHVJEBODF BOEMBDLPGJOTJHIUJOUPUIFQSPKFDUµTTUBUVT:PVSCFTUDIBODFGPSTVDDFTT DPNFTGSPNUIFGPMMPXJOHMJTUPGQSJODJQMFTBEFRVBUFQMBOOJOH HPPEEFTJHOT GPMMPXJOHCFTU QSBDUJDFT UFTUJOH BOEFGGFDUJWFDPNNVOJDBUJPO(JWFOUIBU XPVMEOµUJUCFHSFBUJGUIFSFXFSF BUPPMUIBUXBTBWBJMBCMFUPHVJEFZPVJOBDIJFWJOHUIFTFHPBMT 8PVMEOµUJUCFHSFBUJGUIJTUPPM QMVHHFESJHIUJOUPZPVSGBNJMJBSEFWFMPQNFOUFOWJSPONFOUUIBUZPVBMSFBEZVTFGPSUP IPVSTBEBZ 5IJTUPPMOPXFYJTUTBOEJUµTDBMMFE.JDSPTPGU7JTVBM4UVEJP5FBN4ZTUFN
Goals of Visual Studio 2005 Team System .JDSPTPGUEJETPNFUIJOHVOJRVFXJUI7JTVBM4UVEJP5FBN4ZTUFN*UUPPLBTUFQ CBDLBOETUVEJFEUIFXBZTUIBUTPGUXBSFTIPQTBOEUFBNTTVDDFTTGVMMZ BOETPNFUJNFT VOTVDDFTTGVMMZ EFWFMPQFETPGUXBSF5IFOJUUBDUJDBMMZCVJMUBQSPEVDUUIBUXJMMJODSFBTF UIFQSFEJDUBCJMJUZPGBTVDDFTTGVMQSPKFDU'SPNTUBSUUP¾OJTI 5FBN4ZTUFNQSPWJEFTUIF HVJEBODFBOEDPMMBCPSBUJPOUPBDIJFWFUIJTMFWFMPGQSFEJDUBCJMJUZ8JUI5FBN4ZTUFN
C01D0900052.indd 6
9/8/2005 2:09:47 AM
Chapter 1:
7
Overview of Team System
.JDSPTPGUXJMMBMTPDIBOHFUIFXBZXFUIJOLBCPVU7JTVBM4UVEJP/PMPOHFSJT7JTVBM4UVEJP KVTUBTMJDL*%&GPSEFWFMPQNFOU5FBN4ZTUFNUSBOTGPSNTJUJOUPBQPXFSGVMUPPMUIBU JOUFHSBUFTUIFFOUJSFUFBNXJUIUIFFOUJSFTPMVUJPOBDSPTTUIFFOUJSFMJGFDZDMF "UJUTDPSF 5FBN4ZTUFNJTCBTFEPOUIFTBNFTVJUFPGUPPMTUIBU.JDSPTPGUVTFTJOUFSOBMMZUP TVDDFTTGVMMZQMBO CVJME BOEEFQMPZJUTTPGUXBSFUPDVTUPNFSTMJLFZPVBOENF&WFOUIPVHI ZPVSDPNQBOZNBZOPUCFBNVMUJCJMMJPOEPMMBSTPGUXBSFEFWFMPQNFOU¾SN .JDSPTPGULOPXT UIBUPUIFSTPGUXBSFEFWFMPQNFOUUFBNTGBDFUIFTBNFDIBMMFOHFTJUEPFT*UNBEFTFOTF GPS.JDSPTPGUUPQPMJTIVQUIJTTVJUFPGUPPMTGPSSFTBMFBOEUIFSFCZTIBSFJUTJOUFSOBMCFTU QSBDUJDFTXJUIUIFSFTUPGVT 7JTVBM4UVEJP5FBN4ZTUFNJTEFTJHOFEUPBDIJFWFUIFTFQSJNBSZHPBMT
N
*ODSFBTFUIFQSPKFDUµTQSFEJDUBCJMJUZPGTVDDFTT
N
*ODSFBTFUIFUFBNµTQSPEVDUJWJUZCZSFEVDJOHUIFDPNQMFYJUZPGEFMJWFSJOHNPEFSO TFSWJDFPSJFOUFETPMVUJPOT
N
*ODSFBTFUIFUFBNµTDPMMBCPSBUJPOCZJOUFHSBUJOHBMMUIFUPPMT
N
*ODSFBTFUIFUFBNµTDBQBCJMJUZCZBMMPXJOHSFNPUFVTFSTUPXPSLJOBSPCVTU TFDVSF BOETDBMBCMFFOWJSPONFOU
N
#FFYUFOTJCMFCZBMMPXJOHJUTUPPMTBOETFSWJDFTUPCFDVTUPNJ[FEBOEFYUFOEFE
5IFMBTUHPBMNFBOTUIBUUIJSEQBSUJFTNVTUCFBCMFUPJOUSPEVDF5FBN4ZTUFNBEEJOT*G ZPVSUFBNIBQQFOTUPVTFBOBMUFSOBUFNFUIPEPMPHZ EFTJHOFS TPVSDFDPEFDPOUSPM PS UFTUJOHJOGSBTUSVDUVSF UIFOUIPTFUPPMTDBOCFJOUFHSBUFEXJUI5FBN4ZTUFN5IJTHPBMBMTP SF¿FDUT.JDSPTPGUµTPOHPJOHDPNNJUNFOUUPJUTQBSUOFSTBOEEFWFMPQFSDPNNVOJUJFT TVDI BTUIPTFJOJOEFQFOEFOUTPGUXBSFWFOEPS *47 BOE7JTVBM4UVEJP*OUFHSBUPS1SPHSBN 74*1 QSPHSBNTUPEBZ More Info Be sure to read Chapter 9 for many ways to customize and extend Team System, including how to customize the guidance documentation and templates.
Providing Process Guidance and Methodology *TIBWJOHBUPPMUIBUEJDUBUFTBNFUIPEPMPHZBHPPEUIJOH 4PNFEFWFMPQFSTBOEBSDIJUFDUT *µWFUBMLFEXJUIXPVMEDBVUJPO.JDSPTPGUUPTUBZPVUPGUIF²IPXUPCVJMETPGUXBSF³CVTJOFTT BOETUJDLUPKVTUQSPWJEJOHUIFUPPMTGPSCVJMEJOHJU'PSUIFNPTUQBSU *BHSFF1FPQMFEPOµUMJLF IBWJOHBNFUIPEPMPHZPSQSPDFTTGPSDFEVQPOUIFN5IBUµTFYBDUMZUIFQPTJUJPOUIBU.JDSPTPGU UPPLXIFOCVJMEJOH5FBN4ZTUFN(PJOHCBDLUPFYUFOTJCJMJUZ 5FBN4ZTUFNJTDVTUPNJ[BCMF BOEFYUFOTJCMFBUFWFSZBOHMF*GUIFHVJEBODFPSNFUIPEPMPHZRVFTUJPOTCFJOHBTLFECZUIF UPPMBSFOµUTBUJTGBDUPSZPSEPOµU¾UZPVSUFBN ZPVDBODIBOHFUIFN*GZPVSWFSTJPODPOUSPM DIFDLJOQPMJDJFTBSFUPPSFTUSJDUJWFPSOPUSFTUSJDUJWFFOPVHI ZPVDBODIBOHFUIFN*GUIF OVNCFSPSUZQFTPGUBTLTZPVSUFBNJTSFDFJWJOHJTDBVTJOHTUSJGF ZPVDBODIBOHFUIFN
C01D0900052.indd 7
9/8/2005 2:09:48 AM
8
Part I: Introducing Team System
*µWFCFFOUFBDIJOHBSDIJUFDUVSF EFWFMPQNFOU BOECFTUQSBDUJDFTUPTPGUXBSFUFBNTGPSNBOZ ZFBST5IFTFQFPQMFBSFUIFNPTUEFNBOEJOHBOEGVTTZHSPVQPGQSPGFTTJPOBMTPVUUIFSF 5IFZLOPXFYBDUMZXIBUUIFZXBOU.PSFJNQPSUBOUMZ UIFZLOPXFYBDUMZXIBUUIFZFQP¶V XBOU5IFZEPOµUXBOUUPPMT USBJOJOH PSBEWJDFUIBUHFUTJOUIFXBZPGUIFJSXPSL5IFZEPOµU XBOUBOFXNFUIPEPMPHZ5IFZµWFTFFOUPPNBOZDPNFBOEHP5IFZKVTUXBOUTPNFUIJOH MJHIUXFJHIUUIBUEFNPOTUSBUFTCFTUQSBDUJDFBOEBQSPEVDUJWJUZJODSFBTF*GUIJTUIJOHBMTP IBQQFOTUPHFOFSBUFDPEF UIFOUIBUµTBCPOVTGPSUIFN.JDSPTPGU CFJOHNBEFVQPGTVDI QFSTPOBMJUZUZQFT LOFXGSPNUIFCFHJOOJOHUIBU5FBN4ZTUFNXPVMEPOMZCFTVDDFTTGVMJGJU XBTFYUFOTJCMF
The Need for a Methodology -FUµTCBDLVQGPSBNPNFOU*CFMJFWF BOENPTUXPVMEBHSFF UIBUIBWJOHBNFUIPEPMPHZJT JNQPSUBOU OPNBUUFSXIBULJOEPGNFUIPEPMPHZJUJT*GZPVSNFUIPEPMPHZJTUPXSJUFEPXO BMMUIFUBTLTZPVµSFHPJOHUPEPGPSUIFEBZPOUPTUJDLZOPUFT QSJPSJUJ[FUIFN TUJDLUIFNUP ZPVSXBMM BOEUIFOSFNPWFUIFNXIFOZPVµWFDPNQMFUFEUIFN ZPVIBWFBNFUIPEPMPHZ &WFOUIFUFSN²NFUIPEPMPHZ³JTOPUWFSZDPODSFUF*UTJNQMZNFBOTUIBUZPVIBWFBDPODJTF BOEDPOTJTUFOUBQQSPBDIUPBDDPNQMJTIJOHTPNFUIJOH5IFSFBSFXFMMLOPXONFUIPEPMPHJFT BTXFMMBTPCTDVSFPOFT5IJTBSFBIBTGBTDJOBUFENFGPSNBOZZFBSTCFDBVTFJUSFQSFTFOUTBO JOUFSTFDUJPOPGTPGUPSHBOJ[BUJPOBMTLJMMTXJUIIBSEUFDIOJDBMPOFT Note Team System itself is not a methodology. It is simply a tool that provides guidance and communicates which items need to be worked on. It does so according to whatever methodology you happen to be using. That said, I love the irony in Team System: Some teams need a tool to get them to use a methodology to guide them to use the tool.
5IFOFYUGFXQBHFTXJMMIJHIMJHIUTPNFPGUIFNPSFQPQVMBSNFUIPEPMPHJFT JODMVEJOHUIF UXP.JDSPTPGU4PMVUJPOT'SBNFXPSL .4' NFUIPEPMPHJFTUIBUXJMMCFJODMVEFEXJUI5FBN 4ZTUFN More Info Be sure to read Chapter 8 for a deeper look at the MSF methodologies.
Microsoft Solutions Framework .JDSPTPGU4PMVUJPOT'SBNFXPSL .4' JTBTFUPGTPGUXBSFEFWFMPQNFOUQSPDFTTFT QSJODJQMFT BOEQSPWFOQSBDUJDFTUIBUFOBCMFEFWFMPQFSTUPBDIJFWFTVDDFTTJOUIFTPGUXBSFEFWFMPQNFOU MJGFDZDMF 4%-$ .4'JTSPPUFEJOXFMMLOPXOJOEVTUSZCFTUQSBDUJDFT'JSTUJOUSPEVDFEJO .4'IBTBHHSFHBUFEZFBSTPGHVJEBODFGSPNCPUIJOUFSOBMBOEFYUFSOBMTPVSDFT 0WFSUIFZFBST .4'IBTNPSQIFEUPNFFUUIFDIBOHJOHOFFETPGEFWFMPQFST.4'WFSTJPO XIJDITIJQTXJUI5FBN4ZTUFN CSFBLTEPXOJOUPUXPWFSTJPOT XIJDIBSFFTTFOUJBMMZ
C01D0900052.indd 8
9/8/2005 2:09:49 AM
Chapter 1:
9
Overview of Team System
UXPQIJMPTPQIJFTPOIPXUPEFWFMPQTPGUXBSF/5(HQT#IKNG5QHVYCTG&GXGNQROGPVBOE/5( HQT%//+2TQEGUU+ORTQXGOGPV.4'GPS"HJMF4PGUXBSF%FWFMPQNFOUXJMMBQQFBMUPUIF ²BHJMJTUT³PVUUIFSF±UIBUJT UFBNTBDDVTUPNFEUPNPSFSBQJE SFBEZGPSDIBOHFFOWJSPONFOUT UIBUBSFUJHIUMZDPVQMFEXJUIUIFDVTUPNFS.4'GPS$..*1SPDFTT*NQSPWFNFOUXJMMBQQFBM UPMBSHFSTIPQTPSMBSHFSQSPKFDUTUIBUGFBUVSFNBOZSFQPSUJOHMFWFMT5IFTFBSFUZQJDBMMZ QSPKFDUTJOXIJDIMPOHSBOHFQMBOOJOHBOEDPNNVOJDBUJPOBSFNPSFJNQPSUBOUUIBO DPOTUBOUEFMJWFSBCMFTBOEGFFECBDL
MSF for Agile Software Development 5IF.4'GPS"HJMF4PGUXBSF%FWFMPQNFOUQSPDFTTJTCSBOEOFX*UJTJOUFOEFEGPSTNBMMFS TIPQT XJUIUPNFNCFSTPOUIFEFWFMPQNFOUUFBN8BT.4'GPS"HJMF4PGUXBSF %FWFMPQNFOUDSFBUFETQFDJ¾DBMMZGPS5FBN4ZTUFN 1SPCBCMZ8BT5FBN4ZTUFNDSFBUFEUP DPNQMFNFOU.4'GPS"HJMF4PGUXBSF%FWFMPQNFOU 1SPCBCMZ5IFJOUFHSBUJPOPGUIFQSPDFTT BOEUIFUPPMJTWFSZOBUVSBM 0G¾DJBMMZ UIFBHJMFQSPDFTTNPEFMXBTDSFBUFECZBDPVODJMLOPXOBTUIF"HJMF"MMJBODF)FSF BSFTPNFUFOFUTUIBUUIF"HJMF"MMJBODFBHSFFTPO
N
*OEJWJEVBMTBOEJOUFSBDUJPOTBSFNPSFJNQPSUBOUUIBOQSPDFTTFTBOEUPPMT
N
$VTUPNFSDPMMBCPSBUJPOJTNPSFJNQPSUBOUUIBODPOUSBDUT
N
8PSLJOHTPGUXBSFJTNPSFJNQPSUBOUUIBODPNQSFIFOTJWFEPDVNFOUBUJPO
N
3FTQPOEJOHUPDIBOHFJTNPSFJNQPSUBOUUIBOGPMMPXJOHBQMBO
%FMJWFSJOHDPOTJTUFOUBOERVBMJUZTPGUXBSFEF¾OFTBOBHJMFQSPDFTT(POFBSFUIFEBZT PGGPSNBMTQFDJ¾DBUJPOQIBTFT8JUI.4'GPS"HJMF4PGUXBSF%FWFMPQNFOU .JDSPTPGU EFNPOTUSBUFTJUTSFDPHOJUJPOUIBUUISPXJOHIBSEBOEGBTUTQFDJ¾DBUJPOTBOESFRVJSFNFOUT PWFSUIFXBMMUPUIFEFWFMPQFSTPGUFOSFTVMUTJOGBJMFEQSPKFDUT .4'GPS"HJMF4PGUXBSF%FWFMPQNFOUJTUIFEFGBVMUNFUIPEPMPHZJO5FBN4ZTUFN:PVDBO SFBMMZGFFMUIBUUJHIUDPVQMJOHXIFOZPVVTFJU5IFEFGBVMUBSUJGBDUT XIJDIJODMVEFUBTLTBOE CVHT BSFJOUVJUJWFUPEFWFMPQFSTXIPIBWFVTFE7JTVBM4UVEJP
MSF for CMMI Process Improvement $..*TUBOETGPS$BQBCJMJUZ.BUVSJUZ.PEFM*OUFHSBUJPO*UTQVSQPTFJTUPQSPWJEFBNPEFM GPSDPOUJOVPVTQSPDFTTJNQSPWFNFOU5IJTSFTVMUTJOSFEVDFETPGUXBSFEFWFMPQNFOU°DZDMF UJNFT JNQSPWFEBCJMJUZUPNFFUDPTUBOETDIFEVMFUBSHFUT BOEJNQSPWFERVBMJUZ*UJTBGPSNBM NFUIPEPMPHZNBOBHFECZUIF4PGUXBSF&OHJOFFSJOH*OTUJUVUFPG$BSOFHJF.FMMPO6OJWFSTJUZ 0OFPGUIFNBKPSBEWBOUBHFTPGVTJOH$..*JTUIBUJUJTBOFWBMVBUFETUBOEBSECZXIJDI ZPVDBODPNQBSFZPVSBCJMJUZUPEFWFMPQTPGUXBSFBHBJOTUPUIFS¾SNT4QFDJ¾DBMMZ UIF64 %FQBSUNFOUPG%FGFOTFBOEPUIFSMBSHFTPGUXBSFDPOTVNFSTPGUFOMPPLBUUIF$..*SBUJOH BDIJFWFECZUIFJSWFOEPSTJOPSEFSUPEFUFSNJOFXIPTIPVMESFDFJWFBEFWFMPQNFOUDPOUSBDU
C01D0900052.indd 9
9/8/2005 2:09:49 AM
10
Part I:
Introducing Team System
5FBN4ZTUFNJNQMFNFOUT$..*GPS1SPDFTT*NQSPWFNFOUUIBUJTTQFDJ¾DUPTPGUXBSF FOHJOFFSJOH5IJTJTBOFYDFMMFOUQSPDFTTUPVTFPOZPVSQSPKFDUJGZPVSDPNQBOZJTBUUFNQUJOH UPBDIJFWFBNFBTVSFECBTFMJOFDPNQFUFODZJOTPGUXBSFEFWFMPQNFOU'BSNPSFTUBUVT EPDVNFOUTBOESFQPSUTNVTUCFDPNQMFUFEJOUIJTNPEFMUIBOJO.4'"HJMF CVUUIJTNPSF GPSNBMEFWFMPQNFOUQSPDFTTSFEVDFTSJTLPOMBSHFTPGUXBSFQSPKFDUTBOEQSPWJEFTBCBTFMJOF UIBUDBOCFVTFEUPBDIJFWFDFSUJ¾DBUJPOTJOUIFWBSJPVT$..*MFWFMTPS*40
eXtreme Programming (XP) F9USFNF1SPHSBNNJOHJTBOPUIFSBHJMF4%-$NFUIPEPMPHZUIBUFOBCMFTUIFUFBN EFWFMPQFST DVTUPNFS T
BOEQSPKFDUMFBE UPIBOEMFDIBOHFTUISPVHIPVUUIFEFWFMPQNFOU PGBQSPKFDU"TZPVLOPX SFRVJSFNFOUTDBODIBOHFGSFRVFOUMZEVSJOHBQSPKFDU'PSUIBU NBUUFS JO91 KVTUBCPVUFWFSZUIJOHDBODIBOHF±JODMVEJOHUIFNFNCFSTPGUIFDVTUPNFSBOE EFWFMPQNFOUUFBN BMPOHXJUIUIFCVTJOFTTFOWJSPONFOU8BUFSGBMMBOEPUIFS¾YFE4%-$T DBOOPUFBTJMZIBOEMFDIBOHFT FTQFDJBMMZMBUFSJOUIFJSSFTQFDUJWFDZDMFT91JTBO4%-$UIBU OPUPOMZIBOEMFTDIBOHFTCVUBMTPEFBMTXJUIUIFNFMFHBOUMZ*OTUFBEPGUSZJOHUPDPOUSPMB DIBOHF UIF91QSBDUJDFTFOBCMFUFBNNFNCFSTUPBEKVTUUPUIBUDIBOHFFBTJMZ Tip “Everything in software changes. The requirements change. The design changes. The business changes. The technology changes. The team changes. The team members change. The problem isn’t change, per se, because change is going to happen; the problem, rather, is the inability to cope with change when it comes.” —Kent Beck, eXtreme Programming Explained
5IFSFBSFNBOZBEWBOUBHFTUP91
N
$VTUPNFSTHFUUIF¾STUQSPEVDUPOXIJDIUIFZDBOTUBSUXPSLJOHXJUIJOPOFDVTUPNFS JUFSBUJPO 5IF¾STUBDUVBMJUFSBUJPONJHIUCFGPSUIFEFWFMPQNFOUUFBNUPTFUVQJUT FOWJSPONFOUT
N
%FWFMPQFSTBSFXPSLJOHPOUIFNPTUJNQPSUBOUGFBUVSFT BTQSJPSJUJ[FECZUIFDVTUPNFST
N
5IFNPTUJNQPSUBOUGVODUJPOBMJUZBOEGFBUVSFTPGUIFTZTUFNHFUUIFNPTUUFTUJOH
N
5IFQSPEVDUEFMJWFSFENFFUTUIFOFFETPGUIFDVTUPNFS
Note This is just an overview of XP. Full descriptions of these values and practices are available in many excellent books currently available.
Scrum 5ETWOJTBOPUIFSBHJMFEFWFMPQNFOUNFUIPEPMPHZUIBUGPDVTFTPOJODSFNFOUBMEFMJWFSZVTJOH TNBMMEFWFMPQNFOUUFBNT TIPSUEFWFMPQNFOUDZDMFT BOEBGBDJMJUBUPSXIPLFFQTUIFUFBN GPDVTFEBOEQSPEVDUJWF
C01D0900052.indd 10
9/8/2005 2:09:50 AM
Chapter 1:
Overview of Team System
11
"4DSVNQSPKFDUJTCSPLFOVQJOUPPOFPSNPSFURTKPVU BXFMMEF¾OFEEFWFMPQNFOUDZDMFUIBU JTUZQJDBMMZGPVSUPTJYXFFLTJOEVSBUJPO"GUFSUIFJOJUJBMQSPKFDUQMBOOJOHJTDPNQMFUF UIF EFMJWFSBCMFTGPSUIF¾STUTQSJOUBSFEFUFSNJOFEKPJOUMZCZUIFDVTUPNFSTBOEUIFEFWFMPQNFOU UFBN5IFOUIFUFBNCFHJOTUIFTQSJOU GPDVTJOHPOJUUPUIFFYDMVTJPOPGBMMPUIFSUBTLT5IF TIPSUEVSBUJPOPGUIFTQSJOUDSFBUFTBTFOTFPGJNNFEJBDZUIBULFFQTUIFUFBNNPUJWBUFE 4QSJOUTIFMQUIFUFBNLFFQUIFFOEJOTJHIUCFDBVTFUIFFOEJT BUNPTU BGFXTIPSUXFFLT BXBZ&BDITQSJOU¾OJTIFTXJUIBSFUSPTQFDUJWF XIFSFUIFUFBNSFWJFXTIPXUIFTQSJOU XFOUBOEFYQMPSFTJEFBTGPSJNQSPWJOHUIFOFYUTQSJOU5IFFOEPGPOFTQSJOUTJHOBMTUIF CFHJOOJOHPGUIFOFYUTQSJOU5IJTDZDMFDPOUJOVFTVOUJMUIFQSPKFDUJTDPNQMFUF "UUIFDFOUFSPGUIFUFBNJTUIFUETWOOCUVGT BGBDJMJUBUPSXIPTFQSJNBSZBOEPGUFOQPN[ SFTQPOTJCJMJUZJTUPHVJEFUIFUFBNUISPVHIBTVDDFTTGVMTQSJOU5IFTDSVNNBTUFSDPOEVDUT BEBJMZUETWO XIJDIJTBTIPSUNFFUJOHPGUIFFOUJSFEFWFMPQNFOUUFBN5IFBHFOEBGPSUIF EBJMZTDSVNDPOTJTUTPGUISFFTJNQMFRVFTUJPOTGPSFBDIUFBNNFNCFS
N
8IBUIBWFZPVBDDPNQMJTIFETJODFUIFMBTUTDSVN
N
8IBUEPZPVQMBOUPBDDPNQMJTICZUIFOFYUTDSVN
N
8IBUJTJNQFEJOHZPVSQSPHSFTT
"OZPUIFSEJTDVTTJPOTUIBUDPNFVQEVSJOHUIFTDSVNBSFEFGFSSFEUPGPMMPXVQNFFUJOHT XJUIUIFBQQSPQSJBUFQFPQMF5IJTLFFQTUIFTDSVNNFFUJOHTIPSUBOEQSPEVDUJWFGPSBMMXIP BUUFOE 5IFTDSVNNBTUFSJTSFTQPOTJCMFGPSSFNPWJOHUIFJNQFEJNFOUTJEFOUJ¾FEJOUIFTDSVNNFFUJOHT 5IJTGVODUJPO XIJDIJTPGUFONJTTJOHJOEFWFMPQNFOUUFBNT JTBLFZDPNQPOFOUPGUIFTDSVN QSPDFTT*NQFEJNFOUTSBOHJOHGSPNFRVJQNFOUJTTVFTUPQFOEJOHEFDJTJPOTUPNJTTJOHVQTUSFBN EFMJWFSBCMFTDBOIBWFBNBKPSJNQBDUPOBEFWFMPQNFOUUFBN(JWJOHPOFQFSTPOSFTQPOTJCJMJUZ GPSUIFTFEJTUSBDUJPOTDMFBSTUIFXBZGPSUIFEFWFMPQFSTUPGPDVTPOUIFUBTLBUIBOE #ZBQQMZJOHUIFTFTJNQMFUFDIOJRVFT BTPGUXBSFEFWFMPQNFOUUFBNDBOBDIJFWFTJHOJ¾DBOU JNQSPWFNFOUTJOQSPEVDUJWJUZBOENPSBMF Note This methodology gets its name from the sport of rugby. Scrum is short for scrummage, which evolved into the term scrimmage used in American football.
How Team System Supports These Methodologies /PNBUUFSIPXMPGUZBOEUIFPSFUJDBMZPVSNFUIPEPMPHZJT ZPVTUJMMOFFEUPCSJOHJUEPXOUP FBSUI JNQMFNFOUJU BOEHFUZPVSXPSLEPOF5IJTJTXIFSF5FBN4ZTUFNDPNFTJO5FBN 4ZTUFNUBLFTBXPSLTUSFBNBQQSPBDI XIJDINFBOTUIBUJUEF¾OFTBQSPDFTTCZPGGFSJOHB DPMMFDUJPOPGBDUJWJUJFTBOETVCBDUJWJUJFT5IJTNPEFM¾UTXFMMXJUINPTUNFUIPEPMPHJFT 'PSFYBNQMF 5FBN4ZTUFNLOPXTBCPVUUIF.4'GPS"HJMF4PGUXBSF%FWFMPQNFOUFMFNFOUT SPMFT XPSLJUFNT BDUJWJUJFT BOEXPSLTUSFBNT4QNGUBSFJEFOUJ¾FEBTCVTJOFTTBOBMZTU
C01D0900052.indd 11
9/8/2005 2:09:50 AM
12
Part I:
Introducing Team System
QSPKFDUNBOBHFS BSDIJUFDU EFWFMPQFS UFTUFS BOESFMFBTFNBOBHFS9QTMKVGOUBSFUIFWBSJPVT TDFOBSJPT RVBMJUZPGTFSWJDFSFRVJSFNFOUT SJTLT UBTLT PSCVHT5IFTFXPSLJUFNTNJHIUMJOL UPBSUJGBDUT TVDIBTEPDVNFOUT TQSFBETIFFUT QSPKFDUQMBOT TPVSDFDPEF BOEPUIFSUBOHJCMF PVUQVUGSPNBDUJWJUJFT8PSLJUFNTBSFDSFBUFEXIFODFSUBJOBDUJWJUJFTBSFDPNQMFUFE5IFZ DBOBMTPCFQSFSFRVJTJUFTUPQFSGPSNBOBDUJWJUZ#EVKXKVKGUBSFBQBUUFSOPGXPSLQFSGPSNFE UPHFUIFSGPSBTJOHMFQVSQPTF"OBDUJWJUZDBOVTFPSQSPEVDFXPSLQSPEVDUTBOEDBOCF USBDLFECZBXPSLJUFN"DUJWJUJFTBSFHSPVQFEUPHFUIFSJOUPXPSLTUSFBNT9QTMUVTGCOUBSF BDUJWJUJFTDPNQPTFEPGPUIFSBDUJWJUJFT5IFZBSFUIFTJNQMFCVJMEJOHCMPDLTPGUIFQSPDFTT BOEDBOCFBTTJHOFEUPTJOHMFPSNVMUJQMFSPMFT
Scenario "UEGPCTKQJTBUZQFPGXPSLJUFN SFDPSEJOHBTJOHMFQBUIPGVTFSJOUFSBDUJPOUISPVHIUIF TZTUFN"TUIFQFSTPOBUUFNQUTUPSFBDIBHPBM UIFTDFOBSJPSFDPSETUIFTQFDJ¾DTUFQTUIBU IFPSTIFXJMMUBLF4PNFTDFOBSJPTXJMMSFDPSEBTVDDFTTGVMQBUIPUIFSTXJMMSFDPSEBO VOTVDDFTTGVMPOF8IFOXSJUJOHTDFOBSJPT CFTQFDJ¾D#FDBVTFUIFSFBSFBOJO¾OJUFOVNCFS PGQPTTJCMFTDFOBSJPTGPSBMMCVUUIFNPTUUSJWJBMTZTUFNT JUJTJNQPSUBOUUPCFEJTDFSOJOHJO EFDJEJOHXIJDITDFOBSJPTUPXSJUF Note A scenario is often compared to use case in Unified Modeling Language (UML).
Quality of Service Requirement 3WCNKV[QH5GTXKEG 2P4 3FRVJSFNFOUTEPDVNFOUDIBSBDUFSJTUJDTPGUIFTZTUFN TVDIBT QFSGPSNBODF MPBE BWBJMBCJMJUZ TUSFTT BDDFTTJCJMJUZ TFSWJDFBCJMJUZ BOENBJOUBJOBCJMJUZ5IFTF SFRVJSFNFOUTVTVBMMZUBLFUIFGPSNPGDPOTUSBJOUTPOIPXUIFTZTUFNTIPVMEPQFSBUF Note Quality of Service Requirements are not the same as functional requirements.
Task "VCUMXPSLJUFNDPNNVOJDBUFTUIFOFFEUPEPTPNFXPSL&BDISPMFIBTJUTPXO SFRVJSFNFOUTGPSBUBTL'PSFYBNQMF BEFWFMPQFSVTFTEFWFMPQNFOUUBTLTUPBTTJHO UPDPNQPOFOUPXOFSTXPSLUIBUIBTCFFOEFSJWFEGSPNTDFOBSJPTPSRVBMJUZPGTFSWJDF SFRVJSFNFOUT5IFUFTUFSVTFTUFTUUBTLTUPBTTJHOUIFKPCPGXSJUJOHBOESVOOJOHUFTUDBTFT "UBTLDBOBMTPCFVTFEUPTJHOBMSFHSFTTJPOTPSUPTVHHFTUUIBUFYQMPSBUPSZUFTUJOHCF QFSGPSNFE'JOBMMZ BUBTLDBOCFVTFEHFOFSJDBMMZUPBTTJHOXPSLXJUIJOUIFQSPKFDU0OUIF XPSLJUFNGPSN DFSUBJO¾FMETBSFVTFEPOMZJODBTFTXIFOBUBTLSFMBUFTUPBQBSUJDVMBSSPMF
C01D0900052.indd 12
9/8/2005 2:09:51 AM
Chapter 1:
13
Overview of Team System
Risk "OFTTFOUJBMBTQFDUPGQSPKFDUNBOBHFNFOUJTUPJEFOUJGZBOENBOBHFUIFJOIFSFOUSJTLT PGBQSPKFDU"TKUMJTBOZQSPCBCMFFWFOUPSDPOEJUJPOUIBUDBOIBWFBQPUFOUJBMMZOFHBUJWF PVUDPNFPOUIFQSPKFDUJOUIFGVUVSF"SJTLXPSLJUFNEPDVNFOUTBOEUSBDLTUIFUFDIOJDBM PSPSHBOJ[BUJPOBMSJTLTPGBQSPKFDU8IFODPODSFUFBDUJPOJTSFRVJSFE UIFTFSJTLTDBO USBOTMBUFJOUPUBTLTUPCFQFSGPSNFEUPNJUJHBUFUIFSJTL'PSFYBNQMF BUFDIOJDBMSJTLDBOTFU PGGBOBSDIJUFDUVSBMQSPUPUZQJOHFGGPSU5IFUFBNTIPVMEBMXBZTSFHBSESJTLJEFOUJ¾DBUJPOJO BQPTJUJWFXBZUPFOTVSFDPOUSJCVUJPOPGBTNVDIJOGPSNBUJPOBTQPTTJCMFBCPVUUIFSJTLTJU GBDFT5IFFOWJSPONFOUTIPVMECFTVDIUIBUJOEJWJEVBMTJEFOUJGZJOHSJTLTDBOEPTPXJUIPVU GFBSPGSFUSJCVUJPOGPSIPOFTUFYQSFTTJPOPGUFOUBUJWFPSDPOUSPWFSTJBMWJFXT5FBNTDSFBUJOHB QPTJUJWFSJTLNBOBHFNFOUFOWJSPONFOUXJMMCFNPSFTVDDFTTGVMBUJEFOUJGZJOHBOEBEESFTTJOH SJTLTFBSMJFSUIBOUFBNTPQFSBUJOHJOBOFHBUJWFSJTLFOWJSPONFOU
Bug "DWIJTBXPSLJUFNUIBUDPNNVOJDBUFTUIBUBQPUFOUJBMQSPCMFNFYJTUTPSIBTFYJTUFEJOUIF TZTUFN5IFHPBMPGPQFOJOHBCVHJTUPBDDVSBUFMZSFQPSUCVHTJOBXBZUIBUBMMPXTUIFSFBEFS UPVOEFSTUBOEUIFGVMMJNQBDUPGUIFQSPCMFN5IFEFTDSJQUJPOTJOUIFCVHSFQPSUTIPVME NBLFJUFBTZUPUSBDFUISPVHIUIFTUFQTVTFEXIFOUIFCVHXBTFODPVOUFSFE UIVTBMMPXJOH JUUPCFFBTJMZSFQSPEVDFE5IFUFTUSFTVMUTTIPVMEDMFBSMZTIPXUIFQSPCMFN5IFDMBSJUZBOE VOEFSTUBOEBCJMJUZPGUIJTEFTDSJQUJPOPGUFOBGGFDUTUIFQSPCBCJMJUZUIBUUIFCVHXJMMCF¾YFE
Customizing Methodologies "T*µWFTBJEQSFWJPVTMZ 5FBN4ZTUFNJTOPUBDPNQMFUFNFUIPEPMPHZUPPM'PSFYBNQMF JUPOMZ TVQQPSUTUIFDPSFEFWFMPQNFOUUFBN*UXPOµUTDIFEVMFNFFUJOHT QSFQBSFCVEHFUT TFOEFNBJM PS GBDJMJUBUFDPNNVOJDBUJPOXJUIUIFDVTUPNFSPSPUIFSTUBLFIPMEFSTEJSFDUMZ*OBOFOUFSQSJTFXIFSF UIFDVTUPNFSJTPOTJUF QPTTJCMZJOBOPUIFSEJWJTJPOPSEFQBSUNFOU UIJTGVODUJPOBMJUZNJHIUCF NJTTFE'PSBO*47TFMMJOHTPGUXBSFPOMJOF UIJTGVODUJPOBMJUZXPVMEOPUCFNJTTFE 5FBN4ZTUFNEPFTBHSFBUKPCPGPSHBOJ[JOHBMMZPVSQSPKFDUXPSLJUFNT FYQFDUBUJPOT BOEDPMMBCPSBUJPOUBTLT3FBMQFPQMFBOESFBMNFFUJOHT IPXFWFS XJMMTUJMMCFSFRVJSFEUP JNQMFNFOUBNFUIPEPMPHZ BOEUIJTJTPVUTJEFUIFTDPQFPG5FBN4ZTUFN
Visual Studio 2005 Team System 5FBN4ZTUFNJTNPSFUIBOBOFEJUJPOPG7JTVBM4UVEJP*UJTBDUVBMMZBTFSJFTPGSPMFCBTFE FEJUJPOT5FBN4ZTUFNJTOPUSFBMMZJOUFOEFEGPSTPMPQSPGFTTJPOBMTPSDPOTVMUBOUT*UTWBMVF JTSFBMJ[FEGPSUFBNTUIBUJODMVEFQSPKFDUNBOBHFS BSDIJUFDU EFWFMPQFS BOEUFTUFSSPMFT*G BT BOJOEJWJEVBM ZPVXFBSBMMUIFTFIBUT UIFOZPVNJHIUXBOUUPHFUZPVSIBOETPOJUBTXFMM Note Team System is optimized for teams of 5 scaling to 500 active members.
C01D0900052.indd 13
9/8/2005 2:09:51 AM
14
Part I:
Introducing Team System
Visual Studio 2005 Team Edition for Software Architects 5IJTFEJUJPOJTTQFDJ¾DBMMZEFTJHOFEGPSCPUIUIFJOGSBTUSVDUVSFBOEBQQMJDBUJPOBSDIJUFDU SPMFT*UJODMVEFTWJTVBMEFTJHOFST SFGFSSFEUPBTUIFFKUVTKDWVGFCRRNKECVKQPFGUKIPGTUPS UGTXKEGQTKGPVGFCTEJKVGEVWTG 51#FGUKIPGTU5IFBSDIJUFDUDBODSFBUFEJBHSBNTUPSFQSFTFOU UIFMPHJDBMEBUBDFOUFS UIFBQQMJDBUJPO BQQMJDBUJPOTZTUFNT BOEUIFEFQMPZNFOUPGUIF BQQMJDBUJPO5IFTFEFTJHOFSTGPMMPXBTJNQMFESBH ESPQ BOEDPOOFDUIFVSJTUJDUIBUIBT MPOHCFFOQPQVMBSXJUI7JTVBM4UVEJP.PSFUIBOKVTUQSFUUZTIBQFT UIFEJBHSBNTIBWF JOUFMMJHFODFBOENFUBEBUBUIBUDBOCFWBMJEBUFEBHBJOTUXFMMLOPXOBOEDVTUPNEF¾OFE DPOTUSBJOUT BOEUIFOUVSOFEJOUPDPEFXJUIBRVJDLDMJDL#FIJOEUIFTDFOFTPGUIFTFFMFHBOU EJBHSBNT .JDSPTPGUJTQFSTJTUJOHUIFJOGPSNBUJPOJO4ZTUFN%F¾OJUJPO.PEFM 4%. ¾MFT XIJDIBSFJNQMFNFOUBUJPOTPG%ZOBNJD4ZTUFNT*OJUJBUJWF %4* More Info You’ll learn more about Team Edition for Architects in Chapter 5.
Visual Studio 2005 Team Edition for Software Developers 5IJTJTUIFFEJUJPOGPSUIFEFWFMPQFSTPSQSPHSBNNFSTPOUIFUFBN5IJTXJMMQSPCBCMZCF UIFNPTUDPNNPOPGUIF5FBN4ZTUFNSPMFCBTFEFEJUJPOT*OBEEJUJPOUPBMMPGUIFCBTF 7JTVBM4UVEJPQSPGFTTJPOBMGFBUVSFT EFWFMPQFSTXJMMHFUUIFTUBUJDDPEFBOBMZ[FS BLJO UP'Y$PQ
VOJUUFTUJOH BLJOUP/6OJU
DPEFDPWFSBHF BOEDPEFQSP¾MFS4PNFPGUIFTF GFBUVSFTBSFTIBSFEXJUIUIF7JTVBM4UVEJP5FBN&EJUJPOGPS4PGUXBSF5FTUFST.JDSPTPGU LOPXTUIBUJUJTIBSEUPEFUFSNJOFXIJDISPMF EFWFMPQFSPSUFTUFS TIPVMECFJODIBSHFPG XSJUJOHBOESVOOJOHUIFTFTPVSDFDPEFUFTUT TPJUQSPWJEFEUIFNJOCPUIFEJUJPOT More Info You’ll learn more about Team Edition for Developers in Chapter 6.
Visual Studio 2005 Team Edition for Software Testers 8IFUIFSBUFBNNFNCFSJTBEFWFMPQFSPSFYDMVTJWFMZBUFTUFS UIJTFEJUJPOXJMMQSPWJEF BDDFTTUPBMMUIFDPWFSBHF RVBMJUZ BOEMPBEUFTUJOHGBDJMJUJFTOFFEFEUPUIPSPVHIMZUFTUB QSPKFDU FOTVSJOHUIBUJUXPSLTGSPNBMMBOHMFT5IF5FBN&EJUJPOGPS5FTUFSTJODMVEFTMPBE 8FCUFTUJOH BLJOUPUIF"QQMJDBUJPO$FOUFS5FTU
6OJU5FTUJOH $PEF$PWFSBHF BTXFMMBT UFTUDBTFNBOBHFNFOUUPPMTGPSNBOBHJOHBMMUIFUFTUTBOESVOOJOHBOENPOJUPSJOHUIFN GSPNBDFOUSBMJ[FEBSFB5IFBCJMJUZUPQMVHJOXIBUFWFSNBOVBMUFTUTZPVNJHIUIBWFJTBMTP TVQQPSUFEJO5FBN&EJUJPOGPS5FTUFST4PNFPGUIFTFUFTUTBSFTIBSFEXJUI5FBN&EJUJPOGPS %FWFMPQFST More Info You’ll learn more about Team Edition for Testers in Chapter 7.
C01D0900052.indd 14
9/8/2005 2:09:52 AM
Chapter 1:
15
Overview of Team System
Visual Studio 2005 Team Foundation Server 5IJTFEJUJPOPG7JTVBM4UVEJPXJMMQSPWJEFNBOZCBDLFOEEBUBCBTFTBOE8FCTFSWJDFT UPFOBCMFUIFUFBNUPDPMMBCPSBUF CZTIBSJOHXPSLJUFNT TPVSDFDPEF CVJMET BOEPUIFS BSUJGBDUT*GZPVJOUFOEUPSVO5FBN4ZTUFNGPSBUFBN BTJUJTBEWFSUJTFE ZPVµMMOFFEUIJT QSPEVDUUPDPOOFDUBMMZPVSUFBNNFNCFSTUPHFUIFS5FBN'PVOEBUJPO4FSWFSJTNPSFUIBO KVTUBO²FEJUJPO³PG7JTVBM4UVEJP5FBN4ZTUFN*UµTUIFFOHJOFCFIJOEZPVSTPGUXBSF EFWFMPQNFOUMJGFDZDMF 5FBN'PVOEBUJPO4FSWFSJODMVEFTBTUBOEBMPOFDMJFOUDBMMFE5FBN&YQMPSFS5IJTDMJFOUJT FTTFOUJBMMZBMJHIUXFJHIUFEJUJPOPG7JTVBM4UVEJPUIBUPGGFSTBOBMUFSOBUFXBZ±CFTJEFT VTJOHPOFPGUIFPUIFS7JTVBM4UVEJPFEJUJPOT &YDFM PS1SPKFDU±PGDSFBUJOHBOENBOBHJOH XPSLJUFNT*UµTJOUFOEFEGPSUIF²DBTVBMTUBLFIPMEFS³UIFQFSTPOPOZPVSUFBNXIPIBTUP DIFDLJOEPDVNFOUBUJPO NBOBHFJNBHFTGPSB8FCQSPKFDU BOETPPO More Info You’ll learn more about Team Foundation Server in Chapter 2, and you’ll learn more about the various clients in Chapter 3.
Visual Studio 2005 Team Suite 'PSUIFUFBNNFNCFSXIPQMBZTNPSFUIBOPOFSPMF PSGPSUIFDPOTVMUBOUXIPQMBZTBMM UIFSPMFT UIFSFµTUIF5FBN4VJUF.JDSPTPGUIBTXSBQQFEVQBMMUISFFSPMFCBTFEFEJUJPOT BSDIJUFDU EFWFMPQFS BOEUFTUFS JOUPBTJOHMFFEJUJPOGPSTJNQMJDJUZ Note When Visual Studio 2005 launches, MSDN® Universal and MSDN Enterprise will no longer be available for purchase. At that time, active MSDN Universal subscribers will be offered an upgrade to MSDN Premium Subscription and their choice of Visual Studio 2005 Team Edition for Software Architects, Visual Studio 2005 Team Edition for Software Developers, or Visual Studio 2005 Team Edition for Software Testers at no additional cost. For those that want each of the Visual Studio Team System role-based editions, special pricing will enable MSDN Universal subscribers to upgrade to Visual Studio 2005 Team Suite. Check the Team System Web site on MSDN for the latest information and updates.
Roles Within Team System 3FNFNCFSUIBUBSPMFEPFTOµUOFDFTTBSJMZNFBOBQFSTPO*OGBDU JUµTEPVCUGVMUIBUBOZUFBN XJMMFYBDUMZ¾UUIF5FBN4ZTUFNNPEFM XJUIFWFSZSPMFDPWFSFEQFSGFDUMZBOEOPPWFSMBQ"T ZPVSFBEUISPVHIUIJTTFDUJPO SFNFNCFSXIBU*µWFCFFOTBZJOHBCPVUUIF¿FYJCJMJUZPG5FBN 4ZTUFN
C01D0900052.indd 15
9/8/2005 2:09:53 AM
16
Part I:
Introducing Team System
)FSFBSFUIFGPVS5FBN4ZTUFNSPMFT
N
1SPKFDU.BOBHFS
N
"SDIJUFDU
N
%FWFMPQFS
N
5FTUFS
*GZPVHFUDSFBUJWF ZPVDBODPNFVQXJUIBGFXNPSFSPMFT'PSFYBNQMF ZPVDBOCSFBLUIF BSDIJUFDUSPMFJOUPUXPTVCSPMFT
N
"QQMJDBUJPO"SDIJUFDU±EFTJHOTTPGUXBSFBOETFSWJDFT
N
*OGSBTUSVDUVSF"SDIJUFDU±EFTJHOTEFQMPZNFOUFOWJSPONFOUT JODMVEJOHOFUXPSLBOE JOGSBTUSVDUVSF
"OPUIFSSPMFUIBUJTBGGFDUFECZ5FBN4ZTUFNJODMVEFTUIF*5QSPGFTTJPOBM *51SP TUBGGUIBU XJMMCFBTLFEUPEFQMPZUIF¾OJTIFEQSPEVDUJOUPUIFFOWJSPONFOU8JUIUIBUJONJOE ZPV DBODPNFVQXJUITPNFPUIFSQTFVEPBOEDPNCJOBUJPO5FBN4ZTUFNSPMFT
N
*51SPGFTTJPOBM±TPGUXBSFEFQMPZNFOU
N
5FTUFS*51SPGFTTJPOBM±TPGUXBSFUFTUJOHBOEEFQMPZNFOU
N
%FWFMPQFS5FTUFS±TPGUXBSFEFWFMPQNFOUBOEUFTUJOH
N
"QQMJDBUJPO"SDIJUFDU%FWFMPQFS±TPGUXBSFEFTJHOBOEEFWFMPQNFOU
Visual Studio 2005 Editions 5FBN4ZTUFNJTOPUQBSUPGBMMFEJUJPOTPG7JTVBM4UVEJP'PSOPWJDFT IPCCZJTUT TUVEFOUT BOEQSPGFTTJPOBMEFWFMPQFST UIFSFBSFFYQSFTT TUBOEBSE BOEQSPGFTTJPOBMFEJUJPOTPG7JTVBM 4UVEJP
N
7JTVBM4UVEJP&YQSFTT&EJUJPOT
N
7JTVBM4UVEJP4UBOEBSE&EJUJPO
N
7JTVBM4UVEJP1SPGFTTJPOBM&EJUJPO
N
7JTVBM4UVEJP5FBN&EJUJPOGPS4PGUXBSF"SDIJUFDUT
N
7JTVBM4UVEJP5FBN&EJUJPOGPS4PGUXBSF%FWFMPQFST
N
7JTVBM4UVEJP5FBN&EJUJPOGPS4PGUXBSF5FTUFST
N
7JTVBM4UVEJP5FBN'PVOEBUJPO4FSWFS
N
7JTVBM4UVEJP5FBN4VJUF
Note All Team System editions are based on the professional edition.
C01D0900052.indd 16
9/8/2005 2:09:53 AM
Chapter 1:
Overview of Team System
17
Visual Studio 2005 Express Editions 5IF7JTVBM4UVEJP&YQSFTT&EJUJPOTBSFHSFBUGPSDIJMESFO IPCCZJTUT TUVEFOUT OPWJDFT BOE FOUIVTJBTUTJOHFOFSBM:PVDBOTFMFDUGSPN.JDSPTPGU7JTVBM$&YQSFTT 7JTVBM#BTJD&YQSFTT 7JTVBM$ 7JTVBM+ BOE8FC%FWFMPQFS&YQSFTT&YQSFTTFEJUJPOTBSFNBEFBWBJMBCMFUP BMNPTUBOZPOFXIPXBOUTUIFNTPUIBUEFWFMPQFSTXJMMTUBSUVTJOH7JTVBM4UVEJP
Visual Studio 2005 Standard Edition 4JNJMBSUPTUBOEBSEFEJUJPOTPGUIFQSFWJPVTWFSTJPOTPG7JTVBM4UVEJP UIJTJTUIFFOUSZMFWFM GPSBOZPOFXIPJTTFSJPVTBCPVUEFWFMPQJOHBQQMJDBUJPOT5IFJOUFOEFEBVEJFODFJODMVEFT 8FCQSPGFTTJPOBMT 7JTVBM#BTJDEFWFMPQFST BOEQBSUUJNFEFWFMPQFSTXIPXBOUUPCVJME TUBOEBMPOFBQQMJDBUJPOTJO7JTVBM#BTJD/&5PS$
Visual Studio 2005 Professional Edition 4JNJMBSUPUIFQSPGFTTJPOBMFEJUJPOTPGUIFQSFWJPVTWFSTJPOTPG7JTVBM4UVEJP UIJTJTUIF FEJUJPOGPSTFSJPVTEFWFMPQNFOUJO7JTVBM4UVEJP5IJTFEJUJPOJTGPSDPOTVMUBOUT TPMP QSPGFTTJPOBMT BOEUIPTFXIPXPSLJOTNBMMUFBNTGPSXIJDI5FBN4ZTUFNNBZCFNPSFUIBO UIFZOFFE5IFQSPGFTTJPOBMFEJUJPOBMTPEJGGFSTGSPNUIFTUBOEBSEFEJUJPOJOUIBUJUIBTBMM UIFGFBUVSFTSFRVJSFEUPCVJMEEJTUSJCVUFEBQQMJDBUJPOT
Integration with Other Microsoft Products 5FBN4ZTUFNJTDPNQPTFEPGNBOZQJFDFTBOEQBSUT*OUIFDMJFOUPOMZFEJUJPOT 5FBN 4ZTUFNJTTJNQMZ7JTVBM4UVEJP1SPGFTTJPOBM&EJUJPOXJUIUIFBQQSPQSJBUFBEEJOT5FBN 'PVOEBUJPO4FSWFS XIJDIZPVXJMMMFBSONPSFBCPVUJO$IBQUFS JTBOFOUJSFBSDIJUFDUVSFPG TFSWJDFT )FSFBSFTPNFPUIFS.JDSPTPGUQSPEVDUTBOEIPXUIFZJOUFHSBUF
C01D0900052.indd 17
N
.JDSPTPGU42-4FSWFS 3FQPTJUPSZGPSBMMXPSLJUFNT TPVSDFDPEF BOE CVJMEEBUB JODMVEJOHBMMUFBNBSUJGBDUT"OBMZTJT4FSWJDFT 0-"1DVCFT BOE3FQPSUJOH 4FSWJDFTTVQQPSUUIFQPSUBMBOEWBSJPVTUFBNSFQPSUT
N
.JDSPTPGU8JOEPXT4IBSF1PJOU1PSUBM4FSWJDFT CVUOPU4IBSF1PJOU1PSUBM 4FSWFS 5IFTPGUXBSFCFIJOEUIFUFBNQSPKFDUQPSUBM
N
7JTVBM4UVEJP 1SJNBSZFOWJSPONFOUGPSBMMSPMFT
N
.JDSPTPGU1SPKFDU CVUOPU1SPKFDU4FSWFS "OBMUFSOBUFUPPMGPSQSPKFDU NBOBHFST
N
.JDSPTPGU&YDFM "OBMUFSOBUFUPPMGPSQSPKFDUNBOBHFST
N
.JDSPTPGU*OUFSOFU&YQMPSFS 6TFEUPJOUFSBDUXJUIUIFUFBNQSPKFDUQPSUBMBOEWJFX SFQPSUT
9/8/2005 2:09:53 AM
18
Part I:
Introducing Team System
Note Microsoft is planning to release a Microsoft Source Code Control Interface (MSSCCI) plug-in as a download sometime after Visual Studio 2005 launches. This will enable basic source control integration between Team Foundation Version Control and previous versions of Visual Studio. Until then, and for all other software packages or platforms, you can use the various command-line utilities or APIs as a way to extend or integrate with other development environments.
*OBEEJUJPOUPUIFTFUPPMT .JDSPTPGUBOEJUTQBSUOFSTIBWFBOOPVODFENBOZ5FBN4ZTUFN JOUFHSBUFEUPPMTBOETFSWJDFT.JDSPTPGUJTQMBOOJOHUPJODMVEFNJHSBUJPOVUJMJUJFTGPS .JDSPTPGU7JTVBM4PVSDF4BGF BOEPUIFSQBSUOFSTIBWFQSPNJTFEBEEJUJPOBMNPEFMJOHUPPM TVQQPSU SFRVJSFNFOUTHBUIFSJOHTVQQPSU BOEUFTUJOHUPPMT
Summary 5FBN4ZTUFNXBTDSFBUFECZ.JDSPTPGU BDPNQBOZXIPLOPXTBUIJOHPSUXPBCPVU EFTJHOJOH EFWFMPQJOH BOETIJQQJOHMBSHFTDBMFTPGUXBSFQSPEVDUT8IFOZPVVTF5FBN 4ZTUFNUPEFWFMPQZPVSTFSWJDFPSJFOUFETPMVUJPOT ZPVXJMMCFJODSFBTJOHZPVSQSPKFDUµT QSFEJDUBCJMJUZPGTVDDFTTCZJNQSPWJOHUIFDPNNVOJDBUJPOBOEQSPEVDUJWJUZPGZPVSUFBN UISPVHIUIFVTFPGJOUFHSBUFEUPPMT SFHBSEMFTTPGXIFUIFSZPVSUFBNJTXPSLJOHPOB-"/PS JOBEJTUSJCVUFE XPSMEXJEFFOWJSPONFOU.FUIPEPMPHZBOEHVJEBODFBSFQSPWJEFEPVUPGUIF CPY BTXFMMBTUIFBCJMJUZUPDVTUPNJ[FBOEFYUFOE5FBN4ZTUFNJONBOZ NBOZXBZT
C01D0900052.indd 18
9/8/2005 2:09:54 AM
Chapter 2
Team Foundation Server In this chapter: Team Foundation Server Components. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Team Foundation Server Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Software Configuration Management (SCM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
19 20 24 36
*UIPVHIUJUJNQPSUBOUUPTUBSUXJUIUIFIFBSUPG.JDSPTPGU7JTVBM4UVEJP5FBN 4ZTUFN XIJDIJTJUTCBDLFOEJOGSBTUSVDUVSF.JDSPTPGU7JTVBM4UVEJP5FBN'PVOEBUJPO 4FSWFSJTOµUSFRVJSFEUPSVOUIFWBSJPVT7JTVBM4UVEJP5FBN4ZTUFNSPMFCBTFEFEJUJPOT CVUXJUIPVUJUZPVSUFBNXPOµUDPMMBCPSBUFBTXFMMBTJUDPVME:PVNJHIUTBZUIBU5FBN 'PVOEBUJPO4FSWFSJTUP7JTVBM4UVEJP5FBN4ZTUFNXIBU.JDSPTPGU&YDIBOHF4FSWFSJT UP.JDSPTPGU0G¾DF0VUMPPL:PVDBOSVO0VUMPPLCZJUTFMG CVUXJUIPVU&YDIBOHF4FSWFS ZPVµMMCFNJTTJOHNBOZGFBUVSFT
Team Foundation Server Components 5FBN'PVOEBUJPO4FSWFSJTBQBSUOFSJOHQSPEVDUUP7JTVBM4UVEJP CVUJONBOZDBTFT JUXJMMCFQVSDIBTFEBTBTFQBSBUFTPMVUJPO*UJTVTFEJOFOWJSPONFOUTXIFSFUFBNTOFFE DPNNVOJDBUJPOUJHIUMZJOUFHSBUFEJOTJEF7JTVBM4UVEJP TDBMBCMFWFSTJPODPOUSPMTPGUXBSF BOEBOJOUFHSBUFE8FCQPSUBMGPSUIFQSPKFDU*HVFTTJUTPVOETMJLFNPTUUFBNTXJMMOFFE 5FBN'PVOEBUJPO4FSWFS Tip Topics related to installing, configuring, and troubleshooting Team Foundation Server are beyond the scope of this book. For more information, please refer to the appropriate installation guides or visit the main Team System site at http://msdn.microsoft.com/teamsystem.
)FSFBSFUIFGFBUVSFTUIBUZPVHFUXJUI5FBN'PVOEBUJPO4FSWFS
N
1SPKFDUNBOBHFNFOU±$SFBUFBOENBOBHFUFBNQSPKFDUT
N
8PSLJUFNUSBDLJOH±$SFBUFBOENBOBHFSFRVJSFNFOUT UBTLT BOECVHT
N
$IBOHFNBOBHFNFOU±7FSTJPODPOUSPMUPNBOBHFDIBOHFTUPUIFQSPKFDU
N
#VJMETFSWFS±"VUPNBUFEBOEFYUFOTJCMFQSPKFDUCVJMEUPPM
19
C02D0900052.indd 19
9/8/2005 2:14:57 AM
20
Part I:
Introducing Team System
N
1SPKFDUTJUF±.JDSPTPGU8JOEPXT4IBSF1PJOU4FSWJDFT 844 QPSUBMQSPWJEFTB DPMMBCPSBUJWFXPSLBSFB
N
3FQPSUJOH±.BOBHFNFOUBOETUBUVTSFQPSUTBSFBWBJMBCMFUPUIFFOUJSFUFBN
5IFTFBSFJNQPSUBOUGFBUVSFTUPUFBNTPGFWFSZTJ[F5IFTFGFBUVSFTTFSWFUPVOJGZUIFFOUJSF UFBNJOWBSJPVTXBZT8JUIPVU5FBN'PVOEBUJPO4FSWFS FBDIUFBNNFNCFSXPVMECF BSDIJUFDUJOH EFWFMPQJOH PSUFTUJOHXJUIJOIJTPSIFSPXOTJMP5IJTJTBQSPCMFNXFXBOUUP BWPJE Tip Microsoft recommends using Visual Studio 2005 Team System with Active Directory® directory service. However, this is not a requirement. If you want to install Team Foundation Server on a single server, it can belong to a workgroup. Dual-server installations will require Active Directory.
Team Foundation Server Architecture 5FBN'PVOEBUJPO4FSWFSJTBNVMUJUJFSFEBSDIJUFDUVSF DPNQPTFEPGBOBQQMJDBUJPOUJFSBOEB EBUBUJFS*UJTTJNJMBSUPXIBUNBOZFOUFSQSJTFTBSFCVJMEJOHJOIPVTFGPSUIFJSPXOCVTJOFTT BQQMJDBUJPOT5FBN'PVOEBUJPO4FSWFSXBTDPOTUSVDUFECZVTJOHCFTUPGCSFFETPGUXBSF TVDI BT"41/&5 844 BOE.JDSPTPGU42-4FSWFS
Data Tier 5FBN'PVOEBUJPO4FSWFSµTEBUBUJFSJTIPTUFEPO42-4FSWFS*EFBMMZ UIJTTIPVMECFB EFEJDBUFETFSWFSUIBUEPFTOPUIJOHCVUTVQQPSUZPVSUFBN5FBN'PVOEBUJPO4FSWFSOFFET UPSVOPOUIFEFGBVMUJOTUBODFPG42-4FSWFS UIVTGSFFJOHVQPUIFSJOTUBODFT5FBN 'PVOEBUJPO4FSWFSXJMMVTFCPUIUIFEBUBCBTFFOHJOFBOEBOBMZTJTTFSWJDFTGFBUVSFTPG42- 4FSWFS:PVTIPVMEGPMMPXUIF5FBN'PVOEBUJPO4FSWFSTFUVQHVJEFFYQMJDJUMZXIFO QSFQBSJOHB42-4FSWFSGPS5FBN4ZTUFN 5IFGPMMPXJOHEBUBCBTFTBSFJOTUBMMFEJOUIFEBUBUJFS
C02D0900052.indd 20
N
5'4*OUFHSBUJPO 5FBN'PVOEBUJPO4FSWFSDPSFTFSWJDFT QSPKFDUNFUBEBUB OPUJ¾DBUJPOT TFDVSJUZHSPVQT BOETPPO
N
5'48BSFIPVTF 5FBN'PVOEBUJPO%BUB8BSFIPVTF
N
5'48PSL*UFN5SBDLJOH 5FBN'PVOEBUJPO4FSWFSXPSLJUFNUSBDLJOHEBUBCBTF
N
5'48PSL*UFN5SBDLJOH"UUBDINFOUT 5FBN'PVOEBUJPO4FSWFSXPSLJUFNBUUBDINFOU EBUBCBTF
N
5'47FSTJPO$POUSPM 5FBN'PVOEBUJPO4FSWFSWFSTJPODPOUSPMEBUBCBTF
N
5'4"DUJWJUZ-PHHJOH 5FBN'PVOEBUJPO4FSWFSWFSTJPODPOUSPMFWFOUMPH
N
5'4#VJME 5FBN#VJMEEBUB SFTVMUT DPEFDPWFSBHF UFTUSFTVMUT BOETPPO
9/8/2005 2:14:57 AM
Chapter 2:
Team Foundation Server
21
"OBEWBOUBHFPG5FBN'PVOEBUJPO4FSWFSCFJOHIPTUFEPO42-4FSWFSJTUIBUJU CFDPNFTBDFOUSBMQMBDFUPNBJOUBJOBOECBDLVQUIFBTTFUTPGZPVSEFWFMPQNFOUQSPKFDUT XPSLJUFNT SFQPSUEBUB BOENPTUJNQPSUBOU±DPEF+VTUDSFBUFBDPVQMFPGTJNQMF NBJOUFOBODFQMBOTUPSVOQFSJPEJDBMMZ BOEZPVµSFDPWFSFE:PVBMTPDBOUBLFBEWBOUBHF PGBOZPUIFSBWBJMBCJMJUZGFBUVSFTPG42-4FSWFS TVDIBTEBUBCBTFNJSSPSJOHBOE DMVTUFSJOH-PPLGPS.JDSPTPGUUPJTTVFHVJEBODFEPXOUIFSPBEUPLFFQZPVSEFWFMPQNFOU UFBNµTBTTFUTQSPUFDUFE
Reporting Services "OPUIFSCFOF¾UPGIPTUJOH5FBN'PVOEBUJPO4FSWFSPO42-4FSWFSJTUIBU5FBN 'PVOEBUJPO4FSWFSIBTCVJMUJOSFQPSUJOHDBQBCJMJUZ"TZPVNJHIULOPX .JDSPTPGUTUBSUFE TIJQQJOHBTFSWFSCBTFESFQPSUJOHTPMVUJPO LOPXOBT3FQPSUJOH4FSWJDFT XJUI42-4FSWFS *UµTBWBJMBCMFPVUPGUIFCPYXJUI42-4FSWFSBOEJTUIFDPSOFSTUPOFUP5FBN 4ZTUFNµTJOGPSNBUJWF SFBMUJNFSFQPSUJOH .JDSPTPGUXJMMPGGFSNBOZQSFCVJMUSFQPSUTXJUIJO5FBN4ZTUFN5IFTFXJMMJODMVEFCFOF¾DJBM SFQPSUTUIBUQVMMGSPNUIFEBUBXBSFIPVTF TVDIBTQSPKFDUIFBMUI DPEFDIVSO DIBOHFTJO DPEFCFUXFFODIFDLJOT
UFTUQBTT UFTUFGGFDUJWFOFTT BDUJWFCVHT BOEFG¾DJFODZSFQPSUT 3FQPSUJOH4FSWJDFTXJMMBMTPQSPWJEFBEWBODFE#*BOEUSFOEJOHBOBMZTJTUPPMTGPSZPVS5FBN 'PVOEBUJPO4FSWFSEBUB FOBCMJOHZPVUPCVJMEBOEFYFDVUF²XIBUJG³SFQPSUT&YBNQMFT NJHIUJODMVEF²8IFOJTPVSQSPKFDUFYQFDUFEUPFOECBTFEPODVSSFOUUSFOEJOH ³PS²*G* ESPQDFSUBJOTDFOBSJPTIPXEPFTUIBUFGGFDUUJNFMJOFT ³ More info For a list of reports and some screen shots, read Chapter 10.
8JUIKVTUBMJUUMFLOPXMFEHFPGUIFEBUBCBTFPSEBUBXBSFIPVTFTUSVDUVSFBOETPNF FYQFSJFODFXJUIBVUIPSJOH3FQPSUJOH4FSWJDFTSFQPSUT ZPVµMMCFBCMFUPDSFBUFBOZPUIFS DVTUPNSFQPSUTZPVNJHIUOFFE*OUVSO UIFTFSFQPSUTDBOCFEJTQMBZFEUISPVHIUIFQSPKFDU QPSUBMCZVTJOHB.JDSPTPGU844SFQPSUJOH8FCQBSU More info For information on customizing and extending the reporting capabilities of Team System, read Chapter 9.
8JUI42-4FSWFS .JDSPTPGUXJMMQSPWJEFVTXJUI3FQPSU#VJMEFS BOFXDPNQPOFOU UIBUBMMPXTCVTJOFTTVTFSTUPDSFBUFUIFJSPXOSFQPSUTVTJOHBVTFSGSJFOEMZNPEFMPGUIFJS EBUB3FQPSU#VJMEFSMFWFSBHFTUIF3FQPSUJOH4FSWJDFTQMBUGPSNUPCSJOHBEIPDSFQPSUJOH UPFOEVTFST6TFSTDSFBUFBOEFEJUSFQPSUTXJUIUIF3FQPSU#VJMEFSDMJFOU B$MJDL0ODF BQQMJDBUJPOEFQMPZFEWJBUIFCSPXTFS5IFZTUBSUCZTFMFDUJOHSFQPSUMBZPVUUFNQMBUFT DPOUBJOJOHQSFEF¾OFEEBUBTFDUJPOTTVDIBTUBCMFT NBUSJDFT BOEDIBSUT6TFSTDBOUIFO ESBHBOEESPQSFQPSUJUFNTGSPNUIFNPEFMUPUIFEFTJHOTVSGBDFBOETFUDPOTUSBJOUTUP¾MUFS
C02D0900052.indd 21
9/8/2005 2:14:58 AM
22
Part I:
Introducing Team System
UIFSFQPSUEBUB5IFNPEFMDPOUBJOTBMMPGUIFOFDFTTBSZJOGPSNBUJPOGPSUIF3FQPSU#VJMEFS UPBVUPNBUJDBMMZHFOFSBUFUIFTPVSDFRVFSZBOESFUSJFWFUIFSFRVFTUFEEBUB
Application Tier 5IFBQQMJDBUJPOUJFSJTDPNQPTFEPG"41/&5 "4.9 8FCTFSWJDFT XIJDIBSFDBMMFEGSPN UIFWBSJPVTDMJFOUBQQMJDBUJPOTBTXFMMBT844 XIJDITVQQPSUTUIFUFBNQPSUBM Note Because both WSS and the Team Foundation Server Web services reside on the same Internet Information Services (IIS) 6.0 installation, they need to have different port numbers. The Beta 1 port numbers are as follows: the IIS 6.0 Default Web Site (port 80), WSS (port 16083), and the Team Foundation Server Web services (port 8080).
5IFGPMMPXJOH"41/&58FCTFSWJDFTBSFJOTUBMMFEJOUIFBQQMJDBUJPOUJFS
N
JOTUBMMQBUI=8FC4FSWJDFT=4FSWJDFT "QQMJDBUJPO1SPHSBNNJOH*OUFSGBDF "1* GPS UIF5FBN'PVOEBUJPO4FSWFSDPSFTFSWJDFT
N
JOTUBMMQBUI=8FC4FSWJDFT=7FSTJPO$POUSPMBOEJOTUBMMQBUI=8FC4FSWJDFT= 7FSTJPO$POUSPM1SPYZ "1*GPSUIF5FBN'PVOEBUJPO4FSWFSWFSTJPODPOUSPM
N
JOTUBMMQBUI=8FC4FSWJDFT=#VJME "1*GPS5FBN#VJME
N
JOTUBMMQBUI=8FC4FSWJDFT=8BSFIPVTF "1*GPS5FBN'PVOEBUJPO%BUB8BSFIPVTF
N
JOTUBMMQBUI=8FC4FSWJDFT=8PSL*UFN5SBDLJOH "1*GPS8PSL*UFN5SBDLJOH BT TIPXOJO'JHVSF
Tip Those of you who want to interact directly with Team System should use the Team Foundation client object model. The Web services are not intended for direct interaction. The software development kit (SDK) has documentation for doing this. That said, it’s definitely possible to add a Web reference to the appropriate Web service and interact directly. You should be careful, however, because these Web service APIs are complex. Sticking with the client object model is probably your best bet.
Windows SharePoint Services (WSS) 844QSPWJEFTBDMFBOBOERVJDLXBZUPDSFBUFBDPMMBCPSBUJWFQPSUBMFOWJSPONFOUGPSUFBNT PGBOZTJ[F*GZPVIBWFOµUIBEBOZFYQFSJFODFXJUI844CFGPSF JUµTBHSFBUGSBNFXPSLGPS CVJMEJOHOJDFTJUFT*UµTOPUFYDMVTJWFMZB5FBN4ZTUFNGFBUVSF CVUJUJOUFHSBUFTWFSZXFMMXJUI UIFFYQFSJFODF(SFBUGFBUVSFTPG844QPSUBMTBSFUIBUUIFZMPPLDMFBOBOEBMMUIFVQMPBE EPXOMPBE TFDVSJUZ NFOVT DIFDLJO DIFDLPVU BOEWFSTJPOJOHDBQBCJMJUJFTBSFCVJMUJO:PV EPOµUIBWFUPXSJUFBOZDPEF844JTBOBUVSBM¾UGPS7JTVBM4UVEJP5FBN4ZTUFN 'JHVSFTIPXTZPVBTBNQMFUFBNQPSUBM
C02D0900052.indd 22
9/8/2005 2:14:59 AM
Chapter 2:
Figure 2-1
A Web service that tracks work items
Figure 2-2
A WSS team portal
Team Foundation Server
23
Client Tier 5IFDMJFOUUJFSPG5FBN'PVOEBUJPO4FSWFSJODMVEFTXIBUFWFSDMJFOUBQQMJDBUJPOZPVµSF SVOOJOH5IFTFDMJFOUBQQMJDBUJPOTXJMMDPNNVOJDBUFXJUI5FBN'PVOEBUJPO4FSWFSCZ NFBOTPGUIFBGPSFNFOUJPOFE8FCTFSWJDFT.JDSPTPGUXJMMTVQQMZTFWFSBMDMJFOUT BOE
C02D0900052.indd 23
9/8/2005 2:15:00 AM
24
Part I:
Introducing Team System
UIJSEQBSUJFTXJMMVOEPVCUFEMZTVQQMZNPSF.PSFJNQPSUBOUMZ ZPVDBODSFBUFZPVSPXO JOUFSBDUJOHXJUIUIF.JDSPTPGUDMJFOUPCKFDUNPEFMPSBDDFTTJOHUIF8FCTFSWJDFTEJSFDUMZ *OUIFOFYUDIBQUFS XFµMMMPPLDMPTFMZBUUIFWBSJPVT5FBN4ZTUFNDMJFOUBQQMJDBUJPOT XIJDI BSFMJTUFEIFSF
N
7JTVBM4UVEJP±1PQVMBSEFWFMPQNFOUFOWJSPONFOU XIJDIZPVSEFWFMPQNFOU UFBNQSPCBCMZBMSFBEZVTFT
N
.JDSPTPGU0G¾DF&YDFM±1PQVMBSTQSFBETIFFUTPGUXBSF
N
.JDSPTPGU0G¾DF1SPKFDU±1PXFSGVMQSPKFDUNBOBHFNFOUTPGUXBSF
N
.JDSPTPGU*OUFSOFU&YQMPSFS±"CSPXTFSUIBUBMMPXTBMMUFBNNFNCFSTBDDFTTUPUIF UFBNQPSUBM
N
5FBN&YQMPSFS±"7JTVBM4UVEJPBEEJOPSTUBOEBMPOFUPPMGPSDSFBUJOHBOENBOBHJOH 5FBN4ZTUFNQSPKFDUT
Software Configuration Management (SCM) 1SPQFS4PGUXBSF$PO¾HVSBUJPO.BOBHFNFOU 4$. DBOCFBMPUPGXPSL$PNQBOJFTBOE UFBNTUIBUMBDLJOTJHIUJOUPIPXUPJOUFHSBUFUIFJSQSPKFDUTBSFIFBEFEGPSGBJMVSF6TJOHBO FGGFDUJWFTPGUXBSFEFWFMPQNFOUUPPMXJUICVJMUJO4$.DBOFOBCMFBUFBNBOEDPNQBOZUP NBOBHFUIFVONBOBHFBCMF 5FBN4ZTUFNJNQSPWFTZPVSUFBNµT4$.JOUIFGPMMPXJOHXBZT
N
&OBCMFTZPVUPEFWFMPQBOENBOBHFNVMUJQMFWFSTJPOTPGBQSPEVDUBUUIFTBNFUJNF
N
&OBCMFTNVMUJQMFEFWFMPQFSTUPXPSLPOUIFTBNF¾MFTTJNVMUBOFPVTMZ
N
3FMBUFTCVHTBOECVH¾YFTCBDLUPUIFJSPSJHJO
N
.FSHFTDIBOHFTGSPNPOFSFMFBTFUPBOPUIFS
N
.BOBHFTTPGUXBSFCVJMET
N
.BOBHFTSFMFBTFT
"T*NFOUJPOFEJOUIFJOJUJBMDIBQUFS JNQSPWJOHUFBNDPNNVOJDBUJPOJTBHSFBUTUBSUGPS TPMWJOHQSPCMFNTSFMBUFEUPEFTJHOBOEEFWFMPQNFOU*UµTBMTPUIFCBTJTGPSJNQSPWJOH4$. 5FBNCBTFETPGUXBSFEFWFMPQNFOUJTMJLFBOPSDIFTUSBEVSJOHBTZNQIPOZ XIFSFBMMUIF NFNCFSTOFFEUPCFJOTZOD XBUDIJOHUIFJSNBOBHFS BOEXPSLJOHJOVOJTPOUPCSJOHUIF EFMJWFSBCMFUPGSVJUJPOPOUJNF.BOBHFSTSFHVMBSMZOFFEUPLOPXXIBUTUBUFUIFQSPKFDUJTJO IPXNVDIDPEFDIVSOJTJOUIFOJHIUMZCVJMET XIFOUIFQSPKFDUIBTSFBDIFE[FSPOFXCVHT BOETPPO3FRVJSJOHUFBNNFNCFSTUPQVMMPVUPGUIFJSUBTLBUIBOETPUIBUUIFZDBOBOTXFS UIFTFRVFTUJPOTJTRVJUFEJTUSBDUJOH
C02D0900052.indd 24
9/8/2005 2:15:01 AM
Chapter 2:
25
Team Foundation Server
%FQFOEJOHPOUIFNFUIPEPMPHZZPVDIPPTF ZPVSBQQSPBDIUPTPGUXBSFEFWFMPQNFOUNJHIU CFRVJUFEJGGFSFOUGSPNQSPKFDUUPQSPKFDUPSGSPNUFBNUPUFBN CVUZPVSOFFEUPJOUFMMJHFOUMZ TUPSFJOGPSNBUJPOXJMMCFUIFTBNFBTBOZPUIFS:PVSUFBNNVTUDPOTUBOUMZNBOBHF SFQPTJUPSJFTPGXPSLJUFNTBOEBSUJGBDUT JODMVEJOHUBTLT SJTLJUFNT SFRVJSFNFOUT TPVSDF DPEF CVHT BOESFQPSUT4DBUUFSJOHFBDIPGUIFTFJUFNUZQFTUPEJGGFSFOUUPPMTGSBDUVSFTUIF BMSFBEZCSJUUMFDPNNVOJDBUJPOQBUIXBZTPGUFBNTBOETPGUXBSF 5FBN4ZTUFNµTDPSFDPODFQUTPGQSPQFSTPGUXBSFDPO¾HVSBUJPONBOBHFNFOUBSFBTGPMMPXT
N
8PSLJUFNUSBDLJOH
N
7FSTJPODPOUSPM
N
#VJMEBOESFMFBTFNBOBHFNFOU
N
5FBNDPNNVOJDBUJPO
N
3FQPSUJOH
*XJMMFYQMBJOXPSLJUFNUSBDLJOH WFSTJPODPOUSPM BOECVJMEBOESFMFBTFNBOBHFNFOUJO UIJTDIBQUFS:PVµMMTFFUIFNGVSUIFSFYQMBJOFEUISPVHIPVUUIFDIBQUFSTJO1BSU XIJDI TIPXZPV5FBN4ZTUFNJOBSPMFCBTFEBQQSPBDI GPDVTJOHPOUIFUFBNNFNCFSTBOE UIFJSBDUJWJUJFT5FBNDPNNVOJDBUJPOXJMMBMTPCFDPNFFWJEFOUBTZPVSFBEUISPVHIUIPTF DIBQUFST"MUIPVHISFQPSUJOHXJMMCFVTFEUISPVHIPVUZPVSQSPKFDUµTMJGFDZDMF *XPOµUDPWFS JUVOUJM$IBQUFS
Work Item Tracking (WIT) 5IFUFSNYQTMKVGOBCTUSBDUTPSHFOFSBMJ[FTUIFWBSJPVTDPODFQUTPGTPGUXBSFEFWFMPQNFOU "XPSLJUFNDBOEF¾OFBOZBDUJPOBCMFVOJUPGJOGPSNBUJPOUIBUJTQBSUPGUIFTPGUXBSF EFWFMPQNFOUMJGFDZDMF&YBNQMFTPGXPSLJUFNTJODMVEFSFRVJSFNFOUT UBTLT BOECVHT 8PSLJUFNTIBWFQSPQFSUJFT TVDIBTUJUMF EBUF TUBUVT BOEOBNFPGUIFUFBNNFNCFSUIFZ BSFBTTJHOFEUP*GZPVBMMPXUIFNUPCF UIFTFJUFNTCFDPNFUIFGPVOEBUJPOPGZPVSTPGUXBSF QSPDFTT"TZPVQBTTUISPVHIUIFWBSJPVTQIBTFTBOEJUFSBUJPOTPGZPVSQSPKFDU UIFXPSL JUFNTNPWFXJUIZPV 5IFBDUVBMUZQFBOEGPSNBUPGXPSLJUFNTJTEJDUBUFECZUIFNFUIPEPMPHZZPVDIPPTFGPS ZPVSQSPKFDU.JDSPTPGU4PMVUJPOT'SBNFXPSL .4' GPS"HJMF4PGUXBSF%FWFMPQNFOUEF¾OFT EJGGFSFOUXPSLJUFNTUIBUBTLEJGGFSFOURVFTUJPOTUIBOPUIFSNFUIPEPMPHJFT'JHVSF TIPXTXIBUJOGPSNBUJPO.4'"HJMFTQFDJ¾FTGPSBUBTL Note If you choose the MSF for Agile Software Development methodology for your Team System project, the five work item types you’ll have available are risks, bugs, tasks, scenarios, and Quality of Service (QoS) requirements. You will learn more about the various MSF 4.0 methodologies in Chapter 8.
C02D0900052.indd 25
9/8/2005 2:15:01 AM
26
Part I:
Introducing Team System
Figure 2-3
A task work item as defined by MSF Agile
"QPXFSGVMGFBUVSFPGXPSLJUFNTJTUIFBCJMJUZUPMJOLUIFNUPPUIFSBSUJGBDUT XIJDIJTLFZUP BOFGGFDUJWF4$.TUSBUFHZ-JOLJOHBXPSLJUFNUPBTFUPGDPEFDIFDLFEJOUPWFSTJPODPOUSPM BMMPXTUIFEFWFMPQFSPSUIFQSPKFDUNBOBHFSUPUSBDLXIJDIDIBOHFTBSFSFMBUFEUPXIJDI SFRVJSFNFOUTPSCVHT5PVHIRVFTUJPOTTVDIBT ²8IZXBTUIFDIBOHFNBEF ³BOE²8IP BVUIPSJ[FEUIFDIBOHF ³DBOOPXCFFBTJMZBOTXFSFE"MMUIFTFMJOLBHFTDBOCFRVFSJFE BOESFQPSUFE:PVBMTPOFFEUPLOPXXIJDICVJMETDPOUBJOFEXIJDIXPSLJUFNT5IJT JOGPSNBUJPOJTEJTQMBZFEDMFBSMZPOUIF-JOLTUBCPGBXPSLJUFN Note Ask yourself this: How many times have you or a developer you know become sidetracked in writing a “cool feature” or adding some functionality that’s not called for explicitly by a functional requirement or bug fix? These excursions can cost a project time or money. *G BTBQSPKFDUNBOBHFS ZPVµSFBMSFBEZUSBDLJOHCVHTBOESFRVJSFNFOUTJO&YDFMPS 1SPKFDU ZPVTIPVMELFFQEPJOHTP#ZVTJOHUIFJOUFHSBUFE5FBN4ZTUFNUPPMCBS ZPVDBO TZODISPOJ[FXPSLJUFNT BMMPXJOHZPVUPXPSLJOBOFOWJSPONFOUZPVµSFDPNGPSUBCMFXJUI± FWFOXIFOZPVµSFEJTDPOOFDUFEGSPNUIFOFUXPSL±JGZPVDIPPTF 0ODFDPNNJUUFEUPUIF5FBN'PVOEBUJPO4FSWFSEBUBCBTF BMMPGUIFTFXPSLJUFNTBSFKVTU SFDPSETJOUBCMFTJO42-4FSWFS5IFGBNJMJBSJOUFSGBDFTBOEMJHIUXFJHIUPQFSBUJPOBM NBJOUFOBODFPG42-4FSWFSSFTVMUJOBWFSZTIPSUMFBSOJOHDVSWFBOECBDLFOEFYUFOTJCJMJUZ JGOFDFTTBSZ:PVBMTPLOPXUIBUZPVSWBMVBCMFJOUFMMFDUVBMQSPQFSUZFOKPZTUSBOTBDUJPOBM JOUFHSJUZBOESPCVTUTFDVSJUZ
Customizing Work Item Tracking .JDSPTPGUSFBMJ[FTUIBUUIFXPSLJUFNTJUEFWFMPQFEGPSJUT.4'NFUIPEPMPHJFTXPOµUTBUJTGZ FWFSZPOFµTOFFET'PSFYBNQMF ZPVNJHIUXBOUUPBTTJHOBOIPVSMZSBUF EPMMBST TFDVSJUZ DMBTTJ¾DBUJPO PSCVEHFUJOGPSNBUJPOUPBUBTL$VSSFOUMZ UIF.4'NFUIPEPMPHJFTEPOµU TVQQPSUUIPTFEF¾OJUJPOT
C02D0900052.indd 26
9/8/2005 2:15:02 AM
Chapter 2:
27
Team Foundation Server
5FBN4ZTUFN IPXFWFS BMMPXTZPVUPBEE FEJU PSEFMFUFUIFBDUVBMXPSLJUFN¾FMET JODMVEJOHIPXUIFZBQQFBSJOUIFVTFSJOUFSGBDFBOEBOZSVMFTBOEXPSL¿PXBTTPDJBUFE XJUIUIFN5IFTFOFXPSBMUFSFEXPSLJUFNTXJMMTVSGBDFJOUIFWBSJPVTUPPMTBOESFQPSUT UISPVHIPVUZPVSEFWFMPQNFOUQSPDFTTCBTFEPOUIFNFUIPEPMPHZUFNQMBUFT KVTUMJLFUIPTF XPSLJUFNT.JDSPTPGUQSPWJEFTCZEFGBVMU More info Be sure to check out Chapter 9 for a useful section on how to customize and extend Team System.
Pluggable Methodology vs. Built-In Processes 4PIPXDBOZPVIBWFBDPNQMFUFMZ¿FYJCMFBOEQMVHHBCMFNFUIPEPMPHZ :PVDBOµU CVUMFU NFFYQMBJO'PSFYBNQMF *DBOµUBMUFS8PSL*UFN5SBDLJOHTPUIBUBGUFSOFXCVHTBSF FOUFSFEUFBNNFNCFSTOFFEUPQIZTJDBMMZBUUFOEBUFBNNFFUJOH*BMTPDBOµUDIBOHFUIF JOGSBTUSVDUVSFBOEXPSL¿PXPG5FBN'PVOEBUJPO4FSWFS 'PSFYBNQMF BUZQJDBMNFUIPEPMPHZEFTDSJCFTUIFGPMMPXJOHJUFNT
N
3PMF
N
8PSLTUSFBN
N
"DUJWJUZ
N
5ZQFTPGXPSLJUFNT
"NFUIPEPMPHZ IPXFWFS DBOµUBMUFSUIFTFCVJMUJOSVMFTPGUIFVOEFSMZJOHNFUBNPEFM
N
6TFSTCFMPOHUPTFDVSJUZHSPVQT
N
6TFSTPXOXPSLJUFNT
N
3PMFTQFSGPSNXPSLTUSFBNT
N
8PSLTUSFBNTBSFTFRVFODFTPGBDUJWJUJFT
N
8PSLJUFNTUSBDLBDUJWJUJFT
N
"DUJWJUJFTQSPEVDFBOEDPOTVNFXPSLQSPEVDUT
N
*UFSBUJPOTHSPVQBOETDIFEVMFXPSLJUFNT
8IZBN*NFOUJPOJOHUIJT 8IJMFZPVBSFMFBSOJOHBCPVUBMMUIFXBZTJOXIJDIZPVDBO DVTUPNJ[FBOEFYUFOE5FBN4ZTUFN LFFQJONJOEUIBUUIFSFBSFCBTJD JOUSJOTJDSVMFTXIFO ZPVVTF5FBN4ZTUFN
Version Control 5FBN'PVOEBUJPO7FSTJPO$POUSPM 5'7$ XBTCVJMUOFX GSPNUIFHSPVOEVQ.JDSPTPGUEJE OPUKVTUVQEBUF.JDSPTPGU7JTVBM4PVSDF4BGFBOEDIBOHFUIFOBNF5IFOFXWFSTJPODPOUSPM JTBNVMUJUJFSFEBSDIJUFDUVSFBOE BTTVDI PGGFSTUIFTBNFCFOF¾UTBTUIPTFFOKPZFECZUIF
C02D0900052.indd 27
9/8/2005 2:15:02 AM
28
Part I:
Introducing Team System
XPSLJUFNUSBDLJOHBSDIJUFDUVSF6OMJLF7JTVBM4PVSDF4BGF 5'7$TVQQPSUTMBSHFEJTUSJCVUFE EFWFMPQNFOUUFBNTBOEQSPKFDUT 5'7$JOUSPEVDFTBOFXDPODFQUDBMMFEBEJCPIGUGV8JUIPUIFSWFSTJPODPOUSPMQSPEVDUT UIFJOEJWJEVBM¾MFTZPVXPSLPOIBWFOPMJOLBHFPSDPOUFYU5IFZBSFKVTUTFQBSBUF¾MFT DIFDLFEJOBUUIFTBNFUJNF)PQFGVMMZ ZPVSDPNNFOUTBSFFOPVHIUPHMVFUIFNUPHFUIFS HJWJOHUIFNDPOUFYUBOE¾EFMJUZ*O5'7$ DIBOHFTFUTEFTDSJCFBHSPVQPGBTTPDJBUFE ¾MFNPEJ¾DBUJPOT5IJTBMMPXTGPSCFUUFSBDDPVOUJOHBOEXPSL¿PX BTXFMMBTTJNQMJ¾FE BENJOJTUSBUJPO*OUFSOBMMZ FBDIDIBOHFTFUJTHJWFOBVOJRVFJEFOUJ¾FSGPSUSBDLJOHBOE SFQPSUJOH "TBEFWFMPQFSXPSLTPOUIF¾MFTVOEFSWFSTJPODPOUSPM UIFDIBOHFTBSFNBEFUPBMPDBM XPSLTQBDF-BUFS IFPSTIFDBODIFDLUIFNJO TQFDJGZJOHBOZSFRVJSFEEPDVNFOUBUJPOBOE BTTPDJBUJOHUIFDIBOHFTFUXJUIPOFPSNPSFXPSLJUFNT TVDIBTBUBTLPSCVH Note The internal team at Microsoft responsible for building Team Foundation Server is located in North Carolina. Microsoft has a rather substantial campus there and has been “dogfooding” (using) this same version control throughout the development of Team System. They have been synchronizing builds with the team members on the Redmond, Washington campus.
*GZPVIBWFCPUI7JTVBM4PVSDF4BGFBOE5'7$JOTUBMMFE ZPVDBOTXJUDICBDLBOEGPSUICZ TFMFDUJOHBEJGGFSFOUQMVHJO5IJTXBZ ZPVDBODPOUJOVFUPTVQQPSUBOZ7JTVBM4PVSDF4BGF QSPKFDUT BTXFMMBTBOZOFXEFWFMPQNFOUFGGPSUTVOEFSUIF5FBN4ZTUFN7FSTJPO$POUSPM TFF'JHVSF 3FNFNCFSBMTPUIBU.JDSPTPGUJODMVEFTBNJHSBUJPOUPPMUPNPWFZPVS 7JTVBM4PVSDF4BGFBSUJGBDUTPWFSUP5'7$.JDSPTPGU PSPUIFSQBSUOFST NBZSFMFBTFTJNJMBS NJHSBUJPOUPPMTEPXOUIFSPBE
Figure 2-4
Choosing your version control plug-in inside Visual Studio
:PVµMMMFBSONPSFBCPVUUIFWFSTJPODPOUSPMJOUFHSBUJPOJO$IBQUFS XIJDIDPWFSTUIF7JTVBM 4UVEJP5FBN&EJUJPOGPS4PGUXBSF%FWFMPQFST
C02D0900052.indd 28
9/8/2005 2:15:03 AM
Chapter 2:
29
Team Foundation Server
Tip There is also a command-line utility (tf.exe) for interaction with TFVC. This utility allows you to interact from any environment, not just Visual Studio 2005.
)PXEPFTWFSTJPODPOUSPMXPSLJOFOWJSPONFOUTJOWPMWJOHNBOZEFWFMPQNFOUTIPQTPS UFBNTJOEJGGFSFOUTJUFT 8IBUJGUIFZBSFXPSLJOHPWFSTMPXDPOOFDUJPOT *OUIFQBTU UIJT XPVMECFBOJHIUNBSFPGWJSUVBMQSJWBUFOFUXPSL 71/ DPOOFDUJPOT8JUI5'7$ UIF TPMVUJPOJTUPIBWFBMMUIFTJUFTDPOOFDUUPUIFTBNFBQQMJDBUJPOUJFS3FNFNCFSUIBUUIF BQQMJDBUJPOUJFSJTKVTUBO9.-8FCTFSWJDF5IFJOUFHSBUFEUPPMTJOTJEF7JTVBM4UVEJP XJMMOBUJWFMZJOUFSBDUXJUIUIFTF8FCTFSWJDFT *µMMQSPWJEFBOPWFSWJFXPGUIF5'7$DBQBCJMJUJFTGPSCSBODIJOH NFSHJOH BOETIFMWJOH XIJDI BSFSFBMMZJUTVOJRVFGFBUVSFT
Branching #SBODIJOHJO5'7$JTTJNJMBSUPEQR[KPIJUFNTGSPNPOFQSPKFDUUPBOPUIFSIPXFWFS JUJT EPOFJOUFMMJHFOUMZ5IFPSJHJO DPOUFYU BOEIJTUPSZPGUIFDPQJFEJUFNTBSFNBJOUBJOFETP UIBUGVUVSFDIBOHFTDBOCFNFSHFECBDLJOUPUIFPSJHJOBMQBUI5IJTDBQBCJMJUZJTJNQPSUBOU UPTPGUXBSFDPO¾HVSBUJPONBOBHFNFOUCFDBVTFJUBMMPXTNVMUJQMFCVJMETBOESFMFBTFTUPCF NBJOUBJOFEFG¾DJFOUMZ5IFTFCSBODIFTBSFFBTZUPWJTVBMJ[FBOEOBWJHBUFJOUIF7JTVBM4UVEJP 4PVSDF$POUSPM&YQMPSFS5IJTUPPMFOBCMFTBEFWFMPQFSUPXPSLTJNVMUBOFPVTMZPONBOZ CSBODIFTPGUIFTBNFDPEF BTJTTPNFUJNFTOFDFTTBSZ #SBODIJOHDBOCFQFSGPSNFECZEBUF MBCFM PSWFSTJPO:PVDBOCSBODIGSPNBOFYJTUJOH QSPKFDUJOUIF4PVSDF$POUSPM&YQMPSFS BTTIPXOJO'JHVSF PSXIFOZPVCFHJOBOFX UFBNQSPKFDU BTTIPXOJO'JHVSF "MMDIBOHFTUIBUZPVNBLFUPUIFOFXMZCSBODIFE DPEFBSFEPOFMPDBMMZ JOZPVSMPDBMXPSLTQBDF VOUJMZPVDIFDLJOUIFDIBOHFTUPUIF5'4$ 5IFBEWBOUBHFPGUIJTQSPDFTTJTUIBUZPVDBONBLFBOZOFDFTTBSZDIBOHFT CVJMEUIFDPEF BOEUFTUJUUPNBLFTVSFJUXPSLTQSPQFSMZCFGPSFDIFDLJOHJUCBDLJOBTBOFXCSBODI
Figure 2-5
C02D0900052.indd 29
Creating a new branch from Source Control Explorer
9/8/2005 2:15:03 AM
30
Part I:
Introducing Team System
Note The Source Control Explorer allows you to move and rename items from one team project to another. This explorer will be available only in Visual Studio 2005. Microsoft is planning to release a Microsoft Source Code Control Interface (MSSCCI) plug-in as a download sometime after Visual Studio 2005 launches. This will enable basic version control integration between TFVC and previous versions of Visual Studio.
Figure 2-6
Creating a new version control branch at project creation
"OPUIFSCFOF¾UPGCSBODIJOHJTUIBUPGTUPSBHFTQBDFFG¾DJFODZ5'7$NJOJNJ[FTUIF SFRVJSFETUPSBHFCZPOMZNBJOUBJOJOHPOFDPQZPGDPOUFOU SFHBSEMFTTPGIPXNBOZTPVSDF ¾MFTDPOUBJOJU5IJTJTTJNJMBSUPIPX&YDIBOHF4FSWFSLFFQTPOMZPOFMBSHFBUUBDINFOUFWFO UIPVHIJUµTCFJOHTFOUUPNBOZQFPQMF'PSFYBNQMF JO5'7$ POMZPOFDPQZPGB.#¾MF XJMMCFTBWFE FWFOXIFOUIFSFBSFDPQJFTPGUIF¾MFJOWBSJPVTQSPKFDUTBOECSBODIFT'PS UIJTSFBTPO OFXCSBODIFTDPOTVNFWFSZMJUUMFTQBDF"TUIFEFWFMPQFSTTUBSUNBLJOHDIBOHFT UPQBSUJDVMBS¾MFT UIFBEEJUJPOBMTUPSBHFXJMMCFVTFEGPSUIPTFDIBOHFT5'7$TUPSFTPOMZ UIFEJGGFSFODFT PSEFMUBTGSPNUIFPSJHJOBM¾MFT XIJDIJTWFSZFG¾DJFOU 4FDVSJUZDBOCFDPO¾HVSFEPOUIFTFCSBODIFTKVTUBTZPVXPVMETFUQFSNJTTJPOTPOBOZ EJSFDUPSZGPMEFSJO.JDSPTPGU8JOEPXT3FNFNCFSUIBUCSBODIFTBSFFTTFOUJBMMZQBUIT TP ZPVDBOVTFUIFTBNFBDDFTTDPOUSPMMJTU "$- TFDVSJUZNPEFMUIBUZPVBSFVTFEUP+VTU SJHIUDMJDLPOBCSBODIFEGPMEFS DIPPTF1SPQFSUJFT BOETFUQFSNJTTJPOT
Merging .FSHJOHJTBUUIFDPSFPG5'7$µTIJHIMFWFMPGFG¾DJFODZ5IJTJOUFMMJHFOUQSPDFTTSFDPODJMFTBMM UIFDIBOHFTZPVµWFNBEFJOZPVSCSBODIFEDPEF ²UIFTPVSDF³ XJUIJUTPSJHJOBMDPEF ²UIF UBSHFU³ 5IJTJTXIZ5'7$SFNFNCFSTUIFPSJHJOBOESFMBUJPOTIJQTXIFOCSBODIJOH.FSHJOH
C02D0900052.indd 30
9/8/2005 2:15:04 AM
Chapter 2:
31
Team Foundation Server
JTNPSFUIBOKVTUCMFOEJOHUFYU*UµTBMNPTUUSBOTBDUJPOBMJOOBUVSF CFDBVTFJUXJMMNFSHF BEEJUJPOT EFMFUJPOT VOEFMFUJPOT BOESFOBNFTGSPNUIFTPVSDFUPUIFUBSHFUFOWJSPONFOU 5FBN4ZTUFNQSPKFDUTDBOCFDPO¾HVSFEGPSOWNVKRNGEJGEMQWV5IJTGFBUVSFBMMPXTNPSFUIBO POFVTFSUPFEJUUIFTBNF¾MFTJNVMUBOFPVTMZ5IFTBNFFOHJOFUIBUNFSHFTDIBOHFTCFUXFFO CSBODIFEQSPKFDUTDBOBMTPNFSHFDIBOHFTGSPNUXPPSNPSFDIFDLFEPVUQSPKFDUTCBDLUP UIFTPVSDF5IJTGFBUVSFJTOPUFOBCMFECZEFGBVMU Note In the case that both the source and target code were changed during a session, the merge will result in a conflict. TFVC will communicate this message to the developer, providing guidance and options on how to resolve the conflict. For straightforward conflicts, you can simply choose whether the source or target should take precedence. For more complex conflict resolution, you can use the included graphical three-way merge tool. This tool is the same as the one you may have used in the past with Visual SourceSafe.
:PVDBODIPPTFXIJDIDIBOHFTZPVXBOUUPNFSHF'PSFYBNQMF ZPVDBONFSHFUIFDPEFUIBU ¾YFEBTJOHMFCVHXJUIPVUNFSHJOHBOZUIJOHFMTFUIBUZPVXFSFXPSLJOHPO"GUFSNFSHJOH 5'7$VQEBUFTUIFNFSHFIJTUPSZGPSUIFJUFNT5IJTJOGPSNBUJPOJTUSBDLFEBVUPNBUJDBMMZBOE DBOCFWJFXFEGSPNJOTJEF7JTVBM4UVEJPPSBDDFTTFEGSPNUIFDPNNBOEMJOFVUJMJUZ 'SPNUIFEFWFMPQFSµTQPJOUPGWJFX JUµTBTJNQMFQSPDFTT.JDSPTPGUJODMVEFTB.FSHF8J[BSE JO7JTVBM4UVEJP XIJDIMFBETUIFVTFSUISPVHIUIFQSPDFTT BMMPXJOHIJNPSIFSUP DIPPTFXIBUDIBOHFTUPNFSHF5IFQPTTJCMFBOTXFSTJOUIFXJ[BSEBSFDPOTUSBJOFEUPLFFQ NJTUBLFTUPBNJOJNVN'PSFYBNQMF JGZPVµWFCSBODIFEBQBSUJDVMBSQSPKFDUUXJDF POMZ UIPTFPUIFSUXPQSPKFDUTXPVMECFMJTUFEBTQPTTJCMFUBSHFUTGPSUIFNFSHF
Shelving 4IFMWJOHJTBOPUIFSOFX LFZDPODFQUUP5'7$4IFMWJOHBMMPXTBEFWFMPQFSUPTUPSFQFOEJOH DIBOHFTUPUIFTFSWFSXJUIPVUDIFDLJOHUIFNJO5'7$JOUSPEVDFTUIFDPODFQUPGBUJGNXGUGV XIJDIJTTJNJMBSUPBDIBOHFTFUFYDFQUUIBUJUµTVTFEUPTUPSFUJGNXGF¾MFTJOBQFSTPOBMTQBDF POUIFTFSWFS:PVDBOVQMPBEQFOEJOHDIBOHFT DPNNFOUT BOEBTTPDJBUFEXPSLJUFNTUP UIJTQFSTPOBMTQBDFGPSXIBUFWFSSFBTPO5IJTJTOPUUPTVHHFTUUIBUEFWFMPQFSTTIPVMETUBSU LFFQJOHUIFJSTPVSDFDPEFBOEQSPKFDU¾MFTJOUIFJSPXOQFSTPOBMBSFBBXBZGSPNPUIFSUFBN NFNCFST5IBUHPFTBHBJOTUXIZXFBSFVTJOHWFSTJPODPOUSPMJOUIF¾STUQMBDF'JHVSF TIPXTUIFTIFMWJOHGFBUVSFGSPNJOTJEF7JTVBM4UVEJP 5IFSFBSFNBOZSFBTPOTUIBUZPVNJHIUXBOUUPTIFMWFZPVSDPEF JODMVEJOHUIFGPMMPXJOHPOFT
C02D0900052.indd 31
N
:PVOFFEUPTXJUDIUPBEJGGFSFOUQSPKFDUUPQFSGPSNXPSLXJUIIJHIFSQSJPSJUZ
N
:PVSDPEFGBJMTBDIFDLJOQPMJDZ BOEZPVDBOµU¾YJUJNNFEJBUFMZ
N
:PVSDPEFJTOPUDPNQMFUFFOPVHIUPTIBSFXJUIPUIFST
N
:PVOFFEUPMFBWFTVEEFOMZ BOEZPVXBOUUPVQMPBEZPVSXPSLUPUIFTFSWFSGPS TBGFLFFQJOH
9/8/2005 2:15:04 AM
32
Part I:
Introducing Team System
Figure 2-7
Shelving code from Visual Studio
&BDIVTFSDBOIBWFBTNBOZTIFMWFTFUTBTEFTJSFE0UIFSVTFSTBSFBCMFUPTFFXIBU TIFMWFTFUTBSFBWBJMBCMF CVUUIFZDBOµUBDDFTTUIFNVOMFTTQFSNJTTJPOJTFYQMJDJUMZHSBOUFE Note Shelving is a great feature, but it can be abused. It’s intended for unforeseen interruptions during a development session. As a best practice, however, all contributors to a project should check in their files and documentation normally to the shared folders only after all check-in policies are satisfied.
Work Item Integration 'SPNBNBOBHFNFOUTUBOEQPJOU POFPGUIFDPPMFTUGFBUVSFTJTUIFBCJMJUZUPBTTPDJBUFBXPSL JUFNXJUIZPVSDIFDLJO5IJTDBQBCJMJUZXJMMFOBCMFPUIFSTUPTFFYJ[DPEFXBTDIBOHFE *EFBMMZ UIFZµMMBMXBZTTFFBDPEFDIBOHFMJOLFECBDLUPBSFRVJSFNFOUPSCVH5IJTUZQFPG NBOBHFSJBMPWFSTJHIUJTJNQPSUBOUJOBOZQSPKFDUJOXIJDIEFWFMPQFSTTIPVMEOµUCFBCMFUP BEEGFBUVSFTPSNBLFVOOFDFTTBSZDIBOHFT
Check-In Policies &WFOUIPVHIBQSPKFDUNBOBHFSPSUFBNMFBENJHIUUFMMIJTPSIFSEFWFMPQFST ²:PVDBOµU DIFDLJOZPVSDPEFVOUJMZPVQFSGPSNBDMFBOCVJME³PS²%POµUFWFOUIJOLPGVQMPBEJOHDPEF UIBUGBJMTJUTVOJUUFTUT ³UIFTFBSFKVTUXPSET BOEXPSETDBOCFJHOPSFE8JUI5FBN4ZTUFN QPMJDJFTDBOCFDSFBUFEBOEFOBCMFEJOTJEF7JTVBM4UVEJPUIBUXJMMFOGPSDFUIFUXP FYBNQMFDPOEJUJPOT*KVTUDJUFE BTXFMMBTPUIFST'JHVSFTIPXTUIFWBSJPVTDIFDLJO QPMJDZUZQFT
C02D0900052.indd 32
9/8/2005 2:15:05 AM
Chapter 2:
Figure 2-8
Team Foundation Server
33
Team System check-in policies
N
$MFBO#VJME 5IFQSPKFDUNVTUDPNQJMFXJUIPVUFSSPSTCFGPSFDIFDLJO
N
4UBUJD"OBMZTJT "TUBUJDBOBMZTJTUFTUNVTUCFSVOCFGPSFDIFDLJO
N
5FTUJOH1PMJDZ $IFDLJOUFTUT TVDIBTVOJUUFTUT NVTUCFSVOCFGPSFDIFDLJO
N
8PSL*UFNT 0OFPSNPSFXPSLJUFNTNVTUCFBTTPDJBUFEXJUIUIFDIFDLJO
5FBN4ZTUFNQSPKFDUTDBOBMTPCFDPO¾HVSFEUPUSBDLBEEJUJPOBMOPUFTBUDIFDLJO'JHVSF TIPXTTPNFTUBOEBSEOPUFTBTTPDJBUFEXJUIUIF.4'"HJMFNFUIPEPMPHZBTXFMMBTIPXFBTZ JUJTUPDSFBUFBOFXSFRVJSFEOPUF5IFQSPKFDUBENJOJTUSBUPSDBODSFBUFOFXOPUFTBOETFU BOZOPUFUPCFSFRVJSFE5IJTCFDPNFTBOPUIFSUZQFPGDIFDLJOQPMJDZ
Figure 2-9
C02D0900052.indd 33
Creating a new check-in note
9/8/2005 2:15:06 AM
34
Part I:
Introducing Team System
*GBEFWFMPQFSOFFETUPPWFSSJEFBQPMJDZ IFPSTIFDPVMETIFMWFUIFDIBOHFTJOTUFBE PS PWFSSJEFUIFQPMJDZ'JHVSFTIPXTUIF¿FYJCJMJUZJO5FBN4ZTUFNUPBMMPXGPSBQPMJDZ PWFSSJEF5IJTNJHIUCFSFRVJSFEJOBOFNFSHFODZTJUVBUJPOXIFSFB¾YJTSFRVJSFEBU". GPSFYBNQMF BOEUIFSFNBZCFOFFEUPDIFDLJODPEFUIBUIBTOµUCFFOGVMMZSFWJFXFE Note The fact that a check-in policy has been overridden is made known to the administrator, so a developer can’t simply ignore checkin policies with impunity.
Figure 2-10
Overriding a check-in policy
TFVC and Sarbanes-Oxley Requirements *GZPVSTIPQOFFETUPDPNQMZXJUIUIF4BSCBOFT0YMFZ 409 3FRVJSFNFOUT UIFOZPVµMM OFFEUPIBWFUJHIUDPOUSPMTPWFSZPVSTPVSDFDPEFBOESFMBUFEDPO¾HVSBUJPONBOBHFNFOU 4FDVSJUZQFSNJTTJPOTBSFBHPPETUBSU CVUUIFZBSFOPUFOPVHI:PVBMTPOFFEUPIBWFUJHIU BVEJUJOHJOQMBDF±UIBUJT ZPVµMMOFFEUPUSBDLXIJDIEFWFMPQFSTBSFBTTFNCMJOHXIJDIQBSUT PGUIFBQQMJDBUJPOBOEXIFO*NQMFNFOUJOHUIFTFUZQFTPGDPOUSPMTJTEJGGFSFOUGSPNIPX NPTUTIPQTQFSGPSNUIFJSOPSNBMEBZUPEBZSPVUJOF CVUXFBSFEFWFMPQJOHTPGUXBSFVOEFS EJGGFSFOUDJSDVNTUBODFTOPXUIBOXFEJEUFOZFBSTBHP 0OFPG5FBN'PVOEBUJPO4FSWFSµTBOTXFSTUP409JTUPNBOBHFRTQOQVKQPMFWFMTCZVTJOH CSBODIFT4VDDFTTJWFMFWFMTPGQSPNPUJPOBSFIBOEMFEJOEJGGFSFOUCSBODIFTPGBQSPKFDUµT TPVSDFDPEF%FWFMPQFSTXJMMUZQJDBMMZEPUIFJSXPSLJOUIFCSBODIUIBUDPSSFTQPOETXJUIUIF MPXFTUQSPNPUJPOMFWFM$IBOHFTUIFOHFUNFSHFEUPIJHIFSMFWFMTPGQSPNPUJPOXIFOUIFZBSF SFBEZ3FNFNCFSUIBU5'7$CSBODIFTCZVTJOHBQBUITQBDFNFUIPE TPJUDBOVTFTUBOEBSE ¾MFTZTUFN"$-TUPNBOBHFBDDFTTSJHIUT5IJTBCJMJUZBMMPXTBNBOBHFSPSMFBEEFWFMPQFSUP MPDLEPXOFBDICSBODITPUIBUPOMZBVUIPSJ[FEVTFSTBSFBMMPXFEUPDIFDLJODPEF 5PIFMQZPVSQSPKFDUBDIJFWF409DPNQMJBODF .JDSPTPGUTVHHFTUTDSFBUJOHBUMFBTUUXP QSPNPUJPOMFWFMT
C02D0900052.indd 34
N
"FGXGNQRGTCSBODIGPSUIFEBZUPEBZXPSL
N
"OCRRTQXGFCSBODIXIFSFBQQSPWFEDIBOHFTBSFNFSHFE
9/8/2005 2:15:06 AM
Chapter 2:
35
Team Foundation Server
5IFNBOBHFSPSMFBEEFWFMPQFSXPVMEMPDLEPXOUIFBQQSPWFECSBODITPUIBUPOMZ BVUIPSJ[FEVTFSTDPVMEQFSGPSNDIFDLJOT5'7$QSPWJEFTOBUJWFBVEJUUSBJMTVQQPSUPGXIP DIBOHFEXIBU XIJDIBMMPXTZPVUPQSPWFUIBUPOMZBVUIPSJ[FEQFPQMFIBWFCFFONBLJOH DIBOHFTJOUIBUCSBODI
What Happened to Visual SourceSafe? *µWFCFFOBTLFEBOEBOTXFSFEUIBURVFTUJPONBOZUJNFTSFDFOUMZ.PTUEFWFMPQFSTBSFBXBSF PGUIFMJNJUBUJPOTPG7JTVBM4PVSDF4BGF.BOZPGZPVIBWFQSPCBCMZIJUUIFTBNFXBMMT* IBWFXIFOVTJOHJUTDBMBCJMJUZMJNJUBUJPOT SFNPUFPQFSBUJPOMJNJUBUJPOT BOE PDDBTJPOBMMZ DPSSVQUJPOPGEBUB#VUMPWFJUPSIBUFJU XFIBWFUPBHSFFUIBUJUµTUIFFBTJFTUWFSTJPODPOUSPM UPPMPVUUIFSF 3FTUBTTVSFE 7JTVBM4PVSDF4BGFJTBMJWFBOEXFMM"MUIPVHIJUµTOPUCFJOHCVJMUCZUIFTBNF HSPVQBT5FBN4ZTUFN .JDSPTPGUDPOUJOVFTUPSFTFBSDIBOEEFWFMPQ7JTVBM4PVSDF4BGF 5IFSFµTBOFXSFMFBTFPG7JTVBM4PVSDF4BGFUPBDDPNQBOZDFSUBJO7JTVBM4UVEJP FEJUJPOT*UDPOUBJOTBCJHGFBUVSFUIBUJTTIBSFEXJUI5FBN'PVOEBUJPO7FSTJPO$POUSPM )551BDDFTTUISPVHI8FCTFSWJDFJOUFSGBDFT 4PNFPUIFSGFBUVSFTXFµMMTFFJO7JTVBM4PVSDF4BGFJODMVEFUIFGPMMPXJOH
N
"DPQZNPEJGZNFSHFNPEFM UPSFEVDFMPDLDPOUFOUJPO
N
"MPDBMBSFBOFUXPSL -"/ QFSGPSNBODFCPPTUFS UPVTFSFNPUFQSPDFEVSFDBMMT 31$ UPJODSFBTFQFSGPSNBODF
N
"TZODISPOPVT¾MFPQFOJOH TPUIBUZPVDBOTUBSUXPSLJOHCFGPSFMPBEJOHJTDPNQMFUFE
N
#FUUFSTVQQPSUGPSQSPKFDUTXJUIEFWFMPQFSTJONVMUJQMFUJNF[POFT
N
#FUUFSTVQQPSUGPSNVMUJQMFMBOHVBHFTBOE6OJDPEF
3FNFNCFSUIBU7JTVBM4PVSDF4BGFJTJOUFOEFEGPSVTFCZTNBMMFSUFBNT XJUIQFSIBQT OPNPSFUIBO¾WFVTFST BOEJUµTJOUFOEFEUPCFVTFEGPSWFSTJPODPOUSPMPOMZ*UEPFTOµU IBWFEFFQ4$.TVQQPSU'PSBOZNFEJVNUPMBSHFUFBNT GSPNUPVTFST
5FBN 'PVOEBUJPOµTWFSTJPODPOUSPMJTPQUJNJ[FEGPSUIFKPC
Build and Release Management 5IFUFSNDWKNFSFGFSTUPUIFDPNQJMBUJPOPGBMMUIF¾MFT MJCSBSJFT PSDPNQPOFOUTJOUPBOFX TFUPGFYFDVUBCMFT MJCSBSJFT PSDPNQPOFOUT5FBN4ZTUFNµTCVJMENBOBHFNFOUQSPWJEFTBO FBTZ FOEUPFOETPMVUJPOUPQSPEVDFEBJMZCVJMET XJUIDPNQMFUFUFTUJOHBOEBVUPNBUJPO*U XJMMQVMMBMMUIFSFMBUFEQSPKFDU¾MFTPVUPG5FBN'PVOEBUJPO7FSTJPO$POUSPM 1SFTTJOH'PSVTJOHUIF#VJMENFOVPQUJPOJOTJEF7JTVBM4UVEJPXPSLTHSFBUGPS TNBMMFSBQQMJDBUJPOT XIFSFZPVIBWFMPDBMBDDFTTUPBMMUIFTPVSDFDPEF¾MFTBOEEPOµUIBWF BOZBEEJUJPOBMSFRVJSFNFOUT-BSHFSQSPKFDUTUFOEUPIBWFNBOZPUIFSUBTLTCVOEMFEXJUI
C02D0900052.indd 35
9/8/2005 2:15:07 AM
36
Part I:
Introducing Team System
UIFBDUVBMDPNQJMFQSPDFTT#VJMEBVUPNBUJPOBMMPXTGPSUIFGPMMPXJOHBEEJUJPOBMQSFCVJME BOEQPTUCVJMESFRVJSFNFOUT
N
$IFDLPVUWFSTJPODPOUSPMMFE¾MFTGPSUIFCVJME
N
3VOTUBUJDBOBMZTJT VOJUUFTUT PSCPUI
N
$PNQJMFTPVSDFT
N
4BWFDPEFDIVSO UFTU DPEFDPWFSBHF BOEPUIFSCVJMEJOGPSNBUJPO
N
%SPQUIFCJOBSJFTJOUPBQSFEF¾OFEMPDBUJPO
N
(FOFSBUFSFQPSUT
5IF7JTVBM4UVEJP5FBN4ZTUFNCVJME"VUPNBUJPO5PPMQSPWJEFTBOPVUPGUIFCPYTPMVUJPO UPNFFUUIFTFSFRVJSFNFOUT*UTXJ[BSEIFMQTZPVDSFBUFBVUPNBUFECVJMETDSJQUTTPUIBUZPV DBOFBTJMZBVUPNBUFUIFTFUBTLT3FQPSUTDBOUIFOCFTUVEJFEUPEFUFSNJOFUIFHFOFSBMIFBMUI PGUIFQSPKFDUBOEUIFXGNQEKV[PGUIFEFWFMPQNFOUFGGPSU
Team Build 5IF5FBN#VJMEQSPEVDUVTFT.4#VJMEJOUFSOBMMZ XIJDINFBOTUIBUJUIBTUIF¿FYJCJMJUZ UPBDDPNNPEBUFNBOZTDFOBSJPT#ZDSFBUJOHBOEQMVHHJOHJO.4#VJMEUBTLT ZPVDBO DVTUPNJ[FZPVSQSPDFTTBOEBDDPNQMJTIBOVNCFSPGDVTUPNUBTLT Note You will learn more about Team Build in Chapter 6 and more about extending it in Chapter 9.
Summary *IPQFZPVTFFOPXUIBU5FBN'PVOEBUJPO4FSWFSJTUIFCFBUJOHIFBSUPG5FBN4ZTUFN 8JUIPVUJU ZPVSUFBNJTEFTJHOJOH EFWFMPQJOH BOEUFTUJOHJOJTPMBUJPO5IFJOUFHSBUJPO CFUXFFOUIFJS7JTVBM4UVEJPFOWJSPONFOUTTJNQMZXPOµUCF4VSF 7JTVBM4PVSDF4BGFJT TUJMMBWBJMBCMFBOEEPFTJODMVEFTPNFHSFBUJNQSPWFNFOUT CVUUIFFOUFSQSJTFTDBMFWFSTJPO DPOUSPMBWBJMBCMFJO5FBN'PVOEBUJPO4FSWFS XJUIJUTBCJMJUZUPMJOLXPSLJUFNT JTBNVTU
C02D0900052.indd 36
9/8/2005 2:15:07 AM
Chapter 3
Team System Client Applications In this chapter: Tools for Project Managers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tools for Architects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tools for Developers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tools for Testers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Internet Explorer for All Team Members . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Command-Line Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tools by Roles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38 44 62 65 66 66 67 68
/PXUIBUZPVIBWFBOVOEFSTUBOEJOHPGBOEBQQSFDJBUJPOGPSUIFCBDLFOEPG5FBN4ZTUFN *XBOUUPTQFOETPNFUJNFXJUIUIFGSPOUFOEQSPEVDUT UPPMT BOEEFTJHOFSTUIBUZPVµMMCF VTJOH4PNFPGUIFTFDMJFOUBQQMJDBUJPOTXPSLEJSFDUMZXJUI5FBN'PVOEBUJPO4FSWFSBOE TPNFDBOCFVTFEBTTUBOEBMPOFDPNQPOFOUT'SPNBQSPEVDUQFSTQFDUJWF UIFWBSJPVT5FBN 4ZTUFNDMJFOUTBSFUIFGPMMPXJOH
N
.JDSPTPGU7JTVBM4UVEJP±5IFOFXFTUFEJUJPOPG7JTVBM4UVEJP XIJDIZPVS EFWFMPQNFOUUFBNBMSFBEZVTFT
N
.JDSPTPGU0G¾DF&YDFM±1PQVMBSTQSFBETIFFUTPGUXBSF XIJDIJTQBSUPG.JDSPTPGU 0G¾DF
N
.JDSPTPGU0G¾DF1SPKFDU1SPGFTTJPOBM±1PXFSGVMQSPKFDUNBOBHFNFOUTPGUXBSF
N
*OUFSOFU&YQMPSFS±"CSPXTFSUIBUBMMPXTBMMUFBNNFNCFSTBDDFTTUPUIFUFBNQPSUBM
N
$PNNBOEMJOFUPPMT±7BSJPVTUPPMTUIBUFOBCMFTDIFEVMFE CBUDIJOUFSBDUJPOXJUI5FBN 4ZTUFN
*µMMDPWFSFBDIPGUIFUPPMTBOEEFTJHOFSTGSPNBSPMFCBTFEQPJOUPGWJFX CPUIJOUIJTDIBQUFS BTXFMMBTJOUIFSFTUPGUIFCPPL"UUIFFOEPGUIJTDIBQUFS ZPVµMMTFF±MJTUFECZFEJUJPOPG 7JTVBM4UVEJPBOE5FBN4ZTUFN±XIJDIUPPMTBOEEFTJHOFSTXJMMCFBWBJMBCMF$IFDLJOHUIBU MJTUXJMMFOBCMFZPVUPGPDVTPOUIFUPPMTBOEEFTJHOFSTUIBUBSFBWBJMBCMFXJUIJOUIFFEJUJPO ZPVµSFVTJOH
37
C03D0900052.indd 37
9/8/2005 2:15:49 AM
38
Part I:
Introducing Team System
Tools for Project Managers *µMMTUBSUXJUIQSPKFDUNBOBHFSTCFDBVTFNPTUQSPKFDUTTUBSUXJUIQSPKFDUNBOBHFST5IF 5FBN4ZTUFNEVUJFTUIBUBQSPKFDUNBOBHFSQFSGPSNTJODMVEFEF¾OJUJPOPGXPSLJUFNTTVDI BTUIFTDFOBSJPT RVBMJUZPGTFSWJDFSFRVJSFNFOUT BOEUBTLTGPSUIFPUIFSUFBNNFNCFST #FGPSFBQSPKFDUNBOBHFSDBOTUBSUQFSGPSNJOHUIFTFEVUJFT IFPSTIFNVTUTFUVQUIFQSPKFDU JOGSBTUSVDUVSFCZEF¾OJOHUIFQSPKFDU TFMFDUJOHBNFUIPEPMPHZ EFUFSNJOJOHWFSTJPODPOUSPM TFUUJOHT BOEDSFBUJOHBUFBNQSPKFDUQPSUBMUPWJFXBOZSFQPSUT 1SPKFDUNBOBHFSTDSFBUFUIFQSPKFDUGSPNJOTJEF7JTVBM4UVEJP5IJTDPVMECFBOZPG UIFWBSJPVT5FBN4ZTUFNFEJUJPOT 5FBN4VJUF PSUIFTUBOEBMPOF5FBN&YQMPSFSUIBU BDDPNQBOJFTUIF5FBN'PVOEBUJPO4FSWFSFEJUJPO0ODFUIFQSPKFDUJTDSFBUFE XPSLJUFNT DBOCFNBOBHFEGSPN.JDSPTPGU&YDFMPS.JDSPTPGU1SPKFDU QSPWJEJOHTFWFSBMVOJRVFDMJFOU BQQMJDBUJPOTUPTBUJTGZNPTUTLJMMTFUT
Visual Studio 2005 Team Explorer 5FBN&YQMPSFSBDDPNQBOJFTBMM7JTVBM4UVEJP5FBN&EJUJPOT*UDBOCFVTFECZBMMSPMFT QSPWJEFEUIBUUIFTFDVSJUZQFSNJTTJPOTIBWFCFFOTFUVQBQQSPQSJBUFMZ'PSQSPKFDUNBOBHFST UIF5FBN&YQMPSFSXJMMCFUIFNPTUQPQVMBSPGUIFUPPMT1SPKFDUNBOBHFSTDBOVTF5FBN &YQMPSFSUPDSFBUFOFXUFBNQSPKFDUT DPO¾HVSFTFUUJOHTBOETFDVSJUZ BOEDSFBUFOFXXPSL JUFNT*UµTBGBNJMJBS IJFSBSDIJDBMUSFFWJFXXJUIMPUTPGDPOUFYUNFOVTBOEGVODUJPOBMJUZ )FSFBSFTPNFPGUIFUBTLTZPVDBOQFSGPSNGSPN5FBN&YQMPSFS
N
$POOFDUUPBTQFDJ¾D5FBN'PVOEBUJPO4FSWFS
N
$PO¾HVSF5FBN'PVOEBUJPO4FSWFSTFUUJOHT TVDIBTHSPVQT TFDVSJUZ QSPDFTT UFNQMBUFT BTTIPXOJO'JHVSF
BOE¾MFUZQFTVOEFSWFSTJPODPOUSPM
N
$SFBUFOFXUFBNQSPKFDUT
N
$PO¾HVSFQSPKFDUTFUUJOHT TVDIBTHSPVQT TFDVSJUZ DMBTTJ¾DBUJPOT BOEDIFDLJO QPMJDJFT
N
"EEBOENBOBHFXPSLJUFNT EPDVNFOUMJCSBSJFT BOEEPDVNFOUTXJUIJOBQSPKFDU
N
$SFBUF FYFDVUF BOETBWFRVFSJFTUPSFUVSOBOFYBDUMJTUPGXPSLJUFNT
N
$SFBUFBOEFYFDVUF5FBN#VJMET
/PUBMMPGUIFTFQSFDFEJOHUBTLTXJMMCFQFSGPSNFECZBMMSPMFT'PSFYBNQMF JUµTIJHIMZ VOMJLFMZUIBUBUFTUFSXPVMECFDSFBUJOHOFXUFBNQSPKFDUTPSUIBUBQSPKFDUNBOBHFSXPVME CFDPO¾HVSJOHBOEFYFDVUJOH5FBN#VJMET7JTVBM4UVEJP5FBN4ZTUFN IPXFWFS DBOCF DPO¾HVSFETPUIBUBOZCPEZPOUIFUFBNDBOIBWFQFSNJTTJPOUPFYFDVUFBOZPGUIFTFUBTLT 4PNF5FBN&YQMPSFSUBTLTUIBUZPVQFSGPSN TVDIBTDSFBUJOHEPDVNFOUMJCSBSJFTBOE VQMPBEJOHEPDVNFOUT BSFTJNQMZBDUJOHEJSFDUMZPOUIF.JDSPTPGU8JOEPXT4IBSF1PJOU 4FSWJDFT 844 1SPKFDU1PSUBMTJUF$IBOHFTUIBUZPVNBLFJO5FBN&YQMPSFSBSFWJTJCMF
C03D0900052.indd 38
9/8/2005 2:15:50 AM
Chapter 3:
39
Team System Client Applications
GSPNUIFQPSUBM BOEWJDFWFSTB'PSFYBNQMF JGZPVDSFBUFBEPDVNFOUMJCSBSZOBNFE7/. &KCITCOUGSPN5FBN&YQMPSFSBOEUIFOVQMPBETPNF.JDSPTPGU7JTJPEJBHSBNT UIFTF DIBOHFTXJMMCFTFFOJNNFEJBUFMZCZBOZPOFWJTJUJOHZPVS1SPKFDU1PSUBMGSPNBCSPXTFS*G UIFQPSUBMVTFSDSFBUFTBOBEEJUJPOBMEPDVNFOUMJCSBSZOBNFE5RGEK¿ECVKQPUBOEUIFOVQMPBET TPNF&YDFMTQSFBETIFFUT UIPTFDIBOHFTXJMMCFTFFOGSPNXJUIJO5FBN&YQMPSFSBTTPPOBT ZPVDMJDLUIF3FGSFTICVUUPO
Figure 3-1 Managing methodology templates from Team Explorer
Note Microsoft Excel and Project documents can be created and launched from inside Team Explorer. Each of these tools, as you will see, has advantages over using Team Explorer directly.
Note To access Team Foundation Server, you must first install Team Explorer. Team Explorer is both a standalone application with Team Foundation functionality only, and an addition to Visual Studio that provides integrated Team Foundation functionality. If your team members don’t need the full capabilities of Visual Studio 2005, you can just install Team Explorer as a standalone application on their computers. The installation binaries are found on the Team Foundation Server media.
Microsoft Excel &YDFMJTUIFNPTUQPQVMBSQSPKFDUNBOBHFNFOUUPPMJOVTF"MMNBOBHFSTBOEUFBNMFBETUIBU *µWFNFULFFQBUMFBTUTPNFPGUIFJSTDIFEVMF UBTLT SFRVJSFNFOUT NJMFTUPOFT PSEFMJWFSBCMFT JOBOYMTTQSFBETIFFUTPNFXIFSF'PSUIJTSFBTPO UIF7JTVBM4UVEJPQSPEVDUUFBNNBEFJUB QSJPSJUZUPJOUFHSBUF&YDFMXJUI5FBN4ZTUFN5IJTJOUFHSBUJPOJTIBOEMFECZBNBOBHFE&YDFM BEEJO XIJDIHJWFTBDDFTTUPUIF5FBN'PVOEBUJPO4FSWFSWJBB8PSL*UFNUPPMCBSBOENFOV
C03D0900052.indd 39
9/8/2005 2:15:51 AM
40
Part I:
Introducing Team System
"OPUIFSBEWBOUBHFUPVTJOH&YDFMJTUIBUJUµTBHSFBUPG¿JOF5FBN4ZTUFNDMJFOU"QSPKFDU NBOBHFSDBODPOOFDUUPB5FBN'PVOEBUJPOTFSWFS DSFBUFBOFXXPSLJUFNMJTU TFMFDUUIF BWBJMBCMFQSPQFSUJFT DPMVNOT
BOEUIFOEFUBDIBOEXPSLPOUIFMJTUXIJMFIFPSTIFJTBU IPNFPSUSBWFMJOH 5IF¾STUTUFQJTUPDPOOFDUUPBQBSUJDVMBS5FBN1SPKFDUPOB5FBN'PVOEBUJPOTFSWFS0OF XBZPGEPJOHUIJTJTUPMBVODI&YDFMGSPNXJUIJOUIF7JTVBM4UVEJP5FBN&YQMPSFS*G ZPVEPUIJT ZPVµMMBMSFBEZCFDPOOFDUFEUPBTFSWFSBOEBQSPKFDU*GZPVMBVODI&YDFMCZ JUTFMG IPXFWFS ZPVµMMOFFEUPTQFDJGZBDPOOFDUJPOUPBTFSWFSBOETFMFDUBQSPKFDU CFGPSF DSFBUJOHPSFEJUJOHMJTUTPGXPSLJUFNT'JHVSFTIPXT.JDSPTPGU&YDFMDPOOFDUJOHUPB 5FBN'PVOEBUJPOTFSWFS:PVDBOBMTPTFFUIFOFXUPPMCBSBOENFOV
Figure 3-2 Connecting to a Team Foundation server from Excel
0ODFZPVµSFDPOOFDUFEUPUIF5FBN'PVOEBUJPOTFSWFS ZPVDBODSFBUFBOFXMJTUPGXPSL JUFNTPSRVFSZ5FBN'PVOEBUJPO4FSWFSGPSBMJTUPGFYJTUJOHXPSLJUFNTUIBUZPVNJHIU XBOUUPVQEBUF8IFODSFBUJOHBOFXMJTU ZPVµSFQSFTFOUFEXJUIUIFFOUJSFMJTUPGQSPQFSUJFT DPMVNOT UIBUZPVDBOUSBDLGPSBHJWFOXPSLJUFNUZQF5IJTDPNQSFIFOTJWFMJTU XIJDIDBO CFRVJUFMPOH JTTQFDJ¾DUPUIFQSPEVDUµTDIPTFONFUIPEPMPHZ*UFNTJOCPMEGBDFUZQFBSF SFRVJSFECZ5FBN4ZTUFN:PVDBOVTFUIF"EE3FRVJSFECVUUPOUPTFMFDUUIFNJOBCBUDI BT TIPXOJO'JHVSF Note Excel and Project reflect any customizations you make to the default work item types. For example, if you add another field to the Task work item type to track the Security Clearance level required to accomplish that task, it shows as a selectable column. See Chapter 9 for more information on customizing and extending Team System.
C03D0900052.indd 40
9/8/2005 2:15:52 AM
Chapter 3:
Team System Client Applications
41
Figure 3-3
Selecting columns for a new list of tasks
"GUFSBEEJOHUIFXPSLJUFNTUPZPVSTQSFBETIFFU ZPVOFFEUPQVCMJTIUIFNCBDLUP5FBN 'PVOEBUJPO4FSWFS5IJTDBOCFEPOFCZTFMFDUJOH1VCMJTI$IBOHFTGSPNUIFUPPMCBSPSUIF 8PSL*UFNTNFOV 4FF'JHVSF *GUIFSFBSFOPFSSPSTBOEBMMSFRVJSFE¾FMETIBWFCFFO TQFDJ¾FE UIFXPSLJUFNTXJMMCFVQMPBEFEUPUIFTFSWFS*GBOZFSSPSTBSFFODPVOUFSFE UIF BEEJOXJMMQSFTFOUZPVXJUIBNFTTBHFCPYBOEUIFOXJUIBTDSFFOMJTUJOHBMMUIFXPSLJUFN QVCMJTIJOHFSSPSTTPUIBUZPVDBOTFFXIBUµTXSPOHXJUIUIFCBUDI 4FF'JHVSF
Figure 3-4 Publishing work item changes
C03D0900052.indd 41
9/8/2005 2:15:53 AM
42
Part I:
Introducing Team System
Tip When you create new work items, you must leave the work item ID blank. Team Foundation Server will assign it the next available number when it is published.
Figure 3-5 Work item publishing errors
0ODFQVCMJTIFE UIFXPSLJUFNTBSFWJTJCMFUPBMMPUIFS5FBN4ZTUFNVTFSTXIPIBWFUIF BQQSPQSJBUFQFSNJTTJPO-BUFS BQSPKFDUNBOBHFSDBODPNFCBDLUP&YDFMBOEQVMMEPXO BMJTUPGXPSLJUFNT NBLJOHDIBOHFTUPJUFNTJOUIBUMJTU*OTUFBEPGTFMFDUJOH/FX-JTU IF PSTIFDBOSVOB(FU8PSL*UFNTRVFSZBOESFUSJFWFPOFPSNPSFXPSLJUFNTUPFEJU 4FF 'JHVSF
Figure 3-6 Querying work items
8PSLJUFNTDBOBMTPCFSFMBUFEUPPUIFSXPSLJUFNT BSUJGBDUT IZQFSMJOLT BOEPUIFS BUUBDINFOUT"T*NFOUJPOFEJOUIFMBTUDIBQUFS UIJTJTBWFSZQPXFSGVMGFBUVSFUIBUµTVTFEUP QSPQFSMZTVQQPSU4PGUXBSF$PO¾HVSBUJPO.BOBHFNFOU:PVNVTUSFNFNCFSUIBUZPVHFUPVU PG5FBN4ZTUFNPOMZXIBUZPVQVUJOUPJU5IFNPSFDPOUFYUBOESFMFWBODFZPVBEEUPZPVS
C03D0900052.indd 42
9/8/2005 2:15:54 AM
Chapter 3:
43
Team System Client Applications
XPSLJUFNT UIFCFUUFSUIFXIPMFFYQFSJFODFXJMMCFGPSFWFSZPOFJOWPMWFE'JHVSFTIPXT UIFEFFQTVQQPSUBWBJMBCMFGPSUIJTJOTJEF&YDFM
Figure 3-7 Associating linked artifacts and other attachments to work items
8IFOZPVµSF¾OJTIFE ZPVTIPVMETBWFZPVS&YDFMTQSFBETIFFU5FDIOJDBMMZ 5FBN4ZTUFN EPFTOµUSFRVJSFUIJT:PVBSFBMMPXFEUPVTF#PPLYMTBTBUISPXBXBZTIFMMUPDSFBUFPS RVFSZXPSLJUFNTBOEUIFOQVCMJTIUIFNCBDLUP5FBN'PVOEBUJPO4FSWFS*SFDPNNFOE IPXFWFS HJWJOHFBDIXPSLTIFFUBVOJRVFOBNFBOETBWJOHJUUPUIFIBSEESJWFPSUFBN QPSUBM5IJTXBZ UIFNFUBEBUBSFHBSEJOHZPVSMJTUBOERVFSJFTJTTBWFE BTXFMMBTBOZ BEEJUJPOBMJUFNTPOPUIFSTQSFBETIFFUTDPOUBJOFEJOUIBUXPSLCPPL*UµMMTBWFZPVUJNF XIFOZPVIBWFUPXPSLPOUIBUTBNFMJTUBHBJO"OPUIFSCFOF¾UJTUIBUZPVDBOTFOEJUBT BOBUUBDINFOUUPOFX5FBN4ZTUFNVTFST
Microsoft Project .JDSPTPGU1SPKFDUTVQQPSUGPS5FBN4ZTUFNJTJEFOUJDBMUPUIBUJO&YDFM3BUIFSUIBOBEEJOH XPSLJUFNTJOUPPSSFUSJFWJOHUIFNGSPNBTQSFBETIFFU ZPVµSFEPJOHTPXJUIJOBQSPKFDUQMBO .JDSPTPGUQSPWJEFEUIJTBMUFSOBUJWFUP&YDFMTJNQMZBTBOPQUJPOUPQSPKFDUNBOBHFSTXIP QSFGFSUIF.JDSPTPGU1SPKFDUFOWJSPONFOUUP&YDFMPS7JTVBM4UVEJP1SPKFDUNBOBHFSTBSFBMTP XFMDPNFUPVTFBOZPGUIFCVJMUJOGFBUVSFTPG.JDSPTPGU0G¾DF1SPKFDU TVDIBTNJMFTUPOFT QSPKFDUTVCQSPKFDUSPMMVQT BOESFQPSUT Note Team System requires Microsoft Project 2003 Professional Edition.
5IFXPSLJUFNBEEJOBMTPEF¾OFT¾FMENBQQJOHTCFUXFFOXPSLJUFNUZQFTBOE.JDSPTPGU 1SPKFDU6OMJLF&YDFM .JDSPTPGU1SPKFDUVTFTBMJNJUFETFUPGDPMVNOT JODMVEJOHQSFEF¾OFE DPMVNOTTVDIBT5BTL/BNF BOEDVTUPN¾FMET8IFOBVTFSQVCMJTIFTPSSFGSFTIFTXPSL JUFNEBUBGSPNB.JDSPTPGU1SPKFDU¾MF BTQFDJBM¾FMENBQJTVTFEUPEFUFSNJOFXIJDI¾FMET
C03D0900052.indd 43
9/8/2005 2:15:55 AM
44
Part I:
Introducing Team System
JOUIFXPSLJUFNEBUBCBTFNBUDIUIFDPMVNOTJO.JDSPTPGU1SPKFDU5IF¾FMENBQJTMPDBUFE JOBO9.-¾MFOBNFE.T1SPK1SPQYNM"GUFSBUFBNQSPKFDUJTDSFBUFE UIFTFNBQQJOHT DBOOPUCFDIBOHFEGPSUIBUUFBNQSPKFDU :PVDBODVTUPNJ[FUIFNBQQJOHT±GPSFYBNQMF UPTVQQPSUBOFX¾FMEUIBUZPVDSFBUFEPSUP NBQ¾FMETUPQSFEF¾OFEDPMVNOTJOTUFBEPGDVTUPNDPMVNOT Tip If you choose to install Microsoft Project Professional 2003 using a different type of installation, such as custom install, you must be certain to install the .NET Programmability Support feature for Microsoft Office Project for Windows. This feature installs the Primary Interop Assemblies that allow programmability with the .NET Framework and is required for integration with Team Foundation.
Tools for Architects 5IFEFTJHOBOEEFWFMPQNFOUPGEJTUSJCVUFETZTUFNTJTNPSFDPNQMFYOPXUIBOFWFS "SDIJUFDUTOFFEOFXXBZTPGSFEVDJOHUIJTDPNQMFYJUZUPJODSFBTFUIFQSFEJDUBCJMJUZPG EFQMPZNFOU5PEPUIJT UIFZNVTU¾OEOFXUFDIOJRVFTGPSEJBHSBNNJOHUIFTFTZTUFNTCZ VTJOHSJDINFUBEBUBBCPVUCPUIUIFEFTJHOBOEUIFEFQMPZNFOUµTPQFSBUJPOBMSFRVJSFNFOUT "TLZPVSTFMGUIJTIPXNBOZUJNFTIBTUIF*5PQFSBUJPOTUFBNMPDLFEEPXOUIFTFSWFST PSJNQMFNFOUFESFTUSJDUJWFHSPVQQPMJDJFTUIBUMFTTFOFEZPVSBQQMJDBUJPOµTDIBODFPG EFQMPZNFOU 8IBUVTVBMMZFOETVQIBQQFOJOH 5IFSFTVMUJTDPNQSPNJTFEVSJOHDSVODI UJNF±XIJDIJTOµUHPPE0OUIFPUIFSFOEPGUIFTQFDUSVN UIF*5HSPVQDPVMEJOVOEBUF UIFEFWFMPQFSTXJUIQBQFSXPSLPSNFFUJOHT PVUMJOJOHFWFSZTFSWJDFQBDL WFSTJPO BOE DPO¾HVSBUJPOPGUIFJSEBUBDFOUFS5IJT UPP JTDPVOUFSQSPEVDUJWF8IBUUIFEFWFMPQFSTXBOU UPLOPXJTXIFUIFS.JDSPTPGU42-4FSWFSXJMMXPSLBOEXIFUIFSUIFJS"41/&58FC TFSWJDFTXJMMCFBCMFUPBDDFTTJU 5IFCFTUTPMVUJPOJTUPIBWFCRRNKECVKQPBSDIJUFDUTDPNNVOJDBUFUIFJSEFTJHOTFGGFDUJWFMZUP UIF*5PQFSBUJPOTUFBNBOEUPIBWFKPHTCUVTWEVWTGBSDIJUFDUTBOEPQFSBUJPOTDPNNVOJDBUF JOGPSNBUJPOBCPVUUIFJSIPTUJOHFOWJSPONFOUTCBDLUPUIFEFWFMPQFST Note Team System doesn’t make the distinction between application architects and infrastructure architects. It’s important, however, to separate them into two subroles because one group will know Web services, Web applications, and Windows applications and the other group will know ports, perimeter networks, firewalls, security boundaries, and server configurations. Maybe in your organization this is one person, or maybe it’s several people.
0OFUIJOHJTDMFBSBSDIJUFDUTµOFFETBSFEJGGFSFOUGSPNUIFOFFETPGQSPKFDUNBOBHFST "SDIJUFDUTIBWFBOFFEGPSJOUVJUJWFEFTJHOUPPMTUIBUDBOBMMPXUIFNUPBDIJFWFQSPEVDUJWJUZ TVDIBTHFOFSBUJOHDPEF5IFTFUZQFTPGUPPMTBSFDBMMFEUIF%JTUSJCVUFE4ZTUFN%FTJHOFST
C03D0900052.indd 44
9/8/2005 2:15:55 AM
Chapter 3:
45
Team System Client Applications
BOEBSFQSPWJEFETPMFMZCZ7JTVBM4UVEJP5FBN&EJUJPOGPS"SDIJUFDUT6TJOHUIFTF UPPMT BSDIJUFDUTDBODSFBUFPOFPGUIFGPMMPXJOH%JTUSJCVUFE"QQMJDBUJPO%JBHSBNT %"% N
"QQMJDBUJPOEJBHSBNT±3FQSFTFOUBQQMJDBUJPOTUIBUQSPWJEFPSVTFTFSWJDFT
N
-PHJDBM%BUBDFOUFSEJBHSBNT±3FQSFTFOUJOUFSDPOOFDUFEMPHJDBMTFSWFSTUIBUTZNCPMJ[F UIFMPHJDBMTUSVDUVSFPGBEBUBDFOUFS
N
%FQMPZNFOUEJBHSBNT±3FQSFTFOUUIFEFQMPZNFOUPGBTQFDJ¾DTZTUFNJOUPBTQFDJ¾D MPHJDBMEBUBDFOUFS
N
4ZTUFNEJBHSBNT±3FQSFTFOUBQQMJDBUJPOTZTUFNT XIJDIBSFDPNQPTFEGSPNPUIFS BQQMJDBUJPOEJBHSBNT
5IFTFEJBHSBNT MJLFBOZHPPENPEFM UFMMBTUPSZUPPUIFSUFBNNFNCFSTXIPNJHIUOPUTIBSFUIF TBNFMFWFMPGFYQFSUJTFBTUIFBSDIJUFDU$PNNVOJDBUJPOXJUIPUIFSNFNCFSTPGUIFUFBN BTXFMM BTUPOPOUFDIOJDBMTUBLFIPMEFSTPGBQSPKFDU JTJNQPSUBOU BOEQJDUVSFTJNQSPWFUIFDIBODFTPG FGGFDUJWFDPNNVOJDBUJPOUBLJOHQMBDF5IJTDPNNVOJDBUJPODBOMFBEUPCFUUFSDPMMBCPSBUJPOBOEBO JODSFBTFEQSFEJDUBCJMJUZPGTVDDFTTPGUIFQSPKFDU'PSFYBNQMF JGBUFBNµTBSDIJUFDUDBOBDDVSBUFMZ EJBHSBNUIFOFUXPSLJOGSBTUSVDUVSFBOEUIFOEFNPOTUSBUFIPXUIFQSPKFDUµTBQQMJDBUJPOXJMM EFQMPZTVDDFTTGVMMZPOUPUIFTFSWFST UIFPQFSBUJPOBMTUBGGµTXPSSJFTDBOCFBMMFWJBUFE 8IBUµTCFUUFSJTUIBUUIFTFBSDIJUFDUVSBMEJBHSBNTBSFDSFBUFEJOBWJTVBMFOWJSPONFOU XIJDI JTJOUFSFTUJOHBOEDBQUJWBUFTJUTVTFST*UBMTPUSBDLTKVTUUIFSJHIUBNPVOUPGJOGPSNBUJPO XIJDIIBTBMXBZTCFFOUIFHPBMPGBHPPENPEFMESJWFOBQQSPBDI*OUIFQBTU BCJHQSPCMFN XJUINPEFMJOHUPPMTIBTCFFOUIBUUIFZµWFCFFOWFSZHPPEBUEPDVNFOUBUJPOCVUOPUWFSZ IFMQGVMGPSUIFBDUVBMEFWFMPQNFOU EFQMPZNFOU BOENBOBHFNFOUPGTZTUFNT8IFOVTFE QSPQFSMZ 5FBN4ZTUFNSFBMJ[FTBMMUIFTFHPBMT
Dynamic Systems Initiative (DSI) "NBKPSOFXJOJUJBUJWFCZ.JDSPTPGUBOEPUIFSJOEVTUSZQBSUOFST TVDIBT4VO.JDSPTZTUFNTBOE 4JFCFM4PGUXBSF JTUIF%ZOBNJD4ZTUFNT*OJUJBUJWF %4* 5IFHPBMPG%4*JTUPSFEVDFDPNQMFYJUZ XIJMFJODSFBTJOHDPNNVOJDBUJPO¿PX*UµTBXBZUPEFTJHOGPSUIFFWFOUVBMJUZPGBQJFDFPG TPGUXBSFCFJOHEFQMPZFEPS QVUBOPUIFSXBZ UPFGUKIPHQTQRGTCVKQPU"LFZGFBUVSFPG%4*JT JUTWJTVBMJ[BUJPOPGUIFTZTUFNTBOETFSWJDFTBOEUSBDLJOHUIFNFUBEBUBBCPVUFBDIUPQSPQFSMZ EFTDSJCFJUUPBOPUIFSTZTUFNPSTFSWJDF5IJTNFUBEBUBXJMMBMMPXGPSPOFEJBHSBNUPWBMJEBUF BHBJOTUBOPUIFS BOEGPSUIFSFBTPOT*KVTUNFOUJPOFE JUµTJNQPSUBOUGPSBQQMJDBUJPOBSDIJUFDUTUP WBMJEBUFUIFJSBQQMJDBUJPOEFTJHOBHBJOTUBOJOGSBTUSVDUVSFBSDIJUFDUµTEBUBDFOUFSEFTJHO Note Another key factor of DSI designs is that they’re always kept up to date. Achieving this level of accuracy depends greatly on the tool and the commitment of the user; but, if the diagrams are not kept up to date, the validation can be worthless.
%4*JTHFBSFEUPXBSEFOTVSJOHUIBUUIFEFTJHOJTDPSSFDUUIF¾STUUJNFBOEUIBUJUXJMM EFQMPZJOUPUIFIPTUFOWJSPONFOUTVDDFTTGVMMZ#VUJUµTNPSFUIBOUIBU±%4*BMTPBJNTUP
C03D0900052.indd 45
9/8/2005 2:15:55 AM
46
Part I:
Introducing Team System
DBQUVSFLOPXMFEHFBOEMFTTPOTMFBSOFEPODFBOBQQMJDBUJPOHFUTEFQMPZFEBOEUPBQQMZ UIBULOPXMFEHFGPSFBTJFSPOHPJOHNBJOUFOBODF5PBDIJFWFUIJT UIFJOEVTUSZJTXPSLJOH UP¾OEOFXUFDIOJRVFTGPSEFTDSJCJOHUIFTFTZTUFNTVTJOHSJDINFUBEBUBBCPVUUIFEFTJHO EFWFMPQNFOU EFQMPZNFOU BOEPQFSBUJPOBMSFRVJSFNFOUTUIBUDBOCFVOEFSTUPPEBOE FYDIBOHFECZWBSJPVTBVUPNBUJPOUPPMT 5IJTBMMTPVOETHSFBU4PXIFSFEPFTNPTUPGUIFFGGPSUOFFEUPPDDVS %PNBJOFYQFSUTJO WBSJPVTTPGUXBSFEFWFMPQNFOUBSFBTXJMMOFFEUPCSBJOTUPSNBOEDBQUVSFUIFJNQPSUBOU NFUBEBUBBCPVUBQBSUJDVMBSDPNQPOFOU5IJTNFUBEBUBJODMVEFTTFUUJOHT DPOTUSBJOUT WFSTJPOT NPEFT TFDVSJUZ±JOTIPSU FWFSZUIJOH5IJOLPGUIFFGGPSUBTDSFBUJOHBTDIFNB EBUBCBTFPS9.- XIJDIFWFSPOFDPNFTUPNJOEXIFOZPVIFBSUIFXPSEUEJGOC UP EFTDSJCFFWFSZUZQFPGPQFSBUJOHTZTUFN BQQMJDBUJPOTFSWFS BOE8FCTFSWFS BTXFMMBTFWFSZ NBKPSUZQFPGBQQMJDBUJPOPSTFSWJDFUIBUZPVDBOCVJMEXJUI/&5 "MMUIFTF%4*NPEFMTOFFEUPCFCPJMFEEPXOUPDPNNPOUFSNTPSJOUFSGBDFTTPUIBU GPS FYBNQMF UIFTFUUJOHTPGB/&58FC4FSWJDFDBOCFWBMJEBUFEBHBJOTUUIFQPMJDZSFTUSJDUJPO PGJUTEFQMPZNFOUFOWJSPONFOU"TNPSFTZTUFNTDBOCFGVMMZEFTDSJCFEVTJOHUIF%4* BQQSPBDI NBOZNPSFQPTTJCJMJUJFTFNFSHFGPSCVJMEJOHUSVFBVUPNBUJPOJOUPUIFFOUJSF TPGUXBSFEFWFMPQNFOUMJGFDZDMF Note You’ve probably heard about the futurists who want to give every device in your home or office its own IP address. DSI can be thought of as being similarly aggressive because the DSI visionaries, of whom I am one, would love to have DSI eventually describe every type of system, service, and server in use!
System Definition Model (SDM) .JDSPTPGUµTJOJUJBM%4*PGGFSJOHXJMMTVSGBDFJO5FBN4ZTUFN5IFJNQMFNFOUBUJPOPGUIJT PGGFSJOHXJMMCFLOPXOBTUIF4ZTUFN%F¾OJUJPO.PEFM 4%. 4%.DMBTTJ¾FTZPVS BQQMJDBUJPOBOEJUTEFQMPZNFOUFOWJSPONFOUJOUPMBZFST NVDIUIFTBNFXBZUIBUUIF0QFO 4ZTUFN*OUFSDPOOFDUJPO 04* NPEFMEFTDSJCFTBOFUXPSLTUBDL4%.PGGFSTUIFGPMMPXJOH CFOF¾UT
C03D0900052.indd 46
N
1SPWJEFTBDPNNPOMBOHVBHFUPEFTDSJCFUIFEFTJHOBOEDPO¾HVSBUJPOGPSBMMBTQFDUT PGBEJTUSJCVUFETZTUFN
N
1SPWJEFTGBNJMJBSBCTUSBDUJPOTUIBUNBLFJUQPTTJCMFGPSBQQMJDBUJPOBOEJOGSBTUSVDUVSF BSDIJUFDUTUPDPNNVOJDBUFPODPNNPOHSPVOE
N
.BLFTJUQPTTJCMFGPSBQQMJDBUJPOBSDIJUFDUTBOEEFWFMPQFSTUPDPNNVOJDBUFBQQMJDBUJPO SFRVJSFNFOUTJOUIFSVOUJNFFOWJSPONFOU
N
.BLFTJUQPTTJCMFGPSJOGSBTUSVDUVSFBSDIJUFDUTUPDPNNVOJDBUFBQQMJDBUJPOSVOUJNF TFDVSJUZ BOEDPOOFDUJWJUZSFRVJSFNFOUTUIBUSFTVMUGSPNQPMJDJFTEF¾OFEJOUIF EFQMPZNFOUFOWJSPONFOU
9/8/2005 2:15:56 AM
Chapter 3:
47
Team System Client Applications
4%.EF¾OFTUIFGPMMPXJOHMBZFST GSPNUIFUPQEPXO N
"QQMJDBUJPO
N
"QQMJDBUJPO)PTUJOH
N
-PHJDBM.BDIJOFTBOE/FUXPSL5PQPMPHZ
N
)BSEXBSF
%JTUSJCVUFE4ZTUFN%FTJHOFSTTUPSF4%.JOGPSNBUJPOJO9.-GPSNBUUFEEPDVNFOUT*O BEEJUJPOUPUIJTEBUB 4%.EPDVNFOUTDBOBMTPDPOUBJOHSBQIJDBMJOGPSNBUJPOGPSEJBHSBN JUFNTBOEFYUFOEFEEBUBEF¾OJUJPOT:PVDBOVTF%JTUSJCVUFE4ZTUFN%FTJHOFSTUPDSFBUF BOENBJOUBJOBTFUPGJOUFSSFMBUFEEJBHSBNTBOEEPDVNFOUTUIBUBSFCBTFEPOUIF4%. EPDVNFOUT5ZQJDBMMZ UIFEF¾OJUJPOTDSFBUFEJOPOFEPDVNFOU GPSFYBNQMF BQQMJDBUJPO EF¾OJUJPOT BSFSFGFSFODFECZPUIFSEPDVNFOUT 7JTVBM4UVEJP5FBN&EJUJPOGPS"SDIJUFDUTJODMVEFTBTPMVUJPOUFNQMBUFUIBUNBLFTJUQPTTJCMF GPSZPVUPDSFBUFBEJTUSJCVUFETZTUFNTPMVUJPO XIJDINBLFT%JTUSJCVUFE4ZTUFN%FTJHOFST BWBJMBCMFGPSZPVUPEFTJHO DPO¾HVSF DPOOFDU BOEFWBMVBUFEFQMPZNFOUGPSBQQMJDBUJPOTBOE BQQMJDBUJPOTZTUFNT"TZPVHPUISPVHIUIJTQSPDFTT BEJTUSJCVUFETZTUFNTPMVUJPOUZQJDBMMZ DPOUBJOTPSXJMMDPOUBJOUIFGPMMPXJOHJUFNT N
"TJOHMFBQQMJDBUJPOEJBHSBN BE¾MF
N
0OFPSNPSFTZTUFNEJBHSBNT TE¾MFT
N
0OFPSNPSFMPHJDBMEBUBDFOUFSEJBHSBNT MEE¾MFT
N
0OFPSNPSFEFQMPZNFOUEJBHSBNT EE¾MFT
N
4%.EPDVNFOUT TEN¾MFT GPSFYUFSOBMMZJNQMFNFOUFEBQQMJDBUJPOEF¾OJUJPOT
N
1SPKFDUTDPOUBJOJOHDPEF¾MFT DPO¾HVSBUJPO¾MFT PUIFSSFMBUFE¾MFT BOE4%. EPDVNFOUTGPSJOUFSOBMMZJNQMFNFOUFEBQQMJDBUJPOEF¾OJUJPOT
.JDSPTPGUIBTBTUSPOHDPNNJUNFOUUP4%.7JTVBM4UVEJPµT4%.JOUFHSBUJPOXJMMDPOUJOVFUP JNQSPWFBTXFNPWFJOUP0SDBT XIJDIJTUIFOFYUWFSTJPOPG/&5BOE7JTVBM4UVEJP)PXFWFS UIF4%.QMBUGPSNBMTPBQQMJFTUP8JOEPXTEJSFDUMZ FTQFDJBMMZHPJOHGPSXBSEJOUP8JOEPXT 7JTUB GPSNFSMZLOPXOBT8JOEPXT-POHIPSO 5IJTNBUVSJOH4%.QMBUGPSNXJMMGBDJMJUBUFUIF EFTJHO EFQMPZNFOU BOEPOHPJOHPQFSBUJPOTPGTZTUFNTJO8JOEPXT OPUKVTU7JTVBM4UVEJP $SJUJDBMUPUIJTTVDDFTTJTGPSFBDIQSPEVDUUFBNUPCVJMEBOCFCRVGTUIBUPUIFSUFBNT XJMMEFQFOEPOGPSEFTJHOUJNFWBMJEBUJPO5IFPCWJPVTXJOOFSTIFSFXJMMCF4ZTUFNT .BOBHFNFOU4FSWFS 4.4 BOE.JDSPTPGU0QFSBUJPOT.BOBHFS .0.
XIJDIDPVMECPUI MFWFSBHF4%.UPNBLFJOUFHSBUPSTµBOEBENJOJTUSBUPSTµKPCTFBTJFS Note If you’re an independent software vendor (ISV), check back regularly for the software development kits (SDKs) and application programming interfaces (APIs) to help build cool SDM tools for Windows. You should bookmark the main Visual Studio Team System site: http://msdn.microsoft.com/teamsystem.
C03D0900052.indd 47
9/8/2005 2:15:56 AM
48
Part I:
Introducing Team System
SDM SDK :PVDBOEPXOMPBEBOEVTF.JDSPTPGUµT4%.4%,UPFYUFOEUIF%JTUSJCVUFE4ZTUFN %FTJHOFSTJO7JTVBM4UVEJP5FBN"SDIJUFDUCZBEEJOHOFXBQQMJDBUJPO MPHJDBMTFSWFS BOEFOEQPJOUUZQFT BTXFMMBTBEEJUJPOBMSFTPVSDFTBOEDPOTUSBJOUT:PVDBOBMTPBEE SFMBUJPOTIJQTBNPOHOFXBOEFYJTUJOHDPODFQUT 4%.TZTUFNTDBOCFVTFEUPNPEFMUZQFTPGBQQMJDBUJPOTBOEMPHJDBMTFSWFST"QQMJDBUJPO NPEFMTDBOUIFOCFVTFEXJUIJO"QQMJDBUJPO%FTJHOFS5IFTF4%.BQQMJDBUJPOTZTUFNT DBODPOUBJOBMMPUIFS4%.CVJMEJOHCMPDLT JODMVEJOH4%.SFTPVSDFT FOEQPJOUT TFUUJOHT BOEPUIFS4%.TZTUFNT:PVDBOBVUIPSBMPHJDBMTFSWFSTZTUFNUIBUNPEFMTBTFSWFS DPO¾HVSBUJPOBOEDBOCFVTFEJO-PHJDBM%BUBDFOUFS%FTJHOFS5IFMPHJDBMTFSWFSDBO NPEFMIPTUJOH4%.BQQMJDBUJPOTZTUFNTBOEDPOUBJOTFUUJOHT FOEQPJOUT BOESFTPVSDFT#Z DPOUBJOJOHFOEQPJOUT UIFMPHJDBMTFSWFSTZTUFNDBOIBWFDPNNVOJDBUJPOSFMBUJPOTIJQTXJUI PUIFSTZTUFNT:PVDBODSFBUFTFUUJOHTPOUIFMPHJDBMTFSWFSTZTUFNUIBUNPEFMUIFCFIBWJPS PGBSFBMTFSWFS TVDIBTUIFNJOJNVNWFSTJPOPGBOBQQMJDBUJPOPSBO04UIBUUIFTFSWFS XJMMIPTU 5IF4%.4%,QSPWJEFTUISFFDPNNBOEMJOFUPPMT N
4%.$PNNBOE-JOF$PNQJMFS 4EN$FYF ±3FTQPOTJCMFGPSWBMJEBUJOHUIF DPSSFDUOFTTPGBOTEN¾MFBDDPSEJOHUPUIF4ZTUFN%F¾OJUJPO.PEFM4DIFNB
N
4%..BOBHFS(FOFSBUPS 4EN(FYF ±"O4%,UPPMUIBUIFMQTEFWFMPQFSTUPCVJME BCTUSBDU4%.NPEFMTGPSVTFXJUI7JTVBM4UVEJP
N
4%.1SPUPUZQF(FOFSBUPS 1SPUP(FOFYF ±(FOFSBUFTBOJOJUJBM%JTUSJCVUFE4ZTUFN %FTJHOFSQSPUPUZQF¾MFGPSBOBCTUSBDUUZQF
Note The SDM SDK is part of the Team System SDK.
Domain-Specific Languages 8JUI5FBN4ZTUFN .JDSPTPGUUBLFTBNPEFMESJWFOBQQSPBDIUPTPGUXBSFEFWFMPQNFOU 4PNFXPVMESFGFSUPUIJTBTXKUWCNGPIKPGGTKPI.JDSPTPGU BTXFMMBTNBOZPUIFSTJOUIF JOEVTUSZ SFBMJ[FUIBU6OJ¾FE.PEFMJOH-BOHVBHF 6.- UPPMTDBOUBLFZPVPOMZTPGBS 6.-DMBTTEJBHSBNT GPSFYBNQMF EPOµUTVQQPSUNBOZ/&5EBUBUZQFTPSTVDIDPODFQUT BTQSPQFSUJFTPSTUBUJDNFUIPETPOJOUFSGBDFT:PVEPOµUTFFUIFTFMJNJUBUJPOTXIFOZPVµSF ESBXJOHQJDUVSFTBOEQSJOUJOHDPMMBUFSBMUPIBOHPOZPVSXBMM CVUXIFOJUDPNFTUP HFOFSBUJOHDPEF ZPVµMMIBWFUPEPTPNFUXFBLJOHJGZPVTUJDLXJUI6.-8IBUQSPEVDUJWF /&5EFWFMPQNFOUUFBNTSFRVJSFBSF&QOCKP5RGEK¿E.CPIWCIG %4- UPPMTUIBUBSFNPSF BHJMFBOEQSFDJTFMZUBSHFUUIFEPNBJOJORVFTUJPOXJUIPVUBOZBCTUSBDUJPOPSUIFOFFEGPS UXFBLT
C03D0900052.indd 48
9/8/2005 2:15:57 AM
Chapter 3:
49
Team System Client Applications
Note Microsoft did some research in this area. It asked many developers who use UML which of the standard models they used. As you can guess, use cases were the most popular. After that, it was sequence diagrams. Beyond that, only a small group of developers delved into the other model types.
#FGPSFZPVBTL MFUNFKVTUTBZ ²/P 6.-JTOPUEFBE OPSJTJUHPJOHBXBZBOZUJNFTPPO³"T GBSBT.JDSPTPGUµTUPPMTHP ZPVDBOTUJMMVTF7JTJPGPSZPVS6.-OFFET JODMVEJOHDSFBUJOHUIF QPQVMBSVTFDBTFBOETFRVFODFEJBHSBNT
What Happened to Visio? 5IJTJTBWFSZDPNNPORVFTUJPO5IFBOTXFSJTUIJTOPUIJOHIBTIBQQFOFEUP7JTJP*O GBDU 7JTJP1SPGFTTJPOBMSFNBJOTBHSFBUXBZUPDSFBUF6.- 0CKFDU3PMF.PEFMJOH 03.
BOEOFUXPSLEJBHSBNT BMMPGXIJDIDPNQMFNFOU5FBN4ZTUFNOJDFMZ5FBN4ZTUFNµT EJTUSJCVUFEBQQMJDBUJPOEFTJHOFSTBSFJOUFOEFEUPCVJMEWFSZEPNBJOTQFDJ¾D JOUFMMJHFOU EPDVNFOUTUIBUDBOJOUFSBDUBOECFWBMJEBUFEBHBJOTUFBDIPUIFS7JTJPµTEPDVNFOUTSFNBJO GBJSMZTUBUJD XJUIPOMZTPNFPGUIFNCFJOHBCMFUPHFOFSBUFDPEFIPXFWFS CFDBVTFUIFZ BSF¾MFCBTFEEJBHSBNT UIFZDBOCFVQMPBEFEUPUIF1SPKFDU1PSUBMBOESFGFSFODFECZUIF FOUJSFUFBN 7JTJPGPS&OUFSQSJTF"SDIJUFDUTJTJODMVEFEJO7JTVBM4UVEJP5FBN&EJUJPOGPS4PGUXBSF "SDIJUFDUTBOE7JTVBM4UVEJP5FBN4VJUF*OBEEJUJPOUPBMMUIFGFBUVSFTJO.JDSPTPGU0G¾DF 7JTJP1SPGFTTJPOBM XJUI7JTJPGPS&OUFSQSJTF"SDIJUFDUTZPVDBOQFSGPSNSPVOEUSJQ FOHJOFFSJOHPOTPGUXBSFXJUIUIF6.-.PEFMEJBHSBNBOEPOEBUBCBTFTXJUIUIF%BUBCBTF &3 BOE03.4PVSDF.PEFMEJBHSBNT7JTJPGPS&OUFSQSJTF"SDIJUFDUTJTBTFQBSBUFQSPHSBN GSPN7JTVBM4UVEJP )FSFJTBOFYBNQMFPGIPXZPVNJHIUVTFUIF6.-TVQQPSUJO7JTJPXJUIZPVS5FBN4ZTUFN FOWJSPONFOU -BVODI7JTJP1SPGFTTJPOBM $SFBUFVTFDBTF TFRVFODF BOEPUIFS6.-EJBHSBNT $SFBUFZPVSDMBTTEJBHSBNTVTJOH6.-OPUBUJPO 'SPN7JTJP HFOFSBUF$PS.JDSPTPGU7JTVBM#BTJD/&5DPEFGSPNUIFDMBTTEJBHSBNT ZPVDSFBUFE "EEUIFDPEF¾MFTZPVHFOFSBUFEUPZPVS7JTVBM4UVEJPQSPKFDU 0QFOBDMBTTJOUIF$MBTT%FTJHOFS XIJDIJTBOFX%4-UPPM 'JOFUVOFUIFDMBTTGPS/&5
C03D0900052.indd 49
9/8/2005 2:15:57 AM
50
Part I:
Introducing Team System
Note If you have Visual Studio Team System for Software Architects or Visual Studio Team Suite and also installed the version of Visio for Enterprise Architects included in those programs, you can create a Visio UML diagram from within Visual Studio. To do this, you will need to create a UML diagram from Visual Studio by opening the project you want to reverse engineer into a Visio UML diagram and selecting Reverse Engineer under the Project—Visio UML menu. Visio will launch to complete the reverse engineering, and you will be prompted with a Save dialog box, in which you can choose an alternative location or rename the diagram prior to saving it.
DSL Tools in Team System 5IF%4-UPPMTJO5FBN4ZTUFNJODMVEFUIF$MBTT%FTJHOFS XIJDIZPVXJMMSFBEBCPVUMBUFS JOUIJTDIBQUFSJOUIFTFDUJPO²5PPMTGPS%FWFMPQFST³ BOEUIF%JTUSJCVUFE4ZTUFN%FTJHOFST 3FHBSEMFTTPGUIFEFTJHOFS UIFUPPMTIBWFBDPNNPOTFUPGGFBUVSFT TVDIBTDPOUJOVPVT TZODISPOJ[BUJPOBOEBEFTJHO¾STUBQQSPBDIUIBUBSFUJFEUPHFUIFSCZ4%.5IFTFUPPMTBSF UIFUPQJDPGUIFGPMMPXJOHTFDUJPOT
Logical Datacenter Designer /FUXPSLBOEPUIFSUPQPMPHZEJBHSBNTIBWFIJTUPSJDBMMZCFFOPGMJUUMFWBMVFUPEFWFMPQFSTPSB EFWFMPQNFOUFGGPSU*OLFFQJOHXJUIUIFQSJODJQMFTPG4%. IPXFWFS UIF-PHJDBM%BUBDFOUFS %FTJHOFSXJMMBMMPXOFUXPSLJOGSBTUSVDUVSFBSDIJUFDUTUPDSFBUFEJBHSBNTPGUIFJSEFQMPZNFOU FOWJSPONFOUTUIBUBSFNPSFUIBOKVTUQSFUUZQJDUVSFT5IF4%.EJBHSBNTXJMMDPOUBJO JNQPSUBOUNFUBEBUB TVDIBTDPOTUSBJOUTGPSBQQMJDBUJPOBSDIJUFDUTUPUFTUEFQMPZUIFJS BQQMJDBUJPOTBHBJOTU5IFTFEJBHSBNTBSFBOBCTUSBDUJPOPGUIFQIZTJDBMFOWJSPONFOU±IFODF UIFUFSNNQIKECN5IFTFSWFSQSPUPUZQFTUIBUUIFBSDIJUFDUESBHTBOEESPQTXJMMSFQSFTFOU TFSWFSSPMFTJOBOBDUVBMEFQMPZNFOU TPBOZDPOTUSBJOUTBOETFUUJOHTQMBDFEPOUIFTFTFSWFST TIPVMECFHFOFSBM 6TJOHUIF-PHJDBM%BUBDFOUFS%FTJHOFS ZPVDBODSFBUFBMPHJDBMSFQSFTFOUBUJPOPGZPVS EBUBDFOUFS-PHJDBM%BUBDFOUFS%FTJHOFSFOBCMFTZPVUPNPEFMUIFQMBDFNFOUBOE DPOOFDUJWJUZPGMPHJDBMTFSWFSTBOE;POFT5IFMPHJDBMEBUBDFOUFSEJBHSBNQSPWJEFTBMPHJDBM SBUIFSUIBOBQIZTJDBMSFQSFTFOUBUJPOPGUIFUBSHFUEBUBDFOUFS"TBSFTVMU BQIZTJDBMTFSWFS XJUI.JDSPTPGU8JOEPXT4FSWFS *OUFSOFU*OGPSNBUJPO4FSWJDFT **4 BOE42- 4FSWFSXPVMECFSFQSFTFOUFECZUISFFMPHJDBMTFSWFST -PHJDBMEBUBDFOUFSEJBHSBNTDBODPOUBJOUIFGPMMPXJOHMPHJDBMTFSWFST
C03D0900052.indd 50
N
8JOEPXT$MJFOU "SJDI/&58JOEPXTDMJFOU
N
**48FC4FSWFS "O*OUFSOFU*OGPSNBUJPO4FSWFS **4 UIBUDBOSVOBO"41/&58FC BQQMJDBUJPOPSTFSWJDF
N
%BUBCBTF4FSWFS "42-TFSWFS
N
(FOFSJD4FSWFS "OZPUIFSTFSWFS TVDIBT.JDSPTPGU#J[5BML $0. .4.2 &YDIBOHF PSBOPUIFS OPO.JDSPTPGUTFSWFS
9/8/2005 2:15:57 AM
Chapter 3:
51
Team System Client Applications
5IFTFMPHJDBMTFSWFSTDBOCFQMBDFEJO