SlideShare a Scribd company logo
Past Experiences and Future
Challenges using Automatic
Performance Modelling to
Complement Testing
Paul Brebner, CTO
A NICTA/Data61/CSIRO Spin-out Company
16/03/2016 © Performance Assurance Pty Ltd 1
Performance modelling background
• My background is analysis of distributed systems, middleware, GRID,
architecture, performance, benchmarking (e.g. SPECjAppServer),
sensor web performance, etc
• Since 2007 project in NICTA to develop tools to assist mostly
government systems of systems to perform better in advance
• Service Oriented Performance Modelling tool
• Model driven (SOA performance meta model)
• GUI
• Simulation for metric prediction
• Enables modelling at level of workloads, composite and simple services,
servers.
• Used during early, middle, later lifecycle for lots of real systems
16/03/2016 Performance Assurance Pty Ltd 2
Performance modelling background
• BUT Manual model building (structure, parameterisation, calibration) is
• Time consuming
• Expensive
• Error prone
• Limited to model complexity that can be built manually
• Not easily repeatable or maintainable
• Not accurate enough for some problems (need high quality and quantity of
performance data)
• Not fast enough for agile development
• Last 3 years we have been a start up company, have to make $$$$$$
• Most customers have APM products
• All customers want to increase speed and number of releases, reduce time and
costs of testing
• Solution is to use automatic model building from APM data
• Cheaper and faster and more accurate
• Solves new problems, e.g. DevOps
16/03/2016 Performance Assurance Pty Ltd 3
Automatic performance modelling from APM
data
• Only use available APM data
• Use automatable (or potentially automatable) ways of getting the
data from the APM into our Service Oriented Performance Modelling
(SOPM) modelling/simulation tool (SaaS)
• Automatically build and parameterise the performance data from the
APM data
• Multiple model types with various trade-offs, accuracy for
capacity/response times, and model complexity/ability to change
model aspects
• Currently different model types are produced as part of the APM ->
modelling tool transformation phase
16/03/2016 Performance Assurance Pty Ltd 4
Application
DynatraceSF
Dynatrace
SF
PurePath
Dash
Browser
PP
XML Converter
Model
XML
Modelling
SaaS
1
2
3
4
5
SF Dynatrace Session File
PP
XML
Dynatrace Server REST API PurePath XML File
Model
XML XML Model File
KEY
Dynatrace Transaction flow dashboard
16/03/2016 Performance Assurance Pty Ltd 6
Produces: Simple capacity model
16/03/2016 Performance Assurance Pty Ltd 7
Dynatrace PurePath Dashboard (detailed per
transaction call tree)
16/03/2016 Performance Assurance Pty Ltd 8
Produces: Transactional model (portion)
16/03/2016 Performance Assurance Pty Ltd 9
Experiences with three projects
• Project 1
• P2V migration
• Project 2
• C2V test -> prod
• Project 3
• DevOps
• Focus of this talk, come to main ICPE talk for others 
16/03/2016 Performance Assurance Pty Ltd 10
Project 3
• Devops
• Focus on response time SLAs
• Deployment/resources
• Faster cycle time
• More releases
• Less and cheaper testing
• Challenge
• Proprietary in-house APM tool
• “Profile point” times only
• Required pre-processing (using Hive)
16/03/2016 Performance Assurance Pty Ltd 11
Focus
• Risk service
• Heavily used
• Multiple services
• New services added all the time
• Services had different time and memory profiles
• Would a new service break the SLA?
• Baseline model accurate to 10% response time
16/03/2016 Performance Assurance Pty Ltd 12
Alternatives modelled
• Changing transaction mix
• Changing arrival rates
• Making some services asynchronous, concurrent
• Adding new risk assessment services
• More complex
• Optimising deployment of services to multiple servers taking into account
memory and CPU usage, and response time
• A type of box/bin packing problem
• 4 services out of 30 used 50% of CPU
16/03/2016 Performance Assurance Pty Ltd 13
Challenges
• Pre-processing APM data “profile points”
• Low load for APM data sample c.f. target load
• Used calibration from load tests on pre-production to improve accuracy
• No CPU time breakdown from APM data
• But GC had a profile point (and was significant)
• Transaction types not in APM data
• Had to infer them, either too few or too many
16/03/2016 Performance Assurance Pty Ltd 14
16/03/2016 Performance Assurance Pty Ltd 15
16/03/2016 Performance Assurance Pty Ltd 16
16/03/2016 Performance Assurance Pty Ltd 17
DevOps
• Goal is to shift left and shift right
• Shift right
• Build and continuously maintain performance model of production to accurately model
response times, scalability, capacity and resource requirements under target production
loads
• Shift left
• Calibrate production performance model for development
• Enable developers to make code changes, explore impact with unit tests and
development APM to incrementally rebuild performance models
• To understand likely performance and scalability impact
• Speed up development cycle as no longer have to wait (weeks) for performance testing
16/03/2016 Performance Assurance Pty Ltd 18
Existing Dev, Test, Prod lifecycle: Delays in
feedback: Takes weeks per iteration, test env is a
bottleneck, environments are different
Dev Test Prod
Late Feedback Late Feedback
Deploy to test Deploy to prod
DevOps + APM: earlier but not completely
accurate performance feedback
i.e. environments are different so APM data is
different across lifecycle
Dev Test Prod
Late Feedback
Deploy to test Deploy to prod
APM APM APM
Earlier Feedback
DevOps + APM + Modelling: Earlier more accurate
performance predictions -> decreased cycle time
16/03/2016 Performance Assurance Pty Ltd 21
Dev Test Prod
Deploy to test Deploy to prod
APM APM APM
Early Feedback
Base
Model
Dev
Model
Incremental updates to
Base model with dev changes
Baseline model buildDev Model Update
Calibrate prod model for dev
Benefits
• Changes in code in Dev
• Unit test
• APM performance data
• Incrementally update calibrated performance model
• Predict performance and scalability impact for Prod env
• Cheaper and faster than waiting for testing and deployment to Prod
• Sensitivity analysis could determine areas of greater sensitivity to
changes and thresholds
• These would be subject to more rigorous modelling and testing
16/03/2016 Performance Assurance Pty Ltd 22
DevOps + APM + Modelling: In reality lots of
dev, different environments
16/03/2016 Performance Assurance Pty Ltd 23
Dev Test
Prod
Deploy to prod
APM APM APM
Base
Model
Dev
Model
Baseline model build
Dev
APM
Dev
Model
Dev
APM
Dev
Model
Dev
APM
Dev
Model
Challenges
• Calibration of performance models for use in Dev from Test and Prod
• Once predictions are made how do we test if they are supported by the APM
data or not? i.e. if null hypothesis is “changes in dev will have no impact on
prod”, how do we determine if this is supported by evidence or not?
• Is it scalable?
• Lots of developers and changes to subsets of code
• Concurrent and compounding changes would need centralised model with all changes incorporated
• What about changes to infrastructure code that could impact everything?
• How to support this in Dev APM and modelling tools
• ROI
• Depending on cost of testing, cost of initial setting up APM and modelling tools and
incremental costs, number of tests and modelling predictions per cycle, and value of reduced
cycle times and earlier performance predictions, ROI may occur earlier or later or never…
• Example
• Assumes model calibrated once per release from performance APM data
• Assumes one actual load test per release
• What’s tradeoff between multiple tests per release vs 1 test and multiple modelling predictions?
16/03/2016 Performance Assurance Pty Ltd 24
Costs: Modelling cheaper after 3 changes
16/03/2016 Performance Assurance Pty Ltd 25
0
5000
10000
15000
20000
25000
30000
35000
40000
45000
0 2 4 6 8 10 12
Cost($)
Number of changes tested/modelled
Costs of LoadTest only and HybridApproach
LoadTestOnly Modelling
Speed: Average hours to test/model a number of
code changes (per model calibration)
16/03/2016 Performance Assurance Pty Ltd 26
0
10
20
30
40
50
60
70
80
90
0 2 4 6 8 10 12
Averagetime(hours)
Number of changes per calibrated model
Average hours to test/model changes
LoadTestAvgHourPerChange ModellingAvgHoursPerChange
Send us your data
• Free trial of simple Dynatrace capacity models
• http://www.performance-assurance.com.au/send-us-your-data/
• http://www.performance-assurance.com.au/introduction-to-
automatic-model-building/
• Send us a sample Dyntrace session file and we’ll send you a link to a
demo capacity model
• Particularly interested in trending technologies and use cases, e.g.
Micro-services, Containers, Big Data, IoT, etc
• Free Personal Dynatrace license from: http://bit.ly/dtpersonal
16/03/2016 Performance Assurance Pty Ltd 29

