Open In App

Software Quality - Software Engineering

Last Updated : 26 Mar, 2025
Comments
Improve
Suggest changes
Like Article
Like
Report

Traditionally, a high-quality product is outlined in terms of its fitness of purpose. That is, a high-quality product will specifically be what the users need to try. For code products, the fitness of purpose is typically taken in terms of satisfaction of the wants arranged down within the SRS document.

Though “fitness of purpose” could be a satisfactory definition of quality for some products like an automobile, a table fan, a grinding machine, etc. – for code products, “fitness of purpose” isn't a completely satisfactory definition of quality.

Software-Quality-Software-Engineering

What is Software Quality?

Software Quality shows how good and reliable a product is. To convey an associate degree example, think about functionally correct software. It performs all functions as laid out in the SRS document. But, it has an associate degree virtually unusable program. even though it should be functionally correct, we tend not to think about it to be a high-quality product.

Another example is also that of a product that will have everything that the users need but has an associate degree virtually incomprehensible and not maintainable code. Therefore, the normal construct of quality as “fitness of purpose” for code products isn't satisfactory.

Factors of Software Quality

The modern read of high-quality associates with software many quality factors like the following:

Factors-of-Software-Quality

  1. Portability: A software is claimed to be transportable, if it may be simply created to figure in several package environments, in several machines, with alternative code products, etc.
  2. Usability: A software has smart usability if completely different classes of users (i.e. knowledgeable and novice users) will simply invoke the functions of the products.
  3. Reusability: A software has smart reusability if completely different modules of the products will simply be reused to develop new products.
  4. Correctness: Software is correct if completely different needs as laid out in the SRS document are properly enforced.
  5. Maintainability: A software is reparable, if errors may be simply corrected as and once they show up, new functions may be simply added to the products, and therefore the functionalities of the products may be simply changed, etc
  6. Reliability: Software is more reliable if it has fewer failures. Since software engineers do not deliberately plan for their software to fail, reliability depends on the number and type of mistakes they make. Designers can improve reliability by ensuring the software is easy to implement and change, by testing it thoroughly, and also by ensuring that if failures occur, the system can handle them or can recover easily.
  7. Efficiency. The more efficient software is, the less it uses of CPU-time, memory, disk space, network bandwidth, and other resources. This is important to customers in order to reduce their costs of running the software, although with today’s powerful computers, CPU time, memory and disk usage are less of a concern than in years gone by.

Software Quality Management System

Software Quality Management System contains the methods that are used by the authorities to develop products having the desired quality.

Some of the methods are:

  • Managerial Structure: Quality System is responsible for managing the structure as a whole. Every Organization has a managerial structure.
  • Individual Responsibilities: Each individual present in the organization must have some responsibilities that should be reviewed by the top management and each individual present in the system must take this seriously.
  • Quality System Activities: The activities which each quality system must have been
    • Project Auditing.
    • Review of the quality system.
    • It helps in the development of methods and guidelines.

Evolution of Quality Management System

Quality Systems are basically evolved over the past some years. The evolution of a Quality Management System is a four-step process.

  1. Inspection: Product inspection task provided an instrument for quality control (QC).
  2. Quality Control: The main task of quality control is to detect defective devices, and it also helps in finding the cause that leads to the defect. It also helps in the correction of bugs.
  3. Quality Assurance: Quality Assurance helps an organization in making good quality products. It also helps in improving the quality of the product by passing the products through security checks.
  4. Total Quality Management (TQM): Total Quality Management(TQM) checks and assures that all the procedures must be continuously improved regularly through process measurements.
software-quality
Evolution of Quality Management System

Questions for Practice

1. In software testing, how the error, fault, and failure are related to each other? [UGC-NET 2015]

(A) Error leads to failure, but fault is not related to error and failure.

(B) Fault leads to failure, but error is not related to fault and failure.

(C) Error leads to fault and fault leads to failure.

(D) Fault leads to error and error leads to failure.

Solution: Correct Answer is (C).

2. A Software Requirement Specification (SRS) document should avoid discussing which one of the following? [GATE CS 2015]

(A) User Interface Issues

(B) Non-Functional Requirements

(C) Design Specification

(D) Interfaces with Third-Party Software

Solution: Correct Answer is (C).

Conclusion

Software quality ensures a product is reliable, maintainable, and user-friendly, going beyond just meeting requirements. It involves key factors like portability, usability, correctness, and efficiency. A robust quality management system and continuous improvement processes help achieve these standards. High-quality software is functional, efficient, and adaptable to user needs.


Next Article
Article Tags :

Similar Reads