SlideShare a Scribd company logo
1 of 55
Top ten secret weapons for agile performance testing by Patrick Kua patrick.kua@thoughtworks.com http://www.thekua.com/atwork/presentations-and-papers/ © ThoughtWorks2010
Make Performance Explicit © ThoughtWorks2010   1
So that I can make better investment decisions As an investor I want to see the value of my portfolio presented on a single web page must have “good” performance, less than 0.2s page load for about 10,000 concurrent users © ThoughtWorks2010
© ThoughtWorks2010 So that investors have a high-quality experience as the business grows As the Operations Manager I want the portfolio value page to render within 0.2s when 10,000 users are logged in
One Team © ThoughtWorks2010    2
Team Dynamics © ThoughtWorks2010
Performance Testers Part of Team © ThoughtWorks2010
© ThoughtWorks2010
Performance Testers Part of Team © ThoughtWorks2010
Pair on Performance Test Stories © ThoughtWorks2010
Rotate Pairs © ThoughtWorks2010
Customer Driven © ThoughtWorks2010       3
What was a good source of requirements? © ThoughtWorks2010
© ThoughtWorks2010 Existing Pain Points
An example... © ThoughtWorks2010
So that we can budget for future hardware needs as we grow As the data centre manager I want to know how much traffic we can handle now © ThoughtWorks2010
Another example © ThoughtWorks2010
© ThoughtWorks2010 So that we have confidence in meeting our SLA As the Operations Manager I want to ensure that a sustained peak load does not take out our service
Personas © ThoughtWorks2010
Who is the customer? © ThoughtWorks2010 Investors Marketing End Users Power  Users Operations
Discipline © ThoughtWorks2010   4
© ThoughtWorks2010 Observe test results What do you see? Formulate an hypothesis Why is it doing that? Design an experiment How can I prove that’s what’s happening? Run the experiment Take the time to gather the evidence. Is the hypothesis valid? Change the application code Safe in the knowledge that I’m making it faster
?????????? © ThoughtWorks2010
© ThoughtWorks2010 Observe test results Saw tooth pattern  (1 minute intervals) Formulate an hypothesis Directory structure of (yyyy/mm/minuteofday)?.  Slow down due to # of files in directory? Design an experiment  1 directory should result in even worse performance... Run the experiment We ran the test… Is the hypothesis valid? Change the application code
One Directory © ThoughtWorks2010
Play Performance Early © ThoughtWorks2010    5
© ThoughtWorks2010 End Start Other projects start performance testing here End Start Agile projects start performance testing as early as possible
Iterate Don’t (Just) Increment © ThoughtWorks2010        6
© ThoughtWorks2010
We               Sashimi © ThoughtWorks2010
Sashimi Slice By... Presentation © ThoughtWorks2010
© ThoughtWorks2010 So that I can better see trends in performance As the Operations Manager I want a graph of requests per second
© ThoughtWorks2010 So that I can better see trends in performance As the Operations Manager I want a graph of average latency per second
© ThoughtWorks2010 So that I can easily scan results at a single glance As the Operations Manager I want a one page showing all results
Sashimi Slice By...  Scenario © ThoughtWorks2010
© ThoughtWorks2010 So that we never have a day like “October 10” As the Operations Manager I want to ensure that a sustained peak load does not take out our service
© ThoughtWorks2010 So that we never have a day like “November 12” As the Operations Manager I want to ensure that an escalating load up to xxx requests/second does not take out our service
Automate, Automate, Automate © ThoughtWorks2010    7
© ThoughtWorks2010 Automated Compilation Automated Tests Automated Packaging Automated Deployment
Automation => Reproducible and Consistent Automation => Faster Feedback Automation => Higher Productivity Why Automation? © ThoughtWorks2010
© ThoughtWorks2010 Automated Test Orchestration Automated Analysis Automated Scheduling Automated Load Generation Automated Application Deployment Automated Result Archiving
Continuous Performance Testing © ThoughtWorks2010    8
Application Build Pipelines © ThoughtWorks2010 Performance
© ThoughtWorks2010
Test Drive Your Performance Test Code © ThoughtWorks2010    9
V Model Testing © ThoughtWorks2010 Slower + Longer Performance Testing Speed Fast http://en.wikipedia.org/wiki/V-Model_(software_development)
We make mistakes © ThoughtWorks2010
V Model Testing © ThoughtWorks2010 Slower + Longer Performance Testing Speed Unit test performance code to fail faster Fast http://en.wikipedia.org/wiki/V-Model_(software_development)
Classic Performance Areas to Test © ThoughtWorks2010 Analysis Information Collection Presentation Publishing Visualisation
Get Feedback © ThoughtWorks2010 10
Frequently (Weekly) Showcase © ThoughtWorks2010 Here is what we learned this week....
Frequently (Weekly) Showcase © ThoughtWorks2010 And based on this... We changed our directory structure.
Frequently (Weekly) Showcase © ThoughtWorks2010 Should we do something different knowing this new information?
List of All Secret Weapons Make Performance Explicit One Team Customer Driven Discipline Play Performance Early Iterate Don't (Just) Increment Automate, Automate, Automate  Test Drive Your Performance Code Continuous Performance Testing Get Feedback © ThoughtWorks2010
Photo Credits (Creative Commons licence) Barbed wire picture: http://www.flickr.com/photos/lapideo/446201948/ Eternal clock: http://www.flickr.com/photos/robbie73/3387189144/ Sashimi from http://www.flickr.com/photos/mac-ash/3719114621/ Questions?  © ThoughtWorks2010

