SlideShare uma empresa Scribd logo
1 de 12
Baixar para ler offline
Fundamentals of Performance Requirements Gathering 
Practical Performance Analyst – 30th June 2012 
http://www.practicalperformanceanalyst.com
Agenda 
Performance Engineering Life Cycle 
What is Proactive Performance Management 
What is Performance Requirements Gathering 
Metrics for Non Functional Requirements 
Why is Performance Requirements Gathering Important 
Process for Performance Requirements Gathering 
Challenges involved in Performance Requirements Gathering 
Deliverables for the Performance Requirements Gathering process 
Resources & tools for Performance Requirements Gathering
Performance Engineering Life Cycle 
Software Development Life Cycle 
Functional Requirements Gathering 
Architecture & Design 
Build Application 
System Test, 
System Integrated Test & UAT 
Deploy Into Production 
Performance Engineering Life Cycle 
Non Functional Requirements Gathering 
Design for Performance & 
Performance Modelling 
Unit Performance Test & 
Code Optimization 
Performance Test 
Monitoring & Capacity Management
What is Proactive Performance Management 
Performance Requirements Analysis 
Performance Modelling & Capacity Planning 
Build & Optimization 
Performance Testing 
Performance Monitoring 
Capacity Management
What Is Performance Requirements Gathering 
Performance Requirements gathering process is a process whose objective is to determine all the relevant Non Functional Requirements for the given application 
Non Functional Requirements for an application would ideally include Security, Reliability, Availability or Failover Capability, Maintainability, Usability, etc. However as a Practical Performance Analyst your focus is mainly around Performance & Scalability of the application and underlying application infrastructure 
Performance Requirements Gathering is conducted at the Functional Requirements Gathering stage with focus on determining the Performance & Scalability relevant Non Functional Requirements for the application 
Non Functional Requirements would vary based on the nature of your application and would differ based on the nature of workload your application has to process 
Non Functional Requirements from a Performance perspective would include metrics like User Concurrency, Transactional Throughput Per Hour, Volume of data processed by Batch job, Messaging workload Per Hour, etc. 
As an outcome of this phase you should have documented and signed of Non Functional Requirements and Business Workload that would form the basis for your Performance Testing Strategy 
The Non Functional Requirements would also serve as input to defining targets for your developers 
As an outcome to the Performance Requirements Gathering Phase you should have the following documents nailed down- 
Application Non Functional Requirements 
Performance Testing Workload
Metrics for Non Functional Requirements 
Online Transaction Processing 
User Concurrency 
Transactional Throughput 
Infrastructure Utilization (CPU Utilization, Memory Utilization) 
Batch 
Duration of Batch run 
Volume of data processed 
Number of records processed 
Infrastructure Utilization (CPU Utilization, Memory Utilization) 
Messaging 
Number of messages processed 
Size of messages for different message types 
Infrastructure Utilization (CPU Utilization, Memory Utilization) 
Workflow 
Number of messages processed 
Size of messages for different message types 
Infrastructure Utilization (CPU Utilization, Memory Utilization)
Why Is Performance Requirements Gathering Important 
Performance Requirements Gathering is important for the following reasons – 
Document Non Functional Requirements (Performance & Scalability) for the application 
Agree with the IT & Business stake holders on the overall Non Functional Requirements that the application would have to meet 
Document the overall Workload for purposes of Performance Test 
Base Performance Targets for Developers based on the documented Non Functional Requirements 
Provide input to the Application Design teams on the Performance & Scalability requirements for the solution 
Provide input to the Infrastructure Design teams on the Performance & Scalability requirements for the underlying infrastructure 
Set the expectations for the different IT & Business stakeholders from a Performance & Scalability standpoint 
Provide input on the infrastructure capacity required to meet documented Non Functional Requirements 
Recommend tooling (Performance Testing, Performance Modelling, Performance Monitoring, Capacity Management, etc.) requirements based on an a good understanding of the application workload and the agreed Non Functional Requirements
Performance Requirements Gathering Process 
Understand Business Objectives & Program Goals 
Review Business Requirements Document 
Data Gathering 
Review & Extract Production Performance Metrics where possible 
Analyse and Visualize data obtained from Production for purposes of workload analysis 
Understand Business Goals & Objectives 
Understand Application & Infrastructure Platform Architecture 
Understand Tooling Landscape (Monitoring, Testing, Diagnostics, etc.) 
Define Overall Non Functional Requirements 
Determine Tier wise Non Functional Requirements 
Recommend Tooling strategy (Monitoring, Diagnostics, Testing, etc.) 
Document Development Standards and Developer Performance Objectives
Challenges involved in Performance Requirement Gathering 
Challenges finding the right business and IT stakeholders 
Lack of understanding of Performance Engineering and the value it delivers across the Software Development Life Cycle 
Lack of production metrics for business and infrastructure workload 
Lack of access to the production systems to extract relevant business & infrastructure workload metrics 
Lack of Industry standard tools to analyse, model and visualize data for purposes of defining Non Functional Requirements 
Lack of Capable Resources to assist with data extraction, visualization and analysis
Deliverables – Performance Requirements Gathering 
Non Functional Requirements Document 
Workload for Performance Testing 
Workload for Capacity Management 
Recommendations for Infrastructure Capacity (Input to Capacity Plans) 
Recommendations to the Application Design & Architecture teams 
Recommendations to the Infrastructure Design & Architecture teams 
Recommendations on investment in tooling & tool licenses (Performance Modelling, Performance Testing, Performance Monitoring, Capacity Management, etc.)
Resources & Tools 
Section on Architecture & Design Engineering at the Practical Performance Analyst by Dr. Rajesh Mansharamani - http://practicalperformanceanalyst.com/site/node/28 
CMG Paper on Performance Requirements Analysis - http://www.cmg.org/measureit/issues/mit23/m_23_2.html
Thank You 
Please support us by taking a moment and sharing this content using the Social Media Links at Practical Performance Analyst 
trevor@practicalperformanceanalyst.com