More Related Content

PPTX
Neotys PAC - Stijn Schepers
DOC
DamonLacovicresume122016noADDNew
PPT
Test automation
PPT
Performance and load testing
PPT
DOCX
Resume - Santi Gong__
PDF
Pharma Research Automation by Connecting Researchers with Robots and Systems ...
PPTX
Performance Engineering
Neotys PAC - Stijn Schepers
DamonLacovicresume122016noADDNew
Test automation
Performance and load testing
Resume - Santi Gong__
Pharma Research Automation by Connecting Researchers with Robots and Systems ...
Performance Engineering

What's hot (20)

DOC
Anupam_Chaubey_QA_Resume_1Sep
PPTX
Express bpel platform-v1.0
PPTX
VCS_QAPerformanceSlides
PDF
Rit 8.5.0 training release notes
PDF
LoadRunner walkthrough
PPT
Web Performance Testing
DOC
Ganesamoorthi P_Performance_Testing_Loadrunner_2.9_yrs_of_Exp
PPTX
QSpiders - Introduction to HP Load Runner
PPTX
Tools of the Trade: Load Testing - Ignite session at WebPerfDays NY 14
PPTX
Neev Load Testing Services
PPT
Conway Case Study - Optimizing Application Integration SDLC
PDF
Testing SAP HANA applications with SAP LoadRunner by HP
PDF
Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...
PPTX
Cloud Performance Testing with LoadRunner
PPTX
IBM Maximo Performance Tuning
PPT
Performance Testing With Loadrunner
PPTX
Diab Compiler Quality Overview
PDF
LoadRunner Performance Testing
PDF
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
PDF
Sap tao 2.0 Material
Anupam_Chaubey_QA_Resume_1Sep
Express bpel platform-v1.0
VCS_QAPerformanceSlides
Rit 8.5.0 training release notes
LoadRunner walkthrough
Web Performance Testing
Ganesamoorthi P_Performance_Testing_Loadrunner_2.9_yrs_of_Exp
QSpiders - Introduction to HP Load Runner
Tools of the Trade: Load Testing - Ignite session at WebPerfDays NY 14
Neev Load Testing Services
Conway Case Study - Optimizing Application Integration SDLC
Testing SAP HANA applications with SAP LoadRunner by HP
Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...
Cloud Performance Testing with LoadRunner
IBM Maximo Performance Tuning
Performance Testing With Loadrunner
Diab Compiler Quality Overview
LoadRunner Performance Testing
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
Sap tao 2.0 Material
Ad

