IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT [email protected] HTTP://...
Transcript of IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT [email protected] HTTP://...
![Page 1: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/1.jpg)
IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB
EUAN GARDEN
MICROSOFT
HTTP://WWW.TWITTER.COM/EUANGA
HTTP://BLOGS.MSDN.COM/EUANGA
![Page 2: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/2.jpg)
DO WE STILL NEED TO CARE ABOUT QUALITY?
![Page 3: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/3.jpg)
on average professional coders make 100 to 150 errors in every 1000 lines of code they write
defects found in production cost 10x more to fix than those found during requirements gathering
last year, canceled projects cost firms $67 billion; overruns on the other projects racked up another $21billion
software bugs cost the us economy an estimated $59.5 billion every year
![Page 4: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/4.jpg)
need something a little more concrete?
![Page 5: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/5.jpg)
USS YORKTOWN, SMARTSHIP
crew member entered 0 in a
data entry field, caused a
“divide by 0” error
that shut down propulsion
ship was dead in the water
for 2hrs 45mins
![Page 6: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/6.jpg)
ARIANE 5 FLIGHT 501
re-used code from ariane 4,
but took a different flight
path because of different
booster designconversion from 64bit float
to 16bit signed int caused
overflow (exception handler
was disabled for perf
reasons)
cost: > $370 million @ 1996
prices
![Page 7: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/7.jpg)
F-22 RAPTOR
deploying overseas to japan
the first time crossed
international dateline
Raptor is likely the most advanced manned aircraft that will ever fly…
computers crashed losing all
navigation and
communications systems
clear weather allowed them
to follow tankers back to
hawaii
![Page 8: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/8.jpg)
need something a little more visual?
![Page 9: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/9.jpg)
![Page 10: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/10.jpg)
![Page 11: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/11.jpg)
![Page 12: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/12.jpg)
![Page 13: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/13.jpg)
1.what2.when3.how
![Page 14: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/14.jpg)
AGILE TESTING QUADRANTS
functional testsexamplesstory testprototypessimulations
exploratory testingscenarios
usability testinguat (user acceptance testing)
alpha/beta
unit testscomponents tests
performance and load testingsecurity testing“ility” testing
TECHNOLOGY -FACING
CR
ITIQ
UE P
RO
DU
CT
SU
PP
OR
TIN
G T
HE T
EA
M
BUSINESS-FACING
*brian marick
![Page 15: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/15.jpg)
AGILE TESTING QUADRANTS
functional testsexamplesstory testprototypessimulations
exploratory testingscenarios
usability testinguat (user acceptance testing)
alpha/beta
unit testscomponents tests
performance and load testingsecurity testing“ility” testing
TECHNOLOGY -FACING
CR
ITIQ
UE P
RO
DU
CT
SU
PP
OR
TIN
G T
HE T
EA
M
BUSINESS-FACING
![Page 16: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/16.jpg)
27%
26%
47%
How often do you write unit tests?
Almost AlwaysSometimesDon't
Source: Telerik Blog Survey May ‘08
![Page 17: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/17.jpg)
14%
60%
26%
Why are you not doing more Unit Test-ing?
Not worth writingNo time/Too HardWant to, but have not
Source: .Net/GIS Developer Blog Survey ‘08
![Page 18: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/18.jpg)
“…for an increased development cost of 15-35%... defect reduction of 40-90% can be achieved…”
Source: “Realizing quality improvement through test driven development”, MSR et al
![Page 19: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/19.jpg)
AGILE TESTING QUADRANTS
functional testsexamplesstory testprototypessimulations
exploratory testingscenarios
usability testinguat (user acceptance testing)
alpha/beta
unit testscomponents tests
performance and load testingsecurity testing“ility” testing
TECHNOLOGY -FACING
CR
ITIQ
UE P
RO
DU
CT
SU
PP
OR
TIN
G T
HE T
EA
M
BUSINESS-FACING
![Page 20: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/20.jpg)
1.stop the bleeding
2.stay current3.catch up
http://blog.mountaingoatsoftware.com/reduce-manual-test-techcnical-debt
![Page 21: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/21.jpg)
“…the real low-hanging fruit is often not automating some test execution
but automating other testing tasks, like populating databases or automatic navigation to the page where you’ll
start manual testing. you’re not reducing the number of manual tests, but you’re reducing the total time it
takes to run them...” - mike cohn quoting brian marick
![Page 22: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/22.jpg)
DEMO
exploratory testing
manual testing
fast forward for manual testing
Iteration N
![Page 23: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/23.jpg)
AGILE TESTING QUADRANTS
functional testsexamplesstory testprototypessimulations
exploratory testingscenarios
usability testinguat (user acceptance testing)
alpha/beta
unit testscomponents tests
performance and load testingsecurity testing“ility” testing
TECHNOLOGY -FACING
CR
ITIQ
UE P
RO
DU
CT
SU
PP
OR
TIN
G T
HE T
EA
M
BUSINESS-FACING
![Page 24: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/24.jpg)
TEST AUTOMATION PYRAMID
UI
ServiceUnit/
ComponentMike Cohn
![Page 25: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/25.jpg)
DEMO(web) ui test automation
Iteration N
![Page 26: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/26.jpg)
AUTOMATION PLATFORM SUPPORTFully supported platform
Partial solution. Further work required in future to complete
Best efforts with known issues. Users can workaround these cases in the code. No major ongoing investment.
Currently no support but on the roadmap for future releases
Currently no support and none planned for now. Opportunity for partners to add this using the Extensibility support. Docs and samples around extensibility are here.
For latest info on this, refer this post.
Platform RTM RTM+
Notes
IE7/8 – HTML/AJAX
Windows Forms 2.0+
.NET Fx Controls fully supported, working on 3rd party support
WPF 3.5+.NET Fx Controls fully supported, working on 3rd party support
SharePoint 2007
Windows Win32 TBD – Known issues & Workarounds
MFC TBD – Known issues & Workarounds
FF3 – HTML/AJAX Currently in Beta
Dynamics (Ax) TBD – Release Plan
Silverlight TBD – Release Plan
Citrix/Terminal Services
The client (MTLM or VS) need to be on remote machine
Office Client Apps
IE 6 Opportunity for partners to add this using the Extensibility support. Docs and samples around extensibility are here.
Chrome/Opera/Safari
Flash/Java
SAP
![Page 27: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/27.jpg)
AGILE TESTING QUADRANTS
functional testsexamplesstory testprototypessimulations
exploratory testingscenarios
usability testinguat (user acceptance testing)
alpha/beta
unit testscomponents tests
performance and load testingsecurity testing“ility” testing
TECHNOLOGY -FACING
CR
ITIQ
UE P
RO
DU
CT
SU
PP
OR
TIN
G T
HE T
EA
M
BUSINESS-FACING
![Page 28: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/28.jpg)
![Page 29: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/29.jpg)
DEMOperformance testing
Iteration N
![Page 30: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/30.jpg)
but what about the cloud?
![Page 31: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/31.jpg)
auctioncloud.com mashup service
ebay api’s
ebay auction service
ebay auction data
zillow.com public api’s
zillow.com service
zillow custom data
mls public api’s
mls service
bing maps public api’s
bing maps service
mls auction data
bing maps image store
![Page 32: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/32.jpg)
pay attention to the details
care about quality
![Page 33: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/33.jpg)
BECAUSE SOMEONE HAS TO!
![Page 35: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/35.jpg)
QUESTIONS
![Page 36: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/36.jpg)
![Page 37: IMPROVING SOFTWARE QUALITY FOR THE MODERN WEB EUAN GARDEN MICROSOFT EUANG@MICROSOFT.COM HTTP:// HTTP://BLOGS.MSDN.COM/EUANGA.](https://reader036.fdocuments.us/reader036/viewer/2022070407/56649e415503460f94b328fe/html5/thumbnails/37.jpg)
© 2010 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.