Mais conteúdo relacionado

Mais procurados

Requirement Management 2
Requirement Management 2Requirement Management 2
Requirement Management 2pikuoec
 
Tool Kit: Requirements management plan (babok on a page)
Tool Kit: Requirements management plan (babok on a page)Tool Kit: Requirements management plan (babok on a page)
Tool Kit: Requirements management plan (babok on a page)designer DATA
 
Requirement Management 1
Requirement Management 1Requirement Management 1
Requirement Management 1pikuoec
 
Requirement analysis
Requirement analysisRequirement analysis
Requirement analysiscsk selva
 
Other requirements, requirement specification and map
Other requirements, requirement specification and mapOther requirements, requirement specification and map
Other requirements, requirement specification and mapcsk selva
 
Business requirements template
Business requirements templateBusiness requirements template
Business requirements templateNageswaraRao k
 
Concepts Of business analyst Practices - Part 1
Concepts Of business analyst Practices - Part 1Concepts Of business analyst Practices - Part 1
Concepts Of business analyst Practices - Part 1Moutasm Tamimi
 
Requirement Management 3
Requirement Management 3Requirement Management 3
Requirement Management 3pikuoec
 
Software requirement
Software requirementSoftware requirement
Software requirementsetalk
 
business requirements functional and non functional
business requirements functional and  non functionalbusiness requirements functional and  non functional
business requirements functional and non functionalCHANDRA KAMAL
 
Use Case Workshop
Use Case WorkshopUse Case Workshop
Use Case Workshopelkensteyin
 
Requirement analysis
Requirement analysisRequirement analysis
Requirement analysisSangeet Shah
 
