Successfully reported this slideshow.
Your SlideShare is downloading. ×

Primer on application_performance_modelling_v0.1

Loading in …3
×

Check these out next

1 of 13
1 of 13

Primer on application_performance_modelling_v0.1

Download to read offline

This presentation focuses on the basics of Performance Modelling with the objective of forecasting to manage performance of systems including their underlying infrastructure capacity.

This presentation focuses on the basics of Performance Modelling with the objective of forecasting to manage performance of systems including their underlying infrastructure capacity.

More Related Content

Related Books

Free with a 30 day trial from Scribd

See all

Primer on application_performance_modelling_v0.1

  1. 1. Fundamentals of Application Performance Modelling Practical Performance Analyst – 7th July 2012 http://www.practicalperformanceanalyst.com
  2. 2. Agenda Performance Engineering Life Cycle What is Proactive Performance Management What is Application Performance Modelling Why is Application Performance Modelling Important Holistic View of Performance Process for Application Performance Modelling Techniques for Application Performance Modelling Challenges involved in Application Performance Modelling Deliverables for the Application Performance Modelling process Resources & tools to assist with Application Performance Modelling process
  3. 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. 4. What is Proactive Performance Management Performance Requirements Analysis Performance Modelling & Capacity Planning Build & Optimization Performance Testing Performance Monitoring Capacity Management
  5. 5. What Is Application Performance Modelling Performance Modelling is the art of forecasting application performance using a combination of different modelling techniques Performance Modelling gives you the ability to validate application architecture & designs assumptions from a Non Functional Requirements standpoint Performance Modelling gives you the ability to perform what-if analysis for different design assumptions and identify a suitable design patterns that meets your Non Functional Requirements Performance Modelling gives you the ability to validate infrastructure specifications from an Non Functional Requirements standpoint Performance Modelling should be initially performed at design to validate design specifications. These models should then be refined as you move through build into SVT and then into production where changes in modelling techniques will help you predict application performance with greater accuracy. Performance Modelling is one of the methods available to you as a Practical Performance Analyst to proactively predict application performance and determine infrastructure capacity impacts before the code actually built or deployed into production
  6. 6. Why Is Application Performance Modelling Important Performance Modelling is important to the Practical Performance Analyst for the following reasons – Gives you the ability to validate design decision early in the Software Development Life Cycle Gives you the ability to validate infrastructure capacity assumptions early in the procurement cycle Gives you the ability to forecast infrastructure capacity impacts for increase in business workload Give you the ability to work with the customer proactively on procuring additional infrastructure to meet growth in business workload Gives you the ability to forecast changes in application performance before the application is deployed into production Gives you the ability to forecast potential performance issues early in the Software Development Life Cycle Performance Modelling offers a suite of techniques that can be used to proactively predict and manage application performance across the Software Development Life Cycle i.e. From Design, to Build, to SVT, to production
  7. 7. Txn Performance - Response Times, etc. Application Performance – Operations/Sec, Messages/Sec, Transactions/Sec, etc. Infrastructure Performance – CPU Utilization, Memory Utilization, Disk IOPS, etc. Network Performance – Packet Loss, Jitter, Packet Re- ordering, Delay, etc. Holistic View of Performance
  8. 8. Application Performance Modelling Process Understand Business Objectives & Program Goals Review Business Requirements Document Document Non Functional Requirements Review Application Designs Review Infrastructure Capacity Designs Decide on Modelling techniques to be used Create Performance Models (Analytical or Simulation) Execute Performance Models for different What-If Scenarios Validate outcome of Performance Models Tweak Application Design Assumptions, Infra Design Assumptions & Re- execute Models Document Learning from What-If Analysis Provide Recommendations to Application Design & Infrastructure Design teams
  9. 9. Techniques for Performance Modelling Analytical or Mathematical Modelling techniques Queuing Theory Queuing Networks Universal Scalability Law Operational Theory Little’s Law Simulation Modelling techniques Discrete Event Simulation Markov’s chains Petri Nets Statistical Modelling techniques Time Series Data Visualization & Analysis Time Series Forecasting using Exponential Smoothing techniques Time Series Forecasting using Moving Average techniques Time Series Forecasting using ARIMA techniques Simple Regression Modelling Multiple Regression Modelling
  10. 10. Challenges involved in Performance Modelling Challenges obtaining Non Functional Requirements for the given application Challenge obtaining resources from the application design and infrastructure design teams to assist with modelling and what-if analysis Challenges obtaining tools for Performance Modelling (Analytical or Simulation) Lack of Industry standard tools to analyse, model and visualize data for purposes of Performance Modelling Challenge convincing people on the usefulness of Performance Modelling techniques Lack of Capable Resources to assist with data extraction, visualization, analysis & Performance Modelling
  11. 11. Deliverables – Performance Modelling Performance modelling report that – Validates Non Functional Requirements Validates Application Designs and its ability to meet overall Non Functional Requirements Validates Infrastructure Capacity Assumptions and it’s ability to meet overall Non Functional Requirements Design recommendations to the Application Design teams Infrastructure recommendations to the Infrastructure Design teams Recommendations on Performance Testing, Performance Monitoring & Capacity Management
  12. 12. Resources & Tools JMT – Java Modelling Tools (jmt.sourceforge.net) Queuing Networks Mean Value Analysis of Queuing Network Markov’s Chains based Simulation Simpy (Simpy.sourceforge.net) Discrete Event Simulation Modelling R-Project Time Series Modelling Regression Modelling Time Series Forecasting
  13. 13. 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

×