SlideShare uma empresa Scribd logo
1 de 39
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

Mais conteúdo relacionado

Mais procurados

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
 

Mais procurados (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)
 

Semelhante a 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
 

Semelhante a 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)
 

Mais de 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
 

Mais de 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
 

Último

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Último (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

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