Reflective Praxis Thoughts on engineering and software development

Enqueuing Embedded Events

Most of my software development career has been in the embedded domain, a subset of software development that sometimes feels like it lags industry trends by a decade or more. One area where embedded has definitely lagged is test-driven development. James Grenning (one of the original signatories of the Agile Manifesto) has been pushing that particular cause for years with mixed success. For the last few years, my former colleague Matt Chernosky has been writing some really useful, practical guides to embedded TDD at electronvector.com. I recently wrote a guest piece for Matt’s blog discussing an architectural pattern for event-based embedded systems that makes embedded TDD a little easier. The core idea is to use an event queue and dispatching event loop to decouple parts of the system from each other. It’s not exactly a novel idea. But it’s one that probably isn’t as widely used in embedded systems as it should be. You can find the whole post (and links to working source code) at http://www.electronvector.com/blog/avoiding-mocks-by-enqueuing-events.