Using Doors® And Taug2® To Support A Simplified
Using Doors® And Taug2® To Support A SimplifiedUsing Doors® And Taug2® To Support A Simplified
Using Doors® And Taug2® To Support A Simplifiedcbb010
 
Software Performance Engineering-01
Software Performance Engineering-01Software Performance Engineering-01
Software Performance Engineering-01V pathirana
 

Mais procurados (20)

Requirement Management 2
Requirement Management 2Requirement Management 2
Requirement Management 2
 
Tool Kit: Requirements management plan (babok on a page)
Tool Kit: Requirements management plan (babok on a page)Tool Kit: Requirements management plan (babok on a page)
Tool Kit: Requirements management plan (babok on a page)
 
Requirement Management 1
Requirement Management 1Requirement Management 1
Requirement Management 1
 
Requirement Management
Requirement Management Requirement Management
Requirement Management
 
Requirement analysis
Requirement analysisRequirement analysis
Requirement analysis
 
Other requirements, requirement specification and map
Other requirements, requirement specification and mapOther requirements, requirement specification and map
Other requirements, requirement specification and map
 
Business requirements template
Business requirements templateBusiness requirements template
Business requirements template
 
Concepts Of business analyst Practices - Part 1
Concepts Of business analyst Practices - Part 1Concepts Of business analyst Practices - Part 1
Concepts Of business analyst Practices - Part 1
 
Requirement Management 3
Requirement Management 3Requirement Management 3
Requirement Management 3
 
Software requirement
Software requirementSoftware requirement
Software requirement
 
business requirements functional and non functional
business requirements functional and  non functionalbusiness requirements functional and  non functional
business requirements functional and non functional
 
Use Case Workshop
Use Case WorkshopUse Case Workshop
Use Case Workshop
 
Requirement analysis
Requirement analysisRequirement analysis
Requirement analysis
 
Using Doors® And Taug2® To Support A Simplified
Using Doors® And Taug2® To Support A SimplifiedUsing Doors® And Taug2® To Support A Simplified
Using Doors® And Taug2® To Support A Simplified
 
3685807
36858073685807
3685807
 
Requirement analysis with use case
Requirement analysis with use caseRequirement analysis with use case
Requirement analysis with use case
 
Requirements Management
Requirements ManagementRequirements Management
Requirements Management
 
Software Performance Engineering-01
Software Performance Engineering-01Software Performance Engineering-01
Software Performance Engineering-01
 
Suresh Veluguri_BA
Suresh Veluguri_BASuresh Veluguri_BA
Suresh Veluguri_BA
 
Sdlc
SdlcSdlc
Sdlc
 

Destaque

Java one2013 con4540-keenan
Java one2013 con4540-keenanJava one2013 con4540-keenan
Java one2013 con4540-keenanddkeenan
 
Java Garbage Collection(GC)- Study
Java Garbage Collection(GC)- StudyJava Garbage Collection(GC)- Study
Java Garbage Collection(GC)- StudyDhanu Gupta
 
JVM Memory And GC Tuning Workflow
JVM Memory And GC Tuning WorkflowJVM Memory And GC Tuning Workflow
JVM Memory And GC Tuning Workflow승린 이
 
Profiling and Tuning a Web Application - The Dirty Details
Profiling and Tuning a Web Application - The Dirty DetailsProfiling and Tuning a Web Application - The Dirty Details
Profiling and Tuning a Web Application - The Dirty DetailsAchievers Tech
 
Performance Tuning - Memory leaks, Thread deadlocks, JDK tools
Performance Tuning -  Memory leaks, Thread deadlocks, JDK toolsPerformance Tuning -  Memory leaks, Thread deadlocks, JDK tools
Performance Tuning - Memory leaks, Thread deadlocks, JDK toolsHaribabu Nandyal Padmanaban
 
Performance Tuning - Understanding Garbage Collection
Performance Tuning - Understanding Garbage CollectionPerformance Tuning - Understanding Garbage Collection
Performance Tuning - Understanding Garbage CollectionHaribabu Nandyal Padmanaban
 
