SlideShare a Scribd company logo
© Utopia Solutions
Performance Testing in the Agile Lifecycle
Lee Barnes, CTO
Utopia Solutions
@USI_LeeBarnes
© Utopia Solutions2
Key Questions
What needs to change?
How do we make those changes?
Why don’t traditional performance
testing models fit nicely with agile?
© Utopia Solutions3
Case Study
Back story…
• Large global manufacturer
• Performance Testing CoE in operation for ~10 yrs
• Seen as a huge value to the enterprise
• Began moving toward agile a few years ago…
and the luster of the CoE began to dull…
© Utopia Solutions4
Traditional Performance Testing Model
Center of
Excellence
Project 1
Project 2 Project
N
Provides Consistency in…
• Resources / Skills
• Processes
• Deliverable Quality
• Technology
Request Test
Project
Team
Center of
Excellence
Perform Discovery
Develop & Execute
Deliver ResultsEvaluate Results
Info / Environment
© Utopia Solutions5
CoE in the Waterfall Years
Plan Design Build Test Deploy
• One size fits all
• Strict entry criteria
• Performed late in SDLC
• One-way communication of
results
Service Characteristics
Performance Testing
Too late!
© Utopia Solutions6
Agile Development
Analyze
Develop
Integrate
Acceptance
Test
Deploy
Where does performance
testing fit?
© Utopia Solutions7
Early Attempts on Agile Projects
Sprint 1 Sprint 2 Sprint 3 … Deploy
Agile
Performance Testing
Same Process…
Same Risk!
© Utopia Solutions8
Early Attempts on Agile Projects
Sprint 1 Sprint 2 Sprint 3 … Deploy
Agile
Performance
Testing
Performance
Testing
Performance
Testing
Performance
Testing
CoE Approach
• Rigid
• 4 week test cycle
Agile Approach
• Flexible
• 2 week sprints
+ =
© Utopia Solutions
Back to the drawing
board…
© Utopia Solutions10
Early Cycle /
Ongoing
Performance
Analysis
Establish Objectives
Ultimate Goal…
Late Cycle
Performance
Testing
Shift Left
© Utopia Solutions11
Identify Gaps
What’s stopping us from analyzing performance
continuously?
• Performance objectives weren’t part of
user stories
• Agile teams lacked performance
engineering expertise
• APM tools / skills were non-existent
© Utopia Solutions12
Breakdown the Barrier Between CoE and Agile Teams
© Utopia Solutions13
Disclaimers
It was not easy.
The changes discussed on the next few
slides were implemented over a two
year duration.
It was not painless.
© Utopia Solutions14
Performance Testing in an Agile Environment
Capture non-functional requirements
Make performance everyone’s job
Create a role to coordinate
performance activities
CoE performance test architects
become mentors
Begin developing a
performance focused
culture
© Utopia Solutions15
Incorporating Performance Requirements…
… as acceptance criteria for existing user stories
As a dealer I want to create a
product configuration for an order so
that my customer can purchase the
equipment they need
• All steps in the product config.
process will have a response time
of less than 2 seconds
• 1,500 dealers are concurrently
using the system to configure
products for customer orders
… as technical stories
As a dealer, I want the response time of any step in the product
configuration process to be less than 2 seconds
… as constraints
The system will respond in less than 2 seconds for all steps in the
product configuration process for a maximum of 1,500 concurrent users
configuring orders
© Utopia Solutions16
Performance Testing in an Agile Environment
Unit performance testing
Component / system level performance
testing
Include performance testing in the CI
chain
Incorporate performance
testing / analysis into
each sprint
© Utopia Solutions17
Performance Unit Testing
Start with existing unit tests
“Decorate” them with
timers and load
Monitor results across
builds
Build 1 Build 2 Build 3 Build 4
© Utopia Solutions18
Beyond Unit Testing
Map user stories onto system
components
Benchmark in development / QA
environment
Look for trends in measurements vs.
absolutes
Use service virtualization for 3rd party
or yet to be developed components
Incorporate as part of the CI chain
Harden scripts against application
changes
Component and
system level testing
© Utopia Solutions19
Adding Performance Tests to CI
Lessons Learned
Custom plug-ins exist to run performance
tests as part of the CI chain – very useful
People get mad when you unnecessarily
break the build
They get really mad when you can’t
figure out why you broke the build
Add error handling and logging to
scripts to enable quick failure
investigation
Allow for non-production-like
environment
Set your response time tolerances
and client timeouts accordingly
© Utopia Solutions20
Waterfall Agile
Responsibility for
Performance
Performance CoE Everyone
Role of CoE End of cycle PT Provide mentorship to agile team
Pre-deployment system PT
Role of
development
Throw system over wall
Wait for results
Continuous focus on performance
Tools Traditional load test tools APM tools
Service virtualization
Continuous integration
Traditional load test tools
Environment Dedicated / production-like Development / desktop
Deliverable Boiler plate results delivered
just prior to release
Continuous feed of actionable
data
Waterfall Agile
Responsibility for
Performance
Performance CoE
Role of CoE End of cycle PT
Role of
development
Throw system over wall
Wait for results
Tools Traditional load test tools
Environment Dedicated / production-like
Deliverable Boiler plate results delivered
just prior to release
Performance Testing in an Agile Environment
Transformation Summary
© Utopia Solutions21
Summary
Key takeaways…
• Agile performance testing is not more
/ quicker performance tests it’s a
continuous focus on performance
• Performance is part of everyone’s job
• Success requires a shift in people,
process and technology
© Utopia Solutions22
Questions…
…. and Answers!
Direct future questions to:
Lee Barnes
Founder and CTO
Utopia Solutions, Inc.
Email: lee.barnes@utopiasolutions.com
Twitter: twitter.com/USI_LeeBarnes
LinkedIn: linkedin.com/in/leebarnes
Blog: www.RaiseYourMQ.com
?
© Utopia Solutions
Links to Unit Performance Testing Frameworks
• JUnitPerf – http://www.clarkware.com/software/JUnitPerf.html
• P-unit – http://p-unit.sourceforge.net/