More Related Content

What's hot

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 DuttaSoftware Testing Board
 
Performance Testing in Agile and DevOps Environments
Performance Testing in Agile and DevOps EnvironmentsPerformance Testing in Agile and DevOps Environments
Performance Testing in Agile and DevOps EnvironmentsTechWell
 
A paradigm shift for testing - how to increase productivity 10x!
A paradigm shift for testing - how to increase productivity 10x!A paradigm shift for testing - how to increase productivity 10x!
A paradigm shift for testing - how to increase productivity 10x!Vasco Duarte
 
Shift left - find defects earlier through automated test and deployment
Shift left - find defects earlier through automated test and deploymentShift left - find defects earlier through automated test and deployment
Shift left - find defects earlier through automated test and deploymentClaudia Ring
 
Incorporating Performance Testing in Agile Development Process
Incorporating Performance Testing in Agile Development ProcessIncorporating Performance Testing in Agile Development Process
Incorporating Performance Testing in Agile Development ProcessMichael Vax
 
Pooja shift left 1.0
Pooja shift left 1.0Pooja shift left 1.0
Pooja shift left 1.0Xebia India
 
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
 
Agile Test Automation
Agile Test AutomationAgile Test Automation
Agile Test AutomationWerner Keil
 
qTest 7.4: New Features
qTest 7.4: New FeaturesqTest 7.4: New Features
qTest 7.4: New FeaturesQASymphony
 
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
 
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
 
Test Metrics in Agile - powerful tool to support changes - Zavertailo Iuliia
Test Metrics in Agile - powerful tool to support changes - Zavertailo IuliiaTest Metrics in Agile - powerful tool to support changes - Zavertailo Iuliia
Test Metrics in Agile - powerful tool to support changes - Zavertailo IuliiaYulia Zavertailo
 
5.4 Product Spotlight: Email Upgrades
5.4 Product Spotlight: Email Upgrades5.4 Product Spotlight: Email Upgrades
5.4 Product Spotlight: Email UpgradesTargetX
 
Software Development Methodologies By E2Logy
Software Development Methodologies By E2LogySoftware Development Methodologies By E2Logy
Software Development Methodologies By E2LogyE2LOGY
 
Differences between Testing in Waterfall and Agile
Differences between Testing in Waterfall and AgileDifferences between Testing in Waterfall and Agile
Differences between Testing in Waterfall and AgileReturn on Intelligence
 
