Beim Testen von Embedded-Software stößt man an eine Grenze, die Anwendungsentwickler nie erreichen: Ein guter Teil des Verhaltens steckt in Hardware, die knapp, langsam oder schlicht noch nicht auf dem Schreibtisch ist. Teams, die zuverlässige Firmware ausliefern, lösen das auf dieselbe Weise — den Großteil der Logik testen sie ohne Zielhardware, sie schreiben Code, der sich ohne Board ausführen lässt, und halten die echte Hardware für die Fälle frei, die sie wirklich brauchen.
Die Kurse bauen diese Gewohnheit von Grund auf: Testgrundlagen für Hardware-Software-Systeme, testgetriebene Entwicklung unter knappen Ressourcen und Continuous Integration, die die Testsuite bei jeder Änderung laufen lässt statt erst in der Nacht vor dem Release. Das Ergebnis ist Firmware, die man ändern kann, ohne den Atem anzuhalten.