Viewers also liked (20)

PDF
Comparing linking versus integration in hybrid modelling – combining TIMES wi...
PDF
Automatic Performance Modelling from Application Performance Management (APM)...
PDF
Introduction to programming - class 11
PDF
LF_XtremeLA_Blacksburg_Report
PDF
Linked Ph
PPT
Pildimäng
PDF
PPTX
test ddds
DOCX
Map of the New Museum
PDF
Introduction to programming - exercises 2
PPTX
paradeigma
PDF
Etihad Buy On Board Menu
PDF
Introduction to programming - class 1
PDF
Compuware ASEAN APM User Conference 2013 - APM Performance Journey Presentation
PDF
Modern Monitoring - devopsdays Cuba
PDF
keynote modelsward 2017
ODP
Multiplication of Integers
PPTX
modeling and analysis of subsea pipeline by fem
PDF
Tracing 2000+ polyglot microservices at Uber with Jaeger and OpenTracing
PDF
Infrastructure as Code Maturity Model v1
Comparing linking versus integration in hybrid modelling – combining TIMES wi...
Automatic Performance Modelling from Application Performance Management (APM)...
Introduction to programming - class 11
LF_XtremeLA_Blacksburg_Report
Linked Ph
Pildimäng
test ddds
Map of the New Museum
Introduction to programming - exercises 2
paradeigma
Etihad Buy On Board Menu
Introduction to programming - class 1
Compuware ASEAN APM User Conference 2013 - APM Performance Journey Presentation
Modern Monitoring - devopsdays Cuba
keynote modelsward 2017
Multiplication of Integers
modeling and analysis of subsea pipeline by fem
Tracing 2000+ polyglot microservices at Uber with Jaeger and OpenTracing
Infrastructure as Code Maturity Model v1
Ad

