dev233 team foundation: using metrics to manage and troubleshoot your projects sam guckenheimer...

35

Upload: carson-steves

Post on 15-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation
Page 2: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

DEV233DEV233Team Foundation:Team Foundation:Using Metrics to Manage Using Metrics to Manage and Troubleshoot Your and Troubleshoot Your ProjectsProjects

DEV233DEV233Team Foundation:Team Foundation:Using Metrics to Manage Using Metrics to Manage and Troubleshoot Your and Troubleshoot Your ProjectsProjects

Sam GuckenheimerSam GuckenheimerGroup Product PlannerGroup Product PlannerMicrosoft CorporationMicrosoft Corporation

Page 3: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Managing 20Managing 20thth Century Projects Century Projects

Functionality

Time

Resources

Quality

““The Iron Triangle”The Iron Triangle”(err… tetrahedron)(err… tetrahedron)

Image copyright Tetra Pak

Page 4: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

2121stst Century Mantra Century Mantra

Do more with less!Do more with less!But if your only variables are:But if your only variables are:

FunctionalityFunctionality

Resources Resources

TimeTime

Quality Quality

……then how are you going to do that? then how are you going to do that?

Page 5: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

An Older TruthAn Older Truth

Happy families are all alike; Happy families are all alike; every unhappy family is every unhappy family is unhappy in its own way.unhappy in its own way.

Tolstoy, Tolstoy, Anna KareninaAnna Karenina

Все счастливые семьи похожи друг на друга, каждая несчастливая семья несчастлива по-своему.

Page 6: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Two Process ParadigmsTwo Process Paradigms

Traditionally, we decompose tasks and measure completion This is the cost accounting tradition

Alternatively, we account for customer value incrementally delivered This is the Lean Manufacturing and Theory of Constraints model

Page 7: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Two Process ParadigmsTwo Process ParadigmsWork-down Value-up

Planning and change process

Get planning and design right up front

Change happens, embrace it

Primary measurement

Task completion Only deliverables that the customer count

Definition of quality Conformance to specification

Value to the customer

Acceptance of variance

Tasks can be identified and estimated deterministically

Variance is part of all process flows

Intermediate work products

Documents, models, and other artifacts are necessary

Just enough to minimize the uncertainty

Troubleshooting approach

Time, resource, functionality and quality

Find and remove the bottlenecks

Approach to Trust Monitor and measure; incent performance relative to plan

Pride of workmanship and teamwork

Page 8: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Prescriptive vs. Descriptive MetricsPrescriptive vs. Descriptive Metrics

Robert D. Austin, Measuring and Managing Performance in Organizations

Metrics lose their meaning when made prescriptive

Page 9: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Standard Reporting with Standard Reporting with Team FoundationTeam FoundationStandard Reporting with Standard Reporting with Team FoundationTeam Foundation

Page 10: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

How Far Can We Get in The Available How Far Can We Get in The Available Time?Time?

Work planned

Work completed

Page 11: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

How Effectively Is Our (Outsourced) Team How Effectively Is Our (Outsourced) Team Delivering?Delivering?

Test rates (pass, inconclusive, fail)

shown in bars

Against code coverage, …

code churn, …

and active bugs

Page 12: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

What Requirements Haven’t Been What Requirements Haven’t Been Tested? Tested?

Tracks progression of requirements’ states from Untested to Passed by

successive Build

Page 13: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Are We Getting Better?Are We Getting Better?

Page 14: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Custom Reporting with Team FoundationCustom Reporting with Team Foundation

Page 15: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Signs of UnhappinessSigns of Unhappiness

UnderestimatingUnderestimating

Uneven Task DecompositionUneven Task Decomposition

Scope CreepScope Creep

Inadequate Bug AllotmentInadequate Bug Allotment

Resource LeaksResource Leaks

Development Practices Too LooseDevelopment Practices Too Loose

Build FailuresBuild Failures

Inadequate Unit TestingInadequate Unit Testing

Tests Passing; Solution Doesn’t WorkTests Passing; Solution Doesn’t Work

Solution Stuck in TestingSolution Stuck in Testing

Too Little TestingToo Little Testing

Page 16: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

UnderestimatingUnderestimating

Steady rates of progress, but slope

too shallow

Slow progress leading to cuts in

planned work, but not enough cuts

Page 17: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Uneven Task DecompositionUneven Task Decomposition

