Even before we try and define what is software quality, it may be a good idea to understand what is meant by term quality?
Quality means different to different people. One may call a product or high services of high quality if it serves their needs. Thus, for some people, a cell phone can be of high quality if it provides sound of great quality. However, for others, the ability to browse through social network can be criteria of judging a cellphone (also called as smartphone) quality.
To standardize, software quality may be defined as a set of characteristics can be used to measure the following:
- Outcome of interaction with external user (actual user of the software)
- Outcome of interaction with internal stakeholders (IT organization primarily including developers)
Outcome of interaction with external user: Some of the following may be used to determine the outcome of interaction with external users:
- Effectiveness
- Efficiency
- Satisfaction
- Safety
Outcome of interaction with internal stakeholders: These are primarily the developers which are involved with developing the code and testing the same. Some of the following may be used to determine the outcome of interaction with external users:
- Functional Suitability
- Maintainability
- Usability
- Security
- Efficiency
- Reliability
- Compatibility (Interoperability)
- Portability
Above listed characteristics are derived from SQUARE specifications of ISO 25000 series of standards.
- Sparse Mixture of Experts (MoE) Models: Examples - October 6, 2024
- Anxiety Disorder Detection & Machine Learning Techniques - October 4, 2024
- Confounder Features & Machine Learning Models: Examples - October 2, 2024
I found it very helpful. However the differences are not too understandable for me