SlideShare a Scribd company logo
Top ten secret weapons for performance testing in an agile environment patrick.kua@thoughtworks.com (and alistair.jones@thoughtworks.com) © ThoughtWorks 2011
Make Performance Explicit © ThoughtWorks 2011   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 © ThoughtWorks 2011
© ThoughtWorks 2011 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 © ThoughtWorks 2011    2
Team Dynamics © ThoughtWorks 2011
Performance Testers Part of Team © ThoughtWorks 2011
© ThoughtWorks 2011
Performance Testers Part of Team © ThoughtWorks 2011
Pair on Performance Test Stories © ThoughtWorks 2011
Rotate Pairs © ThoughtWorks 2011
Customer Driven © ThoughtWorks 2011       3
What was a good source of requirements? © ThoughtWorks 2011
© ThoughtWorks 2011 Existing Pain Points
An example... © ThoughtWorks 2011
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 © ThoughtWorks 2011
Another example © ThoughtWorks 2011
© ThoughtWorks 2011 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 © ThoughtWorks 2011
Who is the customer? © ThoughtWorks 2011 Investors Marketing End Users Power  Users Operations
Discipline © ThoughtWorks 2011   4
© ThoughtWorks 2011 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
?????????? © ThoughtWorks 2011
© ThoughtWorks 2011 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 © ThoughtWorks 2011
Play Performance Early © ThoughtWorks 2011    5
© ThoughtWorks 2011 End Start Other projects start performance testing here End Start Agile projects start performance testing as early as possible
Iterate Don’t (Just) Increment © ThoughtWorks 2011        6
© ThoughtWorks 2011
We               Sashimi © ThoughtWorks 2011
Sashimi Slice By... Presentation © ThoughtWorks 2011
© ThoughtWorks 2011 So that I can better see trends in performance As the Operations Manager I want a graph of requests per second
© ThoughtWorks 2011 So that I can better see trends in performance As the Operations Manager I want a graph of average latency per second
© ThoughtWorks 2011 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 © ThoughtWorks 2011
© ThoughtWorks 2011 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
© ThoughtWorks 2011 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 © ThoughtWorks 2011    7
© ThoughtWorks 2011 Automated Compilation Automated Tests Automated Packaging Automated Deployment
Automation => Reproducible and Consistent Automation => Faster Feedback Automation => Higher Productivity Why Automation? © ThoughtWorks 2011
© ThoughtWorks 2011 Automated Test Orchestration Automated Analysis Automated Scheduling Automated Load Generation Automated Application Deployment Automated Result Archiving
Continuous Performance Testing © ThoughtWorks 2011    8
© ThoughtWorks 2011
Application Build Pipelines © ThoughtWorks 2011 Performance
© ThoughtWorks 2011
Test Drive Your Performance Test Code © ThoughtWorks 2011    9
V Model Testing © ThoughtWorks 2011 Slower + Longer Performance Testing Speed Fast http://en.wikipedia.org/wiki/V-Model_(software_development)
We make mistakes © ThoughtWorks 2011
V Model Testing © ThoughtWorks 2011 Slower + Longer Performance Testing Speed Unit test performance code to fail faster Fast http://en.wikipedia.org/wiki/V-Model_(software_development)
Fail Fast! © ThoughtWorks 2011 Fast feedback! Faster learning Faster results
Classic Performance Areas to Test © ThoughtWorks 2011 Analysis Information Collection Presentation Publishing Visualisation
Get Feedback © ThoughtWorks 2011 10
Frequently (Weekly) Showcase © ThoughtWorks 2011 Here is what we learned this week....
Frequently (Weekly) Showcase © ThoughtWorks 2011 And based on this... We changed our directory structure.
Frequently (Weekly) Showcase © ThoughtWorks 2011 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 © ThoughtWorks 2011
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 © ThoughtWorks 2011

More Related Content

What's hot

System Availability Talk
System Availability TalkSystem Availability Talk
System Availability Talk
m_richardson
 
IoT to Cloud the DevOps Way
IoT to Cloud the DevOps WayIoT to Cloud the DevOps Way
IoT to Cloud the DevOps Way
Mark Heckler
 
