SlideShare a Scribd company logo
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

More Related Content

What's hot

Requirement Management 2
Requirement Management 2Requirement Management 2
Requirement Management 2
pikuoec
 
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 1
pikuoec
 
Requirement Management
Requirement Management Requirement Management
Requirement Management
Mubashar Mehmood
 
Requirement analysis
Requirement analysisRequirement analysis
Requirement analysis
csk selva
 
Other requirements, requirement specification and map
Other requirements, requirement specification and mapOther requirements, requirement specification and map
Other requirements, requirement specification and map
csk selva
 
Business requirements template
Business requirements templateBusiness requirements template
Business requirements template
NageswaraRao 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 1
Moutasm Tamimi
 
Requirement Management 3
Requirement Management 3Requirement Management 3
Requirement Management 3
pikuoec
 
Software requirement
Software requirementSoftware requirement
Software requirement
setalk
 
business requirements functional and non functional
business requirements functional and  non functionalbusiness requirements functional and  non functional
business requirements functional and non functional
CHANDRA KAMAL
 
Use Case Workshop
Use Case WorkshopUse Case Workshop
Use Case Workshop
elkensteyin
 
Requirement analysis
Requirement analysisRequirement analysis
Requirement analysis
Sangeet 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 Simplified
cbb010
 
3685807
36858073685807
3685807
nazeer pasha
 
Requirement analysis with use case
Requirement analysis with use caseRequirement analysis with use case
Requirement analysis with use case
Rapeepan Thawornwanchai
 
Requirements Management
Requirements ManagementRequirements Management
Requirements Management
Mohamed Mobarak
 
Software Performance Engineering-01
Software Performance Engineering-01Software Performance Engineering-01
Software Performance Engineering-01
V pathirana
 
Suresh Veluguri_BA
Suresh Veluguri_BASuresh Veluguri_BA
Suresh Veluguri_BA
Suresh Veluguri
 
Sdlc
SdlcSdlc

What's hot (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
 

Viewers also liked

Java one2013 con4540-keenan
Java one2013 con4540-keenanJava one2013 con4540-keenan
Java one2013 con4540-keenan
ddkeenan
 
Java Garbage Collection(GC)- Study
Java Garbage Collection(GC)- StudyJava Garbage Collection(GC)- Study
Java Garbage Collection(GC)- Study
Dhanu Gupta
 
Jvm tuning
Jvm tuningJvm tuning
Jvm tuning
Danijel Mitar
 
Modelling Web Performance Optimization - FFSUx
Modelling  Web Performance Optimization - FFSUxModelling  Web Performance Optimization - FFSUx
Modelling Web Performance Optimization - FFSUx
Haribabu Nandyal Padmanaban
 
Java performance
Java performanceJava performance
Java performance
Rajesuwer P. Singaravelu
 
Java performance monitoring
Java performance monitoringJava performance monitoring
Java performance monitoring
Manigandan Venkataraman
 
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
Achievers 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 tools
Haribabu Nandyal Padmanaban
 
Performance Tuning - Understanding Garbage Collection
Performance Tuning - Understanding Garbage CollectionPerformance Tuning - Understanding Garbage Collection
Performance Tuning - Understanding Garbage Collection
Haribabu Nandyal Padmanaban
 
Load testing using_neoload by kc
Load testing using_neoload by kcLoad testing using_neoload by kc
Load testing using_neoload by kc
krishna chaitanya
 
Java Profiling
Java ProfilingJava Profiling
Java Profiling
zeroproductionincidents
 
Diagnosing Your Application on the JVM
Diagnosing Your Application on the JVMDiagnosing Your Application on the JVM
Diagnosing Your Application on the JVM
Staffan Larsen
 
NeoLoad Public Training 4.1
NeoLoad Public Training 4.1NeoLoad Public Training 4.1
NeoLoad Public Training 4.1
Harish Srivastava
 
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
Tomek Borek
 
Java Performance Tuning
Java Performance TuningJava Performance Tuning
Java Performance Tuning
Atthakorn Chanthong
 
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
Alexander Podelko
 
Jvm problem diagnostics
Jvm problem diagnosticsJvm problem diagnostics
Jvm problem diagnostics
Danijel 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 Guide
Monica Beckwith
 

Viewers also liked (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
 

Similar to Primer on performance_requirements_gathering_v0.3

Managing IT Projects
Managing IT ProjectsManaging IT Projects
Managing IT Projects
Rhys Leong
 
Incepting Enterprise Applications
Incepting Enterprise ApplicationsIncepting Enterprise Applications
Incepting Enterprise Applications
Gem WeBlog
 
James hall ch 14
James hall ch 14James hall ch 14
James hall ch 14
David Julian
 
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
Hem 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 Framework
JAINAM 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 manual
Vivek Kumar Sinha
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
Webx
 
Slides chapters 26-27
Slides chapters 26-27Slides chapters 26-27
Slides chapters 26-27
Priyanka Shetty
 
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 2016
Kathy Mozley
 
Nandini-CV
Nandini-CVNandini-CV
Nandini-CV
Nandini Kg
 
Aim crisp handout
Aim crisp handoutAim crisp handout
Aim crisp handout
Surya Maddiboina
 
Biz Talk in Business
Biz Talk in BusinessBiz Talk in Business
Biz Talk in Business
kalllol
 
Oracle Aim Methodology
Oracle Aim MethodologyOracle Aim Methodology
Oracle Aim Methodology
Shivmohan Purohit
 
software engineering
software engineeringsoftware engineering
software engineering
Snow Queenzz
 
Process and Project Metrics-1
Process and Project Metrics-1Process and Project Metrics-1
Process and Project Metrics-1
Saqib Raza
 
Are Function Points Still Relevant?
Are Function Points Still Relevant?Are Function Points Still Relevant?
Are Function Points Still Relevant?
Premios Group
 
Are Function Points Still Relevant?
Are Function Points Still Relevant?Are Function Points Still Relevant?
Are Function Points Still Relevant?
DCG Software Value
 
Test
TestTest
Test
starmouni
 

Similar to 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
 

Recently uploaded

Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
Antonios Katsarakis
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Tatiana Kojar
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
dbms calicut university B. sc Cs 4th sem.pdf
dbms  calicut university B. sc Cs 4th sem.pdfdbms  calicut university B. sc Cs 4th sem.pdf
dbms calicut university B. sc Cs 4th sem.pdf
Shinana2
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
Dinusha Kumarasiri
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
Alex Pruden
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
HarisZaheer8
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 

Recently uploaded (20)

Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
dbms calicut university B. sc Cs 4th sem.pdf
dbms  calicut university B. sc Cs 4th sem.pdfdbms  calicut university B. sc Cs 4th sem.pdf
dbms calicut university B. sc Cs 4th sem.pdf
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 

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