Capacity
- Capacity
- the quality factor representing the maximum number of things that a business
enterprise,
center,
application, or
component
can successfully handle at a single point in time or during a specific interval of time
As illustrated in the preceding figure, Capacity is part of the following inheritance hierarchy:
- Type: Concrete
- Superclass: Quality Factor
- Subclasses:
- Bandwidth capacity,
which is the amount of communication that can be successfully handled per unit time
(e.g., megabytes per second)
- Interface capacity,
which is the maximum number of interfaces that can simultaneously exist
(e.g., number of actuators, ports, sensors, or users)
- Processing capacity,
which is the maximum amount of processor capacity
(e.g., number of gigahertz, number of processors)
- Storage capacity,
which is the maximum amount of data that can be successfully stored
(e.g., number of records, number of megabytes, number of disk drives)
The typical responsibilities of capacity are to:
- Model the limits of an application or component’s ability to handle multiple things
- Support the analysis and specification of
capacity requirements.
- Provide a foundation for evaluating the quality of an architecture.
Capacity is typically decomposed into the following aggregation hierarchy of subfactors:
Capacity is typically measured in terms of the number of:
- Stored Objects or Entities.
- Client Externals (e.g., users, client computers).
- Server Externals (e.g., sensors, actuators).
- Simultaneous:
- Use case path executions.
- Transactions.
- Interactions with externals.
Typical mechanisms for achieving capacity include:
- Multiple hard drives
- Multiple ports
- Multiple routers
- Multiple servers
The following guidelines have been found to be useful with
regard to capacity:
- The scope of capacity can be:
- Capacity should not be confused with:
- Throughput, which address transactions or interactions
per unit time (as opposed to simultaneously).
- Scalability, which address future capacity and throughput.