Presentation is loading. Please wait.

Presentation is loading. Please wait.

DEV463 Microsoft Visual Studio 2005 Team System: Maximizing Collaboration with Team Foundation Server Dennis Minium Program Manager Visual Studio Team.

Similar presentations


Presentation on theme: "DEV463 Microsoft Visual Studio 2005 Team System: Maximizing Collaboration with Team Foundation Server Dennis Minium Program Manager Visual Studio Team."— Presentation transcript:

1

2 DEV463 Microsoft Visual Studio 2005 Team System: Maximizing Collaboration with Team Foundation Server Dennis Minium Program Manager Visual Studio Team System Microsoft Corporation

3 Topics Team Foundation Tour Technical Architecture Conceptual Architecture Extending Team Foundation

4 Visual Studio Team Foundation Change ManagementWork Item TrackingReportingProject Portal Visual Studio Team Foundation Server Integration ServicesProject Management Process and Architecture Guidance Dynamic Code Analyzer Visual Studio Team Edition Software Architects Static Code AnalyzerCode ProfilerUnit TestingCode CoverageVisual Studio Professional EditionLoad TestingManual TestingTest Case ManagementApplication DesignerSystem DesignerLogical Datacenter Designer Visual Studio Team Edition Software Developers Visual Studio Team Edition Software Testers Visual Studio Industry Partners Team BuildClass Designer (in Visual Studio Standard Edition and higher) Deployment DesignerVisio for Enterprise Architects (in MSDN Premium Subscription) Team Explorer (includes Team Foundation Server CAL)

5 Build Automation Team Foundation Tour Integrated Platform for Collaborating on Software Development Projects. Version Control Work Item Tracking Project Management Reporting

6 Team Foundation Tour Version Control Work Item Tracking Build Automation Project Management Reporting

7 Project Portal

8 Work Item Tracking and Office Integration

9 Dramatis Personae Darren – A Developer a keen mind but slightly confused Darryl – A Business Analyst shrewd but well-meaning Darius – A Development Manager gruff but lovable

10 Team Foundation Tour Version Control Work Item Tracking Build Automation Project Management Reporting

11 Source Control and Work Item Tracking

12 Team Foundation Tour Version Control Work Item Tracking Build Automation Project Management Reporting

13 Topics Team Foundation Tour Technical Architecture Conceptual Architecture Extending Team Foundation

14 Technical Architecture Win 2000 (>=SP4) Win XP (>=SP2) Win 2003 Server (>=SP1).Net FX 2.0 Microsoft Office 11 – SP1 MDAC 9.0 Internet Explorer 6.0 – SP1 Visual Studio 2005 Team Explorer Win 2003 Server ASP.Net / IIS 6.0 Win 2003 Server SQL Server 2005 Win XP (>=SP2) Win 2003 Server (>=SP1).Net FX 2.0 MDAC Win 2003 Server ASP.Net / IIS 6.0 Maximally factored configuration

15 Custom reporting tools MS Excel Technical Architecture Team Foundation Data Tier Team Foundation App Tier Version Control Proxy Report Client Team Foundation Client Tier CoreDataVersionControl Work Items Team Build Data SQLReportingServicesWindowsSharePointServicesSQLReportingServicesWindowsSharePointServices Work Item TrackingServiceVersionControlServiceTeamBuildServiceCoreServicesWarehouse Adapters Team Foundation App TierWSSProxies SQL RS Proxies Team Foundation Object Model MS Excel Plug-In MS Project Plug-In Visual Studio Packages Internet Explorer BuildProcessVersionControlProxyService VSTF Clients of VSTF VSTF Adjuncts Build Machine

16 Basic Configurations Dual Server Large Team Client Data Tier App Tier Requires Active Directory (2003 or 2000) BuildMachine VersionControlProxy 1 machine Demo/Evaluation ClientClient BuildBuild App TierApp Tier Data TierData Tier 1 user 50 - 500 users Single Server Small Team Supports: WorkgroupWorkgroup Active Directory (2003 or 2000)Active Directory (2003 or 2000) ClientClient Build (opt)Build (opt) App TierApp Tier Data TierData Tier Build (opt)Build (opt) 2 - 50 users

17 Administrative Features Compatibility verification Databases match? Web services match databases? Clients match Web services? All SQL server SQL backup/restore DB Mirroring Failover clustering App tier standby server Convenience utilities

18 Topics Team Foundation Tour Technical Architecture Conceptual Architecture Extending Team Foundation

19 Meta Data Repositories Work Items TestsTests SourceCodeSourceCode BuildConfigsBuildConfigs ThirdPartyToolThirdPartyTool FRAGILE

20 ProjectStructureProjectStructure IterationStructureIterationStructure TestResultsTestResults BuildBuild LabelLabel VersionedItemVersionedItem LatestItemVersionLatestItemVersion ChangesetChangesetWorkItemWorkItem TFS “Virtual Repository” Version Control Core Data Work Items Team Build TFS Enablement * ******** * * * * ProjectStructureProjectStructureIterationStructureIterationStructure WorkItemWorkItem LabelLabelVersionedItemVersionedItem LatestItemVersionLatestItemVersionChangesetChangeset BuildBuildTestResultTestResult

