- ホーム
- > 洋書
- > 英文書
- > Computer / General
Full Description
Authoritative guide to TFS 2010 from a dream team of Microsoft insiders and MVPs! Microsoft Visual Studio Team Foundation Server (TFS) has evolved until it is now an essential tool for Microsoft?s Application Lifestyle Management suite of productivity tools, enabling collaboration within and among software development teams. By 2011, TFS will replace Microsoft?s leading source control system, VisualSourceSafe, resulting in an even greater demand for information about it. Professional Team Foundation Server 2010, written by an accomplished team of Microsoft insiders and Microsoft MVPs, provides the thorough, step-by-step instruction you need to use TFS 2010 efficiently?so you can more effectively manage and deliver software products in an enterprise.* Provides a broad overview of Team Foundation Server for developers, software project managers, testers, business analysts, and others wanting to learn how to use TFS * Gives TFS administrators the tools they need to efficiently monitor and manage the TFS environment * Covers core TFS functions including project management, work item tracking, version control, test case management, build automation, reporting, and more * Explains extensibility options and how to write extensions for TFS 2010 * Helps certification candidates prepare for the Microsoft Team Foundation Server 2010 certification exam (Exam 70-512) The clear, programmer-to-programmer Wrox style of Professional Team Foundation Server 2010 will soon have you thoroughly up to speed.
Contents
FOREWORD xxxi INTRODUCTION xxxiii PART ICHAPTER 1: INTRODUCING TEAM FOUNDATION SERVER 2010 3 What is Team Foundation Server? 3 What s New in Team Foundation Server 2010 5 Project Management 5 Version Control 5 Build 6 Administration 6 Acquisition Options 6 Trial 7 Volume Licensing 7 MSDN Subscription 7 Microsoft Partner Network 8 Retail 8 Hosted Team Foundation Server Instances 9 Summary 9 CHAPTER 2: PLANNING A DEPLOYMENT 11 Identifying and Addressing Software Engineering Pain 12 Transparency into the Release or Project 12 Collaboration Across Different Teams and Roles 12 Automated Compilation, Testing, Packaging, and Deployment 13 Managing Test Plans 13 Parallel Development 13 How to Adopt Team Foundation Server 14 Adoption Timeline 14 Phased Approach 14 Hosting Team Foundation Server 16 Identifying Affected Teams 16 Generating Consensus 17 Team Foundation Server Administrator 17 Pilot Projects 18 Migration Strategies 19 Version Control 19 Work Item Tracking 20 Structuring Team Project Collections and Team Projects 20 Considering Limitations in Team Foundation Server 23 Server Limitations 25 Preparation for a Team Foundation Server Environment 25 Understanding the Architecture and Scale-Out Options 26 Hardware Requirements 28 Virtualization 28 Planning for Software Prerequisites 29 Service Accounts 32 File Share Folders 33 SMTP Server 34 Firewall Concerns and Ports Used 34 Friendly DNS Names 35 Legacy Visual Studio Versions 36 Summary 36 CHAPTER 3: INSTALLATION AND CONFIGURATION 37 What You ll Need 37 Team Foundation Server 2010 38 Team Foundation Server 2010 Installation Guide 39 SQL Server 2008 39 Operating System 40 SharePoint 40 Client Software 40 Service Packs and Other Updates 40 Installing Team Foundation Server 42 Installation Types 43 Configuring Team Foundation Server 46 Creating Your First Team Project 50 Configure Friendly DNS Names 52 Foundation Server Architecture 53 Addressing Team Foundation Server 55 Introducing Team Foundation Server Security and Roles 57 Users 57 Groups 58 Permissions 59 Team Explorer 59 Understanding Team Explorer in Visual Studio 2010 60 Connecting to Team Foundation Server 2010 from Older Versions of Visual Studio 69 Connecting to Team Foundation Server from Eclipse and Cross-Platform 71 Alternate Ways to Connect to Team Foundation Server 74 Accessing Team Foundation Server Through a Web Browser 74 Using Team Foundation Server in Microsoft Excel 75 Using Team Foundation Server in Microsoft Project 76 Windows Explorer Integration with Team Foundation Server 77 Expression Blend Integration with Team Foundation Server 78 Connecting Microsoft Test Manager to Team Foundation Server 78 Access to Team Foundation Server via Third-Party Integrations 79 Summary 79 PART II: VERSION CONTROL Repository 84 Working Copy 85 Working Folder Mappings 85 Get 86 Add 86 Check-out 86 Changeset 87 Check-in 87 History 87 Branching and Merging 88 Common Version Control Products 88 Microsoft Visual SourceSafe 88 Apache Subversion 89 Team Foundation Server 90 Distributed Version Control Systems 91 Summary 92 CHAPTER 6: USING TEAM FOUNDATION VERSION CONTROL 95 Getting Started with Team Foundation Server Version Control 96 Team Foundation Server Version Control Concepts 98 Workspace 98 Working Folder Mappings 100 Get 104 Check-out 106 Locks 108 Check-in of Pending Changes 110 Undo Pending Changes 114 Changeset 114 Shelvesets 116 Branches 117 Using Source Control Explorer 118 Pending Changes View 119 Viewing History 122 Labeling Files 123 Recovering When Things Go Wrong 124 Team Foundation Server Version Control in Eclipse 125 Installing the Team Foundation Server Plug-in for Eclipse 127 Sharing Eclipse Projects in Team Foundation Server 128 Importing Projects from Team Foundation Server 132 Differences Between the Eclipse and Visual Studio Clients 134 Team Foundation Server Version Control from the Command Line 135 Getting Help 136 Using the Command Line 136 Team Foundation Version Control Power Tools and Third-Party Utilities 137 Microsoft Visual Studio Team Foundation Server Power Tools 137 Team Foundation Server MSSCCI Provider 138 Team Foundation Sidekicks 139 Configuring Version Control 140 Security and Permissions 140 Team Project Source Control Settings 142 File Types 144 Local User Settings 144 Switching Version Control to Team Foundation Server 147 Team Foundation Server for Visual SourceSafe Users 147 Team Foundation Server for Subversion Users 150 Summary 153 CHAPTER 7: ENSURING CODE QUALITY 155 What is Quality? 155 Check-In Policies 156 Monitoring Check-In Policy Overrides 158 Check-In Policy Pack in Power Tools 160 Creating Custom Check-In Policies 161 Deploying Check-In Policies 165 Gated Check-In 166 Why Gated Check-In? 166 When Not to Use Gated Check-In 167 Setting Up a Gated Check-In Build 167 Checking In for Validation 168 Reconciling the Local Workspace 168 Managing Code Reviews 170 Shelvesets 170 Check-In Note for Code Reviewer 171 Third-Party Tools 171 Summary 172 CHAPTER 8: MIGRATION FROM LEGACY VERSION CONTROL SYSTEMS 175 Migration Versus Upgrade 176 Upgrade 176 Migration 176 Migrating History or Latest Version 177 Migrating from Visual SourceSafe 178 Preparing to Use the VSS Converter Tool 179 Analyzing the Visual SourceSafe Repository 180 Migration 183 Team Foundation Server Integration Platform 184 Popular Third-Party Migration Tools 186 Subversion, CVS, and StarTeam 186 ClearCase 186 Summary 187 CHAPTER 9: BRANCHING AND MERGING 189 Branching Demystified 189 Branch 189 Merge 190 Conflict 190 Branch Relationships 191 Baseless Merge 191 Forward/Reverse Integration 192 Common Branching Strategies 193 No Branching 193 Branch per Release 194 Code-Promotion Branching 196 Feature Branching 196 Implementing Branching Strategies 198 The Scenario 198 The Plan 199 Implementation 199 Dealing with Changesets 204 Tracking Change Through Branches 214 Summary 216 CHAPTER 10: COMMON VERSION CONTROL SCENARIOS 217 Setting Up the Folder Structure for Your Branches 217 Application Source Code 218 Automated Tests Source Code 218 Architecture Assets 218 Database Schema 219 Installer Assets 219 Build and Deployment Assets 219 Third-Party Source Code/Dependencies 220 Folder Inside Branch 221 Folder at Team Project Level 222 Internal Shared Libraries 224 Choosing a Location in Version Control 224 Storing Library Assemblies as Dependencies 226 Branching into Product Family Branches 227 Managing Artifacts Using Team Foundation Server 228 SQL Reporting Services Encryption Key Backup 229 Process Templates 230 Custom Build Assemblies 230 Master Build Process Templates 231 Source Code for Custom Tools 232 Summary 232 PART III: PROJECT MANAGEMENT CHAPTER 11: INTRODUCING WORK ITEM TRACKING 237 Project Management Enhancements in Team Foundation Server 2010 238 Rich Work Item Relationships 238 Agile Workbooks 239 Test Case Management 239 Enhanced Reporting 239 SharePoint Server Dashboards 240 Work Items 240 Work Item Types 241 Areas and Iterations 244 Process Templates 245 MSF for Agile Software Development 246 MSF for CMMI Process Improvement 247 Visual Studio Scrum 251 Third-Party Process Templates 252 Custom Process Templates 252 Managing Work Items 253 Using Visual Studio 253 Using Microsoft Excel 258 Agile Workbooks 259 Using Microsoft Project 261 Using Team Web Access 262 Using Third-Party Tools 263 Project Server Integration 264 Summary 264 CHAPTER 12: CUSTOMIZING PROCESS TEMPLATES 265 Anatomy of a Process Template 265 Plug-in Files 267 Default Security Groups and Permissions 268 Initial Area and Iteration Nodes 269 Work Item Type Defi nitions 269 Initial Work Items 279 Work Item Queries and Folders 279 Microsoft Project Column Mappings 279 Version Control Permissions and Settings 280 SharePoint Project Team Portal Document Library Settings 280 SQL Reporting Services Report Definitions 281 Using the Process Template Editor 281 Installing the Process Template Editor 281 Working with a Process Template 282 Using an XML Editor and WITAdmin 283 Deploying Updates to Process Templates 284 Uploading Process Templates in Team Foundation Server 285 Editing Work Items on an Existing Team Project 285 Common Work Item Type Customizations 286 Adding New States 287 Displaying Custom Link Types 288 Using Display Name Changes (New syncnamechanges attribute) 289 Using a Rich-Text Description 289 Introducing Custom Work Item Controls 290 Work Item Clients 290 Work Item Control Interfaces 291 Deploying Custom Controls 295 Work Item Custom Control Deployment Manifest 295 Using the Custom Control in the Work Item Type Defi nition 296 Summary 296 CHAPTER 13: REPORTING AND SHAREPOINT DASHBOARDS 297 What s New in Team Foundation Server 2010 298 Cross-Collection Reporting Support 298 Changes to the Relational Warehouse 298 Changes to the Analysis Services Cube 299 Optional and Richer SharePoint Integration 300 Team Foundation Server Data Warehouse 300 Operational Stores 301 Relational Warehouse Database and Warehouse Adapters 301 Querying the Relational Warehouse Database 302 Analysis Services Cube 304 Data Warehouse Permissions 306 SharePoint Integration 307 SharePoint Extensions 307 Excel Services and Dashboard Compatibility 307 SharePoint Confi guration Tool 308 Creating Reports 309 Tools 309 Excel Reporting from a Work Item Query 310 SQL Server Reporting Services Reports 312 SharePoint Dashboards 316 Advanced Customization 318 Customizing Project Portals 319 Customizing Warehouse Adapters 319 TfsRedirect.aspx 320 Summary 320 323 Let s Build Something 323 What is Build Automation? 324 Scripting a Build 326 Make 326 Apache Ant 327 Apache Maven 328 NAnt 329 MSBuild 329 Windows Workfl ow Foundation 333 Using Build Automation Servers 334 CruiseControl 334 CruiseControl.NET 335 Hudson 335 Team Foundation Server 335 Adopting Build Automation 336 Summary 337 CHAPTER 15: USING TEAM FOUNDATION BUILD 339 Introduction to Team Foundation Build 339 Team Foundation Build Architecture 340 Setting Up the Team Foundation Build Service 341 Installing Team Foundation Build 343 Confi guring the Team Foundation Build Service 344 Additional Software Required on the Build Agent 351 Working with Builds 351 Creating a Build Defi nition 352 Queuing a Build 362 Build Notifications and Alerts 364 Managing Builds 365 Managing Build Quality Descriptions 371 Managing Build Controllers and Build Agents 371 Understanding the Build Process 372 DefaultTemplate Process 373 Building Ant and Maven Projects with Team Foundation Server 384 Summary 385 CHAPTER 16: CUSTOMIZING THE BUILD PROCESS 387 Introduction to Windows Workfl ow Foundation 387 Visual Basic.NET Expressions 389 Custom Workflow Variables 389 Custom Build Parameters 391 Workflow Activities 397 When to Use MSBuild Versus WF 403 Custom Build Workflow Activities 404 How to Create a Custom Build Activity 404 Integrating Activity into the Build Process Template 417 Deployment of Custom Build Activities 422 Customizing the Build Report Output 423 Creating a Log Data Visualizer 423 Build Summary Report Custom Section 424 Customizing the Build Process to Stamp the Version Number on Assemblies 424 Defining Custom Build Process Parameters 425 Allowing the Functionality to Be Optional 426 Defining Local Workflow Variables 427 Initializing the Local Workflow Variables 427 Finding Matching Assembly Info Files 428 Adding the Custom TfsVersion Activity 428 Summary 429 PART V: ADMINISTRATION CHAPTER 17: INTRODUCTION TO TEAM FOUNDATION SERVER ADMINISTRATION 433 Administrator Types 433 Infrastructure Administrator 434 Team Foundation Server Administrator 434 Project Administrator 434 Logical Architecture 434 Client Tier 435 Application Tier 435 Data Tier 436 Built-In Administration Tools 437 Team Foundation Administration Console 437 Command-Line Configuration Tools 456 Other Administration Tools 459 Team Foundation Server Power Tools 459 Best Practices Analyzer 459 Team Foundation Server Administration Tool 461 Team Foundation Sidekicks 462 Summary 463 CHAPTER 18: SCALABILITY AND HIGH AVAILABILITY 465 What s New in Team Foundation Server 2010? 465 Limiting Factors 467 Microsoft Recommendations 467 Data Tier 469 Application Tier 471 Web Access 472 Warehouse 472 Team Foundation Proxy 472 Principles 474 Solutions 475 Data Tier 475 Application Tier and Web Access 480 Team Foundation Proxy 483 Virtualization 484 Summary 484 CHAPTER 19: DISASTER RECOVERY 485 Business Continuity and Recovery Goals 485 Defining Responsibilities 486 Backing Up Team Foundation Server 486 Components to Back Up 486 Types of Database Backups 488 Important Considerations 490 Creating a Backup Plan 492 Team Foundation Server Backup Plan Details 499 Restoring a Backup to the Original Server 502 Summary 510 CHAPTER 20: SECURITY AND PRIVILEGES 511 Users 511 Domain Users 511 Local Users 513 Identity Synchronization 513 Groups 515 Domain Groups 515 Distribution Groups 515 Local Groups 516 Team Foundation Server Groups 516 Permissions 519 Server Permissions 519 Team Project Collection Permissions 520 Team Project Permissions 522 Work Item Tracking 523 Version Control Permissions 526 Reporting 529 Security Management 529 Deny, Allow, and Unset Permissions 529 Use Active Directory Groups 530Avoid Granting Individual User Permissions 530 Use Inheritance 531 Tools 531 Command-Line Tools 531 Team Foundation Server Administration Tool 532 Summary 533 CHAPTER 21: MONITORING SERVER HEALTH AND PERFORMANCE 535 System Health 536 Storage System Health 536 SQL Server 537 Dynamic Management Views (DMV) 537 Currently Running Processes 538 SQL Wait Types 543 Storage Health 544 Memory Contention 545 Team Foundation Server 546 Command Log 546 Active Server Requests 548 Server Tracing 549 Client Performance Tracing 549 Job History 551 Storage Usage 552 Data Warehouse 554 Tools 554 Performance Analysis of Logs (PAL) Tool 554 Team Foundation Server Best Practices Analyzer (BPA) 555 Team Foundation Server Management Pack for System Center Operations Manager (SCOM) 557 Summary 558 CHAPTER 22: TESTING AND LAB MANAGEMENT 559 Software Testing 560 Test Case Management 561 Lab Management 561 Testing Architecture 562 Microsoft Test Manager 564 Test Plans 565 Test Suites 565 Test Cases 565 Test Runs 566 Actionable Bugs 567 Test Settings 567 Test Attachments Cleaner 569 Assigning a Build to a Test Plan 570 Analyzing Impacted Tests 571 Build Retention 571 Custom Work Item Types 572 Test Automation 572 Visual Studio 2010 Lab Management 573 Installing and Configuring Lab Management 574 Maintaining a Healthy Test Lab 582 Troubleshooting 584 Summary 584 CHAPTER 23: UPGRADING FROM EARLIER VERSIONS 585 Upgrading from Team Foundation Server 2005 and 2008 586 In-Place Upgrades Versus Migrating to New Hardware 586 Planning Upgrades 588 Upgrading Prerequisites 589 SQL Server 589 SharePoint 589 Using the Configuration Utility 590 Upgrade Wizard 590 Verification of Upgrade 592 Consolidating Legacy Servers 592 Upgrading Legacy Team Projects 593 Enabling Branch Visualization 593 Enabling Test Case Management 594 Upgrading Work Item Type Definitions 594 Automated Builds 595 Deploying New Reports 596 Deploying New SharePoint Team Portal Site 596 Summary 597 CHAPTER 24: WORKING WITH GEOGRAPHICALLY DISTRIBUTED TEAMS 599 Identifying the Challenges 600 Latency Over the Wide Area Network (WAN) 600 Sources of Network Traffic 600 Solutions 603 Central Server with Remote Proxy Servers 603 Multiple Distributed Servers 603 Mirroring 603 Remote Desktops 604 Internet-Connected Extranet Server 604 Mirroring to an Internet-Connected Server 604 Metadata Filtering 604 Build Servers 605 Local Build Server 605 Remote Build Server 605 Team Foundation Server Proxy 605 How the Team Foundation Server Proxy Works 605 Compatibility 605 Configuring Proxies 606 Seeding Proxies 608 Personal Proxies 608 Mirroring with the Team Foundation Server Integration Tools 609 Capabilities 609 Examples 611 Working Offline 612 Version Control 612 Forcing Offline 613 Work Items 614 Other Considerations 614 Maintenance Windows and Time Zones 614 Online Index Operations with SQL Server Enterprise 616 Distributed Application Tiers 616 SQL Mirroring 616 Summary 616 CHAPTER 25: EXTENDING TEAM FOUNDATION SERVER 617 Extensibility Points 618 Client Object Model 619 Connecting to the Server 619 Team Project Selection Dialog 620 Handling Multiple API Versions 621 Displaying the Work Item Form 622 Distributing the Client Object Model 623 SOAP Event Subscriptions 624 Available Event Types 625 Building an Endpoint 626 Adding the Subscription 627 Listing All Event Subscriptions 627 Server Object Model 628 Server Extensibility Interfaces 628 Server Plug-Ins 630 Visual Studio Extensibility 645 Excel Agile Workbooks 645 Manually Binding the Iteration Backlog 645 Code Behind 646 Other Resources 647 Summary 648 INDEX 649