Test-driven development as a reliable embedded software engineering practice

7Citations
Citations of this article
14Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Due to embedded co-design considerations, testing embedded software is typically deferred after the integration phase. Contrasting with the current embedded engineering practices, Test-Driven Development (TDD) promotes testing software during its development, even before the target hardware becomes available. Principally, TDD promotes a fast feedback cycle in which a test is written before the implementation. Moreover, each test is added to a test suite, which runs at every step in the TDD cycle. As a consequence, test-driven code is well tested and maintainable. Still, embedded software has some typical properties which impose challenges to apply the TDD cycle. Essentially, uploading software to target is generally too time-consuming to frequently run tests on target. Secondary issues are hardware dependencies and limited resources, such as memory footprint or processing power. In order to deal with these limitations, four methods have been identified and evaluated. Furthermore, a number of relevant design patterns are discussed to apply TDD in an embedded environment. © 2014 Springer-Verlag Berlin Heidelberg.

Cite

CITATION STYLE

APA

Cordemans, P., Van Landschoot, S., Boydens, J., & Steegmans, E. (2014). Test-driven development as a reliable embedded software engineering practice. Studies in Computational Intelligence, 520, 91–130. https://doi.org/10.1007/978-3-642-40888-5_4

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free