21 TeamFoundationServer Team Foundation Core Services How It Happens: Team foundation core services VersionControl IntegrationInterface Team Foundation Object Model VisualStudioIDE External tool (Partner or MS) WorkItems IntegrationInterface Team Build IntegrationInterface

22 TeamFoundationServer Team Foundation Core Services How It Happens: Team foundation core services LinkingServiceUserGroupsServiceNotificationServiceRegistrationServiceCommonStructureService Team Foundation Object Model VisualStudioIDE External tool (Partner or MS) VersionControl IntegrationInterface WorkItems IntegrationInterface Team Build IntegrationInterface

23 Work Item Tracking Reporting Warehouse SQL Server ReportingServices Source Code Control Work Item Adapter Source Code Adapter Partner Tool A Add-onAdapter Reporting Warehouse Object Model Excel CustomReporting BuildDatabase Test/BuildAdapter

24 Topics Team Foundation Tour Technical Architecture Conceptual Architecture Extending Team Foundation

25 Customization vs. Extension Customization: What?Tailor Team Foundation to your environment Who? End users, project managers Why?Adjust basic Team Foundation capabilities to your needs How?Config through UI, author XML, maybe some automation Extension/Integration What?Add new functionality to Team Foundation Who?Partners, internal IT orgs Why?Deeply integrate complementary features into the Team Foundation platform How?WS development, database development, VSIP integration, etc.

26 Example Customizations Process Template Modify / clone ours Build your own Work Item Types Modify ours Build your own Automate using WIOM Source Code Control Select policies to enforce Reporting Modify our SQL RS reports Add your own SQL RS reports Use a different reporting tool (Excel, OWC, …) Project Portal Customize the template Add your own libraries

27 Example Extensions 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 Add pages to Project Creation Wizard Work Item Tracking Write against OM Respond to events Link to Work Items Integrate with WI Picker Source Control Write against OM Add new file type support (keyword expansion, diff/merge) Participate in integrated check-in Define new policie Respond to events Reporting Extend warehouse Portal Build new web parts Build Add new Build tasks

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

29 Example Partner Integration Do you use Automated Build Studio? AutomatedQA’s Automated Build Studio is a powerful build and release management system. It provides an easy way to automate and simplify the whole cycle of build, test, delivery and deployment. On the client, ABS is integrated with Visual Studio.Net. ABS will integrate with Visual Studio 2005 Team System.

30 Example Integration Automated QA’s Automated Build System (ABS) ABS integrates with: Team Foundation Version Control Team Foundation Work Item Tracking Mechanism for integration: Web services Command line scripting AutomatedQA’s Test Complete product integrates with Team Test tools, too Visit AutomatedQA at booth 1044.

31 The Extensibility Kit Sample Example “tool” – Collectibles One collector can point to other artifacts via a holds relationship via a holds relationship via a points to relationship A user can subscribe to receive e-mails when a collector changes Collectors are organized by team project RegistrationServiceRegistrationService Work Item Picker Picker ClassificationServiceClassificationService RegistrationServiceRegistrationService LinkingServiceLinkingService EventingServiceEventingService ProjectPickerProjectPicker

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

33 Scenario Take Order A more realistic sample Work item spawning Task Take Order: Write Spec Task Take Order: Test Plan Task Take Order: UI Design Task Take Order: Dev Schedule

34 Example Extensions 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 Add pages to Project Creation Wizard Work Item Tracking Write against OM Respond to events Link to Work Items Integrate with WI Picker Source Control Write against OM Add new file type support (keyword expansion, diff/merge) Participate in integrated check-in Define new policies Respond to events Reporting Extend warehouse Portal Build new web parts Build Add new Build tasks

35 A more realistic sample Work item spawning Scenario Take Order Task Take Order: Write Spec Task Take Order: Test Plan Task Take Order: UI Design Task Take Order: Dev Schedule Listen for WorkItemChanged event for new Scenario.Listen for WorkItemChanged event for new Scenario. Use work item object model to create new TasksUse work item object model to create new Tasks Use work item object model to link new Tasks to original ScenarioUse work item object model to link new Tasks to original Scenario Listen for WorkItemChanged event for new Scenario.Listen for WorkItemChanged event for new Scenario. Use work item object model to create new TasksUse work item object model to create new Tasks Use work item object model to link new Tasks to original ScenarioUse work item object model to link new Tasks to original Scenario Listen for WorkItemChanged event for Completed Task.Listen for WorkItemChanged event for Completed Task. Use work item object model to update parent ScenarioUse work item object model to update parent Scenario Listen for WorkItemChanged event for Completed Task.Listen for WorkItemChanged event for Completed Task. Use work item object model to update parent ScenarioUse work item object model to update parent Scenario

36 Async Communication TFS eventing service Web services-based pub/sub Tools register event types Send SOAP messages to interested subscriber services Send e-mail messages to interested people

