23.03.2013 Views

Agile Performance Testing - Testing Experience

Agile Performance Testing - Testing Experience

Agile Performance Testing - Testing Experience

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

and software engineering is not yet like other engineering<br />

fields.<br />

For example, our colleagues in civil engineering build<br />

bridges out of standard components and materials like<br />

rivets and concrete and steel, but software is not assembled<br />

out of standard components to any great extent<br />

yet. Much is still designed and built to purpose, often<br />

from many purpose-built components.<br />

Our colleagues in aeronautical engineering can build<br />

and test scale models of airplanes in wind tunnels.<br />

However, they have Bernoulli’s Law and other physics<br />

formulas that they can use to extrapolate from scale<br />

models to the real world. Software isn’t physical, so physics<br />

doesn’t apply.<br />

There are a select few software components for which<br />

some standard rules apply. For example, binary trees<br />

and normalized relational databases have well-understood<br />

performance characteristics. There’s also a fairly<br />

reliable rule that says once a system resource hits about<br />

80% utilization, it will start to saturate and cause nonlinear<br />

degradation of performance as load increases.<br />

However, for the most part, it is difficult and unreliable<br />

to extrapolate results from smaller environments under scaleddown<br />

loads into larger environments.<br />

Here’s a case study of a failed attempt to extrapolate from small<br />

test environments. One of our clients built a security manage-<br />

www.testingexperience.com<br />

Figure 1: An unrealistically scaled down test environment<br />

ment application that supported large, diverse networks. The<br />

application gathered, integrated, and controlled complex data<br />

related to the accounts and other security settings on servers in a<br />

managed network.<br />

Before they became our client, they ran performance tests in a<br />

The Magazine for Professional Testers<br />

Figure 2: A realistic test environment<br />

67

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!