View
1
Download
0
Category
Preview:
Citation preview
Sam Guckenheimer
Product Owner, Visual Studio Product Line
samgu@microsoft.com
7
49
340
2,400
17,000
120,000
840,000
5,900,000
41,000,000
290,000,000
2,000,000,000
1. Scrum Team Size
2. Scrum of Scrums 2.6 Dunbar’s Number
4. Microsoft Developer Division
8. Our Customers (Users)
11. Our Customer’s Customers
6. Microsoft Employees
This
experience
report
− Industry Trends
For (target customer personas in identified
segment)
Who are
dissatisfied with
(the current …alternatives)
Our solution is a (product category)
That provides (key problem-solving capability)
Unlike (the product alternative)
We have
assembled
(key scenarios and QoS for your
solution)
Adapted from Geoffrey A. Moore, Crossing the Chasm (New York: Harper Collins, 1991, 1992, 2002), p. 154.
http://www.ideo.com/cbd
Feature
Absent
Feature Fully
Implemented
Cu
sto
mer
Dis
gu
sted
C
ust
om
er
Delig
hte
d
Must-haves
(remove dissatisfiers)
Exciters/
Delighters/
Energizers
“Linear” features
(satisfiers)
Indifferent
features
21
20%
30%
40%
50%
60%
70%
80%
90%
20% 30% 40% 50% 60% 70% 80% 90%
Satisfaction
Im
po
rtan
ce
Opportunities Not Opportunities
Immediate Opportunities – Important & Unsatisfied
Important & Satisfied
Lower Priority Opportunities
Unimportant & Satisfied
Team observing
Stickies and
Voting sheets
Customers
Importance to
your business Satisfaction
with Existing Notes
Most
important
Least
important
Does the existing
functionality meet
your needs?
Pain (mark with 'x')
(mark with 'x') Yes No Don't
know Once I work with something I can’t find it again
I can’t tell what changed from build to build, especially over time
I don’t know who is the expert of a given area
I need another pair of eyes on my code
Means to the Interactive Discussion
27
Suit the action to the word, the word to the action, ….and …hold as 'twere the
mirror up to nature Hamlet III:2
Pillar
Scenario Scenario
Epic: Why buy or upgrade
Contains Customer Promises:
What if you could ….?
E Experience Theme:
Let me show you how….?
Feature Feature Feature Feature Feature Feature Feature Feature User Story / Product Backlog Item:
Product capability to enable
Rele
ase
Pla
nn
ing
Sp
rin
t P
lan
nig
& Exe
cuti
on
− Pain: Waste in Developer-Tester Interaction
− VS 2010 Scenario: No More No Repro − What if you could reduce your bug reactivation by 80%?
− Experiences − As a tester, I can explore the app and file a bug that
automatically captures full motion video, complete action log, IntelliTrace logs from the servers and snapshot of virtualized test environment.
− As a developer, I can open the bug, see what happened both in the UI and at multiple tiers, debug offline − backwards from actual fault to root cause, and click into the code editor to fix the fault. When I check-in the fix, I can automatically generate a test to prevent regression.
− Quality of Service (NFR): It all has to be fast enough to keep us in the groove.
http://www.ideo.com/cbd
http://www.ideo.com/cbd
36
Money - Microsoft Visual C#.NET [design] - Money.cs
Run Test
Test Explorer
Scope By
Browse By
Solution
All Tests by Area
Serv
er E
xplo
rer
Test Explorer
Suggested Tests
| Suggested T… | Reason | Test Run...
Suggested Tests
Start Page BugID26005
Review Bug Details
View Source History
Select Workspace
Walk Through Trace
Deploy and Run Tests
Submit Changes
Title
Status
Build
Reported By
Assigned To
Description
Exchange Rate Mismatch
Active
2.1.SP1
Renee
See Attached Screenshots
Melvis
Properties Dynamic Help
Properties
Solution1
SystemTests
UnitTests
testdollar(int)
testEquals(object)
testfranc(int)
testMoney(int,string)
testPlus(Money)
testToString()
testPlus1(Money)
testPlus1(M…
testdollar(int)
testEquals(o...
testfranc(int)
testMoney(i...
testPlus(Mo...
testToString()
Explicit
Explicit
Previous Cov...
Previous Cov...
Explicit
Calls testdoll...
Explicit
Start Page BugID26005
Money.cs
Money.Money Plus(Money)
Money - Microsoft Visual C#.NET [design] - Money.cs
Task List OutputTest Results
! | | | Description | File
Task List
BugID 26005
BugID 26008
Bug: Exchange Rates don’t match …
Bug: Conversion Rate error in calc ...
Test Results Task List | Output
Test Results
| Name | Result | Test Log | Test Output
View Results All Selected Tests By Type
Executed 7 of 7, 1 Error, 0 skipped
Create Report
!
testdollar(int)
testEquals(object)
testfranc(int)
Pass
Pass
Pass
UnitTest1
UnitTest2
UnitTest3
Pointer
Pointer
Pointer
Check In
Class View
Class ViewSolution Explorer
Bases and Interfaces
dollar(int)
Equals(object)
franc(int)
Money(int,string)
Plus(Money)
ToString()
Amount
Currency
amount
Money
money
Money
InvalidCurrencyException
Bases and Interfaces
InvalidCurrencyException()
Test Results Task List | Output
| Name | Result | Test Log | Test Output
Test Results
View Results All Selected Tests By Type - Last Run
Executed 7 of 7, 1 Error, 0 skipped
Create Report
!
testdollar(int)
testEquals(object)
testfranc(int)
testMoney(int,string)
testPlus(Money)
testToString()
testPlus1(Money)
Pass
Pass
Pass
Pass
Pass
Pass
Fail
UnitTest1
UnitTest2
UnitTest3
UnitTest4
UnitTest5
UnitTest6
UnitTest7
Pointer
Pointer
Pointer
Pointer
Pointer
Pointer
Pointer
Fail
Pass
Pass
Pass
Pass
Pass
Pass
Code coverage in source
editor after test runs.
Code under test
hyperlinked to tests.
Integrated unit testing displays test
results directly in VS, hyperlinked to
source.
Test case manager makes all
tests across team accessible
and runnable by everyone
(based on permission).
During code editing, VS
displays list of suggested
(prioritized) tests applicable
to changed code.
Coverage summary also in
class view.
Sample Wireframe
Connected Systems Server Area Prioritization (MVP Summit)
10 10
9
8 8 8
6
5
3
2
0
1
2
4
3
4 4
7
9
4
12
17
0
2
4
6
8
10
12
14
16
18
Diagnostic
timeline logging
and viewing
Service
Implementation
integratedd with
Workflow
Contract First
Design
Top Down
Design
Designing and
Implementing a
Single Service
Test Framework
Integration
Application
Deployment
Database Design Programming
Model and
design
experience
Authoring and
Customizing
Guidance
Integrated tools
support for
legacy systems
Areas
# "
Do
ts"
Experiences
within scenario
“Invest more”
ranking by
audience
“Invest less”
ranking by
audience
http://www.bing.com/images/search?q=we+the+people
http://www.ideo.com/cbd
Security
Lots of Audiences
Architects
Information
Workers
Practical
Programmer
s
Business
Analysts
Testers
Developer
Build
Masters
Dev
Managers
Complexity
Kings
Vital
Vendors
Technical
Decision
Makers
Network
Admins
Designers
Business
Students
Database
Admins
Authors
Trainers
High Touch – Dedicated PG resources
working with customer. Expect case
study, course-correcting feedback,
reference, etc.
Managed – Access to private
resources with managed
support channels and early
readiness. NDA required;
expect feedback.
Public – Access to
published resources and
support via traditional pre-
release feedback channels.
No set expectations.
Dog
Food VSIP
Beta
Influencer
TAP
Social
Public
Managed
High
Touch
Status review rolls up features and experiences
back into value props to assess release
readiness
Drilldown from value prop shows detailed
feature status
50 50
How well are we
estimating hours?
And burning down
the tasks?
How quickly are
implementing
requirements?
Which impediments
are still open?
Are we removing
impediments in time?
51
Are we making
progress on running
test plans?
Are build failures
blocking progress?
How quickly are we
fixing bugs?
How fast is code
changing?
Are the tests covering
the code on builds?
Do the “fixes” actually
fix the bugs?
52
How quickly are we
fixing bugs and what’s
our current debt?
What are our weekly
find/fix/closure rates?
How is the debt
distributed by priority?
What is still open right
now?
53
Are we making
progress on running
test plans?
Are test cases ready to
run?
What are the current test
results for each requirement?
How much testing is
manual?
What are the causes
of failure?
Все счастливые семьи похожи друг на
друга, каждая несчастливая семья
несчастлива по-своему.
Kegan & Lahey, Harvard Business Review, Nov 2001.
© 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.
Recommended