9 b] Explain the quality models:1) Garvins Quality Dimensions 2) Mccall Model 3) Boehms Model
Garvin’s Quality Dimensions
- Performance: How well it performs the jobs.
- Features: How well it supports the required features.
- Reliability: Probability of a product working satisfactorily within a specific period of time
- Conformance: Degree to which the product meets the requirements
- Durability: Measure of the product life
- Serviceability: Speed and effectiveness maintenance.
- Aesthetics: The look and feel of the product
- Perceived quality: User’s opinion about the product quality.
Mccall Model
- Correctness: Does the software deliver accurate and expected results?
- Reliability: Can the software perform consistently without failures?
- Efficiency: Does the software utilize resources effectively for optimal performance?
- Integrity: Does the software protect data and functionality from unauthorized access?
- Usability: Is the software easy to learn and use for the target audience?
- Maintainability: How easy is it to modify and fix the software when needed?
- Testability: How easy is it to identify and fix bugs in the software?
- Flexibility: Can the software adapt to changing requirements or environments?
- Portability: Can the software be easily transferred to different hardware or operating systems?
- Reusability: Can code components be reused in other software projects?
- Interoperability: Can the software communicate and exchange data with other systems effectively
- Portability: Can the software be easily transferred to different hardware or operating systems?
- Reusability: Can code components be reused in other software projects?
- Interoperability: Can the software communicate and exchange data with other systems effectively
Boehms Model
- Portability: Effort required to change the software to fit in a new environment.
- Reliability: The extent to which software performs according to requirements.
- Efficiency: Amount of hardware resources and code required to execute a function.
- Usability (Human Engineering): Extent of effort required to learn, operate and understand functions of the software.
- Testability: Effort required to verify that software performs its intended functions.
- Understandability: Effort required for a user to recognize a logical concept and its applicability.
- Modifiability: Effort required to modify software during the maintenance phase.