35

Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Embed Size (px)

Citation preview

Page 1: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd
Page 2: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Visual Studio 2005 Team System: Visual Studio 2005 Team System: Enterprise Development and TestEnterprise Development and Test

Sean PuffetSean PuffetMicrosoft LtdMicrosoft Ltd

http://msdn.microsoft.com/teamsystemhttp://msdn.microsoft.com/teamsystem

Page 3: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Visual Studio 2005Visual Studio 2005“Personalized productivity”“Personalized productivity”

Novices

Enthusiasts

Students

Hobbyists

Consultants

Solo Professionals

Enterprise Devs

Architects

Testers

Project Managers

Part-Timers

VB6 Devs

Web Professionals

Page 4: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Problem Space …Problem Space …DevelopersDevelopers

VS05 Pro usersVS05 Pro users VSEA 2003 usersVSEA 2003 users

VB6 usersVB6 users ISVsISVs Web developersWeb developers

Multiple tools Multiple tools require constant require constant context switchingcontext switching

Difficult to share Difficult to share knowledgeknowledge Best practicesBest practices Avoid common Avoid common

mistakesmistakes

Security is a Security is a constantly evolving constantly evolving problemproblem

Page 5: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Problem Space … Problem Space … TestersTesters

VS05 Pro usersVS05 Pro users VSEA 2003 usersVSEA 2003 users

VB6 usersVB6 users ISVsISVs Web developersWeb developers

No Testing Tools in No Testing Tools in Visual Studio Visual Studio Today!Today!

Test often not a Test often not a formal part of formal part of lifecyclelifecycle

Very little high-level Very little high-level data:data: ““Am I done Am I done

testing?”testing?” ““Do we have less Do we have less

bugs than bugs than yesterday?”yesterday?”

Page 6: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Problem Space …Problem Space …TeamTeam

DevelopersDevelopers TestersTesters

ArchitectsArchitects Project ManagersProject Managers IT OperationsIT Operations

Wide spectrum of Wide spectrum of tools:tools: Excel, Project, Excel, Project,

Visual Studio, Visual Studio, MOM, etc, etcMOM, etc, etc

Difficult to gather Difficult to gather team-wide statusteam-wide status

Difficult to Difficult to integrate new team integrate new team membersmembers

Page 7: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Problem Space …Problem Space …CompanyCompany

Missed business Missed business opportunityopportunity

Bad reputation in Bad reputation in the marketthe market

Wasted effortWasted effort

ArchitectArchitect

QA ManagerQA Manager Development Development ManagerManager

CxOCxO

DevelopersDevelopers TestersTesters

ArchitectsArchitects Project ManagersProject Managers IT OperationsIT Operations

Page 8: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Expanding Visual StudioExpanding Visual Studio

IncreasedIncreasedReliabilityReliability

QualityQualityEarly & OftenEarly & Often

PredictabilityPredictability& Visibility& Visibility

Design forDesign forOperationsOperations

ProjectProjectManagerManager

SolutionSolutionArchitectArchitect

DeveloperDeveloperTesterTester

InfrastructureInfrastructureArchitectArchitect

Page 9: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Visual Studio Team SystemVisual Studio Team System

Version Control

Work Item Tracking

Team Reporting

Project Portal

Visual Studio

Team Foundation Integration Services

Project Management

Pro

cess

an

d A

rch

itect

ure

Pro

cess

an

d A

rch

itect

ure

G

uid

an

ceG

uid

an

ce

Dynamic Code Analyzer

Visual Studio

Team Architect

Static Code Analyzer

Code Profiler

Unit Testing

Code Coverage

Visio and UML Modeling

Team Foundation Client (includes CAL)

Visual Studio Professional Edition

Load/Web Testing

Manual Testing

Test Case Management

Application Designer

Logical Datacenter Designer

Deployment Designer

Visual Studio

Team DeveloperVisual Studio

Team Test

Vis

ual S

tud

io In

du

stry

V

isu

al S

tud

io In

du

stry

Part

ners

Part

ners

Team Build

Class Designer

Page 10: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Guiding PrinciplesGuiding Principles

ProductiveProductive Short learning curveShort learning curve Tools at your ‘finger tips’Tools at your ‘finger tips’

IntegratedIntegrated ‘‘F5’ integrationF5’ integration Share data and resultsShare data and results

ExtensibleExtensible Customize for your coding practicesCustomize for your coding practices Integrates with 3Integrates with 3rdrd party tools party tools