Similar to Past Experiences and Future Challenges using Automatic Performance Modelling to Complement Testing (20)

PDF
Quantifying DevOps Adoption Empirically for Demonstrable ROI
PPTX
CTE Overview Presentation
PDF
Continuous Performance Testing: The New Standard
PPTX
Presentation on 3 Pillars of DevOps - Kovair DevOps
PPTX
Reinventing Performance Testing, CMG imPACt 2016 slides
PPT
Test automation lessons from WebSphere Application Server
PPTX
Everything You Need to Build a Risk-Based Testing Strategy for SAP
PDF
DevOps in the Hybrid Cloud
PDF
CTE_corporate_overview
PPTX
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
PDF
Expert sizing & methods of sizing validation
PDF
Dev ops for mainframe innovate session 2402
PDF
Simplify Salesforce Testing with AI-Driven Codeless Tools
PPTX
Curiosity Software, Infuse and Kumoco present: The Democratisation of Testing
PDF
Migration to the cloud
PDF
Cloud-based Test Microservices JavaOne 2014
PPT
Keyword Driven Automation
PPTX
Capstone Technology Canada - Advanced Process Control Project Lifecycle
DOCX
Prem_Papabathini_Resume_2016
PPTX
Shorten Business Life Cycle Using DevOps
Quantifying DevOps Adoption Empirically for Demonstrable ROI
CTE Overview Presentation
Continuous Performance Testing: The New Standard
Presentation on 3 Pillars of DevOps - Kovair DevOps
Reinventing Performance Testing, CMG imPACt 2016 slides
Test automation lessons from WebSphere Application Server
Everything You Need to Build a Risk-Based Testing Strategy for SAP
DevOps in the Hybrid Cloud
CTE_corporate_overview
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
Expert sizing & methods of sizing validation
Dev ops for mainframe innovate session 2402
Simplify Salesforce Testing with AI-Driven Codeless Tools
Curiosity Software, Infuse and Kumoco present: The Democratisation of Testing
Migration to the cloud
Cloud-based Test Microservices JavaOne 2014
Keyword Driven Automation
Capstone Technology Canada - Advanced Process Control Project Lifecycle
Prem_Papabathini_Resume_2016
Shorten Business Life Cycle Using DevOps

More from Paul Brebner (20)

