Characteristics of software qualityExtenal chracteristics that a user is aware of:.... 1 Correctness The degree of which a system is free from faults in its specification, design and implementation.2 Usability The ease with which users can learn and use a system. 3. Eficiency Minimal use of system resoure, including memeory and execution time.4 Reliability The ability of a system to perform its required functions under stated conditions whenever required -.... having a long mean time between failures.5 Integrity The. degree to which a system prevents unauthorized or improper access to its programs and its data.6. Adaptability. The extent to which a system can be used, without modification, in applications or environment other than those for which it was specification designed.7. . Accuracy The degree to which a system, as built, is free from error, especially with respect to quantitative outputs Accuracy differs from correctness;. it is a determination of how well a system does the job it ' .
Internal characteristics that a programmer is aware of:. 1 Maintainability The ease with which you can modify a software system to change or add capabilities, improve performance, or correct defects.2 Flexibility The extent to which you can modify a system for... uses or environments other than those for which it was specifically designed.3. Portability. The ease with which you can modify a system to operate in an environment different from that for which it was specifically designed.4. Reusability. The extent to which and the ease with which you can use parts of a system in other systems.5. Readability. The ease with which you can read and understand the source code of a system, especially at the detailed-statement level.6. Testability. The degree to which you can unit-test and system-test a sytem; the degree to which you can verify that the system meets its requirements.7 Understandability The ease with which you can comprehend a system at both the system-organizational and detailed.. -statement level.Techiniques for improving software quality1. Set explicit quality objectives from among the external and internal characteristics.2. Exlicit quality-asurance activity. One common problem in assuring quality is that quality is perceived as a secondary goal. Making the quality- assurances acitvity indepent makes the priority clear.3. Testing strategy.4. Software-enginerring guidelines.5. Informal technical reviews.6. Formal technical reviews.7. External audits.8. Development process.9. Change-control procedures. One BIG OBSTACLE TO ACHIEVING SOFTWARE QUALITY IS UNCONTROLLED CHANGES.10. Measurement of Results. Unsurance Plan Are Measured. You '