Скачать презентацию DEV 429 Visual Studio 2005 Team Foundation Server Скачать презентацию DEV 429 Visual Studio 2005 Team Foundation Server

093863f077df3c1374d1c8a9bffd2dac.ppt

  • Количество слайдов: 49

DEV 429 Visual Studio 2005 Team Foundation Server Developing custom process templates, work item DEV 429 Visual Studio 2005 Team Foundation Server Developing custom process templates, work item types and policies Kevin Kelly [email protected] com Program Manager Visual Studio Team Foundation Server Microsoft Corporation

Agenda Team Foundation Architecture Customization vs Extensibility Customizing Process Templates Customizing Work Item Types Agenda Team Foundation Architecture Customization vs Extensibility Customizing Process Templates Customizing Work Item Types Extending Team Foundation Server

Visual Studio Team System Visual Studio Team Suite MSF Process and Guidance Software Architects Visual Studio Team System Visual Studio Team Suite MSF Process and Guidance Software Architects Software Developers Software Testers Application Modeling Code Analysis Performance Testing Infrastructure and Deployment Modeling Visual Studio Team Explorer Performance Tuning Manual Testing Test Case Management Security Analysis Unit Testing Code Coverage Class Modeling Visio and UML Modeling Visual Studio Professional Edition Load Test Agent Visual Studio Team Foundation Server Change Management Reporting Integration Services Work Item Tracking Project Site Project Management Visual Studio Industry Partners

Architecture Team Foundation Client Tier Win 2000 (>=SP 4) Win XP (>=SP 2) Win Architecture Team Foundation Client Tier Win 2000 (>=SP 4) Win XP (>=SP 2) Win 2003 Server (>=SP 1). Net FX 2. 0 Microsoft Office 11 – SP 1 MDAC 9. 0 Internet Explorer 6. 0 – SP 1 Visual Studio 2005 Team Explorer Version Control Proxy Build Machine Win XP (>=SP 2) Win 2003 Server (>=SP 1) Report Client . Net FX 2. 0 Team Foundation App Tier Win 2003 Server • ASP. Net / IIS 6. 0 App Tier Standby Server MDAC Team Foundation Data Tier Win 2003 Server • SQL Server 2005 Database Cluster http/https. Net remoting Mssql/tcp

Architecture Team Foundation Client Tier Version Control Proxy Visual Studio Packages MS Project Plug-In Architecture Team Foundation Client Tier Version Control Proxy Visual Studio Packages MS Project Plug-In Internet Explorer MS Excel Plug-In SQL RS Proxies WSS Proxies Version Control Proxy Service Team Foundation Object Model Build Process VSTF Clients of VSTF Adjuncts Report Client Custom reporting tools Team Foundation App Tier SQL Reporting Services Windows Share. Point Services Work Item Tracking Service Version Control Service Work Items Version Control Team Foundation App Tier SQL Reporting Services Windows Share. Point Services Team Foundation Data Tier Build Machine Team Build Service Team Build Data Core Services Core Data Adapters MS Excel Warehouse

Agenda Team Foundation Architecture Customization vs. Extensibility Process Template Overview Customizing Process Templates Customizing Agenda Team Foundation Architecture Customization vs. Extensibility Process Template Overview Customizing Process Templates Customizing Work Item Types Extending Team Foundation Server

Customization Vs. Extensibility Customization: What? Project process Who? Project management Why? Tune to the Customization Vs. Extensibility Customization: What? Project process Who? Project management Why? Tune to the way your team works How? XML definition files Extensibility: What? Tooling Who? IT and ISVs Why? Fill feature niches, integrate with other systems How? Write code

Customization Points Process Template Modify, build, or buy Work Item Types Modify or build Customization Points Process Template Modify, build, or buy Work Item Types Modify or build Checkin Policy Modify or build Reporting Modify, build, or connect different report builders! Project Portal Modify Sharepoint template, extend library folder structure, change or add doc templates

Agenda Team Foundation Architecture Customization vs Extensibility Customizing Process Templates Customizing Work Item Types Agenda Team Foundation Architecture Customization vs Extensibility Customizing Process Templates Customizing Work Item Types Extending Team Foundation Server

Process Templates Project process blueprint Package of tool settings and templates Two included with Process Templates Project process blueprint Package of tool settings and templates Two included with Team Foundation Server MSF for Agile Software Development MSF for CMMI® Process Improvement Modify ours, handcraft your own, or buy