A Concise QA Process
A Concise QA Process A Concise QA Process
A Concise QA Process Arslan Ali
 
Shift left as first transformation step into Quality Assurance
Shift left as first transformation step into Quality AssuranceShift left as first transformation step into Quality Assurance
Shift left as first transformation step into Quality AssuranceZbyszek Mockun
 
Continuous Performance Testing: Myths and Realities
Continuous Performance Testing: Myths and RealitiesContinuous Performance Testing: Myths and Realities
Continuous Performance Testing: Myths and RealitiesAlexander Podelko
 
Relieveing the Testing Bottle Neck - Webinar
Relieveing the Testing Bottle Neck - WebinarRelieveing the Testing Bottle Neck - Webinar
Relieveing the Testing Bottle Neck - WebinarCprime
 
Shift Left Mobile Application Testing
Shift Left Mobile Application TestingShift Left Mobile Application Testing
Shift Left Mobile Application TestingJosiah Renaudin
 

What's hot (20)

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 Testing in Agile and DevOps Environments
Performance Testing in Agile and DevOps EnvironmentsPerformance Testing in Agile and DevOps Environments
Performance Testing in Agile and DevOps Environments
 
A paradigm shift for testing - how to increase productivity 10x!
A paradigm shift for testing - how to increase productivity 10x!A paradigm shift for testing - how to increase productivity 10x!
A paradigm shift for testing - how to increase productivity 10x!
 
Shift left - find defects earlier through automated test and deployment
Shift left - find defects earlier through automated test and deploymentShift left - find defects earlier through automated test and deployment
Shift left - find defects earlier through automated test and deployment
 
Incorporating Performance Testing in Agile Development Process
Incorporating Performance Testing in Agile Development ProcessIncorporating Performance Testing in Agile Development Process
Incorporating Performance Testing in Agile Development Process
 
Pooja shift left 1.0
Pooja shift left 1.0Pooja shift left 1.0
Pooja shift left 1.0
 
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
 
Agile Test Automation
Agile Test AutomationAgile Test Automation
Agile Test Automation
 
qTest 7.4: New Features
qTest 7.4: New FeaturesqTest 7.4: New Features
qTest 7.4: New Features
 
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
 
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".
 
Test Metrics in Agile - powerful tool to support changes - Zavertailo Iuliia
Test Metrics in Agile - powerful tool to support changes - Zavertailo IuliiaTest Metrics in Agile - powerful tool to support changes - Zavertailo Iuliia
Test Metrics in Agile - powerful tool to support changes - Zavertailo Iuliia
 
5.4 Product Spotlight: Email Upgrades
5.4 Product Spotlight: Email Upgrades5.4 Product Spotlight: Email Upgrades
5.4 Product Spotlight: Email Upgrades
 
Software Development Methodologies By E2Logy
Software Development Methodologies By E2LogySoftware Development Methodologies By E2Logy
Software Development Methodologies By E2Logy
 
Differences between Testing in Waterfall and Agile
Differences between Testing in Waterfall and AgileDifferences between Testing in Waterfall and Agile
Differences between Testing in Waterfall and Agile
 
A Concise QA Process
A Concise QA Process A Concise QA Process
A Concise QA Process
 
Shift left as first transformation step into Quality Assurance
Shift left as first transformation step into Quality AssuranceShift left as first transformation step into Quality Assurance
Shift left as first transformation step into Quality Assurance
 
Continuous Performance Testing: Myths and Realities
Continuous Performance Testing: Myths and RealitiesContinuous Performance Testing: Myths and Realities
Continuous Performance Testing: Myths and Realities
 
Relieveing the Testing Bottle Neck - Webinar
Relieveing the Testing Bottle Neck - WebinarRelieveing the Testing Bottle Neck - Webinar
Relieveing the Testing Bottle Neck - Webinar
 
Shift Left Mobile Application Testing
Shift Left Mobile Application TestingShift Left Mobile Application Testing
Shift Left Mobile Application Testing
 

