Performance Engineering

Performance Engineering and its Evolution

The evolution from Performance Testing to Performance Engineering is a journey that culturally changes the organization’s focus from simply executing tests, analyzing, and delivering results to making business decisions and achieving business outcomes driven by performance. Moving from performance testing through the next levels as the organization matures is really about addressing some of the common challenges that prevent the organizations from successful performance.

  • Load Testing : SLA based, wide range of tools, technologies, and protocols used, mainly focused on System and Hardware
  • Performance Testing : Measures the client-side performance, always correlated with load testing, testing may be limited to the test environments
  • Performance Analytics : Analyze operations data to realistically address performance profiles, create performance repository, utilize the results data to identify the root cause of performance issues
  • Performance Engineering : Continuous business feedback and improvements required, built-in and automated performance, optimized applications for business and customer value, collaborative and interactive team focused on quality
blog-performance-engineering-image

Performance Engineering Accelerator

Performance Engineering Accelerator consists of 4 components/phases:

  • Architect : Performance Engineering before starting development
  • Build : DevOps aspects for continuous Integration for effective and fast delivery
  • Deliver : Continuous deployment and operations
  • Monitoring : Predictive, growth, features and continuous feedback

Phase #1 – Architect

This is the planning phase. The Performance Engineer (PE) will work with the business user, key stakeholders, project teams to identify and document the key business transactions, scenarios, user stories and corresponding SLAs. The next task is to identify the workload profile – number of users, average, peak, concurrent users, regional users, capacity planning, etc. One of the key aspects is to define the performance objectives and goals. Once you define the objectives, the required funding, resources, tools, infrastructure, environments have to be identified. The scenarios, transactions, workload profiles, etc have to reviewed and signed off with the stakeholders.

Phase #2 – Build

In this phase, the PE will define the performance test levels, develop the test data management plan, define the metrics to be captured, document the overall performance testing strategy, acceptance criteria, develop the test scripts, define the baseline, environment validation, monitoring tools, etc., and the DevOps aspects for continuous integration for effective and faster delivery should be considered.

Phase #3 – Deliver

Once the application is ready, the test scripts will be executed with a few users and/or a large number of users. This is can be done at the component level or user story level or the module level. Continue to execute tests for average, peak, double peak, and concurrent volumes. Performance monitoring and tuning play an important role. The PE should have the expertise on application performance management, performance monitoring, and tuning expertise. Implement continuous build and test execution if required.

Phase #4 – Monitoring

This involves monitoring the current growth, reviewing the capacity planning, improve the capacity planning for the near term and long term, improve operational efficiencies, and implement continuous feedback for both process and operations.

Testing Metrics

As part of the metrics collection and reporting, the PE will capture the Response Metrics – Average, Peak, Double Peak and Endurance response times, error rates, Volume Measurements – Concurrent Users, Requests per Second and Throughput. At the OS level, CPU, memory, memory leak, disk utilization, and network utilization will be captured. At the App/Web Server levels, memory utilization, garbage collection, number of sessions, hit ratio, and thread utilization will be captured. At the DB level, buffer pool, cache utilization, number of transactions, commits, % indexed queries, etc will be captured.

I'm a seasoned IT delivery leader with a good technical acumen. Interested in learning new things every day!

About the author

Ramakrishnan Panchapakesan
Ramakrishnan Panchapakesan

I'm a seasoned IT delivery leader with a good technical acumen. Interested in learning new things every day!

Add comment

Welcome to Miracle's Blog

Our blog is a great stop for people who are looking for enterprise solutions with technologies and services that we provide. Over the years Miracle has prided itself for our continuous efforts to help our customers adopt the latest technology. This blog is a diary of our stories, knowledge and thoughts on the future of digital organizations.


For contacting Miracle’s Blog Team for becoming an author, requesting content (or) anything else please feel free to reach out to us at blog@miraclesoft.com.

Who we are?

Miracle Software Systems, a Global Systems Integrator and Minority Owned Business, has been at the cutting edge of technology for over 24 years. Our teams have helped organizations use technology to improve business efficiency, drive new business models and optimize overall IT.

Recent Posts