Agile Testing
Agile Testing Agile Testing
Agile Testing
VersionOne
 
Agile Project Management: "How I Learned to Stop Worrying and Love Agile”
Agile Project Management: "How I Learned to Stop Worrying and Love Agile”Agile Project Management: "How I Learned to Stop Worrying and Love Agile”
Agile Project Management: "How I Learned to Stop Worrying and Love Agile”
VersionOne
 
The 7 Habits of Effective Data Driven Companies
The 7 Habits of Effective Data Driven CompaniesThe 7 Habits of Effective Data Driven Companies
The 7 Habits of Effective Data Driven Companies
GoDataDriven
 
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal ReadinessTis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
SOASTA
 
#SPSNewEngland Improving #DevOps using #Microsoft business productivity tools...
#SPSNewEngland Improving #DevOps using #Microsoft business productivity tools...#SPSNewEngland Improving #DevOps using #Microsoft business productivity tools...
#SPSNewEngland Improving #DevOps using #Microsoft business productivity tools...
Vincent Biret
 
Continuous Testing: Preparing for DevOps
Continuous Testing: Preparing for DevOpsContinuous Testing: Preparing for DevOps
Continuous Testing: Preparing for DevOps
STePINForum
 
Geek Sync I Surviving the Holidays with SQL Server
Geek Sync I Surviving the Holidays with SQL ServerGeek Sync I Surviving the Holidays with SQL Server
Geek Sync I Surviving the Holidays with SQL Server
IDERA Software
 
Jeffrey Snover - Empowering DevOps with Azure Stack
Jeffrey Snover - Empowering DevOps with Azure StackJeffrey Snover - Empowering DevOps with Azure Stack
Jeffrey Snover - Empowering DevOps with Azure Stack
WinOps Conf
 
Atlassian's Mystique CLI, Minimizing the Experiment Development Cycle
Atlassian's Mystique CLI, Minimizing the Experiment Development CycleAtlassian's Mystique CLI, Minimizing the Experiment Development Cycle
Atlassian's Mystique CLI, Minimizing the Experiment Development Cycle
Optimizely
 
AB Testing at Expedia
AB Testing at ExpediaAB Testing at Expedia
AB Testing at Expedia
Paul Lucas
 
Geek Sync | Kick Start SQL Server 2016 Performance Tips and Tricks
Geek Sync | Kick Start SQL Server 2016 Performance Tips and TricksGeek Sync | Kick Start SQL Server 2016 Performance Tips and Tricks
Geek Sync | Kick Start SQL Server 2016 Performance Tips and Tricks
IDERA Software
 
Object-oriented design for infrastructure-as-a-code - Anna Bankirer
Object-oriented design for infrastructure-as-a-code - Anna BankirerObject-oriented design for infrastructure-as-a-code - Anna Bankirer
Object-oriented design for infrastructure-as-a-code - Anna Bankirer
DevOpsDays Tel Aviv
 
Dev ops
Dev opsDev ops
Open Source SLAs
Open Source SLAsOpen Source SLAs
Open Source SLAs
Noah Zoschke
 
Agile performance testing
Agile performance testingAgile performance testing
Agile performance testing
Cesario Ramos
 
State of continuous delivery in 2015 - Minsk 15-5-2015
State of continuous delivery in 2015 - Minsk 15-5-2015State of continuous delivery in 2015 - Minsk 15-5-2015
State of continuous delivery in 2015 - Minsk 15-5-2015
Pavel Chunyayev
 
THE PLEASURES OF ON-PREM, TOMER GABEL
THE PLEASURES OF ON-PREM, TOMER GABELTHE PLEASURES OF ON-PREM, TOMER GABEL
THE PLEASURES OF ON-PREM, TOMER GABEL
DevOpsDays Tel Aviv
 

What's hot (19)

System Availability Talk
System Availability TalkSystem Availability Talk
System Availability Talk
 
IoT to Cloud the DevOps Way
IoT to Cloud the DevOps WayIoT to Cloud the DevOps Way
IoT to Cloud the DevOps Way
 
Agile Testing
Agile Testing Agile Testing
Agile Testing
 