Load testing using_neoload by kc
Load testing using_neoload by kcLoad testing using_neoload by kc
Load testing using_neoload by kckrishna chaitanya
 
Diagnosing Your Application on the JVM
Diagnosing Your Application on the JVMDiagnosing Your Application on the JVM
Diagnosing Your Application on the JVMStaffan Larsen
 
Jvm tuning in a rush! - Lviv JUG
Jvm tuning in a rush! - Lviv JUGJvm tuning in a rush! - Lviv JUG
Jvm tuning in a rush! - Lviv JUGTomek Borek
 
Performance Requirements: the Backbone of the Performance Engineering Process
Performance Requirements: the Backbone of the Performance Engineering ProcessPerformance Requirements: the Backbone of the Performance Engineering Process
Performance Requirements: the Backbone of the Performance Engineering ProcessAlexander Podelko
 
Jvm problem diagnostics
Jvm problem diagnosticsJvm problem diagnostics
Jvm problem diagnosticsDanijel Mitar
 
Bio bigdata
Bio bigdata Bio bigdata
Bio bigdata Mk Kim
 
Java Performance Engineer's Survival Guide
Java Performance Engineer's Survival GuideJava Performance Engineer's Survival Guide
Java Performance Engineer's Survival GuideMonica Beckwith
 

Destaque (20)

Java one2013 con4540-keenan
Java one2013 con4540-keenanJava one2013 con4540-keenan
Java one2013 con4540-keenan
 
Java Garbage Collection(GC)- Study
Java Garbage Collection(GC)- StudyJava Garbage Collection(GC)- Study
Java Garbage Collection(GC)- Study
 
Jvm tuning
Jvm tuningJvm tuning
Jvm tuning
 
Modelling Web Performance Optimization - FFSUx
Modelling  Web Performance Optimization - FFSUxModelling  Web Performance Optimization - FFSUx
Modelling Web Performance Optimization - FFSUx
 
Java performance
Java performanceJava performance
Java performance
 
Java performance monitoring
Java performance monitoringJava performance monitoring
Java performance monitoring
 
JVM Memory And GC Tuning Workflow
JVM Memory And GC Tuning WorkflowJVM Memory And GC Tuning Workflow
JVM Memory And GC Tuning Workflow
 
Profiling and Tuning a Web Application - The Dirty Details
Profiling and Tuning a Web Application - The Dirty DetailsProfiling and Tuning a Web Application - The Dirty Details
Profiling and Tuning a Web Application - The Dirty Details
 
Performance Tuning - Memory leaks, Thread deadlocks, JDK tools
Performance Tuning -  Memory leaks, Thread deadlocks, JDK toolsPerformance Tuning -  Memory leaks, Thread deadlocks, JDK tools
Performance Tuning - Memory leaks, Thread deadlocks, JDK tools
 
Performance Tuning - Understanding Garbage Collection
Performance Tuning - Understanding Garbage CollectionPerformance Tuning - Understanding Garbage Collection
Performance Tuning - Understanding Garbage Collection
 
Load testing using_neoload by kc
Load testing using_neoload by kcLoad testing using_neoload by kc
Load testing using_neoload by kc
 
Java Profiling
Java ProfilingJava Profiling
Java Profiling
 
Diagnosing Your Application on the JVM
Diagnosing Your Application on the JVMDiagnosing Your Application on the JVM
Diagnosing Your Application on the JVM
 
NeoLoad Public Training 4.1
NeoLoad Public Training 4.1NeoLoad Public Training 4.1
NeoLoad Public Training 4.1
 
Jvm tuning in a rush! - Lviv JUG
Jvm tuning in a rush! - Lviv JUGJvm tuning in a rush! - Lviv JUG
Jvm tuning in a rush! - Lviv JUG
 