Page 11: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Problem Space …Problem Space …DevelopersDevelopers

VS05 Pro usersVS05 Pro users VSEA 2003 usersVSEA 2003 users

VB6 usersVB6 users ISVsISVs Web developersWeb developers

Multiple tools Multiple tools require constant require constant context switchingcontext switching

Difficult to share Difficult to share knowledgeknowledge Best practicesBest practices Avoid common Avoid common

mistakesmistakes

Security is a Security is a constantly evolving constantly evolving problemproblem

Page 12: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Team Developer EditionTeam Developer EditionDevelopersDevelopers

VS05 Pro usersVS05 Pro users VSEA 2003 usersVSEA 2003 users

VB6 usersVB6 users ISVsISVs Web developersWeb developers

Integrated Code Integrated Code Profiler, Unit Profiler, Unit Testing and Code Testing and Code CoverageCoverage

Process-driven Process-driven DevelopmentDevelopment

Code Analysis with Code Analysis with each buildeach build

Page 13: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Static Code AnalysisStatic Code Analysis

Static Code AnalyzerStatic Code Analyzer

Page 14: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Code CoverageCode Coverage

Code CoverageCode Coverage

Page 15: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Unit TestingUnit Testing

Integrated Unit TestingIntegrated Unit Testing

Page 16: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Team Developer EditionTeam Developer Edition The Tools the Microsoft UsesThe Tools the Microsoft Uses FeaturesFeatures

Static code analysisStatic code analysis Support for managed and native codeSupport for managed and native code PREfast used in Trustworthy Computing Code ReviewsPREfast used in Trustworthy Computing Code Reviews FxCop used to develop .NET frameworkFxCop used to develop .NET framework

Code profilingCode profiling Based on two internal profilers:Based on two internal profilers:

Instrumented – IceCAP, used by Windows Base and SQL ServerInstrumented – IceCAP, used by Windows Base and SQL Server Sampling – LOP, used throughout MX, including XboxSampling – LOP, used throughout MX, including Xbox

Includes ETW eventsIncludes ETW events Sequence view examines running threadsSequence view examines running threads GC view of object allocation and lifetimeGC view of object allocation and lifetime Caller-callee, callstack, and function viewsCaller-callee, callstack, and function views

Code coverageCode coverage Basic Block CoverageBasic Block Coverage Based on the BBCover technology that Windows & Visual Studio Based on the BBCover technology that Windows & Visual Studio

useuse Application VerifierApplication Verifier

Page 17: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Problem Space … Problem Space … TestersTesters

VS05 Pro usersVS05 Pro users VSEA 2003 usersVSEA 2003 users

VB6 usersVB6 users ISVsISVs Web developersWeb developers

No Testing Tools in No Testing Tools in Visual Studio Visual Studio Today!Today!

Test often not a Test often not a formal part of formal part of lifecyclelifecycle

Very little high-level Very little high-level data:data: ““Am I done Am I done

testing?”testing?” ““Do we have less Do we have less

bugs than bugs than yesterday?”yesterday?”

Page 18: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Team Test EditionTeam Test EditionSolutionsSolutions

Testing is 1Testing is 1stst class class in Visual Studio!!in Visual Studio!!

Create, manage, Create, manage, and run Tests in and run Tests in Visual StudioVisual Studio

Publish results in Publish results in Team Foundation Team Foundation ServerServer

VS05 Pro usersVS05 Pro users VSEA 2003 usersVSEA 2003 users

VB6 usersVB6 users ISVsISVs Web developersWeb developers

Page 19: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Load Testing CreationLoad Testing CreationLoad TestingWeb recorderLoad TestingWeb recorder

Page 20: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Load TestingLoad Testing

Perf Counter integrationand monitoring

Perf Counter integrationand monitoring

Load TestingLoad Testing

Page 21: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Test Case ManagementTest Case ManagementTest Case ManagementTest Case Management

Page 22: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Team Test EditionTeam Test Edition Testing is 1Testing is 1stst class in Visual Studio class in Visual Studio Tests are Source CodeTests are Source Code Test Authoring & Execution EnvironmentTest Authoring & Execution Environment

Test ViewTest View Test Explorer (Test Case Management UI)Test Explorer (Test Case Management UI)

Load testingLoad testing Web services load testing via protocol-based Web services load testing via protocol-based