More Related Content

What's hot

Introducing QA Into an Agile Environment
Introducing QA Into an Agile EnvironmentIntroducing QA Into an Agile Environment
Introducing QA Into an Agile Environment
Joseph Beale
 
Agile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterAgile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile Tester
Declan Whelan
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
Richard Bishop
 
Shift left shift-right performance testing for superior end-user by Arun Dutta
Shift left shift-right performance testing for superior end-user by Arun DuttaShift left shift-right performance testing for superior end-user by Arun Dutta
Shift left shift-right performance testing for superior end-user by Arun Dutta
Software Testing Board
 
Performance Measurement and Monitoring for Salesforce Web & Mobile Apps
Performance Measurement and Monitoring for Salesforce Web & Mobile AppsPerformance Measurement and Monitoring for Salesforce Web & Mobile Apps
Performance Measurement and Monitoring for Salesforce Web & Mobile AppsSalesforce Developers
 
Shift Left & Shift Right Approach in Testing
Shift Left  &  Shift Right  Approach in TestingShift Left  &  Shift Right  Approach in Testing
Shift Left & Shift Right Approach in Testing
Riswan
 
Chapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software LifecycleChapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software Lifecycle
Neeraj Kumar Singh
 
Performance testing
Performance testingPerformance testing
Performance testing
Ranpreet kaur
 
Performance testing
Performance testingPerformance testing
Performance testing
Jyoti Babbar
 
Load Testing Strategy 101
Load Testing Strategy 101Load Testing Strategy 101
Load Testing Strategy 101
iradari
 
Testing & Quality Assurance
Testing & Quality AssuranceTesting & Quality Assurance
Testing & Quality Assurance
Anand Subramaniam
 
Test Strategy and Planning
Test Strategy and PlanningTest Strategy and Planning
Test Strategy and Planning
Sachin-QA
 
ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level Basic
Selin Gungor
 
Agile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User GroupAgile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User Group
suwalki24.pl
 
Scrum Testing Methodology
Scrum Testing MethodologyScrum Testing Methodology
Scrum Testing Methodology
Gaya1985
 
Dynamic Testing
Dynamic TestingDynamic Testing
Dynamic Testing
Jimi Patel
 
Chapter 4 - Performance Testing Tasks
Chapter 4 - Performance Testing TasksChapter 4 - Performance Testing Tasks
Chapter 4 - Performance Testing Tasks
Neeraj Kumar Singh
 
Types of Software testing
Types of  Software testingTypes of  Software testing
Types of Software testingMakan Singh
 
QA. Load Testing
QA. Load TestingQA. Load Testing
QA. Load Testing
Alex Galkin
 

What's hot (20)

Introducing QA Into an Agile Environment
Introducing QA Into an Agile EnvironmentIntroducing QA Into an Agile Environment
Introducing QA Into an Agile Environment
 
Agile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterAgile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile Tester
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
 
Shift left shift-right performance testing for superior end-user by Arun Dutta
Shift left shift-right performance testing for superior end-user by Arun DuttaShift left shift-right performance testing for superior end-user by Arun Dutta
Shift left shift-right performance testing for superior end-user by Arun Dutta
 
