Test-driven development strategies applied to embedded software

Test-Driven Development (TDD) can contribute to the overall quality of embedded software. However applying TDD in an embedded environment is not obvious. Hardware dependencies, a slow upload process and limited resources are major constraints developing in a TDD fashion. To deal with these limitatio...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Cordemans, Piet, Boydens, Jeroen, Van Landschoot, Sille, Steegmans, Eric
Format: Tagungsbericht
Sprache:eng
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Test-Driven Development (TDD) can contribute to the overall quality of embedded software. However applying TDD in an embedded environment is not obvious. Hardware dependencies, a slow upload process and limited resources are major constraints developing in a TDD fashion. To deal with these limitations four strategies were defined. According to Test on host, hardware dependencies are replaced by mocks, which enables developing tests and embedded software on the host system. Consequently, verifying the expected behavior of mocks is necessary. Therefore Test on target migrates tests, a testing framework and software to the target embedded system. Another approach called Remote testing employs Inter-Process Communication (IPC). This enables tests running on host, while the code under test executes on target. Finally, both tests and a part of the embedded software can run on host, delegating hardware-related calls to the target with IPC. This strategy is called Remote prototyping. A mathematical model was developed to evaluate these strategies using a single relevant metric, namely the number of required code uploads.