SlideShare a Scribd company logo
1 of 39
Download to read offline
Monitoring Performance from Development through Production Agile Development of HIGH Performance APPLICATIONS
Fabian Lange Head of Competence Center Performance Java since its beginning Agile since its establishment Performance since waiting got boring Meandcodecentric ,[object Object]
Specialized in
Perfomance Services
Agile Software Factory
Alwayslookingfornewtalent,[object Object]
The curse of non-functional Requirements Chapter One
Who measures performance … in production? before production? during development? Who does development … the waterfall way? the agile way? Let‘s Do a Poll
We finally can test functional requirements! Many modern practices TDD ATDD BDD Testing Requirements
Executable Specifications makes functional testing a breeze! RequirementsaretheTEst *** Settings *** Resource         ${RESOURCES}/BDD.txt Test Template    Branch Manager Change Should not affectEmployee *** Keyword *** Branch Manager Change Should not affectEmployee     [Arguments]  ${periodClosed}  ${periodOpenAndModified}  ${importDay}  ${oldManagerValidUntil}  ${newManagerValidFrom} Giveninitializedcriteriaforbonuscommercial And a branch B withbranchmanager M_OLD andemployee E1 Andevaluationfor E1 forperiod ${periodClosed} whichisclosed Andevaluationfor E1 forperiod ${periodOpenAndModified} whichis open andmodified When M_NEW becomesnewmanagerofbranch B Andimportserviceiscalled on ${importDay} Thenthenewbranchmanagerofbranch B is M_NEW valid from ${newManagerValidFrom} Andbranchmanager M_OLD managesemployee E until ${oldManagerValidUntil} Andbranchmanager M_NEW managesemployee E from ${newManagerValidFrom} And Evaluations for E1 still havethe same content | *Test* | *ClosedPeriod*        | *Open Period*          | *Run Import On* | *Old Manager Stops* | *New Manager Starts* | | 1      | 1.11.2009 - 30.11.2009 | 1.12.2009 - 31.12.2009 | 11.11.2009      | 30.11.2009          |  1.12.2009           | | 2      | 1.11.2009 - 30.11.2009 | 1.12.2009 - 31.12.2009 |  1.11.2009      | 31.10.2009          |  1.11.2009           | | 3      | 1.11.2009 - 30.11.2009 | 1.12.2009 - 31.12.2009 |  1.12.2009      | 30.11.2009          |  1.12.2009           |
Performance is Non-Functional! All Non Functional Requirements are not very agile They cannot be added later on So you need to know about them! They form the Definition of Done
Testing Non-Functional is hard! There are no absolute measures No production infrastructure
How Do You Measure Performance? Relevant Measures are hard to find Response Time For users System Load For planning Traffic For money Realistic Measures are hard to obtain 2 seconds? Load avg < 2.8 ? Less than 2TB per month?
How Do You Test Performance? Who ... ... has a process for performance tests? ... does loadtests? ... plans for scalability? ... uses a profiler? ... uses a server monitor? ... uses an application monitor?
„ProductionisFaster“
Ensuring great Performance Chapter Two:
A Typical Performance Analysis Process Tom, the boss calls:“We loose customers because  of bad performance” Lynn from QA does a load test:“Application is slow as a snail” Task force is set up John tries to learn performance tools Sarah does a microbenchmark and gains 5 ms  Application still slow  Everybody unhappy
How about… Developers care about performance Good tools are understood and used Performance is tested regularly Anomalies are taken care of  Application is running smoothly  Everybody is happy
Care About Performance Caring is fundamentally important Development teams need to extend their scope In Scrum teams need to be able to do all the work to get done
Good Tools Tool paralysis does not help Choose 1 or 2 good tools and learn them Tools should work everywhere flickr.com/photos/pmtorrone/2381346935
Continuously Test Performance Find a good balance Automated Checks Manual Tests Functional tests already provide data How about a load test every iteration?
Investigate Suspicious Data Because you care And you have the tools And you have the data You should investigate findings “When you have eliminated the impossible,whatever remains, however improbable,must be the truth”	- Sherlock Holmes flickr.com/photos/cayusa/2159980025
A real World Example Chapter Three
Team Cares About Performance Definition of Done includes a lot spec, design, unit test, code, acceptance tests, documentation, usability review, code review, stability tests, compatibility tests, interoperability test, load tests, security tests, performance tests… Get it right from the beginning Do not pile up technical debt To go well you have to go slow
[object Object]
Sprint 1
15 Points delivered
Sprint 2
12 Points delivered
Sprint 3
9 Points delivered
Sprint 4
7 Points deliveredTechnical Debt / Undone Work Wrong Definition of Done Better Definition of Done ,[object Object]
12 Points delivered
Sprint 2
12 Points delivered
Sprint 3
12 Points delivered
Sprint 4