scriptscript Load patterns: constant, step, customLoad patterns: constant, step, custom Perf counter collection and threshold Perf counter collection and threshold

monitoringmonitoring Unit TestingUnit Testing

Integrated Code CoverageIntegrated Code Coverage

Page 23: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Problem Space …Problem Space …TeamTeam

DevelopersDevelopers TestersTesters

ArchitectsArchitects Project ManagersProject Managers IT OperationsIT Operations

Wide spectrum of Wide spectrum of tools:tools: Excel, Project, Excel, Project,

Visual Studio, Visual Studio, MOM, etc, etcMOM, etc, etc

Difficult to gather Difficult to gather team-wide statusteam-wide status

Difficult to Difficult to integrate new team integrate new team membersmembers

Page 24: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Team FoundationTeam FoundationSolutionsSolutions

Work naturally – let Work naturally – let Team Foundation Team Foundation build your statusbuild your status

Team-wide ‘nightly’ Team-wide ‘nightly’ BuildsBuilds

Project Portal for Project Portal for all stakeholdersall stakeholders

DevelopersDevelopers TestersTesters

ArchitectsArchitects Project ManagersProject Managers IT OperationsIT Operations

Page 25: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Work Items EverywhereWork Items Everywhere

Author work items inMicrosoft Excel

Author work items inMicrosoft Excel

Work items show up inVisual Studio

Work items show up inVisual Studio

Assign work items toresources usingMicrosoft Project

Assign work items toresources usingMicrosoft Project

View project status inMicrosoft Excel orMicrosoft Project

View project status inMicrosoft Excel orMicrosoft Project

Page 26: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

ReportingReporting

Page 27: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Build ServerBuild Server

Page 28: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Team FoundationTeam Foundation

Work item trackingWork item tracking Easy, Integrated into Easy, Integrated into

development processdevelopment process Design your own Design your own

process – Fields, process – Fields, Forms, States, RulesForms, States, Rules

Extensive linking – Extensive linking – bugs, reports, artifactsbugs, reports, artifacts

NotificationsNotifications Source Code ControlSource Code Control

Easy, integrated into Easy, integrated into development development environmentenvironment

Integrated check in Integrated check in experienceexperience

Scalable and robustScalable and robust Parallel developmentParallel development NotificationsNotifications

Build automationBuild automation Scripted “nightly” Scripted “nightly”

buildbuild ReportingReporting Integrates many of the Integrates many of the

Team System toolsTeam System tools Metrics warehouseMetrics warehouse

Automatic data Automatic data collectioncollection

OLAP reportingOLAP reporting Trending, aggregation Trending, aggregation

& drilldown& drilldown Project portalProject portal

Single place to go for Single place to go for high-level project high-level project informationinformation

Web access work Web access work itemsitems

WSS basedWSS based

Page 29: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Problem Space …Problem Space …CompanyCompany

Missed business Missed business opportunityopportunity

Bad reputation in Bad reputation in the marketthe market

Wasted effortWasted effort

ArchitectArchitect

QA ManagerQA Manager Development Development ManagerManager

CxOCxO

DevelopersDevelopers TestersTesters

ArchitectsArchitects Project ManagersProject Managers IT OperationsIT Operations

Page 30: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Visual Studio Team SystemVisual Studio Team SystemSolutionsSolutions

QualityQuality Write secure, high Write secure, high

quality codequality code Work from Work from

repeatable best repeatable best practicespractices

PredictabilityPredictability Make decisions Make decisions

based on fresh databased on fresh data

TCOTCO One integrated Tool One integrated Tool

for your entire teamfor your entire team

ArchitectArchitect

QA ManagerQA Manager Development Development ManagerManager

CxOCxO

DevelopersDevelopers TestersTesters

ArchitectsArchitects Project ManagersProject Managers IT OperationsIT Operations

Page 31: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Enterprise Development Enterprise Development and Test Demoand Test Demo

Page 32: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Broad Industry SupportBroad Industry Support

Page 33: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Enterprise Development Enterprise Development and Testand Test

Write world-class code with ‘F5’ Write world-class code with ‘F5’ productivityproductivity

Test early, test oftenTest early, test often Work naturally and let the tools build Work naturally and let the tools build

your statusyour status

Page 34: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

Sean PuffettSean [email protected]@microsoft.com

Page 35: Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd

QuestionsQuestions

Sean Puffett, Sean Puffett, [email protected]@microsoft.com