High variance in task completion/day indicates

inconsistency

Page 18: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Scope CreepScope Creep

“Dark matter” emerging during

iteration

Planned work is squeezed out

Page 19: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Inadequate Bug AllotmentInadequate Bug Allotment

New work not planned at iteration

start

Page 20: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Resource LeaksResource Leaks

Sudden drop in velocity indicates other drain on

resources

Page 21: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Development Practices Too Development Practices Too LooseLoose

Growing “Fault Feedback Ratio” – Bugs requiring

multiple handling

Page 22: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Build FailuresBuild Failures

Page 23: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Inadequate Unit TestingInadequate Unit Testing

Rising Code Churn

Falling Code CoverageFewer Passing

and More Inconclusive

Tests

Page 24: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Tests Passing; Solution Doesn’t Tests Passing; Solution Doesn’t WorkWork

Flat Big Rate

Flat & Low Code Coverage

Page 25: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Tests Passing; Solution Doesn’t Tests Passing; Solution Doesn’t WorkWork

Find > Fix leads to growing bug backlog

above

Page 26: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Tests Passing; Solution Doesn’t Tests Passing; Solution Doesn’t WorkWork

Tests aren’t catching or regressing bugs

Page 27: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Solution Stuck in TestingSolution Stuck in Testing

Bulge in resolved →Insufficient resources or

inadequate quality from dev

Page 28: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Too Little TestingToo Little Testing

Testing Rates Stuck Low

Page 29: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Drilldown with Microsoft Drilldown with Microsoft Office ExcelOffice ExcelDrilldown with Microsoft Drilldown with Microsoft Office ExcelOffice Excel

Page 30: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Friction-Free Metrics Enable Friction-Free Metrics Enable TransparencyTransparency

Page 31: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Visual Studio Team SystemVisual Studio Team SystemVisual Studio Team SuiteVisual Studio Team Suite

MS

F P

rocess a

nd

Gu

idan

ce

MS

F P

rocess a

nd

Gu

idan

ce

Visual Studio Team Foundation ServerVisual Studio Team Foundation Server

VisualStudio

IndustryPartners

SoftwareSoftwareArchitectsArchitects

SoftwareSoftwareDevelopersDevelopers

SoftwareSoftwareTestersTesters

DatabaseDatabaseProfessionalsProfessionalsVisual

StudioTeam

ExplorerApplication Application ModelingModeling

Infrastructure Infrastructure and Deployment and Deployment

ModelingModeling

Code AnalysisCode Analysis

Performance Performance TuningTuning

Security AnalysisSecurity Analysis DatabaseDatabase Deployment Deployment

Database Database Change Change

ManagementManagement

Database Database TestingTesting

Performance Performance TestingTesting

Manual TestingManual Testing

Test Case Test Case ManagementManagement

Visual Studio Professional Visual Studio Professional EditionEdition

Change ManagementChange Management

Work Item TrackingWork Item Tracking

ReportingReporting

Project SiteProject Site

Integration ServicesIntegration Services

Project ManagementProject Management

Load Test AgentLoad Test Agent

Visio and UML Visio and UML ModelingModeling

Class Class ModelingModeling

Unit TestingUnit Testing

Code Code CoverageCoverage

New!

Page 32: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Naked Self-PromotionNaked Self-PromotionFor More Information…For More Information…

Page 33: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

ResourcesResourcesTechnical Chats and Webcastshttp://www.microsoft.com/communities/chats/default.mspx http://www.microsoft.com/usa/webcasts/default.asp

Microsoft Learning and Certificationhttp://www.microsoft.com/learning/default.mspx

MSDN & TechNet http://microsoft.com/msdnhttp://microsoft.com/technet

Virtual Labshttp://www.microsoft.com/technet/traincert/virtuallab/rms.mspx

Newsgroupshttp://communities2.microsoft.com/communities/newsgroups/en-us/default.aspx

Technical Community Siteshttp://www.microsoft.com/communities/default.mspx

User Groupshttp://www.microsoft.com/communities/usergroups/default.mspx

Page 34: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

Fill out a session Fill out a session evaluation on evaluation on

CommNet andCommNet and Win an XBOX Win an XBOX

360!360!

Page 35: DEV233 Team Foundation: Using Metrics to Manage and Troubleshoot Your Projects Sam Guckenheimer Group Product Planner Microsoft Corporation

© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, 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.