More Related Content

What's hot

Agile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureAgile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureWee Witthawaskul
 
Test Driven Development by Denis Lutz
Test Driven Development by Denis LutzTest Driven Development by Denis Lutz
Test Driven Development by Denis Lutzjazzman1980
 
Agile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated TestingAgile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated TestingDimitri Ponomareff
 
The Role of Quality Assurance in the World of Agile Development and Scrum
The Role of Quality Assurance in the World of Agile Development and ScrumThe Role of Quality Assurance in the World of Agile Development and Scrum
The Role of Quality Assurance in the World of Agile Development and ScrumRussell Pannone
 
Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models Marraju Bollapragada V
 
Extreme programming - a quick and agile overview !
Extreme programming - a quick and agile overview !Extreme programming - a quick and agile overview !
Extreme programming - a quick and agile overview !Vinit Kumar Singh
 
Extreme programming
Extreme programmingExtreme programming
Extreme programmingMr SMAK
 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CDRoger Turnau
 
Extreme programming
Extreme programmingExtreme programming
Extreme programmingaaina_katyal
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test AutomationNaveen Kumar Singh
 
Scrum Plus Extreme Programming (XP) for Hyper Productivity
Scrum Plus Extreme Programming (XP) for Hyper ProductivityScrum Plus Extreme Programming (XP) for Hyper Productivity
Scrum Plus Extreme Programming (XP) for Hyper ProductivityRon Quartel
 
Test pyramid agile pune conference
Test pyramid   agile pune conferenceTest pyramid   agile pune conference
Test pyramid agile pune conferenceSachin Natu
 
Requirementless testing
Requirementless testingRequirementless testing
Requirementless testingJulen Mohanty
 
Evolution of Software Engineering in NCTR Projects
Evolution of Software Engineering in NCTR  Projects   Evolution of Software Engineering in NCTR  Projects
Evolution of Software Engineering in NCTR Projects Mohammed Abbas
 
Introduction to Agile
Introduction to AgileIntroduction to Agile
Introduction to AgileRichard Cheng
 
Optimizing Your Agile Testing Processes
Optimizing Your Agile Testing ProcessesOptimizing Your Agile Testing Processes
Optimizing Your Agile Testing ProcessesStanton Champion
 
Agile Software Development with XP
Agile Software Development with XPAgile Software Development with XP
Agile Software Development with XPVashira Ravipanich
 
Behavior Driven Development (BDD)
Behavior Driven Development (BDD)Behavior Driven Development (BDD)
Behavior Driven Development (BDD)Ajay Danait
 

What's hot (20)

Agile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureAgile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai Culture
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Test Driven Development by Denis Lutz
Test Driven Development by Denis LutzTest Driven Development by Denis Lutz
Test Driven Development by Denis Lutz
 
Agile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated TestingAgile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated Testing
 
The Role of Quality Assurance in the World of Agile Development and Scrum
The Role of Quality Assurance in the World of Agile Development and ScrumThe Role of Quality Assurance in the World of Agile Development and Scrum
The Role of Quality Assurance in the World of Agile Development and Scrum
 
Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models Agile vs Iterative vs Waterfall models
Agile vs Iterative vs Waterfall models
 
Extreme programming - a quick and agile overview !
Extreme programming - a quick and agile overview !Extreme programming - a quick and agile overview !
Extreme programming - a quick and agile overview !
 
Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CD
 
Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
 
Scrum Plus Extreme Programming (XP) for Hyper Productivity
Scrum Plus Extreme Programming (XP) for Hyper ProductivityScrum Plus Extreme Programming (XP) for Hyper Productivity
Scrum Plus Extreme Programming (XP) for Hyper Productivity
 