37 Registering and Subscribing RegistrationAPISubscriptionAPI At setup time, a tool registers the types of events it will raise. TFS Work Item Tracking raises a WorkItemChanged Event Another tool may subscribe to receive events of that type when they are raised. We’ll use a utility that is delivered with Team Foundation. Through UI (purpose-built or general) a person can subscribe to receive e-mail notifications. Not used in this demo subscribesubscribe unsubscribeunsubscribe TFS Work Item Tracking SpawnDemo EventTypesSubs

38 Raising an Event EventTypes Subs TFS Event Engine Subs Events matched to subscriptions Note: Server-side sinks only in V1. Demo “WorkItemSpawn” WS invoked. Notifications delivered through e-mail TFS Event Client fireAsyncEventfireAsyncEvent callback method specified in subscribe callcallback method specified in subscribe call Rules Processor Events matched to subscriptions TFS Work Item Tracking raises a WorkItemChanged Event TFS Work Item Tracking SpawnDemo

39 Dramatis Personae Darren – A Developer a keen mind but slightly confused Darryl – A Business Analyst shrewd but well-meaning Darius – A Development Manager gruff but lovable Denis – Process Expert / Programmer Extraordinaire

40 Work Item Spawning

41 Artifacts and Links Artifacts Artifact Identifiers (URIs): vstfs:/// / / vstfs:/// / / Example: vstfs:///WorkItemTracking/WorkItem/16723 The target of a link can be ignorant of any sources that point to it For intimate collaboration, tight coupling is supported Each ArtifactType and (outbound) LinkType managed by a tool are registered to the Registration service

42 Linking API You supply: Artifacts[] yourService.GetArtifacts (string[] artifactUris) Artifacts[] yourService.GetReferencingArtifacts (string[] artifactUris) void ExecuteDefaultAction (string artifactUri, string contextinfo) We supply: Artifacts[] ILinking.GetArtifacts (string[] artifactUris) Artifacts[] ILinking.GetReferencingArtifacts (string[] artifactUris) Helper methods: EncodeUri, DecodeUri, ExtractLinks, GetArtifactUrl, GetArtifactUri

43 (untyped) found in checkin 1.Call GetArtifacts with Uri for WorkItem 107462 2. Call GetArtifacts with Uris for: ChangeSet 142562ChangeSet 142562 Doc “WhatHappened.Doc”Doc “WhatHappened.Doc” Build 20031012.352Build 20031012.352 Work Item 107462 Attached Document WhatHappened.doc? Build20031012.352 Change Set 142562: Lollipop Fix Work Item 170472<artifactData><links> Test Pass 20031014.8054<artifactData><links> 3.Call GetReferencingArtifacts with Uri for WorkItem 107462 Work Item 107462<artifactData> Changeset 142562: Lollipop Fix <artifactData><links> Build20031012.352<artifactData><links> Attached Document WhatHappened.doc?<artifactData><links> related to tested by

44 (untyped) found in checkin 1.Call GetArtifacts with Uri for WorkItem 107462 2. Call GetArtifacts with Uris for: ChangeSet 142562ChangeSet 142562 Doc “WhatHappened.Doc”Doc “WhatHappened.Doc” Build 20031012.352Build 20031012.352 Work Item 107462 Attached Document WhatHappened.doc? Build20031012.352 Change Set 142562: Lollipop Fix Work Item 170472<artifactData><links> Test Pass 20031014.8054<artifactData><links> 3.Call GetReferencingArtifacts with Uri for WorkItem 107462 Work Item 107462<artifactData> Changeset 142562: Lollipop Fix <artifactData><links> Build20031012.352<artifactData><links> Attached Document WhatHappened.doc?<artifactData><links> related to tested by found in checkin Relationship Item typeItem ModifiedBy Work Item 107462 is involved in these relationships: checkinchangeset142562: Lollipop fix10/15/20036:42pmdev1 tested bytest pass20031014.805410/14/20032:15amqa1 related toWork Item17047210/5/20033:13pmgematthew found inbuild20031012.35210/12/2003 9:52pmqa1 involvesattachmentWhatHappened.doc10/13/2003 10:00am pm1

45 Permissions in TFS Group Services Lightweight user groups / roles for security and policy Default groups for common roles Group resolution includes AD groups, local SAM groups and TFS groups TFS-Enabled tools include these user groups when they perform authorization Authorization services Tool-specific object classes and permissions Register objects, ACEs at run time Inheritable permissions

46 Summary Rich feature set Work item tracking Version control Team build Warehouse and reporting Extensibility and integration from the ground up Object models Web services Core integration services You can use what we use

47 Resources Team System Extensibility Kit: http://www.vsipdev.com/downloads/ http://www.vsipdev.com/downloads/ General Team System Info: http://msdn.microsoft.com/teamsystem http://msdn.microsoft.com/teamsystem More into on AutomatedQA’s products: http://www.automatedqa.com/ http://www.automatedqa.com/

48 Your Feedback is Important! Please Fill Out a Survey for This Session on CommNet

49 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.


Download ppt "DEV463 Microsoft Visual Studio 2005 Team System: Maximizing Collaboration with Team Foundation Server Dennis Minium Program Manager Visual Studio Team."

Similar presentations


Ads by Google