Advanced Testing of Systems-of-Systems, Volume 1
Theoretical Aspects
Inbunden, Engelska, 2023
2 099 kr
Beställningsvara. Skickas inom 10-15 vardagar
Fri frakt för medlemmar vid köp för minst 249 kr.As a society today, we are so dependent on systems-of-systems that any malfunction has devastating consequences, both human and financial. Their technical design, functional complexity and numerous interfaces justify a significant investment in testing in order to limit anomalies and malfunctions.Based on more than 40 years of practice in the development and testing of systems, including safety-critical systems, this book discusses development models, testing methodologies and techniques, and identifies their advantages and disadvantages.Pragmatic and clear, this book displays many examples and references that will help you improve the quality of your systemsof-systems efficiently and effectively and lead you to identify the impact of upstream decisions and their consequences.Advanced Testing of Systems-of-Systems 1 is complemented by a second volume dealing with the practical implementation and use of the techniques and methodologies proposed here.
Produktinformation
- Utgivningsdatum2023-01-03
- Mått161 x 240 x 21 mm
- Vikt1 025 g
- FormatInbunden
- SpråkEngelska
- Antal sidor320
- FörlagISTE Ltd and John Wiley & Sons Inc
- ISBN9781786307491
Tillhör följande kategorier
Bernard Homès is the founder of ISTQB, AST and the CFTL, senior member of the IEEE Standards Association and president of TESSCO sas. He has published several recognized books on software testing, standards and ISTQB Advanced v2007 and v2012 syllabi.
- Dedication and Acknowledgments xiiiPreface xvChapter 1 Introduction 11.1 Definition 11.2 Why and for who are these books? 31.2.1 Why? 31.2.2 Who is this book for? 41.2.3 Organization of this book 51.3 Examples 51.4 Limitations 71.5 Why test? 71.6 MOA and MOE 81.7 Major challenges 91.7.1 Increased complexity 91.7.2 Significant failure rate 121.7.3 Limited visibility 121.7.4 Multi-sources and complexity 131.7.5 Multi-enterprise politics 141.7.6 Multiple test levels 161.7.7 Contract follow-up, measures, reporting and penalties 181.7.8 Integration and test environments 191.7.9 Availability of components 201.7.10 Combination and coverage 211.7.11 Data quality 211.7.12 Flows, pivots and data conversions 221.7.13 Evolution and transition 231.7.14 History and historization 231.7.15 Impostors 24Chapter 2 Software Development Life Cycle 272.1 Sequential development cycles 282.1.1 Waterfall 292.1.2 V-cycle 302.1.3 Spiral and prototyping 322.1.4 Challenges of sequential developments 342.2 Incremental development cycles 342.2.1 Challenges of incremental development 352.3 Agile development cycles 352.3.1 Agile Manifesto 362.3.2 eXtreme Programming 392.3.3 Challenges of iterative cycles 402.3.4 Lean 472.3.5 DevOps and continuous delivery 492.3.6 Agile development challenges 522.4 Acquisition 532.5 Maintenance 542.6 OK, what about reality? 55Chapter 3 Test Policy and Test Strategy 593.1 Test policy 593.1.1 Writing test policy 603.1.2 Scope of the test policy 603.1.3 Applicability of the test policy 613.2 Test strategy 613.2.1 Content of a test strategy 633.2.2 Test strategies and Taylorism 653.2.3 Types of test strategies 663.2.4 Test strategy and environments 703.3 Selecting a test strategy 713.3.1 “Completeness” of the strategy 713.3.2 Important points in the strategy 723.3.3 Strategy monitoring 733.3.4 Shift left, costs and time 743.3.5 “Optimal” strategy 763.3.6 Ensuring success 773.3.7 Why multiple test iterations? 783.3.8 Progress forecast 803.3.9 Continuous improvements 81Chapter 4 Testing Methodologies 834.1 Risk-based tests (RBT) 834.1.1 RBT hypothesis 844.1.2 RBT methodology 844.1.3 RBT versus RRBT 904.1.4 Reactions to risks 904.1.5 Risk computation 914.1.6 RBT synthesis 974.1.7 Additional references 974.2 Requirement-based tests (TBX) 974.2.1 TBX hypothesis 984.2.2 TBX methodology 994.2.3 TBX calculation 994.2.4 TBX synthesis 1004.3 Standard-based (TBS) and systematic tests 1014.3.1 TBS hypothesis 1014.3.2 TBS calculation 1014.3.3 TBS synthesis 1024.4 Model-based testing (MBT) 1024.4.1 MBT hypothesis 1034.4.2 MBT calculation 1044.4.3 MBT synthesis 1044.5 Testing in Agile methodologies 1054.5.1 Agile “test” methodologies? 1054.5.2 Test coverage 1054.5.3 Hypothesis 1124.5.4 Calculation methods 1144.5.5 Synthesis 1164.6 Selecting a multi-level methodology 1164.6.1 Hypothesis 1174.6.2 Calculation 1184.7 From design to delivery 119Chapter 5 Quality Characteristics 1215.1 Product quality characteristics 1225.2 Quality in use 1255.3 Quality for acquirers 1255.4 Quality for suppliers 1265.5 Quality for users 1265.6 Impact of quality on criticality and priority 1275.7 Quality characteristics demonstration 1285.7.1 Two schools 1285.7.2 IADT proofs 1295.7.3 Other thoughts 130Chapter 6 Test Levels 1316.1 Generic elements of a test level 1326.1.1 Impacts on development cycles 1336.1.2 Methods and techniques 1346.1.3 Fundamental principles 1346.2 Unit testing 1376.3 Component integration testing 1396.3.1 Types of interfaces to integrate 1406.3.2 Integration challenges 1406.3.3 Integration models 1416.3.4 Hardware–software integration tests 1426.4 Component tests 1436.5 Component integration tests 1446.6 System tests 1456.7 Acceptance tests or functional acceptance 1476.8 Particularities of specific systems 1486.8.1 Safety critical systems 1486.8.2 Airborne systems 1486.8.3 Confidentiality and data security 149Chapter 7 Test Documentation 1517.1 Objectives for documentation 1527.2 Conformity construction plan (CCP) 1537.3 Articulation of the test documentation 1537.4 Test policy 1547.5 Test strategy 1557.6 Master test plan (MTP) 1567.7 Level test plan 1587.8 Test design documents 1597.9 Test case specification 1607.10 Test procedure specification 1607.11 Test data specifications 1617.12 Test environment specification 1617.13 Reporting and progress reports 1617.14 Project documentation 1627.15 Other deliverables 163Chapter 8 Reporting 1658.1 Introduction 1658.2 Stakeholders 1678.3 Product quality 1688.4 Cost of defects 1688.5 Frequency of reporting 1708.6 Test progress and interpretation 1708.6.1 Requirements coverage 1718.6.2 Risk coverage 1728.6.3 Component or functional coverage 1748.7 Progress and defects 1758.7.1 Defect identification 1768.7.2 Defects fixing 1778.7.3 Defect backlog 1778.7.4 Number of reopened defects 1798.8 Efficiency and effectiveness of test activities 1808.9 Continuous improvement 1818.9.1 Implementing continuous improvements 1818.10 Reporting attention points 1848.10.1 Audience 1848.10.2 Usage 1858.10.3 Impartiality 1858.10.4 Evolution of reporting 1868.10.5 Scrum reporting 1878.10.6 KANBAN reporting 1888.10.7 Test design reporting 1888.10.8 Test execution reporting 1898.10.9 Reporting software defects 1908.10.10 UAT progress reporting 1948.10.11 Reporting for stakeholders 194Chapter 9 Testing Techniques 1979.1 Test typologies 1979.1.1 Static tests and reviews 1989.1.2 Technical tests 1989.2 Test techniques 1999.3 CRUD 2009.4 Paths (PATH) 2009.4.1 Operation 2009.4.2 Coverage 2049.4.3 Limitations and risks 2049.5 Equivalence partitions (EP) 2049.5.1 Objective 2079.5.2 Operation 2079.5.3 Coverage 2079.5.4 Limitations and risks 2079.6 Boundary value analysis (BVA) 2079.6.1 Objective 2089.6.2 Operation 2089.6.3 Coverage 2089.6.4 Limitations and risks 2089.7 Decision table testing (DTT) 2089.7.1 Objective 2099.7.2 Operation 2099.7.3 Coverage 2129.7.4 Limitations and risks 2129.8 Use case testing (UCT) 2129.8.1 Objective 2129.8.2 Operation 2139.8.3 Coverage 2139.8.4 Limitations and risks 2139.9 Data combination testing (DCOT) 2149.9.1 Objective 2149.9.2 Operation 2149.9.3 Coverage 2149.9.4 Challenge 2149.10 Data life cycle testing (DCYT) 2159.10.1 Objective 2159.10.2 Operation 2159.10.3 Coverage 2159.10.4 Challenge 2159.11 Exploratory testing (ET) 2169.11.1 Objective 2169.11.2 Operation 2169.11.3 Coverage 2179.11.4 Limitations and risks 2179.12 State transition testing (STT) 2189.12.1 Objective 2189.12.2 Operation 2199.12.3 Coverage 2199.13 Process cycle testing (PCT) 2199.13.1 Objective 2199.13.2 Operation 2199.13.3 Coverage 2209.13.4 Limitations and risks 2209.14 Real life testing (RLT) 2219.14.1 Objective 2219.14.2 Operation 2219.14.3 Coverage 2229.14.4 Limitations and risks 2229.15 Other types of tests 2239.15.1 Regression tests or non-regression tests (NRTs) 2239.15.2 Automated tests 2249.15.3 Performance tests 2259.15.4 Security tests 2269.16 Combinatorial explosion 2279.16.1 Orthogonal array testing (OAT) 2289.16.2 Classification tree testing (CTT) 2299.16.3 Domain testing (DOM) 2309.16.4 Built-in tests (BIT, IBIT, CBIT and PBIT) 231Chapter 10 Static Tests, Reviews and Inspections 23310.1 What is static testing? 23510.2 Reviews or tests? 23610.2.1 What is a review? 23610.2.2 What can be subjected to reviews? 23610.3 Types and formalism of reviews 23710.3.1 Informal or ad hoc reviews 23910.3.2 Technical reviews 23910.3.3 Checklist-based reviews 24010.3.4 Scenario-based reviews 24010.3.5 Perspective-based reviews (PBRs) 24110.3.6 Role-based reviews 24110.3.7 Walkthrough 24110.3.8 Inspections 24110.3.9 Milestone review 24210.3.10 Peer review 24210.4 Implementing reviews 24210.5 Reviews checklists 24310.5.1 Reviews and viewpoint 24310.5.2 Checklist for specifications or requirements review 24410.5.3 Checklist for architecture review 24510.5.4 Checklist for high-level design review 24710.5.5 Checklist for critical design review (CDR) 24810.5.6 Checklist for code review 25010.6 Defects taxonomies 25110.7 Effectiveness of reviews 25210.8 Safety analysis 253Terminology 255References 263Index 269Summary of Volume 2 271