Agile Project Management: "How I Learned to Stop Worrying and Love Agile”
Agile Project Management: "How I Learned to Stop Worrying and Love Agile”Agile Project Management: "How I Learned to Stop Worrying and Love Agile”
Agile Project Management: "How I Learned to Stop Worrying and Love Agile”
 
The 7 Habits of Effective Data Driven Companies
The 7 Habits of Effective Data Driven CompaniesThe 7 Habits of Effective Data Driven Companies
The 7 Habits of Effective Data Driven Companies
 
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal ReadinessTis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
 
#SPSNewEngland Improving #DevOps using #Microsoft business productivity tools...
#SPSNewEngland Improving #DevOps using #Microsoft business productivity tools...#SPSNewEngland Improving #DevOps using #Microsoft business productivity tools...
#SPSNewEngland Improving #DevOps using #Microsoft business productivity tools...
 
Continuous Testing: Preparing for DevOps
Continuous Testing: Preparing for DevOpsContinuous Testing: Preparing for DevOps
Continuous Testing: Preparing for DevOps
 
Geek Sync I Surviving the Holidays with SQL Server
Geek Sync I Surviving the Holidays with SQL ServerGeek Sync I Surviving the Holidays with SQL Server
Geek Sync I Surviving the Holidays with SQL Server
 
Jeffrey Snover - Empowering DevOps with Azure Stack
Jeffrey Snover - Empowering DevOps with Azure StackJeffrey Snover - Empowering DevOps with Azure Stack
Jeffrey Snover - Empowering DevOps with Azure Stack
 
Atlassian's Mystique CLI, Minimizing the Experiment Development Cycle
Atlassian's Mystique CLI, Minimizing the Experiment Development CycleAtlassian's Mystique CLI, Minimizing the Experiment Development Cycle
Atlassian's Mystique CLI, Minimizing the Experiment Development Cycle
 
AB Testing at Expedia
AB Testing at ExpediaAB Testing at Expedia
AB Testing at Expedia
 
Geek Sync | Kick Start SQL Server 2016 Performance Tips and Tricks
Geek Sync | Kick Start SQL Server 2016 Performance Tips and TricksGeek Sync | Kick Start SQL Server 2016 Performance Tips and Tricks
Geek Sync | Kick Start SQL Server 2016 Performance Tips and Tricks
 
Object-oriented design for infrastructure-as-a-code - Anna Bankirer
Object-oriented design for infrastructure-as-a-code - Anna BankirerObject-oriented design for infrastructure-as-a-code - Anna Bankirer
Object-oriented design for infrastructure-as-a-code - Anna Bankirer
 
Dev ops
Dev opsDev ops
Dev ops
 
Open Source SLAs
Open Source SLAsOpen Source SLAs
Open Source SLAs
 
Agile performance testing
Agile performance testingAgile performance testing
Agile performance testing
 
State of continuous delivery in 2015 - Minsk 15-5-2015
State of continuous delivery in 2015 - Minsk 15-5-2015State of continuous delivery in 2015 - Minsk 15-5-2015
State of continuous delivery in 2015 - Minsk 15-5-2015
 
THE PLEASURES OF ON-PREM, TOMER GABEL
THE PLEASURES OF ON-PREM, TOMER GABELTHE PLEASURES OF ON-PREM, TOMER GABEL
THE PLEASURES OF ON-PREM, TOMER GABEL
 

Viewers also liked

Character name ideas
Character name ideasCharacter name ideas
Character name ideas
simsimma
 
B. Morlion - Introduction
B. Morlion - IntroductionB. Morlion - Introduction
B. Morlion - Introduction
iMinds conference
 
Swiss Hockey League
Swiss Hockey LeagueSwiss Hockey League
Swiss Hockey League
dewinterm
 
Вода. Маслякова Таня 9 б
Вода. Маслякова Таня 9 бВода. Маслякова Таня 9 б
Вода. Маслякова Таня 9 бmariageograf
 
Penguin readers -_how_to_be_an_alien_-_level_3
Penguin readers -_how_to_be_an_alien_-_level_3Penguin readers -_how_to_be_an_alien_-_level_3
Penguin readers -_how_to_be_an_alien_-_level_3
Pedro Jose Cutillas Perez
 
