“Would you tell me, please, which way I ought to go from here?”
“That depends a good deal on where you want to get to”, said the Cat.
–Lewis Carroll, Alice’s Adventures in Wonderland
Performance Testing, Simulation Modeling, and Performance Analysis are the three techniques of performance evaluation.
Simulation modeling has evolved from its origin in aerospace engineering to include computer systems engineering, and discrete event simulation for software engineering applications. Simulation modeling expands on both Performance Testing and Performance Analysis by combining the two and utilising Bayesian statistics, Monte Carlo methods, probability distributions, and classical statistics computational packages. The purpose of simulation modeling is to create accurate conceptual models of changes due to future modifications of workload, load characteristics or infrastructure changes.
Our simulation modeling offerings span from discrete event simulation for queues to full analytical conceptual models that simulate both infrastructure and application changes. Our simulation modeling solutions and services also cover a variety of business cost and requirements cases.
Choosing the optimal hardware and software configuration for a new system or an infrastructure change can be difficult. The following questions are commonly asked:
- What is the optimum hardware for my application?
- What bottlenecks exist for my application?
- Would my most effective investment be in more memory, faster drives or greater processing power?
- How should I right-size to take advantage of a virtualised application architecture?
- Will it be more cost effective to regrade my application or should I invest in more suitable hardware for the desired hastening of response time?
- [Despite my vendor’s lavish claims,] would throwing money at hardware actually give me the desired response times?
- Are there enough resources for current workload characteristics?
- What if we increased the user workload characteristics by 25%?
- Will the network be able to cope with the increase in traffic?
Many of these questions can be answered prior to deployment using discrete event simulation techniques. Performance engineering allows you to build a predictive discrete event simulation conceptual models of the system infrastructure. This enables the modeling of component or infrastructure changes as part of a ‘what if’ analysis. This means that performance bottlenecks and problems can be identified early in the software lifecycle using predictive performance modeling.
Additional business insight can be gained using discrete event simulation conceptual models of the infrastructure. The conceptual models can include profiles and characteristics of individual workloads and users. Business analysts can easily simulate changes such as increases in workload or hardware changes. These scenarios can highlight which options best meet both performance and cost goals.