Similar to Top Ten Secret Weapons For Agile Performance Testing

Top ten secret weapons for performance testing in an agile environment
Top ten secret weapons for performance testing in an agile environmentTop ten secret weapons for performance testing in an agile environment
Top ten secret weapons for performance testing in an agile environmentalistairjones
 
Top ten secret weapons for performance testing in an agile environment
Top ten secret weapons for performance testing in an agile environmentTop ten secret weapons for performance testing in an agile environment
Top ten secret weapons for performance testing in an agile environmentandyrobinson8
 
Universal test solutions customer testimonial 10192013-v2.3
Universal test solutions customer testimonial 10192013-v2.3Universal test solutions customer testimonial 10192013-v2.3
Universal test solutions customer testimonial 10192013-v2.3Universal Technology Solutions
 
Universal test solutions customer testimonial 10192013-v2.2
Universal test solutions customer testimonial 10192013-v2.2Universal test solutions customer testimonial 10192013-v2.2
Universal test solutions customer testimonial 10192013-v2.2Universal Technology Solutions
 
Practical web performance - Site Confidence Web Performance Seminar
Practical web performance - Site Confidence Web Performance SeminarPractical web performance - Site Confidence Web Performance Seminar
Practical web performance - Site Confidence Web Performance SeminarStephen Thair
 
DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015Yuval Yeret
 
DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?Michael Elder
 
measuring and monitoring client side performance / Nir Nahum
measuring and monitoring client side performance / Nir Nahummeasuring and monitoring client side performance / Nir Nahum
measuring and monitoring client side performance / Nir Nahumgeektimecoil
 
Auto Deploy Product Guide
Auto Deploy Product GuideAuto Deploy Product Guide
Auto Deploy Product GuideMark Dalton
 
D-CAST: The Future of Agile Testing Meetup
D-CAST: The Future of Agile Testing MeetupD-CAST: The Future of Agile Testing Meetup
D-CAST: The Future of Agile Testing MeetupAdam Sandman
 
Axpert™ from Agile Labs, Bangalore, India
Axpert™  from Agile Labs, Bangalore, IndiaAxpert™  from Agile Labs, Bangalore, India
Axpert™ from Agile Labs, Bangalore, IndiaAGILE LABS,INDIA
 
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...Coveros, Inc.
 
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...Sauce Labs
 
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy EnvironmentsDOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy EnvironmentsDevOps Enterprise Summmit
 
Why Measuring Page Load Is The Wrong Metric
Why Measuring Page Load Is The Wrong MetricWhy Measuring Page Load Is The Wrong Metric
Why Measuring Page Load Is The Wrong MetricNew Relic
 
Let's focus more on Quality and less on Testing by Joel Montvelisky
Let's focus more on Quality and less on Testing by Joel MontveliskyLet's focus more on Quality and less on Testing by Joel Montvelisky
Let's focus more on Quality and less on Testing by Joel MontveliskyQA or the Highway
 
Delivering A Great End User Experience
Delivering A Great End User ExperienceDelivering A Great End User Experience
Delivering A Great End User ExperienceTrevor Warren
 

Similar to Top Ten Secret Weapons For Agile Performance Testing (20)

Top ten secret weapons for performance testing in an agile environment
Top ten secret weapons for performance testing in an agile environmentTop ten secret weapons for performance testing in an agile environment
Top ten secret weapons for performance testing in an agile environment
 
Top ten secret weapons for performance testing in an agile environment
Top ten secret weapons for performance testing in an agile environmentTop ten secret weapons for performance testing in an agile environment
Top ten secret weapons for performance testing in an agile environment
 
Universal test solutions customer testimonial 10192013-v2.3
Universal test solutions customer testimonial 10192013-v2.3Universal test solutions customer testimonial 10192013-v2.3
Universal test solutions customer testimonial 10192013-v2.3
 
