<p> Pro Visual Studio 2005 Team System Application Development brings Visual Studio 2005 Team System to life. Youll learn how to effectively use Team System to develop new functionality for large distributed systems. The book accomplishes this not just by describing the Team System features, but al
Pro Visual Studio 2005 Team System Application Development
โ Scribed by Steve Shrimpton
- Publisher
- Apress; Distributed to the Book trade worldwide by Springer-Verlag
- Year
- 2006
- Tongue
- English
- Leaves
- 791
- Series
- Expert's voice in .NET
- Edition
- 1
- Category
- Library
No coin nor oath required. For personal study only.
โฆ Synopsis
Pro Visual Studio 2005 Team System Application Development brings Visual Studio 2005 Team System to life. Youll learn how to effectively use Team System to develop new functionality for large distributed systems. The book accomplishes this not just by describing the Team System features, but also by leading you through a fictitious, though realistic, project.
The project takes place in a large, distributed organization with a mix of existing systems. Risks exist in the possible disruption of the current business enterprise system, and careful planning and phasing of deliverables are necessary. New and modified applications must work with existing parts of the system as iterations of the project move through testing to deployment, in order to bring the project to a successful conclusion.
While the project progresses, in-depth discussions explain the use of the features by the various members of the team and the features interactions. The author provides highly detailed examples and discussions, including exploration of the design, coding, and test stages. The further you read, youll see how to develop portions of the applicationsome coded in C# and some in Visual Basictogether with their tests, installation tools, and design artifacts.
โฆ Table of Contents
Cover......Page 1
Contents at a Glance......Page 6
Contents......Page 8
About the Author......Page 18
About the Technical Reviewer......Page 19
Acknowledgments......Page 20
Introduction......Page 22
The Need for Team System......Page 24
Visual Studio 2005 Team Edition for Software Developers......Page 28
Visual Studio 2005 Team Foundation Server......Page 30
How Team System Is Described in This Book......Page 31
Distributed Applications......Page 32
Service-Oriented Architectures......Page 37
Evolution of the Client-Server Architecture......Page 40
Thin Clients and the N-Tier Architecture......Page 41
Smart Client Applications......Page 43
Summary......Page 46
The Business Justification......Page 48
The High-Level Requirements......Page 49
Existing Enterprise System Architecture......Page 50
User Interface......Page 51
Implementation and Data Model......Page 54
User Interface......Page 56
Implementation and Data Model......Page 60
Icarus Sales Website......Page 61
Implementation and Data Model......Page 62
Vendor Information Website......Page 63
Orchestration Service......Page 64
Enter the Consultants......Page 65
The Architectural Vision......Page 66
The Kickoff Meeting......Page 67
Summary......Page 75
Innovation from the Subcontinent......Page 76
Choice of a Development Process......Page 77
Microsoft Solution Framework......Page 78
Installing Team System......Page 80
Project Manager: Creating the Team Project......Page 83
The Project Portal......Page 87
Automatically Generated Tasks for the MSF for CMMI Process Improvement Project......Page 88
The First Planning Meeting......Page 89
Setting Permissions......Page 93
Assigning Tasks......Page 94
Create Iteration PlanโIteration 0......Page 96
Summary of the Tasks in Iteration 0......Page 100
Create Project Structure......Page 101
Create Quality of Service (QOS) Requirements......Page 102
Create Project Plan......Page 103
Storyboard Scenarios......Page 104
The Project Plan: Defining the Budget and Schedule......Page 105
High-Level Dependencies......Page 106
Dividing the Schedule into Iterations......Page 108
Major Risk Areas......Page 109
Divide Functionality Across Iterations......Page 110
Summary......Page 114
The Requirements Process......Page 116
What About Use Cases?......Page 117
Define Personas......Page 120
Personas: Icarus Employees......Page 122
James: Vendor Executive......Page 123
Dominic: Resource Business Owner......Page 124
Use Case Analysis......Page 125
Sales Use Case......Page 126
Browse Catalog Use Case......Page 129
Manage Orders......Page 134
Offline Working for Travel Agents......Page 135
Sales Wing Offline Working Capability......Page 136
Listings......Page 139
Identifying the Top-Level Scenarios......Page 141
Order Scenarios......Page 143
Creating the Browse Resource Catalog ScenariosโIn Detail......Page 144
Navigate Resource Catalog Scenarios......Page 149
Writing a New Scenario QueryโOffline Catalog Synchronization......Page 151
Manage Orders Scenarios......Page 156
View Orders Scenarios......Page 157
Listings......Page 158
Performance......Page 159
Load......Page 160
Summary......Page 161
Creating the Solution......Page 162
Checking the Work Into TFS......Page 165
What Is an Application?......Page 168
Application Prototypes Available in Team System......Page 169
Connecting Applications......Page 170
Customizing Endpoints......Page 171
Settings Available for the Prototype Applications......Page 172
Application Constraints......Page 173
Creating an Application Diagram for the Existing Application......Page 175
Using the Legacy Applications As Prototypes......Page 179
Creating the Application Diagram for the New Solution......Page 180
Stub and Test Harness Applications for the New Solution......Page 185
Multiple Instances of the Same Web Service......Page 186
The Concept of a System......Page 187
BusinessLogic System......Page 188
Presentation System......Page 190
California Office System......Page 191
Overseas Offices......Page 192
Internet Access Clients......Page 193
Deployment......Page 194
Logical Data Center Designer and Its Concepts......Page 195
Zone Constraints......Page 196
Zone Endpoints and Their Constraints......Page 197
The Icarus Production Data Centers......Page 198
High Security Zone......Page 199
The Other Zones in the California Data Center......Page 203
Deployment in the California Data Center......Page 206
Global Data Center......Page 210
Summary......Page 217
Work Streams, Activities, Work Products, and Iterations......Page 218
Iteration Sequence Is Goal Oriented......Page 220
Planning Iteration 1......Page 221
The Plan for Iteration 1......Page 225
Phase 1......Page 226
Phase 2......Page 227
Offline Critical Scenarios......Page 229
Storyboarding the Scenarios......Page 230
Customer Management Scenarios......Page 231
Open Customer......Page 233
Close Customer......Page 236
Manage Reservations Scenarios......Page 237
Create Order......Page 238
More Create Order Scenario Variations......Page 240
Web Sales Scenarios......Page 241
Create Order......Page 242
Open Vendor......Page 244
Create Resource......Page 247
Product Requirements......Page 251
Develop Safety Requirements......Page 252
Exploring Alternative Architectures......Page 253
Offline Working Architecture......Page 255
The Application Diagram for Iteration 1......Page 258
Agent Sales System......Page 260
Direct Sales System......Page 262
Listing System......Page 263
TheDevelopment andTest EnvironmentTreated As aData Center......Page 264
Data Model......Page 268
Generating the Database DDL Scripts......Page 282
The Seed Data Scripts......Page 287
Summary......Page 288
Sales Business ObjectsโThe Customer Business Entity......Page 290
The CustomerDS Dataset......Page 291
The CustomerSearchDS Dataset......Page 307
Problems with Web References......Page 308
The Sales Web Service Stub......Page 310
Business Entities and Datasets......Page 311
The Business Entity Layer......Page 313
Business Entity Base Classes......Page 314
Customer Business Entity......Page 315
Customer Search Business Entity......Page 324
The Sales Web Service......Page 326
Creating the Main Screen......Page 328
The CustomerDetails User Control......Page 330
Binding the Typed Datasets to the CustomerDetails Control......Page 332
The Open Customer Dialog box......Page 339
Prototyping the Sales Site Application......Page 342
The Master Page and the โMy Wingsโ Page......Page 343
The My Orders Page......Page 351
The Order Detail Page......Page 360
The Make Reservation Page......Page 361
The List Wing Windows Forms......Page 367
The Listing Business Objects Stubs......Page 372
Summary......Page 374
Opening the Project from Source Control......Page 376
Creating the Order Data Access Component Classes......Page 381
Testing the Data Access Layer......Page 387
Order Update Test Sequence......Page 393
Unit-Test Design......Page 394
Unit-Test Code......Page 400
Running the Unit Tests......Page 404
Checking the Code into Version Control......Page 406
The Order Business Entity Class......Page 410
Testing the Business Entity Layer: Read Capability......Page 421
Parameterizing the Database Connection and Web Service URL......Page 427
Problems with Sequences of Unit Tests......Page 428
Testing the Business Layer: Write Capability......Page 434
Test Coverage......Page 435
Static Code Analysis Check-In Policy......Page 437
Test Manager......Page 440
Check-In Testing Policy......Page 441
Static Code Analysis: BusinessEntity Project......Page 443
Making Static Variables Non-Public......Page 445
Avoiding Static Constructors (CA1810)......Page 448
Types That Own Disposable Fields Should be Disposable (CA1001)......Page 450
Use Generic Event Handler Instances (CA1003)......Page 451
Do Not Declare Visible Instance Fields (CA1051)......Page 452
Assemblies Should Have Valid Strong Names (CA2210)......Page 453
Avoid Excessive Parameters on Generic Types (CA1005)......Page 454
Static Code Analysis: OrderDAL Project......Page 455
Static Code Analysis: OrderBE Project......Page 456
Checking In OrderBE and Its Related Projects......Page 457
Summary......Page 459
The VendorDS Dataset......Page 462
Testing VendorDS......Page 466
The VendorSearchDS Class......Page 468
The ResourceDS Class......Page 469
Updating the Workspace......Page 470
When Merging Takes Place......Page 475
The Listing Business Objects......Page 477
The VendorBE Class......Page 478
ListingWebServiceStub......Page 479
Completing VendorBE......Page 482
Creating a Build Type......Page 488
Executing a Build......Page 493
Verifying the Read Behavior for Orders......Page 497
Verifying the Write Behavior for Orders......Page 502
Testing the Sales Wing Application......Page 503
The Sales Website Application......Page 506
Displaying Orders and Reservations......Page 507
Testing the Sales Site......Page 511
Web Testing Individual Pages......Page 512
Web Testing the Create Order Scenario......Page 519
Step 5c......Page 523
Summary......Page 524
Load Testing of the Order Creation Scenario......Page 526
Creating a Load Test for the Sales Site......Page 529
Running the Load Test Against the Sales Site......Page 539
SQL Trace......Page 543
Interpreting the Load Test Data......Page 544
Excessive Time in Garbage Collection......Page 546
Excessive Requests Queued......Page 551
Parameterizing Load Tests......Page 552
Profiling the Sales Site Scenarios......Page 554
Profiling by Sampling......Page 555
Profiling by Instrumentation......Page 567
Improving the Application Inclusive Time......Page 575
Instrumenting Memory Allocations......Page 580
Summary......Page 588
The Unexpected Meeting......Page 590
Provisional Reservation Scenarios......Page 592
Iteration 2 Change Branch: Create Solution Architecture......Page 593
Resource Data Replication......Page 594
Iteration 2 Change Branch: Create Product Requirements......Page 595
Iteration 2 Change Branch: Developing and Testing the Changes......Page 596
Branching the Code......Page 597
The Replication Data Access Layer Classes......Page 601
The Replication Business Objects......Page 602
The Replication Thread......Page 603
Iteration 2 Main Branch: Security Use Cases and Scenarios......Page 605
Home User Authentication......Page 606
Authorized Viewing of the My Orders Page......Page 607
Other Security Scenarios......Page 608
Sales Wing User Authentication......Page 609
Sales Wing Authorization for Opening a Customer Record......Page 610
Iteration 2 Main Branch: Create Application Architecture......Page 611
Controlled Objects......Page 612
User Table......Page 613
Authorization Ownership and Authorization Access......Page 614
Security Business Logic......Page 615
Single Entity Operations......Page 616
Iteration 2 Main Branch: Create Product Requirements......Page 617
Authenticating the Sales Site Client......Page 618
Implementing Authorization......Page 620
Single-Entity Authorization......Page 621
Multiple-Entity Authorization......Page 623
Merging the Branches, Iteration 3: Replication and Main Functionality......Page 625
Summary......Page 636
Planning Iterations 4 and 5......Page 638
Planning the Iteration......Page 641
Defining the Scenario Work Items......Page 642
Defining the Analysis Tasks......Page 644
Reporting Capability......Page 647
Analyzing the Scenarios and Defining the Development Tasks......Page 649
Order Synchronization Tasks......Page 651
Code Completion and Check-In......Page 659
End of the Development PhaseโChecking the Status......Page 663
Planning the Test Effort......Page 665
Manual Testing......Page 668
Interfacing with Back-End Systems......Page 670
Back-End Interface Architecture......Page 672
Developing the DCOM Interface......Page 674
Developing the MSMQ Interface......Page 675
Summary......Page 677
Discovering Bugs......Page 680
Running a Manual Test and Discovering a Bug......Page 681
The Bug Triage Process......Page 693
Investigating the Bug......Page 698
Debugging the ConfirmOrders() Function......Page 701
Fixing the Bug......Page 705
The Daily Build......Page 707
Testing the Bug Fixes......Page 710
Ongoing Testing and Bug Fixing......Page 713
Everybodyโs a Tester......Page 717
Summary......Page 718
Establish a User Acceptance Test (UAT) Environment......Page 720
Create Rollout and Deployment Plan......Page 721
Create Release Notes......Page 722
Planning the User Acceptance Testing and Rollout......Page 723
The Final Production and UAT Application......Page 724
The Sales Wing and List Wing Systems......Page 726
The Icarus Presentation System......Page 729
The User Acceptance Test System......Page 730
Deployment of the UAT System......Page 731
Deployment Projects......Page 734
Client Deployment: ClickOnce......Page 735
Setup Projects for the Rest of the Applications......Page 740
The User Acceptance Test......Page 741
Go-Live Weekend......Page 742
Architecture......Page 743
Application Testing and Deployment......Page 744
Epilogue......Page 745
Index......Page 748
๐ SIMILAR VOLUMES
<p> Pro Visual Studio 2005 Team System Application Development brings Visual Studio 2005 Team System to life. Youโll learn how to effectively use Team System to develop new functionality for large distributed systems. The book accomplishes this not just by describing the Team System features, but a
"Learn how to use VSTS to successfully manage development projects in a constantly changing world"--Cover
It is clear that Visual Studio Team System is the future of development from Microsoft's perspective. We agree. Development is no longer a personal pursuit by one developer in a darkened room; it is a collective effort by a team of peers. VSTS supports this broader vision by providing a complete col