TDD for Embedded C
2020-04-16 18:39:07 UTC
Most useful learnings:
iterative development, speed of testing, finding minor bugs such as typos, then forcing structure.
Concepts v exercises:
Presentation v discussion:
The biggest challenge, timing of the training due to the global impact of COVID-19 and our company's limited adoption of web conferencing tools. Added additional learning curve to participants and instructor. Not a ding on the course, but a challenge to overcome that was handled adeptly.
Exercises and examples are hard to construct due to wide range of developer experience (beginner to expert). With that being said, is there a creative way (without severe dilution) the exercises to student capability. Let the student select the level of challenge to take on to gain the experience in TDD without the burden of also having to be an expert in the language of choice.
Pair programming during the exercises certainly helps and might be the best answer here.
James manages the hands on experience in a creative fashion. Remotely monitoring student work and raising the flag when the student drifts off the wrong path!
already started, to some degree. applied concepts to on target testing for new features to legacy code. standing up new team, new work, and integrating TDD from the start.
Challenges to applying:
working in IDEs, building automated testing capability/infrastructure.
championing the TDD process over 'how work normally gets done', getting buy in from management and technology partners
Found very quickly it was important to refer to the TDD for Embedded C book frequently through the training course. It would be ideal that the students have a local set up running CppUTest, but recognize everyone's system takes time to configure.
Legacy code workshop:
Recommend to others: