Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
@Dynatrace
- More on http://blog.dynatrace.com
- Dynatrace Free Trial: http://bit.ly/dttrial
Dev(T)Ops
Find Solutions, Not
more Defects
Hosted by: Andreas Grabner - @grabnerandi
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
Waterfall -> Agile: 3 Years
220 Apps: 1 Deployment per Month
“EVERYONE can do Continuous Delivery”
“EVERY MANUAL TESTER DOES AUTOMATION!”
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
Goal
Utmost goal: minimize cycle time
feature cycle time time
Customer / Market Users
Utmost goal: minimize cycle time
feature cycle time time
minimize Users
Utmost goal: minimize cycle time
feature cycle time time
This is where you
create value!
minimize
You
ROI?
High performers are more agile
30x 8,000x
more frequent
deployments
faster lead times
than their peers
Source: Puppet Labs 2013 State Of DevOps: http://puppetlabs.com/2013-state-of-devops-infographic
High performers are more reliable
Source: Puppet Labs 2013 State Of DevOps: http://puppetlabs.com/2013-state-of-devops-infographic
2x 12x
the change
success rate
faster mean time
to recover (MTTR)
Challenges
DevOps: Find Solutions, Not More Defects
Fail Faster!?
Right Focus?!
Failures happen!!
Nobody likes it when …
DevOps: Find Solutions, Not More Defects
… or this …
DevOps: Find Solutions, Not More Defects
.. as it leads to this …
The “War Room”
Facebook – December 2012
… and potentially to this …
DevOps: Find Solutions, Not More Defects
And this isn’t helping either
…
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
Tester Developer
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
This ATTITUDE is
the main PROBLEM
as it LEADS to …
Technical Debt!
80%
$60B
Insufficient Focus on Quality
DevOps: Find Solutions, Not More Defects
20%
80%
DevOps: Find Solutions, Not More Defects
I
learning from
others
3 use cases
 WHY did it happen?
 HOW to avoid it!
 METRICS to guide you.
DevOps: Find Solutions, Not More Defects
Tip 1
don't push
without a plan
Mobile landing page of Super Bowl ad
434 Resources in total on that page:
230 JPEGs, 75 PNGs, 50 GIFs, …
Total size of ~
20MB
Fifa.com during Worldcup
Source: http://apmblog.compuware.com/2014/05/21/is-the-fifa-world-cup-website-ready-for-the-tournament/
Key Metrics
1. # Resources
2. Size of Resources
3. Page Size
DevOps: Find Solutions, Not More Defects
Tip 2
don't ASSUME you
know the environment
Distance calculation issues
480km biking
in 1 hour!
Solution: Unit Test in
Live App reports Geo
Calc Problems
Finding: Only
happens on certain
Android versions
3rd party issues
Impact of bad
3rd party calls
Key Metrics
4. # of functional errors
5. 3rd party calls
DevOps: Find Solutions, Not More Defects
Tip 3
There is no easy
"Migration" to
Micro(Services)
26.7s
Execution Time 33! Calls to the
same Web
Service
171! SQL Queries through LINQ
by this Web Service – request
similar data for each call
Architecture Violation: Direct access
to DB instead from frontend logic
21671! Calls to Oracle
3136! Calls to H2
mostly executed on
async background
threads
33! Different
connections used
DB Exceptions on both
Databases
DB Exceptions on both
Databases
40! internal Web
Service Calls that
do all these DB
Updates
#2: Thread Column Tells me how many and which
physical Thread is involved in every step along the
execution flow
#3: Breakdown Column Tells
me where Wait or Sync is
happening
#1: Link Nodes Tell
me whether the
service/thread call is
synchronous or
asynchronous
Key Metrics
6. # Service Calls
7. # of Threads
8. Sync and Wait Times
9. # SQL executions
10. # of SAME SQL’s
For more Key Metrics
http://blog.dynatrace.com
WHERE to
Start?
#2: Shift-Right Metrics
Integrate
#1: Shift-Left Quality
Shift-Left Quality:
Level-Up
DevOps: Find Solutions, Not More Defects
Level-Up Team Skills
Browser Diagnostics
Response Size, # Images
JBoss, Tomcat, JConsole
IIS, ASP.NET, PerfLib
Oracle, SQL
Garbage Collection Thread Dumps
Conversion Rates
Level-Up: Web Checks!
Level-Up: Architectural Checks
DevOps: Find Solutions, Not More Defects
Shift-Right Metrics:
Automation
We want to get from here …
To here!
Putting it into Continuous Deployment
12 0 120ms
3 1 68ms
Build 20 testPurchase OK
testSearch OK
Build 17 testPurchase OK
testSearch OK
Build 18 testPurchase FAILED
testSearch OK
Build 19 testPurchase OK
testSearch OK
Build # Test Case Status # SQL # Excep CPU
12 0 120ms
3 1 68ms
12 5 60ms
3 1 68ms
75 0 230ms
3 1 68ms
Test & Monitoring Framework Results Architectural Data
We identified a regresesion
Problem solved
Exceptions probably reason for
failed tests
Problem fixed but now we have an
architectural regression
Problem fixed but now we have an
architectural regressionNow we have the functional and
architectural confidence
Let’s look behind the
scenes
#1: Analyzing each Test
#2: Metrics for each Test
#3: Detecting Regression
based on Measure
DevOps: Find Solutions, Not More Defects
Quality-Metrics based
Build Status
Integrate
Pull data into Jenkins, Bamboo ...
Integration with XLRelease
Collect and Analyze
Quality Metrics
Recap!
#1: Define your Metrics
# of Service Calls Bytes Sent & Received
# of Worker
Threads
# of Worker
Threads
# of SQL Calls, # of
Same SQLs # of DB
Connections
# of SQL Calls, # of
Same SQLs # of DB
Connections
#2: Level Up your Team
#3: Automate
#4: Integrate
DevOps: Find Solutions, Not More Defects
Draw better Unicorns 
89 @Dynatrace
Questions
Slides: slideshare.net/grabnerandi
Get Tools: bit.ly/dttrial
YouTube Tutorials: bit.ly/dttutorials
Contact Me: agrabner@dynatrace.com
Follow Me: @grabnerandi
Read More: blog.dynatrace.com
90 @Dynatrace
Andreas Grabner
Dynatrace Developer Advocate
@grabnerandi
http://blog.dynatrace.com

More Related Content

DevOps: Find Solutions, Not More Defects