Imaging Presentation_V2
Imaging Presentation_V2 Imaging Presentation_V2
Imaging Presentation_V2
Dan Ptak
 
Arcanum (online round)
Arcanum (online round)Arcanum (online round)
Arcanum (online round)
Case Champ
 

Viewers also liked (7)

Character name ideas
Character name ideasCharacter name ideas
Character name ideas
 
B. Morlion - Introduction
B. Morlion - IntroductionB. Morlion - Introduction
B. Morlion - Introduction
 
Swiss Hockey League
Swiss Hockey LeagueSwiss Hockey League
Swiss Hockey League
 
Вода. Маслякова Таня 9 б
Вода. Маслякова Таня 9 бВода. Маслякова Таня 9 б
Вода. Маслякова Таня 9 б
 
Penguin readers -_how_to_be_an_alien_-_level_3
Penguin readers -_how_to_be_an_alien_-_level_3Penguin readers -_how_to_be_an_alien_-_level_3
Penguin readers -_how_to_be_an_alien_-_level_3
 
Imaging Presentation_V2
Imaging Presentation_V2 Imaging Presentation_V2
Imaging Presentation_V2
 
Arcanum (online round)
Arcanum (online round)Arcanum (online round)
Arcanum (online round)
 

Similar to Top ten secret weapons for performance testing in an agile environment

Top Ten Secret Weapons For Agile Performance Testing
Top Ten Secret Weapons For Agile Performance TestingTop Ten Secret Weapons For Agile Performance Testing
Top Ten Secret Weapons For Agile Performance Testing
Andriy Melnyk
 
Axpert™ from Agile Labs, Bangalore, India
Axpert™  from Agile Labs, Bangalore, IndiaAxpert™  from Agile Labs, Bangalore, India
Axpert™ from Agile Labs, Bangalore, India
AGILE LABS,INDIA
 
Agile Talk at CSI Chapter, Mumbai
Agile Talk at CSI Chapter, MumbaiAgile Talk at CSI Chapter, Mumbai
Agile Talk at CSI Chapter, Mumbai
Hiren Doshi
 
How Salesforce built a Scalable, World-Class, Performance Engineering Team
How Salesforce built a Scalable, World-Class, Performance Engineering TeamHow Salesforce built a Scalable, World-Class, Performance Engineering Team
How Salesforce built a Scalable, World-Class, Performance Engineering Team
Salesforce Developers
 
Auto Deploy Product Guide
Auto Deploy Product GuideAuto Deploy Product Guide
Auto Deploy Product Guide
Mark Dalton
 
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
 
The Three Stages of Cloud Adoption - RightScale Compute 2013
The Three Stages of Cloud Adoption - RightScale Compute 2013The Three Stages of Cloud Adoption - RightScale Compute 2013
The Three Stages of Cloud Adoption - RightScale Compute 2013
RightScale
 
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 Technology Solutions
 
Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas
Naresh Jain
 
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
 
How to Deliver your Oracle EBS R12 Upgrade
How to Deliver your Oracle EBS R12 UpgradeHow to Deliver your Oracle EBS R12 Upgrade
How to Deliver your Oracle EBS R12 Upgrade
Original Software
 
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
Stephen Thair
 
Tw specifications for-testing1
Tw specifications for-testing1Tw specifications for-testing1
Tw specifications for-testing1
ThoughtWorks Studios
 
Fundamentals Performance Testing
Fundamentals Performance TestingFundamentals Performance Testing
Fundamentals Performance Testing
Bhuvaneswari Subramani
 
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
Universal Technology Solutions
 
MuleSoft_NZ_Meetup_8
MuleSoft_NZ_Meetup_8MuleSoft_NZ_Meetup_8
MuleSoft_NZ_Meetup_8
MizuhoHoshino
 
The Complete User Experience Monitoring Solution - eG Enterprise v7
The Complete User Experience Monitoring Solution - eG Enterprise v7The Complete User Experience Monitoring Solution - eG Enterprise v7
The Complete User Experience Monitoring Solution - eG Enterprise v7
eG Innovations
 
