Abstract
Hardware and software development of embedded systems interdependently gear into each other. Even more so if the device under development is intended for use in critical care facilities such as intensive care units. Especially in this case, safety measures and risk mitigation techniques are implemented using both hardware and software components. Thus applying hardware and software testing approaches in combination is inevitable as well.
The increasing utilization of test domain-specific languages (Test DSLs), code generators and keyword-driven interpreters tends to raise the level of abstraction in test development. This approach aims to enhance productivity by generating executable tests from a non-programming language created for describing test cases. A second goal is to increase coverage by generating tests for as many as possible combinations of input values (black box test) or for all reasonable paths of a program flow (white box test). In combination with hardware-supported signal generation and fault injection this can be a very powerful strategy for testing safety-critical embedded devices. This article introduces an example of this strategy - the usage of a keyword-driven testing technique in cooperation with additional test hardware - in the context of an embedded medical device development, all the while emphasizing the benefit of combining different approaches. It discusses the utilization of commercial off-the-shelf (COTS) testing hardware as well as the application of an in-house developed test box. It also highlights the integration of commercial software - for requirements engineering, test management and continuous integration - with a self-developed testing framework powered by its own keyword-based test DSL.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Nahas, M., Maaita, A.: Choosing Appropriate Programming Language to Implement Software for Real-Time Resource-Constrained Embedded Systems. In: Tanaka, K. (ed.) Embedded Systems - Theory and Design Methodology. InTech (2012) ISBN: 978-953-51-0167-3
Dutt, S., Jamwal, S., Devanand: Object Oriented Vs Procedural Programming in Embedded Systems. International Journal of Computer Science & Communication, IJCSC (2010)
Chatzigeorgiou, A., Stephanides, G.: Evaluating Performance and Power of Object-Oriented Vs. Procedural Programming in Embedded Processors. In: Blieberger, J., Strohmeier, A. (eds.) Ada-Europe 2002. LNCS, vol. 2361, pp. 65–75. Springer, Heidelberg (2002)
Molin, P.: Applying the Object-Oriented Framework Technique to a Family of Embedded Systems. Dept. of Computer Science and Business Administration/Blekinge Institute of Technology (1996)
Schoeberl, M.: Architecture for Object-Oriented Programming Languages. In: Proceedings of the 5th International Workshop on Java Technologies for Real-time and Embedded Systems, JTRES (2007)
IEC 62304 Ed. 1.0, Medical Device Software – Software Life Cycle Processes. IEC Geneva (2006)
Fowler, M.: Domain Specific Languages. Addison-Wesley, Upper Saddle River (2010)
Pfeiffer, M., Pichler, J.: A Comparison of Tool Support for Textual Domain-Specific Languages. In: 8th OOPSLA Workshop on Domain Specific Modeling (2008)
Vasudevan, N., Tratt, L.: Comparative study of DSL tools. In: Workshop on Generative Technologies (2010)
Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Comput. Surv. (2005)
Pajunen, T., Takala, T., Katara, M.: Model-Based Testing with a General Purpose Keyword-Driven Test Automation Framework. In: Software Testing, Verification and Validation Workshops, ICSTW (2011)
IEC 60601-2-24 Ed. 1.0, Medical electrical equipment – Part 2-24: Particular requirements for the safety of infusion pumps and controllers. IEC Geneva (1998)
PC-lint for C/C++, http://www.gimpel.com/html/pcl.html
Motor Industry Research Association: MISRA-C 2004: Guidelines for the Use of the C Language in Critical Systems. Warwickshire UK (2004)
Jenkins, C.I.: http://jenkins-ci.org
Lelli, F., Pautasso, C.: Controlling and Monitoring Devices with REST. In: INGRID 2009 (2009)
Graves, R.: Application of COTS for Early, Low Cost, Avionics System Testbed. NASA (2000)
NUnit, http://www.nunit.org
Xtext, http://www.eclipse.org/Xtext
Team Foundation Server (TFS), http://msdn.microsoft.com/en-us/vstudio/ff637362.aspx
Gupta, P., Surve, P.: Model based approach to assist test case creation, execution, and maintenance for test automation. Association for Computing Machinery, ACM (2011)
Peischl, B., Ramler, R., Ziebermayr, T., Mohacsi, S., Preschern, C.: Requirements and Solutions for Tool Integration in Software Test Automation. In: IARIA (2011)
Kleimola, J.: A RESTful Interface to a Mobile Phone. Helsinki Institute for Information Technology, HIIT (2008)
Guinard, D., Trifa, V.: Towards the Web of Things: Web Mashups for Embedded Devices. In: Proceedings of the International World Wide Web Conferences (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Woskowski, C. (2012). Applying Industrial-Strength Testing Techniques to Critical Care Medical Equipment. In: Ortmeier, F., Daniel, P. (eds) Computer Safety, Reliability, and Security. SAFECOMP 2012. Lecture Notes in Computer Science, vol 7612. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33678-2_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-33678-2_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-33677-5
Online ISBN: 978-3-642-33678-2
eBook Packages: Computer ScienceComputer Science (R0)