Capacity Requirements
- Capacity Requirement
- the
performance requirement
that specifies a minimum required amount of the
quality factor
capacity
The typical objectives of a capacity requirement are to:
- Ensure that the successful handling of the:
- Storage of the minimum necessary number of:
- Minimum necessary number of
simultaneous:
- Use case path executions.
- Transactions.
- Interactions with externals.
- Interaction of the minimum necessary number
of:
- Client Externals (e.g., users, client
computers).
- Server Externals (e.g., sensors, actuators).
- Ensure that high loads are handled successfully.
Capacity requirements are typically specified in terms of
the following measurements:
The following are typical examples of capacity
requirements:
- “The application shall successfully handle a
minimum of 1.5 million customer accounts.”
- “The application shall successfully handle a
minimum of 1,000 merchant accounts.”
- “The application shall successfully handle a
minimum of 10,000 different products.”
- “The application shall successfully handle a
minimum of 150 simultaneous customer orders including credit
card authorizations.”
- “The application shall successfully handle a
minimum of 100 simultaneous customer registrations 98% of the
time.”
- “The application shall successfully handle a
minimum of 50 simultaneous customer registrations 99.9% of
the time.”
- The hotel registration system shall successfully enable
the booking of reservations up to two years beyond the
current date.”
- The control system shall successfully read inputs from a
minimum of 1000 temperature sensors.”
- The control system shall successfully read inputs from a
minimum of 500 pressure sensors.”
- The control system shall successfully control a minimum
of 750 heaters.”
- The control system shall successfully control a minimum
of 400 pumps.”
- The control system shall successfully control a minimum
of 750 valves.”
The following guidelines have been found to be useful when
producing capacity requirements:
- The scope of a capacity requirement can be:
- Capacity requirements can be identified and specified in
term of the following:
| Component of
Requirement |
Possibile Values |
| TBD |
TBD |
- Where practical, capacity requirements should be
specified in terms of business domain objects or entities and
not in terms of database sizes or database
table volumes, which would imply a potentially unnecessary
architectural constraints (e.g., a specific type of database,
a specific database architecture).
- Specify the maximum expected initial load (plus a
reasonable fudge factor).
- Capacity requirements have a big influence on the
database and hardware architectures.
- Capacity requirements specify minimum load upon delivery.
They should not be confused with:
- Throughput requirements, which address minimum required
transactions or interactions per unit time (as opposed to
simultaneously).
- Scalability requirements, which address
future capacity and throughput
requirements.
- Capacity requirements can be in terms of minimum average
expected load as well as maximum expected load.
- Capacity requirements are typically specified using an
additional “fudge factor” of 10% to 100%.
- Capacity requirements are usually tested using both load
and stress testing.
- Because the minimum required capacity of the application
may change over time, capacity requirements may be specified
differently for different percentages of the time. Thus,
capacity requirements may depend on operational availability
requirements.