SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
© 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/

Más contenido relacionado

La actualidad más candente

ISTQB Agile Extension
ISTQB Agile ExtensionISTQB Agile Extension
ISTQB Agile ExtensionDavis Thomas
 
Reinventing Application Performance Testing with Service Virtualization
Reinventing Application Performance Testing with Service VirtualizationReinventing Application Performance Testing with Service Virtualization
Reinventing Application Performance Testing with Service VirtualizationCA Technologies
 
Software Testing 101
Software Testing 101Software Testing 101
Software Testing 101QA Hannah
 
Sap test center of excellence
Sap test center of excellenceSap test center of excellence
Sap test center of excellenceInfosys
 
User Acceptance Testing (Uat)
User Acceptance Testing (Uat)User Acceptance Testing (Uat)
User Acceptance Testing (Uat)Thomas Martin
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8a34sharm
 
Writing Test Cases From User Stories And Acceptance Criteria
Writing Test Cases From User Stories And Acceptance CriteriaWriting Test Cases From User Stories And Acceptance Criteria
Writing Test Cases From User Stories And Acceptance CriteriaHoa Le
 
Testing your APIs Performance.pptx
Testing your APIs Performance.pptxTesting your APIs Performance.pptx
Testing your APIs Performance.pptxPricilla Bilavendran
 
Monitoring at the Speed of DevOps
Monitoring at the Speed of DevOpsMonitoring at the Speed of DevOps
Monitoring at the Speed of DevOpsDevOps.com
 
Deal With Production Issues - The ITIL Way
Deal With Production Issues - The ITIL WayDeal With Production Issues - The ITIL Way
Deal With Production Issues - The ITIL WayLinpei Zhang
 
UAT Kickoff Presentation 10 29 09
UAT Kickoff Presentation 10 29 09UAT Kickoff Presentation 10 29 09
UAT Kickoff Presentation 10 29 09goozer65
 
Performance testing presentation
Performance testing presentationPerformance testing presentation
Performance testing presentationBelatrix Software
 
Testing strategy for agile projects updated
Testing strategy for agile projects updatedTesting strategy for agile projects updated
Testing strategy for agile projects updatedTharinda Liyanage
 
Chapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycleChapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycleNeeraj Kumar Singh
 
Building a Test Automation Strategy for Success
Building a Test Automation Strategy for SuccessBuilding a Test Automation Strategy for Success
Building a Test Automation Strategy for SuccessLee Barnes
 
Testing as a Managed Service using SLAs and KPIs
Testing as a Managed Service using SLAs and KPIsTesting as a Managed Service using SLAs and KPIs
Testing as a Managed Service using SLAs and KPIsProlifics
 
Playwright: A New Test Automation Framework for the Modern Web
Playwright: A New Test Automation Framework for the Modern WebPlaywright: A New Test Automation Framework for the Modern Web
Playwright: A New Test Automation Framework for the Modern WebApplitools
 

La actualidad más candente (20)

ISTQB Agile Extension
ISTQB Agile ExtensionISTQB Agile Extension
ISTQB Agile Extension
 
Reinventing Application Performance Testing with Service Virtualization
Reinventing Application Performance Testing with Service VirtualizationReinventing Application Performance Testing with Service Virtualization
Reinventing Application Performance Testing with Service Virtualization
 
Software Testing 101
Software Testing 101Software Testing 101
Software Testing 101
 
Sap test center of excellence
Sap test center of excellenceSap test center of excellence
Sap test center of excellence
 
User Acceptance Testing (Uat)
User Acceptance Testing (Uat)User Acceptance Testing (Uat)
User Acceptance Testing (Uat)
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8
 
Writing Test Cases From User Stories And Acceptance Criteria
Writing Test Cases From User Stories And Acceptance CriteriaWriting Test Cases From User Stories And Acceptance Criteria
Writing Test Cases From User Stories And Acceptance Criteria
 
Testing your APIs Performance.pptx
Testing your APIs Performance.pptxTesting your APIs Performance.pptx
Testing your APIs Performance.pptx
 