Become Customer Centric with EngageOne
Become Customer Centric with EngageOneBecome Customer Centric with EngageOne
Become Customer Centric with EngageOne
Precisely
 
Mobile and agile the floating writer's survival kit
Mobile and agile   the floating writer's survival kitMobile and agile   the floating writer's survival kit
Mobile and agile the floating writer's survival kit
Alyssa Fox
 
Enate Pilot
Enate PilotEnate Pilot
Enate Pilot
Jen Shaw
 

Similar to Top ten secret weapons for performance testing in an agile environment (20)

Top Ten Secret Weapons For Agile Performance Testing
Top Ten Secret Weapons For Agile Performance TestingTop Ten Secret Weapons For Agile Performance Testing
Top Ten Secret Weapons For Agile Performance Testing
 
Axpert™ from Agile Labs, Bangalore, India
Axpert™  from Agile Labs, Bangalore, IndiaAxpert™  from Agile Labs, Bangalore, India
Axpert™ from Agile Labs, Bangalore, India
 
Agile Talk at CSI Chapter, Mumbai
Agile Talk at CSI Chapter, MumbaiAgile Talk at CSI Chapter, Mumbai
Agile Talk at CSI Chapter, Mumbai
 
How Salesforce built a Scalable, World-Class, Performance Engineering Team
How Salesforce built a Scalable, World-Class, Performance Engineering TeamHow Salesforce built a Scalable, World-Class, Performance Engineering Team
How Salesforce built a Scalable, World-Class, Performance Engineering Team
 
Auto Deploy Product Guide
Auto Deploy Product GuideAuto Deploy Product Guide
Auto Deploy Product Guide
 
Delivering A Great End User Experience
Delivering A Great End User ExperienceDelivering A Great End User Experience
Delivering A Great End User Experience
 
The Three Stages of Cloud Adoption - RightScale Compute 2013
The Three Stages of Cloud Adoption - RightScale Compute 2013The Three Stages of Cloud Adoption - RightScale Compute 2013
The Three Stages of Cloud Adoption - RightScale Compute 2013
 
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
 
Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas
 
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"?
 
How to Deliver your Oracle EBS R12 Upgrade
How to Deliver your Oracle EBS R12 UpgradeHow to Deliver your Oracle EBS R12 Upgrade
How to Deliver your Oracle EBS R12 Upgrade
 
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
 
Tw specifications for-testing1
Tw specifications for-testing1Tw specifications for-testing1
Tw specifications for-testing1
 
Fundamentals Performance Testing
Fundamentals Performance TestingFundamentals Performance Testing
Fundamentals Performance Testing
 
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
 
MuleSoft_NZ_Meetup_8
MuleSoft_NZ_Meetup_8MuleSoft_NZ_Meetup_8
MuleSoft_NZ_Meetup_8
 
The Complete User Experience Monitoring Solution - eG Enterprise v7
The Complete User Experience Monitoring Solution - eG Enterprise v7The Complete User Experience Monitoring Solution - eG Enterprise v7
The Complete User Experience Monitoring Solution - eG Enterprise v7
 
Become Customer Centric with EngageOne
Become Customer Centric with EngageOneBecome Customer Centric with EngageOne
Become Customer Centric with EngageOne
 
Mobile and agile the floating writer's survival kit
Mobile and agile   the floating writer's survival kitMobile and agile   the floating writer's survival kit
Mobile and agile the floating writer's survival kit
 
Enate Pilot
Enate PilotEnate Pilot
Enate Pilot
 

Recently uploaded

Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
Neo4j
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
DianaGray10
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
Ivo Velitchkov
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid ResearchHarnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Neo4j
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
Jason Yip
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
Edge AI and Vision Alliance
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
saastr
 
GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)
Javier Junquera
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
DianaGray10
 
"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota
Fwdays
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Pitangent Analytics & Technology Solutions Pvt. Ltd
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
 

Recently uploaded (20)

Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid ResearchHarnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
 
GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
 
"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
 

