Architecture Characteristics Worksheet performance
adaptability
The amount of time it takes for the system to process a business request
The ease in which a system can adapt to changes in environment and functionality
responsiveness
concurrency
The amount of time it takes to get a response to the user
The ability of the system to process simultaneous requests, in most cases in the same order in which they were received; implied when scalability and elasticity are supported
availability The amount of uptime of a system; usually measured in 9’s (e.g., 99.9%)
fault tolerance When fatal errors occur, other parts of the system continue to function
interoperability The ability of the system to interface and interact with other systems to complete a business request
extensibility
scalability
The ease in which a system can be extended with additional features and functionality
A function of system capacity and growth over time; as the number of users or requests increase in the system, responsiveness, performance, and error rates remain constant
deployability
elasticity The system is able to expend and respond quickly to unexpected or anticipated extreme loads (e.g., going from 20 to 250,000 users instantly)
The amount of ceremony involved with releasing the software, the frequency in which releases occur, and the overall risk of deployment
testability The ease of and completeness of testing
data integrity
abstraction
The data across the system is correct and there is no data loss in the system
The level at which parts of the system are isolated from other parts of the system (both internal and external system interactions)
data consistency
workflow
The data across the system is in sync and consistent across databases and tables
The ability of the system to manage complex workflows that require multiple parts (services) of the system to complete a business request
Last updated March 2024
Created by Mark Richards, DeveloperToArchitect.com