0
768views
Software Quality Assurance
1 Answer
0
14views

A software quality is defined as the study of external and internal features of the software. The external quality is defined based on how software performs in real time scenario in operational mode and how useful it is for its users.

The internal quality on the other hand focuses on the intrinsic aspects that are dependent on the quality of the code written. The user focuses more on how the software works at the external level, but the quality at external level can be maintained only if the coder has written a meaningful good quality code.

enter image description here

Presently there are two important approaches that are used to determine the quality of the software:

  • Defect Management Approach

  • Quality Attributes approach

As mentioned before anything that is not in line with the requirement of the client can be considered as a defect. Many times the development team fails to fully understand the requirement of the client which eventually leads to design error.

Applied In defect management, categories of defects are defined based on severity. The number of defects is counted and actions are taken as per the severity defined. Control charts can be created to measure the development process capability.

enter image description here

1. Functionality: can be defined as a complete set of important functions that are provided by the software.

Suitability: whether the functions of the software are appropriate

Accurateness: are the functions implemented correctly?

Security: Is the software able to handle data related transaction securely?

2. Reliability: this refers to the capability of software to perform under certain conditions for a defined duration. This also defines the ability of the system to withstand component failure.

Maturity: Frequency of failure of software

Recover-ability: It gives an idea of a system’s ability to get back into full operation after failure.

3. Usability: refers to the ease of use of a function.

Understand-ability: how easily the function can be understood

Learn ability: How much effort the users of different level need to put in to understand the functions.

4. Efficiency: depends on good architecture and coding practices followed while developing software.

5. Portability: Ability of the system to adopt to changes in its environment.

Please log in to add an answer.