0% found this document useful (0 votes)
120 views

Performance Engineering

This document discusses software performance engineering. It defines software performance as the degree to which a software system meets objectives for timeliness, such as response time and throughput. Performance engineering is the process of planning and evaluating a system's performance throughout development to enhance responsiveness and usability while preserving quality. However, performance engineering is not widely practiced due to a cognitive gap between software development and performance analysis domains and a lack of resources prioritizing shorter development times over performance activities. Many performance problems stem from architectural issues requiring performance modeling early in the architecture phase.

Uploaded by

pramod_kmr73
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
120 views

Performance Engineering

This document discusses software performance engineering. It defines software performance as the degree to which a software system meets objectives for timeliness, such as response time and throughput. Performance engineering is the process of planning and evaluating a system's performance throughout development to enhance responsiveness and usability while preserving quality. However, performance engineering is not widely practiced due to a cognitive gap between software development and performance analysis domains and a lack of resources prioritizing shorter development times over performance activities. Many performance problems stem from architectural issues requiring performance modeling early in the architecture phase.

Uploaded by

pramod_kmr73
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 11

Performance Engineering

Software Performance
• The degree to which a software system or
component meets its objectives for
timeliness
– Time required to respond to specific events
(response time)
– Number of events processed in a given time
interval (throughput)
Software Performance
• It’s all about timing!
• Events occur
– Messages, interrupts, user request, clock tick
• The system must respond to the events
• Performance: How long does it take for the
system to respond to an event
– Parameters: number of events and their
patterns
Performance Scenario
• A request for some service arrives at the
system
• Satisfying the request consumes
resources
• During this time the system may be
simultaneously serving other requests
Software Performance
• High Availability Defined
• High Availability (HA) is a design and
implementation that ensures a certain
degree of operational continuity.
In other words…
• The system is up
• The users are happy
• The business is not losing money due to
outages
Basic Model
Parameters
• Customer population is infinite
• Arrival time of each customer
– Time interval between 2 customers
• Random variables with common distribution function (A)
– Service time
• Random variables with common distribution function (B)
• Number of servers
• Size of the waiting line (queue) – infinite or finite
• Service discipline
Dimensions of Software
Performance
• Responsiveness: the ability of a system to
meet its objectives for response time or
throughput
– User’s perspective vs. system’s perspective
• Both subjective and objective
• Scalability: ability of a system to continue
to meet its response time or throughput
objectives as the demand for the software
functions increases.
Software Performance Engineering
(SPE)
• Systematic process for planning and
evaluating a new system's performance
throughout the development life cycle
• Goals:
– Enhance the responsiveness
– Enhance the usability
while preserving the quality
Why SPE is not Widely Practiced?
• Cognitive gap between the software
development domain and the performance
analysis domain
– Software developers do not know much about
performance modeling
• Lack of resources: pressure for “shorter
time to market” leaves SPE out of the list
of must-do activities
Essential Difficulty
• Many performance problems are usually
architectural in nature
– Rooted at the design and architecture stage
• Performance Modeling must start at the
architecture phase
– Research: derive performance models from
design models (e.g., UML, ADLs)
• Structure
• Behavior

You might also like