GUI Failures of In-Vehicle Infotainment: Analysis, Classification, Challenges, and Capabilities

With the growth of complexity in modern automotive infotainment systems, graphical user interfaces become more and more sophisticated, and this leads to various challenges in software testing. Due to the enormous amount of possible interactions, test engineers have to decide, which test aspects to focus on. In this paper, we examine what types of failures can be found in graphical user interfaces of automotive infotainment systems, and how frequently they occur. In total, we have analyzed more than 3,000 failures, found and fixed during the development of automotive infotainment systems at Audi, Bosch, and Mercedes-Benz. We applied the Orthogonal Defect Classification for categorizing these failures. The difficulties we faced when applying this classification led us to formulating requirements for an own classification scheme. On this basis, we have developed a hierarchical classification scheme for failures grounded on common concepts in software engineering, such as Model-View-Controller and Screens. The results of the application of our classification show that 62% of the reports describe failures related to behavior, 25% of the reports describe failures related to contents, 6% of the reports describe failures related to design, and 7% of the reports describe failures to be categorized. An outlined capability of the results is the support for fault seeding approaches which leads to the challenge of tracing the found failures to the correspondent faults. Keywords-domain specific failures; GUI based software; invehicle infotainment system; failure classification; fault seeding.

[1]  Linshu Duan,et al.  Model-based testing of automotive HMIs with consideration for product variability , 2012 .

[2]  A. Jefferson Offutt,et al.  An Approach to Fault Modeling and Fault Seeding Using the Program Dependence Graph , 1997, J. Syst. Softw..

[3]  Sara Stoecklin,et al.  Creating a reusable GUI component , 2002, Softw. Pract. Exp..

[4]  Jeffrey M. Voas,et al.  A 'Crystal Ball' for Software Liability , 1997, Computer.

[5]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[6]  Elena Dubrova,et al.  Fault Tolerant Design : An Introduction , 2013 .

[7]  Paolo Tonella,et al.  Empirical Validation of a Web Fault Taxonomy and its usage for Fault Seeding , 2007, 2007 9th IEEE International Workshop on Web Site Evolution.

[8]  Ning Li,et al.  Classification of Software Defect Detected by Black-Box Testing: An Empirical Study , 2010, 2010 Second World Congress on Software Engineering.

[9]  Ram Chillarege,et al.  Orthogonal defect classification , 1996 .

[10]  Boris Beizer,et al.  Software testing techniques (2. ed.) , 1990 .

[11]  Armin Biere,et al.  Enforcer - Efficient Failure Injection , 2006, FM.

[12]  Jean-Claude Laprie,et al.  Dependability of computer systems: concepts, limits, improvements , 1995, Proceedings of Sixth International Symposium on Software Reliability Engineering. ISSRE'95.

[13]  Penelope A. Brooks,et al.  An Initial Study of Customer-Reported GUI Defects , 2009, 2009 International Conference on Software Testing, Verification, and Validation Workshops.

[14]  Chao Liu,et al.  Failure proximity: a fault localization-based approach , 2006, SIGSOFT '06/FSE-14.

[15]  Fevzi Belli,et al.  Event-Oriented, Model-Based GUI Testing and Reliability Assessment - Approach and Case Study , 2012, Adv. Comput..

[16]  Reidar Conradi,et al.  Results and Experiences from an Empirical Study of Fault Reports in Industrial Projects , 2006, PROFES.

[17]  Atif M. Memon,et al.  An Initial Characterization of Industrial Graphical User Interface Systems , 2009, 2009 International Conference on Software Testing Verification and Validation.

[18]  Amrit L. Goel,et al.  Software Reliability Models: Assumptions, Limitations, and Applicability , 1985, IEEE Transactions on Software Engineering.

[19]  Wilhelm Hasselbring,et al.  Research issues in software fault categorization , 2007, SOEN.

[20]  Robert B. Grady,et al.  Practical Software Metrics for Project Management and Process Improvement , 1992 .

[21]  Gregg Rothermel,et al.  Selecting a Cost-Effective Test Case Prioritization Technique , 2004, Software Quality Journal.

[22]  Jessica Chen,et al.  Specification-based Testing for Gui-based Applications , 2002, Software Quality Journal.

[23]  Mashud Kabir A fault classification model of modern automotive infotainment system , 2009, 2009 Applied Electronics.

[24]  Lionel C. Briand,et al.  Is mutation an appropriate tool for testing experiments? , 2005, ICSE.

[25]  George J. Schick,et al.  An Analysis of Competing Software Reliability Models , 1978, IEEE Transactions on Software Engineering.

[26]  Carsten Bock Model-Driven HMI Development: Can Meta-CASE Tools do the Job? , 2007, 2007 40th Annual Hawaii International Conference on System Sciences (HICSS'07).