Test pyramid agile pune conference
Test pyramid   agile pune conferenceTest pyramid   agile pune conference
Test pyramid agile pune conference
 
Requirementless testing
Requirementless testingRequirementless testing
Requirementless testing
 
Evolution of Software Engineering in NCTR Projects
Evolution of Software Engineering in NCTR  Projects   Evolution of Software Engineering in NCTR  Projects
Evolution of Software Engineering in NCTR Projects
 
Cobol agile
Cobol agileCobol agile
Cobol agile
 
Introduction to Agile
Introduction to AgileIntroduction to Agile
Introduction to Agile
 
Optimizing Your Agile Testing Processes
Optimizing Your Agile Testing ProcessesOptimizing Your Agile Testing Processes
Optimizing Your Agile Testing Processes
 
Agile Software Development with XP
Agile Software Development with XPAgile Software Development with XP
Agile Software Development with XP
 
Behavior Driven Development (BDD)
Behavior Driven Development (BDD)Behavior Driven Development (BDD)
Behavior Driven Development (BDD)
 

Similar to Agile Development of High Performance Applications

Poet ( PROCESS OPERATIONAL EXCELLENCE TECHNIQUE)
Poet ( PROCESS OPERATIONAL EXCELLENCE TECHNIQUE)Poet ( PROCESS OPERATIONAL EXCELLENCE TECHNIQUE)
Poet ( PROCESS OPERATIONAL EXCELLENCE TECHNIQUE)Dr. V.N. Tikku
 
Building a Complete Pipeline: The Essential Components of Continuous Testing ...
Building a Complete Pipeline: The Essential Components of Continuous Testing ...Building a Complete Pipeline: The Essential Components of Continuous Testing ...
Building a Complete Pipeline: The Essential Components of Continuous Testing ...Applitools
 
Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Moataz Nabil
 
How to fit Performance Testing in Devops environment.pptx.pdf
How to fit Performance Testing in Devops environment.pptx.pdfHow to fit Performance Testing in Devops environment.pptx.pdf
How to fit Performance Testing in Devops environment.pptx.pdfKnoldus Inc.
 
Scrum in Practice
Scrum in PracticeScrum in Practice
Scrum in PracticeESUG
 
Performance Testing
Performance TestingPerformance Testing
Performance TestingSelin Gungor
 
Learn to see, measure and automate with value stream management
Learn to see, measure and automate with value stream managementLearn to see, measure and automate with value stream management
Learn to see, measure and automate with value stream managementLance Knight
 
How to test performance and not die trying
How to test performance and not die tryingHow to test performance and not die trying
How to test performance and not die tryingDiego Cardozo
 
Continuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentContinuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentDynatrace
 
DevOPs Transformation Workshop
DevOPs Transformation WorkshopDevOPs Transformation Workshop
DevOPs Transformation WorkshopJules Pierre-Louis
 
Case Study: How we achieved 95% automation with IBM Rational Quality Manageme...
Case Study: How we achieved 95% automation with IBM Rational Quality Manageme...Case Study: How we achieved 95% automation with IBM Rational Quality Manageme...
Case Study: How we achieved 95% automation with IBM Rational Quality Manageme...Alan Mirko Poldrugac, MSc, PMP
 
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQMIBM Rational
 
Software testing interview Q&A – Part 2
Software testing interview Q&A – Part 2Software testing interview Q&A – Part 2
Software testing interview Q&A – Part 2Khoa Bui
 
Slides from "Taking an Holistic Approach to Product Quality"
Slides from "Taking an Holistic Approach to Product Quality"Slides from "Taking an Holistic Approach to Product Quality"
Slides from "Taking an Holistic Approach to Product Quality"Peter Marshall
 
AfterTest Madrid March 2016 - DevOps and Testing Introduction
AfterTest Madrid March 2016 - DevOps and Testing IntroductionAfterTest Madrid March 2016 - DevOps and Testing Introduction
AfterTest Madrid March 2016 - DevOps and Testing IntroductionPeter Marshall
 
CampusSDN2017 - Jawdat: Product Management and Agile Development
CampusSDN2017 - Jawdat: Product Management and Agile DevelopmentCampusSDN2017 - Jawdat: Product Management and Agile Development
CampusSDN2017 - Jawdat: Product Management and Agile DevelopmentJawdatTI
 
ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)Terry Cho
 

