Describe the requirements for the various aspects of Quality of Service (QoS).
QoS aspects encompass Reliability, Availability, and Serviceability (RAS), scalability, timeliness, and security – sometimes referred to as the “non-functional requirements” (NFRs) or the “ilities”.
QoS characterization includes the periodicity of each aspect, and relative prioritization of aspects at key time periods. The correlation of QoS and functional requirements includes periodicity.
The aspects in this category include consumability, manageability, serviceability, agility, flexibility, and adaptability.
Consumability includes adoptability and usability.
Flexibility includes the ability to swap or change as allowed by the technology and the contract.
The aspects in this category include availability, fault tolerance, recoverability, stability, reliability, and dependability.
Availability is typically measured in 9s. A “Five 9s” system is up 99.999% of the time – a little over five minutes per year downtime. Planned, scheduled outages for maintenance are typically excluded.
Fault tolerance avoids service disruption. A fully fault-tolerant design has no SPOFs, and often accommodates multiple failures within a service window – survivability of planned, unscheduled outages. Software fault tolerance designs include exception handling and task rollback.
Recoverability is measured in terms of recovery time objective(RTO ) and recovery point objective (RPO). RTO determines how quickly the system needs to be fully operational; RPO determines how much data loss can be tolerated.
Reliability is typically measured as mean time to failure (MTTF) and mean time between failures (MTBF) or number of failures in a billion hours (FITS). MTTF is used along with mean time to repair (MTTR) to calculate the MTBF.
The aspects in this category include system performance optimization: balancing scalability and throughput with the timeliness aspects of latency, predictability (determinism), and synchronicity.
Latency varies from less than 1ms to more than 150ms (milliseconds to minutes).
Micro-level predictability is often defined as “hard” (a Mission Control system, for example) or “soft” (a Plant Control system).
Macro-level predictability:
Throughput may be described in a range of 1 to 100,000 transactions per second, or “moderate” to “very high”. 1500 orders per second is moderate; the number of phone calls on Mother's Day is very high.
Synchronicity descriptors include tight tolerance, workload balancing, fairness, and time period correlated.
“In spec” means is the solution operating in accordance with the business’s mission and policies. The aspects in this category include governance and low impact footprint.
Governance includes prioritization of services and transactions, compliance, access (security).
Low impact footprint includes social responsibility and sustainability (for example, carbon-neutrality and water usage).
Identify which QoS requirements must be met, and for which you are willing to negotiate less stringent terms.