Software Product Quality Control [electronic resource] /
Wagner, Stefan.author.
Quality is not a fixed or universal property of software; it depends on the context and goals of its stakeholders. Hence, when you want to develop a high-quality software system, the first step must be a clear and precise specification of quality. Yet even if you get it right and complete, you can be sure that it will become invalid over time. So the only solution is continuous quality control: the steady and explicit evaluation of a product’s properties with respect to its updated quality goals. This book guides you in setting up and running continuous quality control in your environment. Starting with a general introduction on the notion of quality, it elaborates what the differences between process and product quality are and provides definitions for quality-related terms often used without the required level of precision. On this basis, the work then discusses quality models as the foundation of quality control, explaining how to plan desired product qualities and how to ensure they are delivered throughout the entire lifecycle. Next it presents the main concepts and techniques of continuous quality control, discussing the quality control loop and its main techniques such as reviews or testing. In addition to sample scenarios in all chapters, the book is rounded out by a dedicated chapter highlighting several applications of different subsets of the presented quality control techniques in an industrial setting. The book is primarily intended for practitioners working in software engineering or quality assurance, who will benefit by learning how to improve their current processes, how to plan for quality, and how to apply state-of-the-art quality control techniques. Students and lecturers in computer science and specializing in software engineering will also profit from this book, which they can use in practice-oriented courses on software quality, software maintenance and quality assurance.
Description based upon print version of record.
""Preface""; ""Contents""; ""Chapter 1 Introduction""; ""1.1 Motivation""; ""1.2 How to Read This Book""; ""1.3 Software Quality""; ""1.3.1 Garvin's Quality Approaches""; ""1.3.2 Product Quality vs. Process Quality""; ""1.3.3 Product Quality""; ""1.3.4 Cost of Quality""; ""1.3.5 Dependable Software Systems""; ""1.3.6 Quality Changes Over Time""; ""1.4 Terms and Definitions""; ""1.4.1 Quality Assurance""; ""1.4.2 Quality Models""; ""1.4.3 Quality Evaluation""; ""1.4.4 Software Evolution""; ""1.5 Overview of the SQuaRE Series of Standards""; ""1.5.1 Quality Management""; ""1.5.2 Quality Model""
""1.5.3 Quality Measurement""""1.5.4 Quality Requirements""; ""1.5.5 Quality Evaluation""; ""1.6 Summary and Outline""; ""Chapter 2 Quality Models""; ""2.1 Quality Models Set into Context""; ""2.1.1 A Short History of Software Quality Models""; ""2.1.2 Definitions and Classifications""; ""2.1.3 Definition Models""; ""2.1.4 Assessment Models""; ""2.1.5 Prediction Models""; ""2.1.6 Multi-Purpose Models""; ""2.1.7 Critique""; ""2.1.8 Usage Scenarios""; ""2.1.9 Summary""; ""2.2 Software Measures""; ""2.2.1 Basics""; ""2.2.2 Aggregation""; ""2.3 ISO/IEC 25010""; ""2.3.1 Concepts and Meta-Model""
""2.3.2 Product Quality Model""""2.3.3 Quality in Use Model""; ""2.3.4 Summary and Appraisal""; ""2.4 Quamoco Quality Models""; ""2.4.1 Usage of Quality Models""; ""2.4.2 Concepts""; ""2.4.3 Meta-Model""; ""2.4.4 Product Entities and Product Factors""; ""2.4.5 Measures and Instruments""; ""2.4.6 Quality Aspects: Product Quality Attributes""; ""2.4.7 Quality Aspects: Activity Based or Quality in Use""; ""2.4.8 Tool Support""; ""2.4.9 Summary""; ""2.5 Quality Model Maintenance""; ""2.5.1 Sources for Model Changes""; ""2.5.2 Analysis and Implementation""; ""2.5.3 Test""; ""2.5.4 Checklist""
""2.6 Detailed Examples""""2.6.1 Performance Efficiency Part of the Quamoco Base Model""; ""2.6.2 Web Security Model""; ""2.6.3 Reliability Model""; ""Chapter 3 Quality Planning""; ""3.1 Model Building and Quality Requirements""; ""3.1.1 Step by Step""; ""3.1.2 Example: Web Shop""; ""3.1.3 Example: Instrument Cluster""; ""3.1.4 Checklist""; ""3.1.5 Further Readings""; ""3.2 V&V Planning""; ""3.2.1 Step by Step""; ""3.2.2 Example: Instrument Cluster""; ""3.2.3 Checklist""; ""3.2.4 Further Readings""; ""Chapter 4 Quality Control""; ""4.1 Quality Control Loop""; ""4.1.1 Product Quality Control""
""4.1.2 Tool Support and Dashboards""""4.1.3 Summary""; ""4.2 Quality Evaluation and Measurement""; ""4.2.1 Four Steps""; ""4.2.2 Interpretation Schema""; ""4.3 Walk-Throughs, Reviews and Inspections""; ""4.3.1 Different Techniques""; ""4.3.2 Effectiveness and Efficiency""; ""4.3.3 Automation""; ""4.3.4 Usage""; ""4.3.5 Checklist""; ""4.3.6 Further Readings""; ""4.4 Static Analysis Tools""; ""4.4.1 Different Tools""; ""4.4.2 Clone Detection""; ""4.4.3 Effectiveness and Efficiency""; ""4.4.4 Usage""; ""4.4.5 Checklist""; ""4.4.6 Further Readings""; ""4.5 Testing""; ""4.5.1 Regression Testing""
""4.5.2 Different Techniques""
Includes bibliographical references and index.
Quality is not a fixed or universal property of software; it depends on the context and goals of its stakeholders. Hence, when you want to develop a high-quality software system, the first step must be a clear and precise specification of quality. Yet even if you get it right and complete, you can be sure that it will become invalid over time. So the only solution is continuous quality control: the steady and explicit evaluation of a product’s properties with respect to its updated quality goals. This book guides you in setting up and running continuous quality control in your environment. Starting with a general introduction on the notion of quality, it elaborates what the differences between process and product quality are and provides definitions for quality-related terms often used without the required level of precision. On this basis, the work then discusses quality models as the foundation of quality control, explaining how to plan desired product qualities and how to ensure they are delivered throughout the entire lifecycle. Next it presents the main concepts and techniques of continuous quality control, discussing the quality control loop and its main techniques such as reviews or testing. In addition to sample scenarios in all chapters, the book is rounded out by a dedicated chapter highlighting several applications of different subsets of the presented quality control techniques in an industrial setting. The book is primarily intended for practitioners working in software engineering or quality assurance, who will benefit by learning how to improve their current processes, how to plan for quality, and how to apply state-of-the-art quality control techniques. Students and lecturers in computer science and specializing in software engineering will also profit from this book, which they can use in practice-oriented courses on software quality, software maintenance and quality assurance.
Software engineering.
Management information systems.
Computer science.
Quality control.
Reliability.
Industrial safety.
Software Engineering.
Management of Computing and Information Systems.
Quality Control, Reliability, Safety and Risk.