Similar to Agile Development of High Performance Applications (20)

Scrum overview
Scrum overviewScrum overview
Scrum overview
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Poet ( PROCESS OPERATIONAL EXCELLENCE TECHNIQUE)
Poet ( PROCESS OPERATIONAL EXCELLENCE TECHNIQUE)Poet ( PROCESS OPERATIONAL EXCELLENCE TECHNIQUE)
Poet ( PROCESS OPERATIONAL EXCELLENCE TECHNIQUE)
 
Building a Complete Pipeline: The Essential Components of Continuous Testing ...
Building a Complete Pipeline: The Essential Components of Continuous Testing ...Building a Complete Pipeline: The Essential Components of Continuous Testing ...
Building a Complete Pipeline: The Essential Components of Continuous Testing ...
 
Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013
 
How to fit Performance Testing in Devops environment.pptx.pdf
How to fit Performance Testing in Devops environment.pptx.pdfHow to fit Performance Testing in Devops environment.pptx.pdf
How to fit Performance Testing in Devops environment.pptx.pdf
 
Scrum in Practice
Scrum in PracticeScrum in Practice
Scrum in Practice
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Learn to see, measure and automate with value stream management
Learn to see, measure and automate with value stream managementLearn to see, measure and automate with value stream management
Learn to see, measure and automate with value stream management
 
How to test performance and not die trying
How to test performance and not die tryingHow to test performance and not die trying
How to test performance and not die trying
 
Continuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentContinuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile Development
 
DevOPs Transformation Workshop
DevOPs Transformation WorkshopDevOPs Transformation Workshop
DevOPs Transformation Workshop
 
Case Study: How we achieved 95% automation with IBM Rational Quality Manageme...
Case Study: How we achieved 95% automation with IBM Rational Quality Manageme...Case Study: How we achieved 95% automation with IBM Rational Quality Manageme...
Case Study: How we achieved 95% automation with IBM Rational Quality Manageme...
 
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
 
Software testing interview Q&A – Part 2
Software testing interview Q&A – Part 2Software testing interview Q&A – Part 2
Software testing interview Q&A – Part 2
 
Slides from "Taking an Holistic Approach to Product Quality"
Slides from "Taking an Holistic Approach to Product Quality"Slides from "Taking an Holistic Approach to Product Quality"
Slides from "Taking an Holistic Approach to Product Quality"
 
Sanjay Sharma
Sanjay SharmaSanjay Sharma
Sanjay Sharma
 
AfterTest Madrid March 2016 - DevOps and Testing Introduction
AfterTest Madrid March 2016 - DevOps and Testing IntroductionAfterTest Madrid March 2016 - DevOps and Testing Introduction
AfterTest Madrid March 2016 - DevOps and Testing Introduction
 
CampusSDN2017 - Jawdat: Product Management and Agile Development
CampusSDN2017 - Jawdat: Product Management and Agile DevelopmentCampusSDN2017 - Jawdat: Product Management and Agile Development
CampusSDN2017 - Jawdat: Product Management and Agile Development
 
ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)
 

More from Fabian Lange

SPDY - http reloaded - WebTechConference 2012
SPDY - http reloaded - WebTechConference 2012SPDY - http reloaded - WebTechConference 2012
SPDY - http reloaded - WebTechConference 2012Fabian Lange
 
Aspects of modern APM solutions
Aspects of modern APM solutionsAspects of modern APM solutions
Aspects of modern APM solutionsFabian Lange
 
Web Performance Optimization - Web Tech Conference 2011 Talk
Web Performance Optimization - Web Tech Conference 2011 TalkWeb Performance Optimization - Web Tech Conference 2011 Talk
Web Performance Optimization - Web Tech Conference 2011 TalkFabian Lange
 
Performance - a challenging craft
Performance  - a challenging craftPerformance  - a challenging craft
Performance - a challenging craftFabian Lange
 
Web Performance Optimization - JAX 2011 Talk
Web Performance Optimization - JAX 2011 TalkWeb Performance Optimization - JAX 2011 Talk
Web Performance Optimization - JAX 2011 TalkFabian Lange
 
