Chapter Two - Uncertainty-Wise Testing of Cyber-Physical Systems

Abstract As compared with classical software/system testing, uncertainty-wise testing explicitly addresses known uncertainty about the behavior of a System Under Test (SUT), its operating environment, and interactions between the SUT and its operational environment, across all testing phases, including test design, test generation, test optimization, and test execution, with the aim to mainly achieve the following two goals. First, uncertainty-wise testing aims to ensure that the SUT deals with known uncertainty adequately. Second, uncertainty-wise testing should be also capable of learning new (previously unknown) uncertainties such that the SUT's implementation can be improved to guard against newly learned uncertainties during its operation. The necessity to integrate uncertainty in testing is becoming imperative because of the emergence of new types of intelligent and communicating software-based systems such as Cyber-Physical Systems (CPSs). Intrinsically, such systems are exposed to uncertainty because of their interactions with highly indeterminate physical environments. In this chapter, we provide our understanding and experience of uncertainty-wise testing from the aspects of uncertainty-wise model-based testing, uncertainty-wise modeling and evolution of test ready models, and uncertainty-wise multiobjective test optimization, in the context of testing CPSs under uncertainty. Furthermore, we present our vision about this new testing paradigm and its plausible future research directions.

[1]  Lionel C. Briand,et al.  Environment modeling and simulation for automated testing of soft real-time embedded software , 2013, Software & Systems Modeling.

[2]  Lionel C. Briand,et al.  Using simulation to empirically investigate test coverage criteria based on statechart , 2004, Proceedings. 26th International Conference on Software Engineering.

[3]  Richard H. Carver,et al.  Replay and testing for concurrent programs , 1991, IEEE Software.

[4]  Aamer Nadeem,et al.  A state-based approach to integration testing based on UML models , 2007, Inf. Softw. Technol..

[5]  Charles J. Colbourn,et al.  Test prioritization for pairwise interaction coverage , 2005, ACM SIGSOFT Softw. Eng. Notes.

[6]  Houssam Abbas,et al.  Robustness-guided temporal logic testing and verification for Stochastic Cyber-Physical Systems , 2014, The 4th Annual IEEE International Conference on Cyber Technology in Automation, Control and Intelligent.

[7]  Myra B. Cohen,et al.  An orchestrated survey of methodologies for automated software test case generation , 2013, J. Syst. Softw..

[8]  Arnaud Gotlieb,et al.  Cost-effective test suite minimization in product lines using search techniques , 2015, J. Syst. Softw..

[9]  Lionel C. Briand,et al.  Facilitating the transition from use case models to analysis models: Approach and experiments , 2013, TSEM.

[10]  Gary McGraw,et al.  Generating Software Test Data by Evolution , 2001, IEEE Trans. Software Eng..

[11]  R. Mall,et al.  Automatic test case generation using unified modeling language (UML) state diagrams , 2008, IET Softw..

[12]  A. Tversky,et al.  Prospect Theory : An Analysis of Decision under Risk Author ( s ) : , 2007 .

[13]  Antonia Bertolino,et al.  Using Spanning Sets for Coverage Testing , 2003, IEEE Trans. Software Eng..

[14]  A. Jefferson Offutt,et al.  Automatically detecting equivalent mutants and infeasible paths , 1997 .

[15]  Lionel C. Briand,et al.  Generating Test Data from OCL Constraints with Search Techniques , 2013, IEEE Transactions on Software Engineering.

[16]  Mariëlle Stoelinga,et al.  Model-based testing of stochastic systems with IOCO theory , 2016, A-TEST@SIGSOFT FSE.

[17]  Tao Yue,et al.  Uncertainty-wise evolution of test ready models , 2017, Inf. Softw. Technol..

[18]  Mark Harman,et al.  A Theoretical and Empirical Study of Search-Based Testing: Local, Global, and Hybrid Search , 2010, IEEE Transactions on Software Engineering.

[19]  Carolyn L. Talcott,et al.  Cyber-Physical Systems and Events , 2008, Software-Intensive Systems and New Computing Paradigms.

[20]  Kalyanmoy Deb,et al.  A fast and elitist multiobjective genetic algorithm: NSGA-II , 2002, IEEE Trans. Evol. Comput..

[21]  David Notkin,et al.  Editorial—looking back , 2013, TSEM.

[22]  A. Jefferson Offutt,et al.  Generating Tests from UML Specifications , 1999, UML.

[23]  Dong Zhou,et al.  Translation techniques in cross-language information retrieval , 2012, CSUR.

[24]  Christian Brecher,et al.  Cyber-Physical Systems: Foundations, Principles and Applications , 2016 .

[25]  S. A. Sahaaya Arul Mary,et al.  Factor oriented requirement coverage based system test case prioritization of new and regression test cases , 2009, Inf. Softw. Technol..

[26]  Timothy Alan Budd,et al.  Mutation analysis of program test data , 1980 .

[27]  Lionel C. Briand,et al.  A Systematic Review of the Application and Empirical Investigation of Search-Based Test Case Generation , 2010, IEEE Transactions on Software Engineering.

[28]  Baoding Liu,et al.  Uncertainty Theory - A Branch of Mathematics for Modeling Human Uncertainty , 2011, Studies in Computational Intelligence.

[29]  Yuanyuan Zhang,et al.  Search-based software engineering: Trends, techniques and applications , 2012, CSUR.

[30]  Juhani Latvakoski,et al.  Time Simulation Methods for Testing Protocol Software Embedded in Communicating Systems , 1999, IWTCS.

[31]  William Feller,et al.  An Introduction to Probability Theory and Its Applications , 1951 .

[32]  Aitor Arrieta,et al.  Automatic generation of test system instances for configurable cyber-physical systems , 2016, Software Quality Journal.

[33]  Phil McMinn,et al.  Search‐based software test data generation: a survey , 2004, Softw. Test. Verification Reliab..

[34]  Takeru Kuroiwa,et al.  Testing Environment for CPS by Cooperating Model Checking with Execution Testing , 2016, KES.

[35]  Mark Harman,et al.  Regression testing minimization, selection and prioritization: a survey , 2012, Softw. Test. Verification Reliab..

[36]  Lothar Thiele,et al.  Conformance testing for cyber-physical systems , 2012, TECS.

[37]  Bruno Legeard,et al.  A taxonomy of model‐based testing approaches , 2012, Softw. Test. Verification Reliab..

[38]  Hareton K. N. Leung,et al.  A survey of combinatorial testing , 2011, CSUR.

[39]  Sanford Friedenthal,et al.  A Practical Guide to SysML: The Systems Modeling Language , 2008 .

[40]  Shaoying Liu,et al.  Generating test data from state‐based specifications , 2003, Softw. Test. Verification Reliab..

[41]  David J. Sheskin,et al.  Handbook of Parametric and Nonparametric Statistical Procedures , 1997 .

[42]  Tarik Nahhal,et al.  Coverage-guided test generation for continuous and hybrid systems , 2009, Formal Methods Syst. Des..

[43]  Byoungju Choi,et al.  Risk-based test case prioritization using a fuzzy expert system , 2016, Inf. Softw. Technol..

[44]  A. Tversky,et al.  Prospect theory: analysis of decision under risk , 1979 .

[45]  Gregg Rothermel,et al.  Test Case Prioritization: A Family of Empirical Studies , 2002, IEEE Trans. Software Eng..

[46]  Lionel C. Briand,et al.  Environment modeling with UML/MARTE to support black-box system testing for real-time embedded systems: methodology and industrial case studies , 2010, MODELS'10.

[47]  Gordon Fraser,et al.  Property relevant software testing with model-checkers , 2006, SOEN.

[48]  Mark Harman,et al.  Search Algorithms for Regression Test Case Prioritization , 2007, IEEE Transactions on Software Engineering.

[49]  Yi Qin,et al.  SIT: Sampling-based interactive testing for self-adaptive apps , 2016, J. Syst. Softw..

[50]  David B. Knoester,et al.  Automatically exploring how uncertainty impacts behavior of dynamically adaptive systems , 2011, 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011).

[51]  Danda B. Rawat,et al.  Cyber-Physical Systems: From Theory to Practice , 2015 .

[52]  Lionel C. Briand,et al.  aToucan: An Automated Framework to Derive UML Analysis Models from Use Case Models , 2015, TSEM.

[53]  Heinrich C. Mayr,et al.  Enhancing requirements engineering by natural language based conceptual predesign , 1999, IEEE SMC'99 Conference Proceedings. 1999 IEEE International Conference on Systems, Man, and Cybernetics (Cat. No.99CH37028).

[54]  Tim Weilkiens,et al.  Systems engineering with SysML / UML - modeling, analysis, design , 2007 .

[55]  Melanie Mitchell,et al.  An introduction to genetic algorithms , 1996 .

[56]  Myungchul Kim,et al.  Design for testability of protocols based on formal specifications , 1996 .

[57]  Lionel C. Briand,et al.  Coverage‐based regression test case selection, minimization and prioritization: a case study on an industrial system , 2015, Softw. Test. Verification Reliab..

[58]  Antonia Bertolino,et al.  Scope-aided test prioritization, selection and minimization for software reuse , 2017, J. Syst. Softw..

[59]  Gregg Rothermel,et al.  Prioritizing test cases for regression testing , 2000, ISSTA '00.