Performance Testing Software Systems Workshop Logo

Performance Testing Software Systems

A Heuristic Approach

Course Objectives:

In this course, you will learn:

  • Nine core principles found in most successful performance testing projects
  • Concise, universal heuristics and models for rapid application of those principles
  • How to determine and apply oracles to software system performance criteria
  • How to apply the core principles into your team’s development process
  • How to plan ahead without reducing your ability to react to change
  • How to communicate performance testing concepts to non-performance testers
  • How to rapidly design performance tests that will achieve your performance testing objectives

Course Outline:

Introduction

  • Heuristics & Mnemonics
  • Heuristics ≠ Process

Nine core principles of successful performance testing:

  • Context
  • Criteria
  • Design
  • Instrument
  • Script
  • Execute
  • Analyze
  • Report
  • Iterate
  • Principles ≠ Process

CORE PRINCIPLE: Context

  • Why Do We Test Performance?
  • Criteria
  • Objectives
  • Procedures
  • Environments
  • Project
  • User
  • Business
  • Systems
  • Know The Commanders Intent

CORE PRINCIPLE:Criteria

  • Understanding Boundaries
  • Goals
  • Requirements
  • Thresholds
  • Constraints
  • Determine Testing Objectives
  • The Oracle Problem

CORE PRINCIPLE: Design


Begin With The End In Mind:
  • Investigate or Validate
  • End-to-End or Component
  • Times or Resources
  • Anticipated or Stressful
Model System Usage:
  • Frequent
  • Intensive
  • Business-Critical
  • Legal
  • Obvious
  • Technically Risky
  • Stakeholder Mandated

Remember the Front-End:

  • Size
  • Caching
  • Order
  • Response Codes
  • Number
CORE PRINCIPLE: Instrument


Prepare to implement the test design and execute tests by ensuring that you:
  • Install
  • Configure
  • Validate
  • Adapt & Adjust
  • Coordinate

CORE PRINCIPLE: Script


Realism matters.
  • Functionality
  • Input
  • Navigation
  • Data
  • Human Variability
  • Abandon
  • Ramping & Marching
  • Maintainability

CORE PRINCIPLE: Execute


Execution tests the tests, and the system. Analyze as you go.
  • Evaluate
  • Test
  • Trend
  • Oscillate
  • Baseline
  • Ramp
  • Unanticipated
  • Tune
  • Exploit

CORE PRINCIPLE: Analyze


Analysis is a technical team sport that needs to consider:
  • Configurations
  • Significance & Repeatability
  • Trends
  • Outliers
  • Patterns
  • Compliance
  • Accuracy
  • Resources & Times
  • Errors & Functionality

CORE PRINCIPLE: Report


The most effective reports are:

  • Timely
  • Relevant
  • Audience Appropriate
  • Visual
  • Intuitive
  • Supported

CORE PRINCIPLE: Iterate

  • Don’t Confuse “Delivery” with “Done”
  • Identify and Exit Ruts

Copyright © 2005-11 PerfTestPlus, Inc. All rights reserved.
Site Design by: Scott Barber