Java Performance Tuning
Java Performance TuningJava Performance Tuning
Java Performance Tuning
 
Performance Requirements: the Backbone of the Performance Engineering Process
Performance Requirements: the Backbone of the Performance Engineering ProcessPerformance Requirements: the Backbone of the Performance Engineering Process
Performance Requirements: the Backbone of the Performance Engineering Process
 
Jvm problem diagnostics
Jvm problem diagnosticsJvm problem diagnostics
Jvm problem diagnostics
 
Bio bigdata
Bio bigdata Bio bigdata
Bio bigdata
 
Java Performance Engineer's Survival Guide
Java Performance Engineer's Survival GuideJava Performance Engineer's Survival Guide
Java Performance Engineer's Survival Guide
 

Semelhante a Primer on performance_requirements_gathering_v0.3

Managing IT Projects
Managing IT ProjectsManaging IT Projects
Managing IT ProjectsRhys Leong
 
Incepting Enterprise Applications
Incepting Enterprise ApplicationsIncepting Enterprise Applications
Incepting Enterprise ApplicationsGem WeBlog
 
Downloads abc 2006 presentation downloads-ramesh_babu
Downloads abc 2006   presentation downloads-ramesh_babuDownloads abc 2006   presentation downloads-ramesh_babu
Downloads abc 2006 presentation downloads-ramesh_babuHem Rana
 
Software Engineering Layered Technology Software Process Framework
Software Engineering  Layered Technology Software Process FrameworkSoftware Engineering  Layered Technology Software Process Framework
Software Engineering Layered Technology Software Process FrameworkJAINAM KAPADIYA
 
Project management : Causal analysis and Resolution by iFour Technolab Pvt. ...
Project management :  Causal analysis and Resolution by iFour Technolab Pvt. ...Project management :  Causal analysis and Resolution by iFour Technolab Pvt. ...
Project management : Causal analysis and Resolution by iFour Technolab Pvt. ...iFour Institute - Sustainable Learning
 
Softwareenggineering lab manual
Softwareenggineering lab manualSoftwareenggineering lab manual
Softwareenggineering lab manualVivek Kumar Sinha
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement AnalysisWebx
 
BABoK V2 Requirements Analysis (RA)
BABoK V2 Requirements Analysis (RA)BABoK V2 Requirements Analysis (RA)
BABoK V2 Requirements Analysis (RA)AMJAD SHAIKH
 
Mozley,Kathy - Resume 2016
Mozley,Kathy - Resume 2016Mozley,Kathy - Resume 2016
Mozley,Kathy - Resume 2016Kathy Mozley
 
Biz Talk in Business
Biz Talk in BusinessBiz Talk in Business
Biz Talk in Businesskalllol
 
software engineering
software engineeringsoftware engineering
software engineeringSnow Queenzz
 
Process and Project Metrics-1
Process and Project Metrics-1Process and Project Metrics-1
Process and Project Metrics-1Saqib Raza
 
Are Function Points Still Relevant?
Are Function Points Still Relevant?Are Function Points Still Relevant?
Are Function Points Still Relevant?DCG Software Value
 
Are Function Points Still Relevant?
Are Function Points Still Relevant?Are Function Points Still Relevant?
Are Function Points Still Relevant?Premios Group
 

Semelhante a Primer on performance_requirements_gathering_v0.3 (20)

Managing IT Projects
Managing IT ProjectsManaging IT Projects
Managing IT Projects
 
Incepting Enterprise Applications
Incepting Enterprise ApplicationsIncepting Enterprise Applications
Incepting Enterprise Applications
 
James hall ch 14
James hall ch 14James hall ch 14
James hall ch 14
 
Downloads abc 2006 presentation downloads-ramesh_babu
Downloads abc 2006   presentation downloads-ramesh_babuDownloads abc 2006   presentation downloads-ramesh_babu
Downloads abc 2006 presentation downloads-ramesh_babu
 