Monitoring at the Speed of DevOps
Monitoring at the Speed of DevOpsMonitoring at the Speed of DevOps
Monitoring at the Speed of DevOps
 
Deal With Production Issues - The ITIL Way
Deal With Production Issues - The ITIL WayDeal With Production Issues - The ITIL Way
Deal With Production Issues - The ITIL Way
 
Getting Ready for UAT
Getting Ready for UATGetting Ready for UAT
Getting Ready for UAT
 
Agile QA Process
Agile QA ProcessAgile QA Process
Agile QA Process
 
User acceptance testing checklist (uat)
User acceptance testing checklist (uat)User acceptance testing checklist (uat)
User acceptance testing checklist (uat)
 
UAT Kickoff Presentation 10 29 09
UAT Kickoff Presentation 10 29 09UAT Kickoff Presentation 10 29 09
UAT Kickoff Presentation 10 29 09
 
Performance testing presentation
Performance testing presentationPerformance testing presentation
Performance testing presentation
 
Testing strategy for agile projects updated
Testing strategy for agile projects updatedTesting strategy for agile projects updated
Testing strategy for agile projects updated
 
Chapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycleChapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycle
 
Building a Test Automation Strategy for Success
Building a Test Automation Strategy for SuccessBuilding a Test Automation Strategy for Success
Building a Test Automation Strategy for Success
 
Testing as a Managed Service using SLAs and KPIs
Testing as a Managed Service using SLAs and KPIsTesting as a Managed Service using SLAs and KPIs
Testing as a Managed Service using SLAs and KPIs
 
Playwright: A New Test Automation Framework for the Modern Web
Playwright: A New Test Automation Framework for the Modern WebPlaywright: A New Test Automation Framework for the Modern Web
Playwright: A New Test Automation Framework for the Modern Web
 

Destacado

Gatling overview
Gatling overviewGatling overview
Gatling overviewViral Jain
 
Automed .NET Performance Testing with NBench
Automed .NET Performance Testing with NBenchAutomed .NET Performance Testing with NBench
Automed .NET Performance Testing with NBenchpetabridge
 
Performance testing jmeter
Performance testing jmeterPerformance testing jmeter
Performance testing jmeterBhojan Rajan
 
Performance and load testing
Performance and load testingPerformance and load testing
Performance and load testingsonukalpana
 

Destacado (6)

Performance testing
Performance testingPerformance testing
Performance testing
 
Gatling overview
Gatling overviewGatling overview
Gatling overview
 
Gatling
Gatling Gatling
Gatling
 
Automed .NET Performance Testing with NBench
Automed .NET Performance Testing with NBenchAutomed .NET Performance Testing with NBench
Automed .NET Performance Testing with NBench
 
Performance testing jmeter
Performance testing jmeterPerformance testing jmeter
Performance testing jmeter
 
Performance and load testing
Performance and load testingPerformance and load testing
Performance and load testing
 

Similar a 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 WorldLee 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 WorldSOASTA
 
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 WorldSOASTA
 
Performance Testing in the Agile Lifecycle
Performance Testing in the Agile LifecyclePerformance Testing in the Agile Lifecycle
Performance Testing in the Agile LifecycleTechWell
 
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 BarnesQA 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 ServerRobbie Minshall
 
Shorten Business Life Cycle Using DevOps
Shorten Business Life Cycle Using DevOpsShorten Business Life Cycle Using DevOps
Shorten Business Life Cycle Using DevOpsPerfecto 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 EngineeringSushma
 
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 testingMassTLC
 
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 IBMIBM 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 ROIDevOps 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 bottlenecksSanjeev 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 AutomationWorksoft
 
Delivering A Great End User Experience
Delivering A Great End User ExperienceDelivering A Great End User Experience
Delivering A Great End User ExperienceTrevor Warren
 
DevOps in the Hybrid Cloud
DevOps in the Hybrid CloudDevOps in the Hybrid Cloud
DevOps in the Hybrid CloudRichard Irving
 

Similar a 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
 
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
 
DevOps in the Hybrid Cloud
DevOps in the Hybrid CloudDevOps in the Hybrid Cloud
DevOps in the Hybrid Cloud
 

Último

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 

Último (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 

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/