Universal test solutions customer testimonial 10192013-v2.2
Universal test solutions customer testimonial 10192013-v2.2Universal test solutions customer testimonial 10192013-v2.2
Universal test solutions customer testimonial 10192013-v2.2
 
Practical web performance - Site Confidence Web Performance Seminar
Practical web performance - Site Confidence Web Performance SeminarPractical web performance - Site Confidence Web Performance Seminar
Practical web performance - Site Confidence Web Performance Seminar
 
DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015DevOps/Flow workshop for agile india 2015
DevOps/Flow workshop for agile india 2015
 
DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?DevOps in Practice: When does "Practice" Become "Doing"?
DevOps in Practice: When does "Practice" Become "Doing"?
 
measuring and monitoring client side performance / Nir Nahum
measuring and monitoring client side performance / Nir Nahummeasuring and monitoring client side performance / Nir Nahum
measuring and monitoring client side performance / Nir Nahum
 
Auto Deploy Product Guide
Auto Deploy Product GuideAuto Deploy Product Guide
Auto Deploy Product Guide
 
D-CAST: The Future of Agile Testing Meetup
D-CAST: The Future of Agile Testing MeetupD-CAST: The Future of Agile Testing Meetup
D-CAST: The Future of Agile Testing Meetup
 
Axpert™ from Agile Labs, Bangalore, India
Axpert™  from Agile Labs, Bangalore, IndiaAxpert™  from Agile Labs, Bangalore, India
Axpert™ from Agile Labs, Bangalore, India
 
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
 
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
Compatibility Testing of Your Web Apps - Tips and Tricks for Debugging Locall...
 
AVT_Offerings&Credentials
AVT_Offerings&CredentialsAVT_Offerings&Credentials
AVT_Offerings&Credentials
 
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy EnvironmentsDOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
 
Cloud Economics
Cloud EconomicsCloud Economics
Cloud Economics
 
eTrax Reseller Short Presentation
eTrax Reseller Short PresentationeTrax Reseller Short Presentation
eTrax Reseller Short Presentation
 
Why Measuring Page Load Is The Wrong Metric
Why Measuring Page Load Is The Wrong MetricWhy Measuring Page Load Is The Wrong Metric
Why Measuring Page Load Is The Wrong Metric
 
Let's focus more on Quality and less on Testing by Joel Montvelisky
Let's focus more on Quality and less on Testing by Joel MontveliskyLet's focus more on Quality and less on Testing by Joel Montvelisky
Let's focus more on Quality and less on Testing by Joel Montvelisky
 
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

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
 
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
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
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
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
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
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
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
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
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
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
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
 

Recently uploaded (20)

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
 
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.
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
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
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
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!
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
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
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
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
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
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
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
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
 

Top Ten Secret Weapons For Agile Performance Testing

