Quality: What Is “Reliability” About?
When am I reliable?
Well, there may be different criteria for people. For your software it is about the required functions working under the required conditions. Usually there is also a time span required for this.
You see, once again it’s about meeting requirements.
The ISO 25010 quality model divides reliability into:
Maturity #
How well does your software meet the requirements in normal operation?
Check here:
- What are the expectations?
- What occurs in everyday operation?
- Where are there difficulties?
Example: Your logistics system can process delivery information without a mobile network.
Availability #
How ready and accessible is your software when it is needed?
Here you check:
- When does your software need to be up and running?
- Does your software respond as required?
- What keeps users from being able to use your software?
Example: Your hospital information system responds within 5 seconds to input at the admission terminal for every emergency admitted.
Fault tolerance #
Does your software work as intended despite hardware and software failures?
Check for this:
- Does your software work even if the described hardware is not present?
- Does your software still work when the given software has failed?
- In which situations does your software stop working?
Example: Your system works without limitations when the wired network and the barcode scanner are down.
Recoverability #
How quickly/easily is your software back to the desired state after a failure?
Check:
- What data/what state needs to be restored?
- Is this state saved?
- How long does it take to restore the data/state?
Example: All status information is persisted in the database. Restoring this database takes a maximum of 3 minutes.