Abstract: At Agile2014 in Orlando, you watched a crazy person push around a bright blue cart while mumbling incoherently about how TDD can be used to build software AND hardware. Well... it's a year later and that crazy person is back with a hardware demo that is bigger and much, much better.
In this talk, we'll look at how TDD can be used to build a complete embedded system, from the embedded software to the drivers, right down to the hardware. We'll look at how TDD translates to hardware development and discuss the lessons I've learned about thread management, timing, design partitioning, refactoring and testability. The best part is the live demo. We'll start with a real application running on a reprogrammable FPGA platform. From there, we'll change code and tests on the fly, run the tests and display the results from a true embedded system built entirely with TDD.
Learning Outcomes: - * TDD can be used to build entire embedded systems
- * TDD changes how we think about hardware design partitioning and testability
- * unit testing helps us rethink threading and clocking strategies
- * incremental development can be done in hardware
Attachments: