Chapter 1: IoT Testing Introduction and Quick Start Guide
• A brief history of IoT technology in time and space
• IoT market segments
• A sampling of IoT challenges in development and testing
• IoT examples of development impacts to testing
• Development, testing, and operations: Systems, hardware, software, and communication-integration
• Verification, validation, and testing concepts
• Using integrity levels in IoT devices to allocate V&V/test approaches
• Risk-based development and testing
• Organizational ability levels entering into IoT dev and testing
Chapter 2: IoT Test Planning, Strategy and Software Test Architecture
• Introduction – IoT test planning and strategy
• IoT test planning concepts
• Good enough IoT software and devices
• IoT test planning basics
• General test planning outlines by organization classification
• Pure start-up, single device, and small teams who are trying to stay alive
• Mature groups or growing teams with targeting sales
• Extensive system and mature group with one to more devices
• IoT test planning for procuring organizations: Government, large corporation, and others
• Impact of AI, data and analytics to IoT test planning
• IoT test planning strategy – the traditional life cycle for hardware and software
• IoT Planning for COTS hardware and software testing/integration/V&V
• IoT test budgeting, estimating, and scheduling
• Planning wrap-up: Regression test cases
• IoT test estimation over a life cycle
• Estimating schedules (goes with most cost estimates)
• Estimation of testing size
• Quality, verification, validation, and testing
• IoT strategy and STA: The big picture starting points
• Strategy and basics
• System V&V planning: Start with a combination of strategies
• IoT system (and system of systems) V&V test planning – A conceptual introduction
• Planning the IoT test environment
• Planning use of IoT tooling and automation
• Data analytics with tools
• Detailed test planning (what is needed below the master plans)
• Planning individual tests (what testers should do daily)
• Test planning documentation, presentations, and proposals
• Test - Operations (Ops) impacts
• How does Ops change over time?
• System maintenance, security, and retirement
• Retirement and disposal
• Communication and integration considerations in testing
• IoT operations and maintenance (O&M) with data analytics vs the Edge
• Release deployment
Chapter 3: IoT Security Tests and Test Techniques
• IoT security assessment and testing
• What is cybersecurity?
• Social engineering
• Security inspection and initial attack planning
• Full-scale penetration of the system
• Gain ongoing security access to the system
• Security - To be able to recover and replace
• Introduction to testing, exploration, attacks, patterns and tours
• IoT test techniques, patterns and attacks – Definition
• What if there is no IoT test plan (or any other plans)
Chapter 4: IoT Test Automation Tools and Environments
• Introduction to IoT software test architecture (STA) environments
• Environments and architectures
• Definition of terms for this part
• Classification models of basic IoT device architectures
• Classification map of IoT device architectures supporting software test
• Classification of IoT device environments needing test
• Defining IoT development support architectures
• IoT test architecture and environment viewpoints
• Example of current large scale test architecture-environment solutions
• An IoT support environment: SODA - IoT edge data analytics and statistics
• Test environment (Labs) creation
• Level of environment vs V&V criticality
• Testing the test environment
• Test automation and tooling: An IoT necessity
• Evolve into automation-tooling to survive IoT by learning to recognize when automation is the best choice
• Automation: Test tooling areas
• Math-based concepts for system and software level testing
• Beyond basic automation: Attack and risk-based software test planning with exploration concepts – add tooling for attacks
• Model-based testing with automation for IoT
• Test execution automation – Pointer to category concept
• Sample risks caused by insufficient test architectures and environments
• Future research needs
• Summary
Appendix
Appendix A: Tools pointer to web sites
Appendix B: How to grow your personal tester skills
Appendix C: Automation situations the newbie tester or company may face
Appendix D: IoT example supporting standards
Appendix E: Skills for IoT test teams
Appendix F: How to grow your test planning skills
Appendix G: How to grow your personal IoT test design skill - capabilities
Appendix H: Situations the newbie tester or company may face in test design
Jon Hagar is a senior tester with 40 years’ experience in software development and testing. He has supported software product design, integrity, integration, reliability, measurement, verification, validation, and testing on various projects and software domains (environments). He has an M.S. degree in Computer Science with specialization in Software Engineering and Testing from Colorado State University and a B.S. Degree in Math with specialization in Civil Engineering and Software from Metropolitan State College of Denver, Colorado. Jon has worked in business analysis, systems, and software engineering, specializing in testing, verification and validation. Projects he has supported include the domains of embedded, mobile devices, IoT, PC/IT systems, and test lab and tool development. Currently, Jon works as a consultant for Grand Software Testing, LLC.
Jon has taught hundreds of classes and tutorials in software engineering, systems engineering, and testing throughout the industry and universities. He has published numerous articles on software reliability, testing, test tools, formal methods, mobile, and embedded systems. He is the author of the book Software Test Attacks to Break Mobile and Embedded Devices and contributor to books on Agile testing and test automation. Jon makes presentations regularly at industry working groups and conferences. Jon most recently has been working on: combinatorial testing, test automation, handheld-mobile devices, IoT security testing, and error taxonomies for IoT/embedded systems.
To succeed, teams must assure the quality of IoT systems. The world of technology continually moves from one hot area to another; this book considers the next explosion—of IoT—from a quality testing viewpoint.
You'll first gain an introduction to the Internet of Things (IoT), V&V, and testing. Next, you'll be walked through IoT test planning and strategy over the full life cycle, including the impact of data analytics and AI. You will then delve deeper into IoT security testing and various test techniques, patterns, and more. This is followed by a detailed study of IoT software test labs, architecture, environments and AI.
There are many options for testing IoT qualities based on the criticality of the software and risks involved; each option has positives, negatives, as well as cost and schedule impacts. The book will guide start-up and experienced teams into these paths and help you to improve the testing and quality assessment of IoT systems.
You will:
Understand IoT software test architecture and planning
Master IoT security testing and test techniques
Study IoT test lab automation and architectures
Review the need for IoT security, data analytics, AI, Neural Networks and dependability using testing and V&V