Visual Studio 2005 Team System: Mastering Software Project Management with Process Guidance and Office System 2003 Integration Beny Rubinstein Randy Miller Product Manager Program Manager Visual Studio 2005 Team System Microsoft Corporation Technical Breakout Session: DEV347
Goals In this session we will use Visual Studio 2005 Team System to project manage and build new functionality in the Adventure Works application. This session will also focus on some of the artifacts associated with the integrated process guidance, MSF, in Visual Studio 2005 Team System.
The Rules Have Changed From Anticipation (Define, Design, Build) To Adaptation (Envision, Explore, Adapt) ???????????
Agile vs. Formal Agile “Evolve and adapt” Ideal for Competitive Environments Rely on People Plan as you go Drawbacks: Project Plan can’t keep up with change Formal “Plan and optimize” Ideal for Regulated Environments Rely on Process Plan in advance Drawback: Project Plan becomes out of date or does not reflect reality Either way, Project Management is a lot of work
State of Project Management PMI “Science” of Project Management Risk Assessment Planning and Scheduling Work Breakdown Primitive “Are you done yet?” Primitive Status Reports Reporting Continuum Tedium
Change Management Work Item TrackingReportingProject Site Visual Studio Team Foundation Integration Services Project Management Process and Architecture Guidance Dynamic Code Analyzer Visual Studio Team Architect Static Code AnalyzerCode ProfilerUnit TestingCode CoverageVisio and UML ModelingTeam Foundation ClientVS ProClass ModelingLoad TestingManual TestingTest Case ManagementApplication ModelingLogical Infra. ModelingDeployment Modeling Visual Studio Team Developer Visual Studio Team Test Visual Studio Industry Partners
Visual Studio Team System My team is on the same page Organize the data to make sense Use the tools I want Manage the project, not the data gathering New angles on project success beyond bugs Based on industry proven practices Unobtrusive on you and the team
How to be Productive and Visible Randy Miller Program Manager Visual Studio 2005 Team System
A Good Start… Elements of Visibility What What people are working on What’s critical How does is relate? Data analytics How Work is changing hands It should be done “this way” Elements of Productivity What Up to date information Tools for the job How Get started as soon as I can Don’t remember, just work Lightweight Nothing gets in the way Customizable
Role of the Project Manager “A good project manager looks at a small number of really important elements and makes project decisions accordingly.”
The Fallacy of Real-Time PM Project Plans Capture a point in time Require context Cannot change by the minute Are an important management tool
Agile vs. Formal Agile “Evolve and adapt” Ideal for Competitive Environments Rely on People Plan as you go Drawbacks: Project Plan can’t keep up with change Formal “Plan and optimize” Ideal for Regulated Environments Rely on Process Plan in advance Drawback: Project Plan becomes out of date or does not reflect reality Either way, Project Management is a lot of work
Microsoft Solutions Framework Version 4.0
Microsoft Solutions Framework MSF offers guidance in how to organize people and projects to plan, build, and deploy technology solutions successfully and effectively
Methodware Magic Quadrant Gartner Research, 2003 Source: Gartner Research (August 2003)
Don’t Repeat Others’ Mistakes Ux Disconnected from Help Disconnected from Tools Route maps not obvious Content Tries to satisfy everyone, but pleases no one (sometimes agile, sometimes heavy) Mismatch of Tool Help, Templates and Guidance Too much content - overwhelming Doesn’t feel like a coherent, e2e whole Customization Had to customize to get started Weak examples when customizing Not always recognizable after customization Guidance not automated with workflow "Rational/RUP training is a big expense and methodology is a big thorn in our side. I hope you guys do it right."
Learn What Others Do Well Content organized for maintenance Clear metamodel Clear plug-in model Many navigation paths Graphical navigation
MSF (v4.0) is… The right content for the right person at the right time 1.An agile software development process 2.A formal software development process 3.Framework for customers and partners to implement custom software development process
MSF Integration is seamless Accessible/Embedded Exposed within Help Centralized Delivered via Team Foundation Server Current Updated from MSDN Customizable Extended by GSIs, ISVs, Enterprise PMOs Book series Addison Wesley & MS Learning
Broad Industry Support
AdventureWorks Project Team Jacqui Ackerman Project Manager Art Benson Architect Mort Gaines Developer Renee Davis Tester Renee Davis Tester Larry Sykes Product Manager
Run TestIdentify a BugWrite Validation Tests Plan a Scenario Implement a Development Task Create Solution Architecture Create a Scenario Define Personas Create Scenario List Write Scenarios Prioritize Scenario List Review Scenarios Decompose System Run a Test Case Determine Interfaces Create Architectural Prototype Estimate Scenario Schedule Scenario Divide Scenario into Tasks Cost a Development Task Write Code Integrate Write and Perform Unit Tests Review Code From Team Collaboration to Team Partnership Storyboard a Scenario
Using MSF inside Visual Studio 2005 Team System
Run a Test Case Integrate Identify a BugWrite Validation Tests Write Code Integrate Write and Perform Unit Tests Review Code Fix a Bug Triage Bugs Schedule Bugs Run Test Verify Bug Verify a Bug Triage Close a Bug Create Development Task
Plan a Qos Requirement Implement a Development Task Create Solution Architecture Create a Qos Requirement Add Qos Req to Scenario List Review Qos Req Decompose System Run a Test Case Determine Interfaces Create Architectural Prototype Prioritize Scenario List Estimate Qos Req Schedule Qos Req Divide Scenario into Tasks Cost a Development Task Write Code Integrate Write and Perform Unit Tests Review Code Run TestIdentify a Bug Write Performance Test Write Qos Requirements Develop a Perf Model
The “Macro” Perspective VisionFunctionalityTimeRiskQualityDeployment Write Vision Statement Define Test Approach Create System Architecture Evaluate Complexity Review Objectives Determine Progress
Run TestIdentify a BugWrite Validation Tests Define PersonasCreate Scenario List Write ScenariosReview Scenarios Plan a Scenario Implement a Development Task Create Solution Architecture Run a Test Case Prioritize Scenario List Estimate Scenario Schedule Scenario Cost a Development Task Write Code Integrate Write and Perform Unit Tests Review Code Decompose SystemDivide Scenario into TasksDetermine Interfaces Create Architectural Prototype Storyboard a Scenario Setup and Guide Project Write Vision Statement Define Test Approach Create System Architecture Create a Scenario Evaluate Complexity Review Objectives Determine Progress
Setting the Bar MinimumAcceptanceLevel Iteration 1 Iteration 2 Iteration 3
Setting Objectives Review Objectives Define PersonasCreate Scenario List Write ScenariosReview Scenarios Prioritize Scenario List Divide Scenario into Tasks Cost a Development Task Write Code Integrate Write and Perform Unit Tests Review Code
Engineering Effort High Technological Risk Design Difficulty High Organizational Risk Resources Windows XP VisualStudio Halo 2 Halo 2
Focus on Architecture High Technological Risk Design Difficulty High Organizational Risk Resources Windows XP VisualStudio Halo 2 Halo 2 Decompose SystemDivide Scenario into TasksDetermine Interfaces Create Architectural Prototype Storyboard a Scenario Evaluate Complexity
Testing that is acceptable on one project may be criminal on another Testing Targets Trend Analysis Metrics: % Code Coverage Bugs Found % Code Churn % Tests Passed % Scenarios Tested Context Driven Testing
Testing Emphasis Run TestIdentify a BugWrite Validation Tests Divide Scenario into Tasks Cost a Development Task Write Code Integrate Write and Perform Unit Tests Review Code Define Test Approach “No Critical Failure Or Major Impact Bugs (Impact Severity 1 or 2) In Shipping Product” “100% Code Coverage Achieved” % Scenarios Tested % Code Coverage % Tests Passed BugsFound % Code Churn severity 1 or 2 bugs
Staggered Iterations Create a Scenario Create Scenario List Write Scenarios Prioritize Scenario List Divide Scenario into Tasks Write Code Integrate Write and Perform Unit Tests Review Code Run a Test Case Run TestIdentify a Bug Write Validation Tests Implement a Development Task Cost a Development Task Create Solution Architecture
MSF 4.0 Goals Drive business success through business & technology alignment Ensure high quality solutions Handling the many facets of quality as defined by multiple stakeholders Handling the many facets of quality as defined by multiple stakeholders Accelerate delivery, reduce costs, minimize risks Improve team effectiveness
MSF adoption is gradual Organizational/Team – The team has decided as a unit to adopt some flavor of MSF (or your process) Grassroots – Individuals on the team find the practices useful and the process spreads by providing value MSF provides friction-free usage that doesn’t get in the way
MSF is extensible Framework – Build a process within the MSF meta-model, adopting pieces or all of MSF Agile or Formal Prototype – Using pieces or all of MSF Agile or Formal as a base to build your own process without the meta-model
MSF Process Model Structure
MSF 4.0 Key takeaways Two “flavors” out-of-the-box: Agile and Formal/Complete Fully integrated in Visual Studio 2005 Team System Updates are delivered via MSDN It can become a basis for your software development process
VSTS for Project Managers Key takeaways I can use these tools - I already am I won’t get yelled at anymore No more useless status meetings Process is transparent, useful and flexible Productive AND Predictable Teams More visibility to all team members!
Developer Roadmap
Call to Action What should you do now? Educate yourself and your customer on VSTS and MSF and Join MSF Champions alias (msfchamp) Send questions, comments, suggestions to: (internal alias - VSTS) (core MSF team) What should you do 6 months from now? Start pre-selling Visual Studio 2005 Team System
Other Sessions Jul y TimeTitleRoom 1712:30-13:45 DEV240 Team System Overview B :15-2:30 DEV346 Modeling Strategy Sydney Marcus 1912:30-1:45 DEV347 Project Management B :15 DEV348 Change Management B :15 DEVCT344 Load Testing Chalk Talk A :15 DEVCT343 Work Item Chalk Talk A :45-11 DEV345 Software Testing GA Ballroom 209:45-11 DEVCT342 Practicing Agile Methods A :15-3:30 A316
Related Content - newsgroups MSF: &newsgroup=microsoft.public.msf &newsgroup=microsoft.public.msf Microsoft.private.whidbey.teamsystem.general - VSTS overall Microsoft.private.whidbey.teamsystem.projectmanager - project management tools Microsoft.private.whidbey.teamsystem.teamfoundation - source control, change management, work item tracking Microsoft.private.whidbey.teamsystem.architect - modeling and design tools (Whitehorse) Microsoft.private.whidbey.teamsystem.architect.appdesign - Whitehorse app designer Microsoft.private.whidbey.teamsystem.developer - developer tools (PreFast, FxCop, Perf tools) Microsoft.private.whidbey.teamsystem.tester - testing tools MSF: &newsgroup=microsoft.public.msf &newsgroup=microsoft.public.msf Microsoft.private.whidbey.teamsystem.general - VSTS overall Microsoft.private.whidbey.teamsystem.projectmanager - project management tools Microsoft.private.whidbey.teamsystem.teamfoundation - source control, change management, work item tracking Microsoft.private.whidbey.teamsystem.architect - modeling and design tools (Whitehorse) Microsoft.private.whidbey.teamsystem.architect.appdesign - Whitehorse app designer Microsoft.private.whidbey.teamsystem.developer - developer tools (PreFast, FxCop, Perf tools) Microsoft.private.whidbey.teamsystem.tester - testing tools
Three ways to access Online Evaluation Forms: MGB Evaluation Kiosks CommNet From your laptop or Pocket PC, onsite Wireless Access or any wired connection to: Please Complete An Evaluation Form Your input is important! For more information please refer to the Registration Guide
© 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.