Skip to main content
main-content

Über dieses Buch

Identifying failure modes and their effects is critical to software failure mode and effects analysis and it largely depends on the analysts’ experience and the skill. This book develops a series of reading techniques based on common and prioritized failure modes in software requirements, software design, coding, and usability in order to makes the benefits of software failure mode and effects analysis (FMEA) readily accessible to general software practitioners, particularly in small teams and resource-constrained organizations.
After a general introduction it offers an overview of software FMEA and discusses software review procedures and software reading techniques. Subsequent chapters present the basic ideas behind failure-modes-based reading techniques and examine the use of these techniques for software requirements, software design, software coding, software usability, and software testing. Covering the entire creation process, and including checklists and examples, it provides an easy introduction to the topic for professionals in software engineering and quality assurance.

Inhaltsverzeichnis

Frontmatter

Chapter 1. Introduction

Abstract
This chapter discusses the software quality concept and software assurance techniques. The software assurance techniques discussed include software testing, software peer review, software failure mode and effects analysis (FMEA), software fault tree analysis, tool-based static analysis, and model-based design and verification. The strength and weakness of each technique, particularly of software peer review and FMEA, are highlighted and compared, which motivated the development of this book to espouse the merits of software peer review and FMEA.
Yang-Ming Zhu

Chapter 2. Software Failure Mode and Effects Analysis

Abstract
This chapter reviews the history of failure mode and effects analysis (FMEA), its development, industry adoption, and standards. It then focuses on software FMEA, discusses the types of FMEA, and enumerates typical software FMEA steps. The V software development model is used to illustrate how and where the software FMEA fits in the software development life cycle.
Yang-Ming Zhu

Chapter 3. Software Review and Software Reading

Abstract
The well-known best practice for software quality engineering, software peer review and inspection, is introduced. The classic Fagan inspection is discussed in detail, and its drawbacks are pointed out, along with its modern extensions and remediation. Software reading techniques are meant to enhance the individual defect detection capacity during peer review. Popular systematic and unsystematic reading techniques, including ad hoc reading, checklist-based reading, scenario-based reading, are surveyed. Software reading is also discussed in the context of the V software development model.
Yang-Ming Zhu

Chapter 4. Failure-Modes-Based Software Reading

Abstract
Terminologies frequently used in the context of failure mode and effects analysis are first introduced, followed by the categorization of software failure modes reported by researchers and practitioners. To motivate the failure-modes-based software reading techniques, software peer review and software failure mode and effects analysis are compared and the merits of each are combined in the failure-modes-based reading, the gist of which is to use failure modes and their root causes to guide the software reading process.
Yang-Ming Zhu

Chapter 5. Failure-Modes-Based Requirements Reading

Abstract
This chapter applies the idea of failure-modes-based reading to the reading of software requirements. The importance of software requirements in the software development life cycle is emphasized, followed by the survey of requirements failure modes and root causes which are used in the failure-modes-based requirements reading techniques. This chapter ends with an example to illustrate how the reading technique can be used in practice.
Yang-Ming Zhu

Chapter 6. Failure-Modes-Based Design Reading

Abstract
Software design plays an increasingly important role in software development, particularly as the scale and complexity of software increase. This chapter focuses on architecture design and interface design, surveys failure modes and root causes at each level of design, and presents the failure-modes-based reading techniques for architecture and interface artifacts.
Yang-Ming Zhu

Chapter 7. Failure-Modes-Based Code Reading

Abstract
Software source code is the most frequently read software artifact. This chapter surveys the most common code functionality and evolvability failure modes and their root causes and devises the failure-modes-based code reading that uses the common code failure modes and root causes to guide code reading. The chapter ends with an example to illustrate the application of the reading techniques in practice.
Yang-Ming Zhu

Chapter 8. Failure-Modes-Based Usability Reading

Abstract
Software can fail due to poor usability, and focusing on usability is the easiest and cheapest way to improve the user’s perceived system quality. This chapter surveys the software usability failure modes and root causes and discusses the failure-modes-based usability reading techniques to detect and remove the software usability deficiency.
Yang-Ming Zhu

Chapter 9. Failure-Modes-Based Test Reading

Abstract
Preventive measures, corrective actions, and compensating provisions associated with failure modes and root causes are often captured during software failure mode and effects analysis (FMEA). To complete the loop, this chapter shows how the software FMEA outcome can be used to guide test design and test reading, and devises the FMEA-based test reading techniques to ensure the correctness and effectiveness of preventive measures, corrective actions, and compensating provisions are verified.
Yang-Ming Zhu

Chapter 10. Conclusion

Abstract
Failure-modes-based software reading uses failure modes to guide readers what to look for, root causes as cues where to look, and mitigations as prompts to check whether any features are missing or inadequate. The idea is codified as reading techniques that prescribe steps to conduct reading and detect defects. The family of reading techniques is risk-driven and intended to surface critical defects. It is advised that the reading techniques shall be used complementarily to other reading techniques.
Yang-Ming Zhu

Backmatter

Weitere Informationen

Premium Partner

    Bildnachweise