sap best practices for performance testing

20
©2010 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Session ID: BTOT-TU- 1700/6 Twitter hashtag #HPSWU

Upload: hp-software-solutions

Post on 22-May-2015

7.222 views

Category:

Documents


1 download

DESCRIPTION

How SAP uses HP LoadRunner and HP QuickTime Professional for performance measurements

TRANSCRIPT

Page 1: SAP Best Practices for Performance Testing

©2010 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice

Session ID: BTOT-TU-1700/6 Twitter hashtag #HPSWU

Page 2: SAP Best Practices for Performance Testing

©2010 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice

Speaker Name: Martin Moser, PhDDate: 30.11.2010Session ID: BTOT-TU-1700/6

SAP ® Best Practices for Performance TestingHow SAP ® uses HP LoadRunner ® and HP QuickTime Professional ® for performance measurements

Page 3: SAP Best Practices for Performance Testing

3 HP Confidential

Software Performance & Speed Bumps

Page 4: SAP Best Practices for Performance Testing

4 HP Confidential

SP0 SP1 SP2 SP3 SP4

Expectation

SP0 SP1 SP2 SP3 SP4

Observa-tion

Software Performance & Speed Bumps

Expectation and observation regarding response timeR

esp

onse

tim

e

Months/Release

Page 5: SAP Best Practices for Performance Testing

Removing the Speed BumpsHow Agile Methods Help

Page 6: SAP Best Practices for Performance Testing

6 HP Confidential

– 4 week sprint run without (management) interference

– Sprints must deliver software that satisfy quality requirements

Agile development @ SAP

Potentially shippable product

increment

Sprint Backlog of

Tasks

4 week sprint

Daily Scrum Meeting and Artifacts Update

Cross-Functional Team

Product Owner

Page 7: SAP Best Practices for Performance Testing

SAP Best PracticesMeasurement Methodology and Process

Page 8: SAP Best Practices for Performance Testing

8 HP Confidential

SAP Performance Map

Full picture of system performance

- KPIs for all potential bottlenecks

- Software architecture dependant

- Measured in two-stage process

Full performance map includes front-end

Server-only performance map excludes front-end

ABAPserve

r

Java serve

r

Java DB

ABAP DB

Page 9: SAP Best Practices for Performance Testing

9 HP Confidential

Stage 2Stage 1

SAP performance test process

SAP Performance Test Process

ReportingAnalysisReportgeneration

Test execution System restartLoadRunner script recording

System check

Test executionSystem restart

Tool configSystem check

Stage 1: Single-user tests

- Measure full performance map of a scenario

- Resource consumption per dialog step

- For one single user using the server exclusively

- Focus on end-to-end response time

Detect ~80% of all performance issues (mostly simple issues)

Stage 2: Multi-user tests- Measure server-only performance

map of a scenario- Average resource consumption of

the scenario- For multiple users accessing the

server in parallel- Focus on scalability and stability of

the system

Detect ~20% of all performance issues (mostly difficult issues)

Page 10: SAP Best Practices for Performance Testing

10 HP Confidential

Stage 1: Single-Users Tests

The SUPA tool

- Generic UI

- Plug-in based server

- Plug-ins collect full performance map:- End-to-end response

time- Garbage collection

data- CPU consumption- Network traffic- DB load

ABAPserve

r

Java serve

r

Java DB

ABAP DB

UI

Server

E-t-E

GC

CPU

...

Page 11: SAP Best Practices for Performance Testing

11 HP Confidential

Single-Users Tests: Follow-up

– The SAP Performance Standard defines KPIs that are a prerequisite for good performance

– Violations of the KPIs are identified using the SUPA tool

– Specific tools are available to investigate the root-cause of KPI violations, among others:- SAP Java Virtual Machine Profiler- Memory Analyzer Tool (Open source tool sponsored by SAP)- ABAP transactions such as ST05, STAD, ST02

– The findings are reported back to development for fixing

Page 12: SAP Best Practices for Performance Testing

12 HP Confidential

Stage 2: Multi-User Tests

HP LoadRunner used to check

- Server response time for fixed number of users

- Linear scaling of throughput with number of users

- Stability over longer periods of time

Follow-up as for single-user tests.

ABAPserve

r

Java serve

r

Java DB

ABAP DB

Page 13: SAP Best Practices for Performance Testing

13 HP Confidential

HP LoadRunner strengths and weaknesses

– Strengths:- High load generation with off-the-shelf hardware- Supports most well-known technologies, among others: HTTP, Flash, Silverlight, SOAP, TCP/IP

- Scriptable in various languages, such as: C, Java, Visual Basic

- Extendable monitoring

– Weaknesses:- Correlation is complex (see TruClient below)- No monitoring for: Java garbage collection, CPU break-down & HTTP message lengths

Page 14: SAP Best Practices for Performance Testing

14 HP Confidential

SAP internal extensions to HP LoadRunner

Scripted extensions:

- Java garbage collection

- CPU break-down

- HTTP Request and response lengths

ABAPserve

r

Java serve

r

Java DB

ABAP DB

Controller

Monitors

LRScript

SAP monitoring routines

Page 15: SAP Best Practices for Performance Testing

15 HP Confidential

Stage 2Stage 1

SAP Performance Test Process

SAP Performance Test Process Automation

Sem

i-auto

mate

d

Sem

i-auto

mate

dSUPALoadRunner

ControllerLoadRunner

Analysis

NetWeaverTestSuite

HP QTP

NetWeaverTestSuite

HP QTP

ARIES suite (full automation)

ReportingAnalysisReportgeneration

Test execution System restartLoadRunner script recording

System check

Test executionSystem restart

Tool config

LoadRunner VUGen

NetWeaver

System check

Page 16: SAP Best Practices for Performance Testing

Getting Even BetterBudgets and Price Tags

Page 17: SAP Best Practices for Performance Testing

17 HP Confidential

The Way Forward to Predicting Performance

UI design

Architecture

Implementation

Measurement

Typical waterfall model

- Design the UI

- Design the architecture

- Build the system

- Measure the performance

Long and expensive feedback cycle.

Page 18: SAP Best Practices for Performance Testing

18 HP Confidential

The Way Forward to Predicting Performance

UI design

Architecture

Implementation

Measurement

Budget and price tags- Define resource budget for

dialog steps

- Measure resource consumption of

- Major UI elements- Major backend operations

- Attach price tags to them

UI designers and architects can estimate performance of designs

Page 19: SAP Best Practices for Performance Testing

19 HP Confidential

LoadRunner TruClient: First experiences @ SAPStrengths:

- Runs fully embedded in the browser

- No correlation required

Weaknesses:

- Significantly higher hardware requirements

- Instrumentation extension possible, but cumbersome

Page 20: SAP Best Practices for Performance Testing

Continue the conversation with your peers at the HP Software Community hp.com/go/swcommunity