Posted by : Sushanth Friday, 31 December 2021

 

The performance of a software application is a non-functional requirement which indicates the responsiveness of the operations that it can perform. From user perspective, the responsiveness of the applications should be high and fast response times are demanded regardless of the location or the device that users are using.

A user's satisfaction with the application is influenced by the speed of the application. For web and mobile applications, the loading time for a page is a major factor in page abandonment. This is evident when we look at things such as a site's bounce and conversion rates.

Bounce rate:

 A bounce occurs when a user has just a single-page session on a site and leaves without visiting any of the other pages. The bounce rate, which is sometimes referred to as the exit rate, is the percentage of users who bounce: As you would expect, as page load times increase, so too does the bounce rate.



Examples of actions that result in a bounce include the user closing the browser window/tab, clicking on a link to visit a different site, clicking the back button to leave the site, navigating to a different site by typing in a new URL or using a voice command, or having a session timeout occur.

Conversion rate:

 The conversion rate is the percentage of site visitors who ultimately take the desired conversion action. The desired conversion action depends on the purpose of the site, but a few examples of common ones include placing an order, registering for membership, downloading a software product, or subscribing to a newsletter.



Page speed affects search rankings:

 Page speed is a consideration in a site's mobile search ranking in Google search results. Currently, this criterion only affects pages with the slowest performance, but it shows the importance Google places on web page performance. 

Terminology:

1.Latency:

 Latency is the amount of time (or delay) it takes to send information from a source to a destination. Factors such as the type of network hardware being utilized, the connection type, the distance that must be traveled, and the amount of congestion on the network all affect latency.

 2.Throughput:

 Throughput is a measure of a number of work items per a particular time unit. In the context of application logic, throughput is how much processing can be done in a given amount of time. An example of throughput in this context would be the number of transactions that can be processed per second.

3.Bandwidth

Bandwidth is the maximum possible throughput for a particular logical or physical communication path. Like throughput, it is typically measured in terms of a bit rate, or the maximum number of bits that could be transferred in a given unit of time.

4.Processing time

Processing time is the length of time that it takes for a software system to process a particular request, without including any time where messages are traveling across the network (latency).

Factors affecting processing time are, how the application code is written, the external software that works in conjunction with the application, and the characteristics of the hardware that is performing the processing.

5.Response time

Response time is the total amount of time between the user making a particular request and the user receiving a response to that request. For a given request, response time is a combination of both the network latency and the processing time.

6.Workload

Workload represents the amount of computational processing a machine has been given to do at a particular time. A workload uses up processor capacity, leaving less of it available for other tasks. Some common types of workload that may be evaluated are CPU, memory, I/O, and database workloads.

7. Utilization

Utilization is the percentage of time that a resource is used when compared with the total time that the resource is available for use. For example, if a CPU is busy processing transactions for 45 seconds out of a one-minute timespan, the utilization for that interval is 75%. Resources such as CPU, memory, and disk should be measured for utilization in order to obtain a complete picture of an application's performance. As utilization approaches the maximum throughput, response times will rise.

 

Systematic approach to Performance Improvements:



An iterative process that consists of the following steps can be used for performance improvement:

  • ·         Profiling the application
  • ·         Analyzing the results
  • ·         Implementing changes
  • ·         Monitoring changes

 

 

Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © Technical Articles - Skyblue - Powered by Blogger - Designed by Johanes Djogan -