Software Engineering | Software Quality – GeeksforGeeks

Traditionally, a high-quality product is outlined in terms of its fitness of purpose. That is, a high-quality product will specifically what the users need it to try to. For code merchandise, 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 several merchandises like an automobile, a table fan, a grinding machine, etc. – for code merchandise, “fitness of purpose” isn’t a completely satisfactory definition of quality. To convey associate degree example, think about a software that’s functionally correct. It performs all functions as laid out in the SRS document. But, it has an associate degree virtually unusable program. despite the fact that it should be functionally correct, we have a tendency to cannot think about it to be a high-quality product. Another example is also that of a product that will everything that the users need however has associate degree virtually incomprehensible and not maintainable code. Therefore, the normal construct of quality as “fitness of purpose” for code merchandise isn’t totally satisfactory. The modern read of high-quality associates with software many quality factors like the following:

  • 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 merchandise, etc.
  • Usability: A software has smart usability if completely different classes of users (i.e. each knowledgeable and novice users) will simply invoke the functions of the merchandise.
  • Reusability: A software has smart reusability if completely different modules of the merchandise will simply be reused to develop new merchandise.
  • Correctness: A software is correct if completely different needs as laid out in the SRS document are properly enforced.
  • 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 merchandise, and therefore the functionalities of the merchandise may be simply changed, etc
  • 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.
  • 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.

My Personal Notes

arrow_drop_up