Performance Measurement and Monitoring for Salesforce Web & Mobile Apps
Performance Measurement and Monitoring for Salesforce Web & Mobile AppsPerformance Measurement and Monitoring for Salesforce Web & Mobile Apps
Performance Measurement and Monitoring for Salesforce Web & Mobile Apps
 
Shift Left & Shift Right Approach in Testing
Shift Left  &  Shift Right  Approach in TestingShift Left  &  Shift Right  Approach in Testing
Shift Left & Shift Right Approach in Testing
 
Chapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software LifecycleChapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software Lifecycle
 
Performance testing
Performance testingPerformance testing
Performance testing
 
Performance testing
Performance testingPerformance testing
Performance testing
 
Load Testing Strategy 101
Load Testing Strategy 101Load Testing Strategy 101
Load Testing Strategy 101
 
Testing & Quality Assurance
Testing & Quality AssuranceTesting & Quality Assurance
Testing & Quality Assurance
 
Test Strategy and Planning
Test Strategy and PlanningTest Strategy and Planning
Test Strategy and Planning
 
ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level Basic
 
Agile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User GroupAgile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User Group
 
Test Life Cycle
Test Life CycleTest Life Cycle
Test Life Cycle
 
Scrum Testing Methodology
Scrum Testing MethodologyScrum Testing Methodology
Scrum Testing Methodology
 
Dynamic Testing
Dynamic TestingDynamic Testing
Dynamic Testing
 
Chapter 4 - Performance Testing Tasks
Chapter 4 - Performance Testing TasksChapter 4 - Performance Testing Tasks
Chapter 4 - Performance Testing Tasks
 
Types of Software testing
Types of  Software testingTypes of  Software testing
Types of Software testing
 
QA. Load Testing
QA. Load TestingQA. Load Testing
QA. Load Testing
 

Similar to Performance Testing in the Agile Lifecycle

Agile Load Testing in the Real World
Agile Load Testing in the Real WorldAgile Load Testing in the Real World
Agile Load Testing in the Real World
Lee Barnes
 
Agile Load Testing In The Real World
Agile Load Testing In The Real WorldAgile Load Testing In The Real World
Agile Load Testing In The Real World
SOASTA
 
Agile Load Testing In The Real World
Agile Load Testing In The Real WorldAgile Load Testing In The Real World
Agile Load Testing In The Real World
SOASTA
 
Performance Testing in the Agile Lifecycle
Performance Testing in the Agile LifecyclePerformance Testing in the Agile Lifecycle
Performance Testing in the Agile Lifecycle
TechWell
 
Continuous Performance Testing in DevOps - Lee Barnes
Continuous Performance Testing in DevOps - Lee BarnesContinuous Performance Testing in DevOps - Lee Barnes
Continuous Performance Testing in DevOps - Lee Barnes
QA or the Highway
 
Test automation lessons from WebSphere Application Server
Test automation lessons from WebSphere Application ServerTest automation lessons from WebSphere Application Server
Test automation lessons from WebSphere Application Server
Robbie Minshall
 
Shorten Business Life Cycle Using DevOps
Shorten Business Life Cycle Using DevOpsShorten Business Life Cycle Using DevOps
Shorten Business Life Cycle Using DevOps
Perfecto Mobile
 
CI/CT/CD and Role of Quality Engineering
CI/CT/CD and Role of Quality EngineeringCI/CT/CD and Role of Quality Engineering
CI/CT/CD and Role of Quality Engineering
Sushma
 
ovum-real-app-testing-presentation--133465.pdf
ovum-real-app-testing-presentation--133465.pdfovum-real-app-testing-presentation--133465.pdf
ovum-real-app-testing-presentation--133465.pdf
SparshBajpai6
 
Solano Labs presented at MassTLC's automated testing
Solano Labs presented at MassTLC's automated testingSolano Labs presented at MassTLC's automated testing
Solano Labs presented at MassTLC's automated testing
MassTLC
 
Shift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBMShift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBM
IBM UrbanCode Products
 