Editor's Notes

  1. In a conventional project, we focus on the functionality that needs to be delivered.Performance might be important, but performance requirements are considered quite separate from functional requirements.One approach is to attach “conditions” to story cards, i.e. this functionality must handle a certain load.In our experience, where performance is of critical conern, pull out the performance requirement as its own story…
  2. Calling out performance requirements as their own stories allows you to:validate the benefit you expect from delivering the performance-prioritise performance work against other requirements-know when you’re done
  3. not sure if you like this picture, I was really looking for a good shot looking out over no-man’s land at the Berlin wall.I want the idea of divisions along skill lines breading hostility and un-cooperation.
  4. Everything should be based on some foreseeable scenario, and who benefits from itHarder to do without repetition (involvement and feedback) [not sure if this makes sense anymore]Extremely important to keep people focused as its easy to driftCapture different profilesSeparation simulation from optimisation -> Problem Identification vs Problem Resolution (or broken down further Solution Brainstorm -> Solution Investigation)Linking back to why is even more essential -> map to existing problems or fearsLatency vs throughput -> determine what is the most useful metric and define service level agreements
  5. http://www.flickr.com/photos/denniskatinas/2183690848/Not sure which one you like better
  6. Here’s an example... (in the style of Feature Injection) “What’s our upper limit?”
  7. Here’s another example... (in the style of Feature Injection), “Can we handle peaks in traffic again?”So that we have confidence in meeting our SLAAs the Operations ManagerI want to ensure that a sustained peak load does not take out our service
  8. It helps to be clear about who is going to benefit from any performance testing (tuning and optimisation) that is going to take place. Ensure that they get a stake on prioritisation that will help with the next point...
  9. Evidence-based decision-making. Don’t commit to a code change until you know it’s the right thing to do.
  10. Evidence-based decision-making. Don’t commit to a code change until you know it’s the right thing to do.
  11. It helps to have the customer (mentioned in the previous slide) be a key stakeholder to prioritise.
  12. Application supports better ability to be performance tested easierLike TDD changes the design/architecture of a systemNeed to find reference for thisMeasuring it early helps raise what changes contribute to slownessPerformance work takes longerLead times potentially large and long lead time (sequential) – think of where gantt chart may actually be usefulRun it as a parallel track of work to normal functionality (not sequential)Minimal environment availability (expensive, non concurrent use)Need minimal functionality or at least clearly defined interfaces to operate againstWant to have some time to respond to feedback -> work that into the process as early as possible and potentially change architecture/design
  13. Start with the simplest performance test scenarios -> Sanity test/smoke test-> Hit all aspects-> Use to drive out automated deployment (environment limitations, configuration issues, minimal set of reporting needs – green/red)-> Hit integration boundaries but with a small problem rather than everythingNext story might be a more complex script or something that drives out more of the infrastrcutrePerformance stories should not be :-> Build out tasks-> Does not enhance anything without other storiesLog files -> Contents early. Consumer Driven. Contracts for analysis. Keep around. Keep notes around what was variedINVEST storiesAvoid the large “performance test” storySeparate types of storiesOptimise vs MeasureOptimise is riskier components. Less known. “Done” is difficult to estimateMeasure is clearer. Allows you to make better informed choicesKnow when to stopWhen enough is enough
  14. The best lessons are learned from iterating, not from incrementing. Iterate over your performance test harness, framework and test fixtures. Make it easier to increment into new areas by incrementing in a different direction each time. - Start with simple performance test scenarios - Don’t build too much infrastructure at once - Refine the test harness and things used to create more tests - Should always be delivering value - Identify useful features in performance testing and involve the stakeholder(s) to help prioritise them inPrioritise and schedule in analysis stories (metrics and graphs)Some of this work will still be big
  15. Sashimi is nice and bite sized. You don’t eat the entire fish at once. You’re eating a part of it. Sashimi slices are nice and thin. There are a couple of different strategies linking this in. Think of sashimi as the thinnest possible slice.
  16. Number of requests over time
  17. Latency over time
  18. “I don’t want to click through to each graph”
  19. “I don’t want to click through to each graph”
  20. “I don’t want to click through to each graph”
  21. Automated build is a key XP practice.The first stage of automating a build is often to automate compilationHowever, for a typical project, we go on after compilation to run tests, as another automated step.In fact we may have a whole series of automted steps that chain on after each other, automating many aspects of the development process, all the way from compiling source to to deploying a complete application into the production environment.
  22. Automation is powerful lever in software projects because:it gives us reproducable, consistent processesWe get faster feedback when something goes wrongOverall higher productivity – we can repeat an automated build much more often than we could if it was manual
  23. In performance testing we can use automate many of the common tasks in a similar way to how we automate a software build.For any performance test, there is a linear series of activities that can be automated (first row of slide)In our recent projects we’ve been using the build tool ant for most of performance scripting. You could use any scripting language, but here are some very basic scripts to show you the kind of thing we mean… [possibly animate transitions to the 4 following slides]Once we’ve auomted the running of a single test, we can move on even more aspects of automation such as scheduling and result archiving, whch lead us into…Continuous Performance testing.
  24. For a faster feedback, set up your CI server so that performance tests are always running against the latest version of the application.