A Taxonomy of IoT Client Architectures

This article defines a taxonomy of software architecture options, derived from industry projects, for Internet of Things (IoT) devices, from the most limited sensing devices to high-end devices featuring fully fledged OSs and developer frameworks. A plethora of architecture options exists for IoT devices, offering very different levels of software development capabilities. These capabilities can significantly affect IoT systems’ end-to-end architecture and topology.