[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...
[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...
[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...
Planview
 
[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...
[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...
[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...
Planview
 
Quantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROIQuantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROI
DevOps for Enterprise Systems
 
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
Emerasoft, solutions to collaborate
 
DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...
DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...
DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...
Andrew Williams
 
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecksUsing Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
Sanjeev Sharma
 
Shift Left Quality Assurance: How to do it. Why it matters.
Shift Left Quality Assurance: How to do it. Why it matters.Shift Left Quality Assurance: How to do it. Why it matters.
Shift Left Quality Assurance: How to do it. Why it matters.
Worksoft
 
7 Tips from Siemens Energy for Success with Automation
7 Tips from Siemens Energy for Success with Automation7 Tips from Siemens Energy for Success with Automation
7 Tips from Siemens Energy for Success with Automation
Worksoft
 
Delivering A Great End User Experience
Delivering A Great End User ExperienceDelivering A Great End User Experience
Delivering A Great End User Experience
Trevor Warren
 

Similar to Performance Testing in the Agile Lifecycle (20)

Agile Load Testing in the Real World
Agile Load Testing in the Real WorldAgile Load Testing in the Real World
Agile Load Testing in the Real World
 
Agile Load Testing In The Real World
Agile Load Testing In The Real WorldAgile Load Testing In The Real World
Agile Load Testing In The Real World
 
Agile Load Testing In The Real World
Agile Load Testing In The Real WorldAgile Load Testing In The Real World
Agile Load Testing In The Real World
 
Performance Testing in the Agile Lifecycle
Performance Testing in the Agile LifecyclePerformance Testing in the Agile Lifecycle
Performance Testing in the Agile Lifecycle
 
Continuous Performance Testing in DevOps - Lee Barnes
Continuous Performance Testing in DevOps - Lee BarnesContinuous Performance Testing in DevOps - Lee Barnes
Continuous Performance Testing in DevOps - Lee Barnes
 
Test automation lessons from WebSphere Application Server
Test automation lessons from WebSphere Application ServerTest automation lessons from WebSphere Application Server
Test automation lessons from WebSphere Application Server
 
Shorten Business Life Cycle Using DevOps
Shorten Business Life Cycle Using DevOpsShorten Business Life Cycle Using DevOps
Shorten Business Life Cycle Using DevOps
 
CI/CT/CD and Role of Quality Engineering
CI/CT/CD and Role of Quality EngineeringCI/CT/CD and Role of Quality Engineering
CI/CT/CD and Role of Quality Engineering
 
ovum-real-app-testing-presentation--133465.pdf
ovum-real-app-testing-presentation--133465.pdfovum-real-app-testing-presentation--133465.pdf
ovum-real-app-testing-presentation--133465.pdf
 
Solano Labs presented at MassTLC's automated testing
Solano Labs presented at MassTLC's automated testingSolano Labs presented at MassTLC's automated testing
Solano Labs presented at MassTLC's automated testing
 
Shift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBMShift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBM
 
[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...
[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...
[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...
 
[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...
[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...
[Customizable Template] How to Get Stakeholder Buy-In for a Toolchain Integra...
 
Quantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROIQuantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROI
 
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
 
DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...
DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...
DevOps Workshop - Addressing Quality Challenges of Highly Complex and Integra...
 
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecksUsing Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
 
Shift Left Quality Assurance: How to do it. Why it matters.
Shift Left Quality Assurance: How to do it. Why it matters.Shift Left Quality Assurance: How to do it. Why it matters.
Shift Left Quality Assurance: How to do it. Why it matters.
 
7 Tips from Siemens Energy for Success with Automation
7 Tips from Siemens Energy for Success with Automation7 Tips from Siemens Energy for Success with Automation
7 Tips from Siemens Energy for Success with Automation
 
Delivering A Great End User Experience
Delivering A Great End User ExperienceDelivering A Great End User Experience
Delivering A Great End User Experience
 

Recently uploaded

Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
Abida Shariff
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 

Recently uploaded (20)

Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 

Performance Testing in the Agile Lifecycle

  • 1. © Utopia Solutions Performance Testing in the Agile Lifecycle Lee Barnes, CTO Utopia Solutions @USI_LeeBarnes
  • 2. © Utopia Solutions2 Key Questions What needs to change? How do we make those changes? Why don’t traditional performance testing models fit nicely with agile?
  • 3. © Utopia Solutions3 Case Study Back story… • Large global manufacturer • Performance Testing CoE in operation for ~10 yrs • Seen as a huge value to the enterprise • Began moving toward agile a few years ago… and the luster of the CoE began to dull…
  • 4. © Utopia Solutions4 Traditional Performance Testing Model Center of Excellence Project 1 Project 2 Project N Provides Consistency in… • Resources / Skills • Processes • Deliverable Quality • Technology Request Test Project Team Center of Excellence Perform Discovery Develop & Execute Deliver ResultsEvaluate Results Info / Environment
  • 5. © Utopia Solutions5 CoE in the Waterfall Years Plan Design Build Test Deploy • One size fits all • Strict entry criteria • Performed late in SDLC • One-way communication of results Service Characteristics Performance Testing Too late!
  • 6. © Utopia Solutions6 Agile Development Analyze Develop Integrate Acceptance Test Deploy Where does performance testing fit?
  • 7. © Utopia Solutions7 Early Attempts on Agile Projects Sprint 1 Sprint 2 Sprint 3 … Deploy Agile Performance Testing Same Process… Same Risk!
  • 8. © Utopia Solutions8 Early Attempts on Agile Projects Sprint 1 Sprint 2 Sprint 3 … Deploy Agile Performance Testing Performance Testing Performance Testing Performance Testing CoE Approach • Rigid • 4 week test cycle Agile Approach • Flexible • 2 week sprints + =
  • 9. © Utopia Solutions Back to the drawing board…
  • 10. © Utopia Solutions10 Early Cycle / Ongoing Performance Analysis Establish Objectives Ultimate Goal… Late Cycle Performance Testing Shift Left
  • 11. © Utopia Solutions11 Identify Gaps What’s stopping us from analyzing performance continuously? • Performance objectives weren’t part of user stories • Agile teams lacked performance engineering expertise • APM tools / skills were non-existent
  • 12. © Utopia Solutions12 Breakdown the Barrier Between CoE and Agile Teams
  • 13. © Utopia Solutions13 Disclaimers It was not easy. The changes discussed on the next few slides were implemented over a two year duration. It was not painless.
  • 14. © Utopia Solutions14 Performance Testing in an Agile Environment Capture non-functional requirements Make performance everyone’s job Create a role to coordinate performance activities CoE performance test architects become mentors Begin developing a performance focused culture
  • 15. © Utopia Solutions15 Incorporating Performance Requirements… … as acceptance criteria for existing user stories As a dealer I want to create a product configuration for an order so that my customer can purchase the equipment they need • All steps in the product config. process will have a response time of less than 2 seconds • 1,500 dealers are concurrently using the system to configure products for customer orders … as technical stories As a dealer, I want the response time of any step in the product configuration process to be less than 2 seconds … as constraints The system will respond in less than 2 seconds for all steps in the product configuration process for a maximum of 1,500 concurrent users configuring orders
  • 16. © Utopia Solutions16 Performance Testing in an Agile Environment Unit performance testing Component / system level performance testing Include performance testing in the CI chain Incorporate performance testing / analysis into each sprint
  • 17. © Utopia Solutions17 Performance Unit Testing Start with existing unit tests “Decorate” them with timers and load Monitor results across builds Build 1 Build 2 Build 3 Build 4
  • 18. © Utopia Solutions18 Beyond Unit Testing Map user stories onto system components Benchmark in development / QA environment Look for trends in measurements vs. absolutes Use service virtualization for 3rd party or yet to be developed components Incorporate as part of the CI chain Harden scripts against application changes Component and system level testing
  • 19. © Utopia Solutions19 Adding Performance Tests to CI Lessons Learned Custom plug-ins exist to run performance tests as part of the CI chain – very useful People get mad when you unnecessarily break the build They get really mad when you can’t figure out why you broke the build Add error handling and logging to scripts to enable quick failure investigation Allow for non-production-like environment Set your response time tolerances and client timeouts accordingly
  • 20. © Utopia Solutions20 Waterfall Agile Responsibility for Performance Performance CoE Everyone Role of CoE End of cycle PT Provide mentorship to agile team Pre-deployment system PT Role of development Throw system over wall Wait for results Continuous focus on performance Tools Traditional load test tools APM tools Service virtualization Continuous integration Traditional load test tools Environment Dedicated / production-like Development / desktop Deliverable Boiler plate results delivered just prior to release Continuous feed of actionable data Waterfall Agile Responsibility for Performance Performance CoE Role of CoE End of cycle PT Role of development Throw system over wall Wait for results Tools Traditional load test tools Environment Dedicated / production-like Deliverable Boiler plate results delivered just prior to release Performance Testing in an Agile Environment Transformation Summary
  • 21. © Utopia Solutions21 Summary Key takeaways… • Agile performance testing is not more / quicker performance tests it’s a continuous focus on performance • Performance is part of everyone’s job • Success requires a shift in people, process and technology
  • 22. © Utopia Solutions22 Questions… …. and Answers! Direct future questions to: Lee Barnes Founder and CTO Utopia Solutions, Inc. Email: lee.barnes@utopiasolutions.com Twitter: twitter.com/USI_LeeBarnes LinkedIn: linkedin.com/in/leebarnes Blog: www.RaiseYourMQ.com ?
  • 23. © Utopia Solutions Links to Unit Performance Testing Frameworks • JUnitPerf – http://www.clarkware.com/software/JUnitPerf.html • P-unit – http://p-unit.sourceforge.net/