Rich Ajax Platform - Programming for Web and Rich Client
Rich Ajax Platform - Programming for Web and Rich ClientRich Ajax Platform - Programming for Web and Rich Client
Rich Ajax Platform - Programming for Web and Rich ClientFabian Lange
 
Eclipse Rich Ajax Platform
Eclipse Rich Ajax PlatformEclipse Rich Ajax Platform
Eclipse Rich Ajax PlatformFabian Lange
 
Codecentric At Ajax World Conference San Jose
Codecentric At Ajax World Conference San JoseCodecentric At Ajax World Conference San Jose
Codecentric At Ajax World Conference San JoseFabian Lange
 
Full Stack Web Application Performance Tuning
Full Stack Web Application Performance TuningFull Stack Web Application Performance Tuning
Full Stack Web Application Performance TuningFabian Lange
 

More from Fabian Lange (11)

SPDY - http reloaded - WebTechConference 2012
SPDY - http reloaded - WebTechConference 2012SPDY - http reloaded - WebTechConference 2012
SPDY - http reloaded - WebTechConference 2012
 
The SPDY Protocol
The SPDY ProtocolThe SPDY Protocol
The SPDY Protocol
 
Aspects of modern APM solutions
Aspects of modern APM solutionsAspects of modern APM solutions
Aspects of modern APM solutions
 
Web Performance Optimization - Web Tech Conference 2011 Talk
Web Performance Optimization - Web Tech Conference 2011 TalkWeb Performance Optimization - Web Tech Conference 2011 Talk
Web Performance Optimization - Web Tech Conference 2011 Talk
 
Performance - a challenging craft
Performance  - a challenging craftPerformance  - a challenging craft
Performance - a challenging craft
 
Web Performance Optimization - JAX 2011 Talk
Web Performance Optimization - JAX 2011 TalkWeb Performance Optimization - JAX 2011 Talk
Web Performance Optimization - JAX 2011 Talk
 
Rich Ajax Platform - Programming for Web and Rich Client
Rich Ajax Platform - Programming for Web and Rich ClientRich Ajax Platform - Programming for Web and Rich Client
Rich Ajax Platform - Programming for Web and Rich Client
 
Eclipse Rich Ajax Platform
Eclipse Rich Ajax PlatformEclipse Rich Ajax Platform
Eclipse Rich Ajax Platform
 
Ant Maven
Ant MavenAnt Maven
Ant Maven
 
Codecentric At Ajax World Conference San Jose
Codecentric At Ajax World Conference San JoseCodecentric At Ajax World Conference San Jose
Codecentric At Ajax World Conference San Jose
 
Full Stack Web Application Performance Tuning
Full Stack Web Application Performance TuningFull Stack Web Application Performance Tuning
Full Stack Web Application Performance Tuning
 

Recently uploaded

React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sectoritnewsafrica
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...Karmanjay Verma
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...itnewsafrica
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 

Recently uploaded (20)

React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 