Process Template Customizable components Work items Work Item Types (such as Defect, Requirement, Issue, Process Template Customizable components Work items Work Item Types (such as Defect, Requirement, Issue, Task, etc) Queries Work Item Instances/starter tasks Windows Share. Point Services Process guidance WSS Site Template WSS Library & Folder Structure Document templates and all files stored on the Project Portal Reports and their folder structure Default groups and their permissions Classifications: Areas and Iterations Source Control Settings

Anatomy of a Process Template Definition Process. Template. xml Work Items Process Template Work. Anatomy of a Process Template Definition Process. Template. xml Work Items Process Template Work. Items. xml Bug. xml Custom. WIType. xml Version Control Version. Control. xml es e nc nc re ffe Re R Bug. Trends. rdl p p ou ro G G Reports. xml s ss es oc o Pr P Reports

Team Project Creation PCW Plugins Methodology Template Team Project User Input Project Creation Wizard Team Project Creation PCW Plugins Methodology Template Team Project User Input Project Creation Wizard

Process Template Editor Community Tool Author: Joel Semeniuk and team at Imaginets Resources Process Template Editor Community Tool Author: Joel Semeniuk and team at Imaginets Resources

Process Template Editor http: //www. imaginets. com/Default. aspx? tabid=133 Process Template Editor http: //www. imaginets. com/Default. aspx? tabid=133

Agenda Team Foundation Architecture Customization vs Extensibility Customizing Process Templates Customizing Work Item Types Agenda Team Foundation Architecture Customization vs Extensibility Customizing Process Templates Customizing Work Item Types Extending Team Foundation Server

Name Fields Field Rules Work" src="https://present5.com/presentation/093863f077df3c1374d1c8a9bffd2dac/image-18.jpg" alt="Work Item Type Definition Name Fields Field Rules Work" /> Work Item Type Definition Name Fields Field Rules Work Flow States Transitions Field Rules Form How severe the code defect is

Label. Position="Left"

Work Item Type Fields Field reference names Use in your tooling Server scope Follow Work Item Type Fields Field reference names Use in your tooling Server scope Follow domain name convention Microsoft. Team. Foundation. Server. Work. Item. Tracking. Foobar ‘System. ’ reserved Field friendly names Use in your queries Server scope Can be renamed, Title->Issue for example Field labels Appear on WI forms Localizable

Customizing Work Item Types Notepad Work Item Type XML c:  witexport c: Customizing Work Item Types Notepad Work Item Type XML c: witexport c: witimport /v Visual Studio c: witimport Work Item Object Model Export Validate Work Item Store Import WIT XSD

Hot Metal WIT Editing Hot Metal WIT Editing

Agenda Team Foundation Architecture Customization vs Extensibility Customizing Process Templates Customizing Work Item Types Agenda Team Foundation Architecture Customization vs Extensibility Customizing Process Templates Customizing Work Item Types Extending Team Foundation Server

Team Foundation Extensibility Client Visual Studio Your VSIP Package Your TE Node Your. NET Team Foundation Extensibility Client Visual Studio Your VSIP Package Your TE Node Your. NET App Your PCW plug in Your Checkin Policy Team Foundation OM Work Item OM Version Control OM Registration Svc Proxy Linking Service Proxy Policy Framework Eventing Service Proxy Security Service Proxy Common Controls Classification Svc Proxy Application Tier Changeset / Source File Work Item Build Your Artifacts Version Control Service Work Item Tracking Svc Team Build Service Your Service Warehouse Adapter Registration Service Data Tier Linking Service TF Data Eventing Service TF Facts Your Facts Reporting Warehouse Security Service Your Data Classification Service

Extension Points Core services Add a new tool with new artifact types, link types, Extension Points Core services Add a new tool with new artifact types, link types, database, WS’s Link to other tools’ artifacts Raise, subscribe to events Integrate into Team Explorer Extend the Project Creation Wizard Work Item Tracking Write against OM Respond to events Link to Work Items Integrate with WI Picker Integrate with WI Form Support for custom controls in SP 1 Source Control Write against OM Add new file type support Participate in integrated check-in Define new policy Respond to events Reporting Extend warehouse with your own data Build Add new Build tasks Create a checkin validation system

Coding to Team Foundation Server Coding to Team Foundation Server

Raven. Flow Software Raven. Flow Software

RAVEN and VSTS Integration RAVEN Professional Why integrate with VSTS? Snippets of our integration RAVEN and VSTS Integration RAVEN Professional Why integrate with VSTS? Snippets of our integration

RAVEN Professional Failure to define, communicate and validate business requirements is the root cause RAVEN Professional Failure to define, communicate and validate business requirements is the root cause of most software project disasters – Gartner, Standish RAVEN - Requirements Authoring and Validation Environment Automatically creates UML diagrams from plain English Creates more precise and correct requirements Automatically generates MS Word specifications Visit our booth at Tech. Ed See more at www. ravenflow. com

Plain English UML Diagrams Automatically Generated Plain English UML Diagrams Automatically Generated

Why Integrate with VSTS? RAVEN supports authoring and validation of requirements VSTS’s Work Item Why Integrate with VSTS? RAVEN supports authoring and validation of requirements VSTS’s Work Item Tracking System supports linking requirements to development activities e. g. test cases, design, development tasks TFS sends automatic notification to requirements authors Allows all team members to view requirements Keeps requirements authoring in the correct environment Integration provides Requirements Authoring, Validation and Traceability

Requirements to TFS RAVEN Professional Use Cases Activity Diagrams Generate MS VSTS Create new Requirements to TFS RAVEN Professional Use Cases Activity Diagrams Generate MS VSTS Create new Use Case Requirements or updates Work Items Activity Requirements Notifications Author requirements in RAVEN Export use cases and activities as requirements work items Requirements in VSTS are linked TFS updated with new use cases and activities work items Work Item Tracking ensures development stays in sync

Export to TFS Export to TFS

Exported Requirements in VSTS Exported Requirements in VSTS

Requirements Traceability: Child to Parent Requirements Traceability: Parent to Child Traceability to Test Cases Requirements Traceability: Child to Parent Requirements Traceability: Parent to Child Traceability to Test Cases

Activity Diagram Accessible in VSTF Activity Diagram Accessible in VSTF

Comment Can Automatically Trigger Alert Comment Can Automatically Trigger Alert

Raven. Flow Integration Defined new work item attributes Defined new controls for accessing new Raven. Flow Integration Defined new work item attributes Defined new controls for accessing new attributes Defined new tabs for grouping existing and new attributes Authenticating user account Creating new work items

" src="https://present5.com/presentation/093863f077df3c1374d1c8a9bffd2dac/image-38.jpg" alt="XML Customizations for RAVEN-specific Requirement work item attributes " /> XML Customizations for RAVEN-specific Requirement work item attributes Includes information to track the requirement through the MSF for CMMI Process Improvement life cycle The state of this requirement New field RAVEN. State, with allowed values and default value defined

" src="https://present5.com/presentation/093863f077df3c1374d1c8a9bffd2dac/image-39.jpg" alt="Grouping of controls for Assigned To, State, Priority, and Test Case Attributes " /> Grouping of controls for Assigned To, State, Priority, and Test Case Attributes Label. Position="Left" Type="Field. Control" Field. Name="RAVEN. State" Label. Position="Left" Type="Field. Control" Field. Name="RAVEN. Priority" Label. Position="Left" Label. Position="Left"

Grouping of tabs containing textual information for requirement Label. Position="Top“ Label. Position="Top"

Authenticating user account with TFS private static System. Network. Credential team. Foundation. Credential; public Authenticating user account with TFS private static System. Network. Credential team. Foundation. Credential; public static Team. Foundation. Server connect. To. Team. Foundation. Server() { if (Team. Foundation. Server. Name == null) { Message. Box. Show("The name of the Team Foundation server has not been specified. Please contact your administrator for assistance. ", "Team Foundation Server Not Configured", Message. Box. Buttons. OK, Message. Box. Icon. Error); return null; } string server = "http: //" + Team. Foundation. Server. Name + ": " + Team. Foundation. Server. Port; try { if (team. Foundation. Credential == null) { Generic. Login. Form login. Form = new Generic. Login. Form("Log on to Team System", "Please enter your login information for Team System: ", "User name: ", "Password: ", "OK"); login. Form. Show. Dialog(); if (login. Form. Dialog. Result != Dialog. Result. OK) { return null; } String user. Name = login. Form. Username; String password = login. Form. Password; team. Foundation. Credential = new System. Network. Credential(user. Name, password); } Team. Foundation. Server tfs = new Team. Foundation. Server(server, team. Foundation. Credential); tfs. Ensure. Authenticated(); return tfs; } catch (Exception e) { Message. Box. Show("The following error occurred while connecting to the Team Foundation server: nn" + e. Message, "Unable to Connect to Team Foundation Server", Message. Box. Buttons. OK, Message. Box. Icon. Error); team. Foundation. Credential = null; return null; } }

Creating a Requirement work item through the WITS API private Work. Item create. Work. Creating a Requirement work item through the WITS API private Work. Item create. Work. Item(Work. Item. Type wit, String title, String description, String package. Path, String sub. Type, Work. Item parent) { Work. Item work. Item = new Work. Item(wit); work. Item. Title = title; work. Item. Description = description; … if (parent != null) { Related. Link link = new Related. Link(parent. Id); link. Comment = "Scenario-to-Step link"; work. Item. Links. Add(link); } work. Item. Save(); return work. Item; } Work. Item. Type. Collection work. Item. Types = project. Work. Item. Types; Work. Item. Type wit; wit = work. Item. Types["Scenario"]; top. Work. Item = create. Work. Item(wit, parent. Title, parent. Description, parent. Package. Path, "Scenario", null); Work. Item child. Work. Item = create. Work. Item(wit, child. Title, child. Description, child. Package. Path, "Scenario Step", top. Work. Item);

Tips, Traps, and Workarounds Nested work items not supported Use links Parent links to Tips, Traps, and Workarounds Nested work items not supported Use links Parent links to all children, all children back to parent Team System / Team Foundation credentials TFS and VSTS project permissions and groups Active Directory user accounts Network access to TFS server in security policy Team Foundation Server cannot run on domain server Need separate servers Running TFS on a virtual server works but is slow Limitation was not present in beta versions and was not clearly noted until last step of TFS Release Candidate install Documentation for how to change work item contents (witexport/witimport and XML) difficult to find Documentation (when located) and experimentation were sufficient

Summary ISV’s are extending Team Foundation Server Raven. Flow Mind. Jet Team. Plain TFS Summary ISV’s are extending Team Foundation Server Raven. Flow Mind. Jet Team. Plain TFS offers powerful customization capabilities to support your software development lifecycle. Community tools available, making simple things easy Extensive extensibility capabilities exist for further SDLC support as well as integration with other systems

Learning More At Tech. Ed Wednesday, June 14 3: 45 -5: 00 Delving into Learning More At Tech. Ed Wednesday, June 14 3: 45 -5: 00 Delving into Visual Studio 2005 Team Edition for Software Developers (Repeat Session) 109 AB, Breakout DEV 307 R, Brian Randell 5: 30 -6: 45 Visual Studio 2005 Team Foundation Server: Using Metrics to Manage and Troubleshoot Your Projects 153 ABC, Breakout DEV 233, Sam Guckenheimer Thursday, June 15 9: 45 -11: 00 Visual Studio 2005 Team Foundation Server: Step-by-Step Migration and Adoption Planning 104 ABC, Breakout DEV 237, Mark Michaelis & Eric Lee 1: 00 -2: 15 Visual Studio 2005 Team System and Microsoft Solution Framework: Implementing an Agile or CMMI Process 156 ABC, Breakout DEV 439, Randy Miller 1: 00 -2: 15 An Inside Look At an Exciting New Addition to Visual Studio Team System (Part 3) 160 ABC, Breakout DAT 433, Gert Drapers Friday, June 16 9: 00 -10: 15 Using Team Foundation Server to Write and Test Code 204 AB, Instructor-led Lab DEV 282, Telmo Sampaio 10: 30 -11: 45 Team Foundation Server in the Enterprise Birds of a Feather BOF 40, Michael Ruminer

Work Item and Process Template Customization Team Foundation product documentation at http: //msdn 2. Work Item and Process Template Customization Team Foundation product documentation at http: //msdn 2. microsoft. com Go to http: //lab. msdn. microsoft. com/search/ Search on "Getting Started with Team Foundation" and "Team Foundation Administrators" Included in the Visual Studio SDK: http: //msdn. microsoft. com/vstudio/extend/

Resources Technical Chats and Webcasts http: //www. microsoft. com/communities/chats/default. mspx http: //www. microsoft. com/usa/webcasts/default. Resources Technical Chats and Webcasts http: //www. microsoft. com/communities/chats/default. mspx http: //www. microsoft. com/usa/webcasts/default. asp Microsoft Learning and Certification http: //www. microsoft. com/learning/default. mspx MSDN & Tech. Net http: //microsoft. com/msdn http: //microsoft. com/technet Virtual Labs http: //www. microsoft. com/technet/traincert/virtuallab/rms. mspx Newsgroups http: //communities 2. microsoft. com/communities/newsgroups/en-us/default. aspx Technical Community Sites http: //www. microsoft. com/communities/default. mspx User Groups http: //www. microsoft. com/communities/usergroups/default. mspx

Fill out a session evaluation on Comm. Net for a chance to Win an Fill out a session evaluation on Comm. Net for a chance to Win an XBOX 360!

© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows Vista and other product names © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U. S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.