Software Engineering Layered Technology Software Process Framework
Software Engineering  Layered Technology Software Process FrameworkSoftware Engineering  Layered Technology Software Process Framework
Software Engineering Layered Technology Software Process Framework
 
Project management : Causal analysis and Resolution by iFour Technolab Pvt. ...
Project management :  Causal analysis and Resolution by iFour Technolab Pvt. ...Project management :  Causal analysis and Resolution by iFour Technolab Pvt. ...
Project management : Causal analysis and Resolution by iFour Technolab Pvt. ...
 
Softwareenggineering lab manual
Softwareenggineering lab manualSoftwareenggineering lab manual
Softwareenggineering lab manual
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
 
Slides chapters 26-27
Slides chapters 26-27Slides chapters 26-27
Slides chapters 26-27
 
BABoK V2 Requirements Analysis (RA)
BABoK V2 Requirements Analysis (RA)BABoK V2 Requirements Analysis (RA)
BABoK V2 Requirements Analysis (RA)
 
Mozley,Kathy - Resume 2016
Mozley,Kathy - Resume 2016Mozley,Kathy - Resume 2016
Mozley,Kathy - Resume 2016
 
Nandini-CV
Nandini-CVNandini-CV
Nandini-CV
 
Aim crisp handout
Aim crisp handoutAim crisp handout
Aim crisp handout
 
Biz Talk in Business
Biz Talk in BusinessBiz Talk in Business
Biz Talk in Business
 
Oracle Aim Methodology
Oracle Aim MethodologyOracle Aim Methodology
Oracle Aim Methodology
 
software engineering
software engineeringsoftware engineering
software engineering
 
Process and Project Metrics-1
Process and Project Metrics-1Process and Project Metrics-1
Process and Project Metrics-1
 
Are Function Points Still Relevant?
Are Function Points Still Relevant?Are Function Points Still Relevant?
Are Function Points Still Relevant?
 
Are Function Points Still Relevant?
Are Function Points Still Relevant?Are Function Points Still Relevant?
Are Function Points Still Relevant?
 
Test
TestTest
Test
 

Último

Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 

Último (20)

E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 