Top ten secret weapons for performance testing in an agile environment

  • 1. Top ten secret weapons for performance testing in an agile environment patrick.kua@thoughtworks.com (and alistair.jones@thoughtworks.com) © ThoughtWorks 2011
  • 2. Make Performance Explicit © ThoughtWorks 2011 1
  • 3. 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 © ThoughtWorks 2011
  • 4. © ThoughtWorks 2011 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
  • 5. One Team © ThoughtWorks 2011 2
  • 6. Team Dynamics © ThoughtWorks 2011
  • 7. Performance Testers Part of Team © ThoughtWorks 2011
  • 9. Performance Testers Part of Team © ThoughtWorks 2011
  • 10. Pair on Performance Test Stories © ThoughtWorks 2011
  • 11. Rotate Pairs © ThoughtWorks 2011
  • 12. Customer Driven © ThoughtWorks 2011 3
  • 13. What was a good source of requirements? © ThoughtWorks 2011
  • 14. © ThoughtWorks 2011 Existing Pain Points
  • 15. An example... © ThoughtWorks 2011
  • 16. 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 © ThoughtWorks 2011
  • 17. Another example © ThoughtWorks 2011
  • 18. © ThoughtWorks 2011 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
  • 20. Who is the customer? © ThoughtWorks 2011 Investors Marketing End Users Power Users Operations
  • 22. © ThoughtWorks 2011 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
  • 24. © ThoughtWorks 2011 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
  • 25. One Directory © ThoughtWorks 2011
  • 26. Play Performance Early © ThoughtWorks 2011 5
  • 27. © ThoughtWorks 2011 End Start Other projects start performance testing here End Start Agile projects start performance testing as early as possible
  • 28. Iterate Don’t (Just) Increment © ThoughtWorks 2011 6
  • 30. We Sashimi © ThoughtWorks 2011
  • 31. Sashimi Slice By... Presentation © ThoughtWorks 2011
  • 32. © ThoughtWorks 2011 So that I can better see trends in performance As the Operations Manager I want a graph of requests per second
  • 33. © ThoughtWorks 2011 So that I can better see trends in performance As the Operations Manager I want a graph of average latency per second
  • 34. © ThoughtWorks 2011 So that I can easily scan results at a single glance As the Operations Manager I want a one page showing all results
  • 35. Sashimi Slice By... Scenario © ThoughtWorks 2011
  • 36. © ThoughtWorks 2011 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
  • 37. © ThoughtWorks 2011 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
  • 38. Automate, Automate, Automate © ThoughtWorks 2011 7
  • 39. © ThoughtWorks 2011 Automated Compilation Automated Tests Automated Packaging Automated Deployment
  • 40. Automation => Reproducible and Consistent Automation => Faster Feedback Automation => Higher Productivity Why Automation? © ThoughtWorks 2011
  • 41. © ThoughtWorks 2011 Automated Test Orchestration Automated Analysis Automated Scheduling Automated Load Generation Automated Application Deployment Automated Result Archiving
  • 42. Continuous Performance Testing © ThoughtWorks 2011 8
  • 44. Application Build Pipelines © ThoughtWorks 2011 Performance
  • 46. Test Drive Your Performance Test Code © ThoughtWorks 2011 9
  • 47. V Model Testing © ThoughtWorks 2011 Slower + Longer Performance Testing Speed Fast http://en.wikipedia.org/wiki/V-Model_(software_development)
  • 48. We make mistakes © ThoughtWorks 2011
  • 49. V Model Testing © ThoughtWorks 2011 Slower + Longer Performance Testing Speed Unit test performance code to fail faster Fast http://en.wikipedia.org/wiki/V-Model_(software_development)
  • 50. Fail Fast! © ThoughtWorks 2011 Fast feedback! Faster learning Faster results
  • 51. Classic Performance Areas to Test © ThoughtWorks 2011 Analysis Information Collection Presentation Publishing Visualisation
  • 52. Get Feedback © ThoughtWorks 2011 10
  • 53. Frequently (Weekly) Showcase © ThoughtWorks 2011 Here is what we learned this week....
  • 54. Frequently (Weekly) Showcase © ThoughtWorks 2011 And based on this... We changed our directory structure.
  • 55. Frequently (Weekly) Showcase © ThoughtWorks 2011 Should we do something different knowing this new information?
  • 56. 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 © ThoughtWorks 2011
  • 57. 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 © ThoughtWorks 2011