ch 2 what is software quality
TRANSCRIPT
![Page 1: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/1.jpg)
SE422 Software Quality Assurance CH2-Software Quality
Software EngineeringCollege of Arts, Media and Technology ,CMU.
Kittitouch S.1.1-8-11-12
![Page 2: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/2.jpg)
Topics
What is Software? Software Error, Fault and Failure
Case study:Therac-25 Classification of the causes of
software errors Software Quality Software Quality Assurance Quality Control The objectives of SQA activities
![Page 3: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/3.jpg)
What is Software?
Software – IEEE definitionSoftware is Computer programs, procedures, and possibly associated documentation and
data pertaining to the operation of a computer system.
Institute of Electrical and Electronics Engineers (IEEE)
![Page 4: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/4.jpg)
Software….
Computer programs (the “code”) Procedures Documentation Data necessary for operating the
software system.
![Page 5: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/5.jpg)
Software Error, Fault and failures
Software failure case study Therac-25
The Therac-25 was a radiation therapy machine produced by Atomic Energy of Canada Limited
A software failure disaster.
![Page 6: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/6.jpg)
Reading Assignment:Therac-25
Read the journal of Therac-25
Think about how to to prevent software failure disaster?
Youtube Therac-25
![Page 7: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/7.jpg)
Software Error, Fault and failures
Software error: made by programmer.
Software fault: defect in product.
Software failure: software fault is activate.
![Page 8: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/8.jpg)
Figure 2.1: Software errors, software faults and software failures
![Page 9: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/9.jpg)
2.3 Classification of the causes of software errors
1. Faulty definition of requirements
![Page 10: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/10.jpg)
2.3 Classification of the causes of software errors
2. Client–developer communication failures
Misunderstanding requirement, change, design,…,etc.
![Page 11: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/11.jpg)
2.3 Classification of the causes of software errors
3. Deliberate deviations from software requirements
The developer reuses software modules taken from an earlier project without sufficient analysis of the changes and adaptations needed to correctly fulfill all the new requirements.
Due to time or budget pressures, the developer decides to omit part of the required functions in an attempt to cope with these pressures.
![Page 12: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/12.jpg)
2.3 Classification of the causes of software errors
4. Logical design error.
![Page 13: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/13.jpg)
2.3 Classification of the causes of software errors
5. Coding error.
![Page 14: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/14.jpg)
2.3 Classification of the causes of software errors
6. Non-compliance with documentation and coding instructions.
Document standard. Coding standard.
![Page 15: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/15.jpg)
2.3 Classification of the causes of software errors
7. Shortcomings of the testing process.
Incomplete test plans leave untreated portions of the software or the application functions and states of the system.
Failures to document and report detected errors and faults.
Failure to promptly correct detected software faults as a result of in appropriate indications of the reasons for the fault.
Incomplete correction of detected errors due to negligence or time pressures.
![Page 16: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/16.jpg)
2.3 Classification of the causes of software errors
8. Procedure errors :User error
![Page 17: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/17.jpg)
2.3 Classification of the causes of software errors
9. Documentation errors.
Omission of software functions.
Errors in the explanations and instructions given to users, resulting in “dead ends” or incorrect applications.
Listing of non-existing software functions, that is, functions planned in the early stages of development but later dropped, and functions that were active in previous versions of the software but cancelled in the current version.
![Page 18: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/18.jpg)
2.3 The 9 causes of software errors
1. Faulty requirements definition2. Client–developer communication failures3. Deliberate deviations from software
requirements4. Logical design errors5. Coding errors6. Non-compliance with documentation and
coding instructions7. Shortcomings of the testing process8. Procedure errors9. Documentation errors
End of 2-1
![Page 19: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/19.jpg)
Assignment 2-1
3 students/team. Reading George Wise story. Discuss in team to find answer.
![Page 20: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/20.jpg)
Software quality
IEEE definition The degree to which a system,
component, or process meets specified requirements.
The degree to which a system, component, or process meets customer or user needs or expectations.
![Page 21: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/21.jpg)
Software quality
Software quality– Pressman’s definition Conformance to explicitly stated
functional and performance requirements, explicitly documented development standards, and implicit characteristics that are expected of all professionally developed software.
![Page 22: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/22.jpg)
Pressman’s definition suggests three requirements for quality assurance.
1. Specific functional requirements, which refer mainly to the outputs of the software system.
2. The software quality standards mentioned in the contract.
3. Good Software Engineering Practices (GSEP), reflecting state-of-the-art professional practices, to be met by the developer even though not explicitly mentioned in the contract.
![Page 23: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/23.jpg)
Software Quality Assurance
IEEE. Definition. A planned and systematic pattern of all
actions necessary to provide adequate confidence that an item or product conforms to established technical requirements.
A set of activities designed to evaluate the process by which the products are developed or manufactured. Contrast with quality control.
![Page 24: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/24.jpg)
Expanded SQA. definition
The IEEE SQA definition
The relevant ISO 9000-3 sections
CMM requirements.
CMM: Capability Maturity Model
![Page 25: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/25.jpg)
Example of expanded SQA Definition
SQA Expanded definition
IEEE SQA definition
Relevant Sections from ISO9000-3
Relevant SEI-CMM Requirement
Systematic, planned actions are required
+ Managementresponsibilities(4.1)Quality system (4.2)Contract review (4.3)
-Software qualitymanagement-Requirement management-Software project planning-Software tracking and oversight
More in table 2.2
![Page 26: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/26.jpg)
Quality Control
Quality control is defined as “a set of activities designed to evaluate the quality of a developed or manufactured product”
![Page 27: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/27.jpg)
The objectives of SQA activities Software Development(process-
oriented):1. Assuring an acceptable level of confidence that the
software will conform to functional technical requirements.
2. Assuring an acceptable level of confidence that the software will conform to managerial scheduling and budgetary requirements.
3. Initiating and managing of activities for the improvement and greater efficiency of software development and SQA activities.
![Page 28: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/28.jpg)
The objectives of SQA activities Software maintenance(Product-oriented):
1. Assuring with an acceptable level of confidence that the software maintenance activities will conform to the functional technical requirements.
2. Assuring with an acceptable level of confidence that the software maintenance activities will conform to managerial scheduling and budgetary requirements.
3. Initiating and managing activities to improve and increase the efficiency of software maintenance and SQA activities. This involves improving the prospects of achieving functional and managerial requirements while reducing costs.
![Page 29: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/29.jpg)
Software Engineering
The application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software; that is, the application of engineering to software.
![Page 30: Ch 2 what is software quality](https://reader033.vdocuments.net/reader033/viewer/2022051413/556b124fd8b42ae47d8b5058/html5/thumbnails/30.jpg)
Referrence
Chapter 2:Daniel Galin. SOFTWARE QUALITY ASSURANCE From theory to implementation. Pearson Education Limited,2004.
Therac-25:An Engineering Disaster Therac-25 Joanne Lim., October 1998