Primer on performance_requirements_gathering_v0.3

  • 1. Fundamentals of Performance Requirements Gathering Practical Performance Analyst – 30th June 2012 http://www.practicalperformanceanalyst.com
  • 2. Agenda Performance Engineering Life Cycle What is Proactive Performance Management What is Performance Requirements Gathering Metrics for Non Functional Requirements Why is Performance Requirements Gathering Important Process for Performance Requirements Gathering Challenges involved in Performance Requirements Gathering Deliverables for the Performance Requirements Gathering process Resources & tools for Performance Requirements Gathering
  • 3. Performance Engineering Life Cycle Software Development Life Cycle Functional Requirements Gathering Architecture & Design Build Application System Test, System Integrated Test & UAT Deploy Into Production Performance Engineering Life Cycle Non Functional Requirements Gathering Design for Performance & Performance Modelling Unit Performance Test & Code Optimization Performance Test Monitoring & Capacity Management
  • 4. What is Proactive Performance Management Performance Requirements Analysis Performance Modelling & Capacity Planning Build & Optimization Performance Testing Performance Monitoring Capacity Management
  • 5. What Is Performance Requirements Gathering Performance Requirements gathering process is a process whose objective is to determine all the relevant Non Functional Requirements for the given application Non Functional Requirements for an application would ideally include Security, Reliability, Availability or Failover Capability, Maintainability, Usability, etc. However as a Practical Performance Analyst your focus is mainly around Performance & Scalability of the application and underlying application infrastructure Performance Requirements Gathering is conducted at the Functional Requirements Gathering stage with focus on determining the Performance & Scalability relevant Non Functional Requirements for the application Non Functional Requirements would vary based on the nature of your application and would differ based on the nature of workload your application has to process Non Functional Requirements from a Performance perspective would include metrics like User Concurrency, Transactional Throughput Per Hour, Volume of data processed by Batch job, Messaging workload Per Hour, etc. As an outcome of this phase you should have documented and signed of Non Functional Requirements and Business Workload that would form the basis for your Performance Testing Strategy The Non Functional Requirements would also serve as input to defining targets for your developers As an outcome to the Performance Requirements Gathering Phase you should have the following documents nailed down- Application Non Functional Requirements Performance Testing Workload
  • 6. Metrics for Non Functional Requirements Online Transaction Processing User Concurrency Transactional Throughput Infrastructure Utilization (CPU Utilization, Memory Utilization) Batch Duration of Batch run Volume of data processed Number of records processed Infrastructure Utilization (CPU Utilization, Memory Utilization) Messaging Number of messages processed Size of messages for different message types Infrastructure Utilization (CPU Utilization, Memory Utilization) Workflow Number of messages processed Size of messages for different message types Infrastructure Utilization (CPU Utilization, Memory Utilization)
  • 7. Why Is Performance Requirements Gathering Important Performance Requirements Gathering is important for the following reasons – Document Non Functional Requirements (Performance & Scalability) for the application Agree with the IT & Business stake holders on the overall Non Functional Requirements that the application would have to meet Document the overall Workload for purposes of Performance Test Base Performance Targets for Developers based on the documented Non Functional Requirements Provide input to the Application Design teams on the Performance & Scalability requirements for the solution Provide input to the Infrastructure Design teams on the Performance & Scalability requirements for the underlying infrastructure Set the expectations for the different IT & Business stakeholders from a Performance & Scalability standpoint Provide input on the infrastructure capacity required to meet documented Non Functional Requirements Recommend tooling (Performance Testing, Performance Modelling, Performance Monitoring, Capacity Management, etc.) requirements based on an a good understanding of the application workload and the agreed Non Functional Requirements
  • 8. Performance Requirements Gathering Process Understand Business Objectives & Program Goals Review Business Requirements Document Data Gathering Review & Extract Production Performance Metrics where possible Analyse and Visualize data obtained from Production for purposes of workload analysis Understand Business Goals & Objectives Understand Application & Infrastructure Platform Architecture Understand Tooling Landscape (Monitoring, Testing, Diagnostics, etc.) Define Overall Non Functional Requirements Determine Tier wise Non Functional Requirements Recommend Tooling strategy (Monitoring, Diagnostics, Testing, etc.) Document Development Standards and Developer Performance Objectives
  • 9. Challenges involved in Performance Requirement Gathering Challenges finding the right business and IT stakeholders Lack of understanding of Performance Engineering and the value it delivers across the Software Development Life Cycle Lack of production metrics for business and infrastructure workload Lack of access to the production systems to extract relevant business & infrastructure workload metrics Lack of Industry standard tools to analyse, model and visualize data for purposes of defining Non Functional Requirements Lack of Capable Resources to assist with data extraction, visualization and analysis
  • 10. Deliverables – Performance Requirements Gathering Non Functional Requirements Document Workload for Performance Testing Workload for Capacity Management Recommendations for Infrastructure Capacity (Input to Capacity Plans) Recommendations to the Application Design & Architecture teams Recommendations to the Infrastructure Design & Architecture teams Recommendations on investment in tooling & tool licenses (Performance Modelling, Performance Testing, Performance Monitoring, Capacity Management, etc.)
  • 11. Resources & Tools Section on Architecture & Design Engineering at the Practical Performance Analyst by Dr. Rajesh Mansharamani - http://practicalperformanceanalyst.com/site/node/28 CMG Paper on Performance Requirements Analysis - http://www.cmg.org/measureit/issues/mit23/m_23_2.html
  • 12. Thank You Please support us by taking a moment and sharing this content using the Social Media Links at Practical Performance Analyst trevor@practicalperformanceanalyst.com