Requirement vs Goal vs Objective

1. Performance requirements - criteria that are absolutely non-negotiable due to contractual obligations, service level agreements or business needs. Only those criteria whose sub-par performance would unquestionably lead to a decision to delay a release are absolutely required.

2. Performance goals - criteria desired for release, but negotiable under certain circumstances. For instance, if a response time goal for a particular transaction is set at 3 seconds, but the actual response time is determined to be 3.3 seconds, it is likely stakeholders will choose to release the application and defer performance tuning of that transaction for a future release.

3. Performance testing objectives - items that add value to the team through the process of performance testing but are not intrinsically quantitative. For example, one objective might be to provide certain data to systems administrators to assist them in tuning systems under their purview. Another objective might be to determine peak application usage that the existing network can support.

The above content has been taken from a white paper "Get performance requirements right - think like a user" written by Scott Barber and published by Compuware. The reference document can be accessed via this link.

Beyond Performance Testing

Performance Engineering; a trendy domain in PT world. Performance Engineering is a vast field which requires a deep knowledge of technology, application, architecture, integration and many more things. 

I always get one question from the performance tester that he/she wants to move in the performance engineering field, but do know how to start?

Today, I am going to share the Bible of Performance Engineering named "Beyond Performance Testing" written by R. Scott Barber. Actually, these are the PDF links covering all the basic and advanced topics of performance engineering. I am sharing you the link of Introduction page in which all the links are given. So, read it and learn the PE concepts:

Microservices implementation in DevOps

Some time back I have shared an important article on microservices and it's architecture, to continue the same topic today, I am sharing another article published by Neotys on Microservices implementation in DevOps.     


What is DevOps?
DevOps is the practice of operations and development engineers participating together in the entire service lifecycle, from design through the development process to production support.

What are Microservices?
Actually, microservice is a loosely coupled program which is grouped and formed a microservices architecture. Microservice Architecture is an architectural style that structures an application as a collection of small autonomous services (microservices), modelled around a business domain. 

A case study of performance tuning

Again, the last day of the working week! 

Today, I will share a case study which is sent to me by Mohan to circulate to a wider audience so that everybody can get the benefit. This case study is on Netflix online video streaming tool and worth to read.

Thread Dump Analysis Tips

gceasy always provide informative articles in its blog. I found another good post which may help you to identify the critical path using Thread Dump Analysis with best practice. Read this post and get the knowledge:


Additional Details: Thread Dump is a snapshot of the status of all the threads at a particular time. Thread dumps are vital artefacts to diagnose CPU spikes, deadlocks, poor response times, memory problems, unresponsive applications, and other system problems. Thread Dump helps to find out what every thread in the JVM is doing at a particular point in time. Are some threads stuck in deadlock? Are all the threads running? Which threads are waiting for the blocked resources etc? All these questions can be answered by analysing in the thread dump.

Related Topic: Thread Dump Analysis

GC Duration vs GC Pause Duration

In Garbage Collection, there are two important terms, GC Duration and GC Pause Duration. Which duration we need to refer before tuning the application? Refer the link to understand the same:


Garbage Collection: A Garbage Collector is a Java program which tracked the referenced (live) objects and allowed them to keep in the heap memory whereas the memory of the unreferenced (dead) objects is reclaimed and reused for future object allocation.

Performance Test Life Cycle in DevOps

Stijn Schepers; one of my favourite speaker and blog writer who shares his knowledge especially on Performance Testing and DevOps concept. Today, I am sharing one of his latest article in which he explained the life cycle of performance testing in DevOps world. With a simple and clear diagram, he described the full life cycle.    

What is DevOps?
DevOps is the practice of operations and development engineers participating together in the entire service lifecycle, from design through the development process to production support.