Agile Development of High Performance Applications

  • 1. Monitoring Performance from Development through Production Agile Development of HIGH Performance APPLICATIONS
  • 2.
  • 6.
  • 7. The curse of non-functional Requirements Chapter One
  • 8. Who measures performance … in production? before production? during development? Who does development … the waterfall way? the agile way? Let‘s Do a Poll
  • 9. We finally can test functional requirements! Many modern practices TDD ATDD BDD Testing Requirements
  • 10. Executable Specifications makes functional testing a breeze! RequirementsaretheTEst *** Settings *** Resource ${RESOURCES}/BDD.txt Test Template Branch Manager Change Should not affectEmployee *** Keyword *** Branch Manager Change Should not affectEmployee [Arguments] ${periodClosed} ${periodOpenAndModified} ${importDay} ${oldManagerValidUntil} ${newManagerValidFrom} Giveninitializedcriteriaforbonuscommercial And a branch B withbranchmanager M_OLD andemployee E1 Andevaluationfor E1 forperiod ${periodClosed} whichisclosed Andevaluationfor E1 forperiod ${periodOpenAndModified} whichis open andmodified When M_NEW becomesnewmanagerofbranch B Andimportserviceiscalled on ${importDay} Thenthenewbranchmanagerofbranch B is M_NEW valid from ${newManagerValidFrom} Andbranchmanager M_OLD managesemployee E until ${oldManagerValidUntil} Andbranchmanager M_NEW managesemployee E from ${newManagerValidFrom} And Evaluations for E1 still havethe same content | *Test* | *ClosedPeriod* | *Open Period* | *Run Import On* | *Old Manager Stops* | *New Manager Starts* | | 1 | 1.11.2009 - 30.11.2009 | 1.12.2009 - 31.12.2009 | 11.11.2009 | 30.11.2009 | 1.12.2009 | | 2 | 1.11.2009 - 30.11.2009 | 1.12.2009 - 31.12.2009 | 1.11.2009 | 31.10.2009 | 1.11.2009 | | 3 | 1.11.2009 - 30.11.2009 | 1.12.2009 - 31.12.2009 | 1.12.2009 | 30.11.2009 | 1.12.2009 |
  • 11. Performance is Non-Functional! All Non Functional Requirements are not very agile They cannot be added later on So you need to know about them! They form the Definition of Done
  • 12. Testing Non-Functional is hard! There are no absolute measures No production infrastructure
  • 13. How Do You Measure Performance? Relevant Measures are hard to find Response Time For users System Load For planning Traffic For money Realistic Measures are hard to obtain 2 seconds? Load avg < 2.8 ? Less than 2TB per month?
  • 14. How Do You Test Performance? Who ... ... has a process for performance tests? ... does loadtests? ... plans for scalability? ... uses a profiler? ... uses a server monitor? ... uses an application monitor?
  • 17. A Typical Performance Analysis Process Tom, the boss calls:“We loose customers because of bad performance” Lynn from QA does a load test:“Application is slow as a snail” Task force is set up John tries to learn performance tools Sarah does a microbenchmark and gains 5 ms  Application still slow  Everybody unhappy
  • 18. How about… Developers care about performance Good tools are understood and used Performance is tested regularly Anomalies are taken care of  Application is running smoothly  Everybody is happy
  • 19. Care About Performance Caring is fundamentally important Development teams need to extend their scope In Scrum teams need to be able to do all the work to get done
  • 20. Good Tools Tool paralysis does not help Choose 1 or 2 good tools and learn them Tools should work everywhere flickr.com/photos/pmtorrone/2381346935
  • 21. Continuously Test Performance Find a good balance Automated Checks Manual Tests Functional tests already provide data How about a load test every iteration?
  • 22. Investigate Suspicious Data Because you care And you have the tools And you have the data You should investigate findings “When you have eliminated the impossible,whatever remains, however improbable,must be the truth” - Sherlock Holmes flickr.com/photos/cayusa/2159980025
  • 23. A real World Example Chapter Three
  • 24. Team Cares About Performance Definition of Done includes a lot spec, design, unit test, code, acceptance tests, documentation, usability review, code review, stability tests, compatibility tests, interoperability test, load tests, security tests, performance tests… Get it right from the beginning Do not pile up technical debt To go well you have to go slow
  • 25.
  • 33.
  • 41. WHAT MAKES A Great Tool Zero configuration a must for agile Very low overhead for clean results Single tool for all use cases Free!
  • 42. AppDynamicsLite Demo Webcasts in our bloghttp://blog.codecentric.de/en/2010/08/easy-performance-analysis-with-appdynamics-lite/
  • 43. Automated Work Monitoring is not only great for production Runs in Continuous Integration environments Uses automated tests to run Provides Trends during iterations
  • 44.
  • 56. All The Data You Need
  • 57. Manual Work Manual load and scalability tests once an iteration Requires close to production configuration
  • 59. The DevOps Revolution Chapter Four
  • 60. DevOpsthinks different Agile process provides high quality Test environments are slow, and often not real Done features go to production every day Use real users for testing Planned rollbacks integral part commons.wikimedia.org/wiki/File:Beta-badge.svg
  • 61. DevOpsand Performance In the cloud, the only real test is production Avoid premature optimization Requires great tools flickr.com/photos/design-dog/1249337589
  • 62. High Performance Apps Go Live Every Day Epilogue
  • 63. Non-Functional Requirements are known and taken care of Performance is monitored in development Anomalies are taken care of Pre-Release sanity check is performed Up- and Downgrade is planned New version can go into production Productive software is examined around the clock Summary flickr.com/photos/redux/4740529728