PPTX
Streaming More For Less With Apache Kafka Tiered Storage
PDF
30 Of My Favourite Open Source Technologies In 30 Minutes
PDF
Superpower Your Apache Kafka Applications Development with Complementary Open...
PDF
Why Apache Kafka Clusters Are Like Galaxies (And Other Cosmic Kafka Quandarie...
PDF
Architecting Applications With Multiple Open Source Big Data Technologies
PDF
The Impact of Hardware and Software Version Changes on Apache Kafka Performan...
PDF
Apache ZooKeeper and Apache Curator: Meet the Dining Philosophers
PDF
Spinning your Drones with Cadence Workflows and Apache Kafka
PDF
Change Data Capture (CDC) With Kafka Connect® and the Debezium PostgreSQL Sou...
PDF
Scaling Open Source Big Data Cloud Applications is Easy/Hard
PDF
OPEN Talk: Scaling Open Source Big Data Cloud Applications is Easy/Hard
PDF
A Visual Introduction to Apache Kafka
PDF
Massively Scalable Real-time Geospatial Anomaly Detection with Apache Kafka a...
PDF
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...
PDF
Grid Middleware – Principles, Practice and Potential
PDF
Grid middleware is easy to install, configure, secure, debug and manage acros...
PPTX
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
PPTX
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
PPTX
Melbourne Big Data Meetup Talk: Scaling a Real-Time Anomaly Detection Applica...
PPTX
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
Streaming More For Less With Apache Kafka Tiered Storage
30 Of My Favourite Open Source Technologies In 30 Minutes
Superpower Your Apache Kafka Applications Development with Complementary Open...
Why Apache Kafka Clusters Are Like Galaxies (And Other Cosmic Kafka Quandarie...
Architecting Applications With Multiple Open Source Big Data Technologies
The Impact of Hardware and Software Version Changes on Apache Kafka Performan...
Apache ZooKeeper and Apache Curator: Meet the Dining Philosophers
Spinning your Drones with Cadence Workflows and Apache Kafka
Change Data Capture (CDC) With Kafka Connect® and the Debezium PostgreSQL Sou...
Scaling Open Source Big Data Cloud Applications is Easy/Hard
OPEN Talk: Scaling Open Source Big Data Cloud Applications is Easy/Hard
A Visual Introduction to Apache Kafka
Massively Scalable Real-time Geospatial Anomaly Detection with Apache Kafka a...
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...
Grid Middleware – Principles, Practice and Potential
Grid middleware is easy to install, configure, secure, debug and manage acros...
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
Melbourne Big Data Meetup Talk: Scaling a Real-Time Anomaly Detection Applica...
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...

Recently uploaded (20)

PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Machine learning based COVID-19 study performance prediction
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Empathic Computing: Creating Shared Understanding
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
Cloud computing and distributed systems.
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
cuic standard and advanced reporting.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
A Presentation on Artificial Intelligence
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Unlocking AI with Model Context Protocol (MCP)
Machine learning based COVID-19 study performance prediction
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
MIND Revenue Release Quarter 2 2025 Press Release
A comparative analysis of optical character recognition models for extracting...
Building Integrated photovoltaic BIPV_UPV.pdf
Empathic Computing: Creating Shared Understanding
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Assigned Numbers - 2025 - Bluetooth® Document
Cloud computing and distributed systems.
The AUB Centre for AI in Media Proposal.docx
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Review of recent advances in non-invasive hemoglobin estimation
cuic standard and advanced reporting.pdf
Encapsulation_ Review paper, used for researhc scholars
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
A Presentation on Artificial Intelligence
Diabetes mellitus diagnosis method based random forest with bat algorithm
Profit Center Accounting in SAP S/4HANA, S4F28 Col11

Past Experiences and Future Challenges using Automatic Performance Modelling to Complement Testing

  • 1. Past Experiences and Future Challenges using Automatic Performance Modelling to Complement Testing Paul Brebner, CTO A NICTA/Data61/CSIRO Spin-out Company 16/03/2016 © Performance Assurance Pty Ltd 1
  • 2. Performance modelling background • My background is analysis of distributed systems, middleware, GRID, architecture, performance, benchmarking (e.g. SPECjAppServer), sensor web performance, etc • Since 2007 project in NICTA to develop tools to assist mostly government systems of systems to perform better in advance • Service Oriented Performance Modelling tool • Model driven (SOA performance meta model) • GUI • Simulation for metric prediction • Enables modelling at level of workloads, composite and simple services, servers. • Used during early, middle, later lifecycle for lots of real systems 16/03/2016 Performance Assurance Pty Ltd 2
  • 3. Performance modelling background • BUT Manual model building (structure, parameterisation, calibration) is • Time consuming • Expensive • Error prone • Limited to model complexity that can be built manually • Not easily repeatable or maintainable • Not accurate enough for some problems (need high quality and quantity of performance data) • Not fast enough for agile development • Last 3 years we have been a start up company, have to make $$$$$$ • Most customers have APM products • All customers want to increase speed and number of releases, reduce time and costs of testing • Solution is to use automatic model building from APM data • Cheaper and faster and more accurate • Solves new problems, e.g. DevOps 16/03/2016 Performance Assurance Pty Ltd 3
  • 4. Automatic performance modelling from APM data • Only use available APM data • Use automatable (or potentially automatable) ways of getting the data from the APM into our Service Oriented Performance Modelling (SOPM) modelling/simulation tool (SaaS) • Automatically build and parameterise the performance data from the APM data • Multiple model types with various trade-offs, accuracy for capacity/response times, and model complexity/ability to change model aspects • Currently different model types are produced as part of the APM -> modelling tool transformation phase 16/03/2016 Performance Assurance Pty Ltd 4
  • 5. Application DynatraceSF Dynatrace SF PurePath Dash Browser PP XML Converter Model XML Modelling SaaS 1 2 3 4 5 SF Dynatrace Session File PP XML Dynatrace Server REST API PurePath XML File Model XML XML Model File KEY
  • 6. Dynatrace Transaction flow dashboard 16/03/2016 Performance Assurance Pty Ltd 6
  • 7. Produces: Simple capacity model 16/03/2016 Performance Assurance Pty Ltd 7
  • 8. Dynatrace PurePath Dashboard (detailed per transaction call tree) 16/03/2016 Performance Assurance Pty Ltd 8
  • 9. Produces: Transactional model (portion) 16/03/2016 Performance Assurance Pty Ltd 9
  • 10. Experiences with three projects • Project 1 • P2V migration • Project 2 • C2V test -> prod • Project 3 • DevOps • Focus of this talk, come to main ICPE talk for others  16/03/2016 Performance Assurance Pty Ltd 10
  • 11. Project 3 • Devops • Focus on response time SLAs • Deployment/resources • Faster cycle time • More releases • Less and cheaper testing • Challenge • Proprietary in-house APM tool • “Profile point” times only • Required pre-processing (using Hive) 16/03/2016 Performance Assurance Pty Ltd 11
  • 12. Focus • Risk service • Heavily used • Multiple services • New services added all the time • Services had different time and memory profiles • Would a new service break the SLA? • Baseline model accurate to 10% response time 16/03/2016 Performance Assurance Pty Ltd 12
  • 13. Alternatives modelled • Changing transaction mix • Changing arrival rates • Making some services asynchronous, concurrent • Adding new risk assessment services • More complex • Optimising deployment of services to multiple servers taking into account memory and CPU usage, and response time • A type of box/bin packing problem • 4 services out of 30 used 50% of CPU 16/03/2016 Performance Assurance Pty Ltd 13
  • 14. Challenges • Pre-processing APM data “profile points” • Low load for APM data sample c.f. target load • Used calibration from load tests on pre-production to improve accuracy • No CPU time breakdown from APM data • But GC had a profile point (and was significant) • Transaction types not in APM data • Had to infer them, either too few or too many 16/03/2016 Performance Assurance Pty Ltd 14
  • 18. DevOps • Goal is to shift left and shift right • Shift right • Build and continuously maintain performance model of production to accurately model response times, scalability, capacity and resource requirements under target production loads • Shift left • Calibrate production performance model for development • Enable developers to make code changes, explore impact with unit tests and development APM to incrementally rebuild performance models • To understand likely performance and scalability impact • Speed up development cycle as no longer have to wait (weeks) for performance testing 16/03/2016 Performance Assurance Pty Ltd 18
  • 19. Existing Dev, Test, Prod lifecycle: Delays in feedback: Takes weeks per iteration, test env is a bottleneck, environments are different Dev Test Prod Late Feedback Late Feedback Deploy to test Deploy to prod
  • 20. DevOps + APM: earlier but not completely accurate performance feedback i.e. environments are different so APM data is different across lifecycle Dev Test Prod Late Feedback Deploy to test Deploy to prod APM APM APM Earlier Feedback
  • 21. DevOps + APM + Modelling: Earlier more accurate performance predictions -> decreased cycle time 16/03/2016 Performance Assurance Pty Ltd 21 Dev Test Prod Deploy to test Deploy to prod APM APM APM Early Feedback Base Model Dev Model Incremental updates to Base model with dev changes Baseline model buildDev Model Update Calibrate prod model for dev
  • 22. Benefits • Changes in code in Dev • Unit test • APM performance data • Incrementally update calibrated performance model • Predict performance and scalability impact for Prod env • Cheaper and faster than waiting for testing and deployment to Prod • Sensitivity analysis could determine areas of greater sensitivity to changes and thresholds • These would be subject to more rigorous modelling and testing 16/03/2016 Performance Assurance Pty Ltd 22
  • 23. DevOps + APM + Modelling: In reality lots of dev, different environments 16/03/2016 Performance Assurance Pty Ltd 23 Dev Test Prod Deploy to prod APM APM APM Base Model Dev Model Baseline model build Dev APM Dev Model Dev APM Dev Model Dev APM Dev Model
  • 24. Challenges • Calibration of performance models for use in Dev from Test and Prod • Once predictions are made how do we test if they are supported by the APM data or not? i.e. if null hypothesis is “changes in dev will have no impact on prod”, how do we determine if this is supported by evidence or not? • Is it scalable? • Lots of developers and changes to subsets of code • Concurrent and compounding changes would need centralised model with all changes incorporated • What about changes to infrastructure code that could impact everything? • How to support this in Dev APM and modelling tools • ROI • Depending on cost of testing, cost of initial setting up APM and modelling tools and incremental costs, number of tests and modelling predictions per cycle, and value of reduced cycle times and earlier performance predictions, ROI may occur earlier or later or never… • Example • Assumes model calibrated once per release from performance APM data • Assumes one actual load test per release • What’s tradeoff between multiple tests per release vs 1 test and multiple modelling predictions? 16/03/2016 Performance Assurance Pty Ltd 24
  • 25. Costs: Modelling cheaper after 3 changes 16/03/2016 Performance Assurance Pty Ltd 25 0 5000 10000 15000 20000 25000 30000 35000 40000 45000 0 2 4 6 8 10 12 Cost($) Number of changes tested/modelled Costs of LoadTest only and HybridApproach LoadTestOnly Modelling
  • 26. Speed: Average hours to test/model a number of code changes (per model calibration) 16/03/2016 Performance Assurance Pty Ltd 26 0 10 20 30 40 50 60 70 80 90 0 2 4 6 8 10 12 Averagetime(hours) Number of changes per calibrated model Average hours to test/model changes LoadTestAvgHourPerChange ModellingAvgHoursPerChange
  • 27. Send us your data • Free trial of simple Dynatrace capacity models • http://www.performance-assurance.com.au/send-us-your-data/ • http://www.performance-assurance.com.au/introduction-to- automatic-model-building/ • Send us a sample Dyntrace session file and we’ll send you a link to a demo capacity model • Particularly interested in trending technologies and use cases, e.g. Micro-services, Containers, Big Data, IoT, etc • Free Personal Dynatrace license from: http://bit.ly/dtpersonal 16/03/2016 Performance Assurance Pty Ltd 29