Abstract
Due to the widespread proliferation of today’s Internet of Things (IoT), a system designer needs the IoT system and software design patterns to assist in designing scalable and replicable solutions. Patterns are encapsulations of reusable common problems and solutions under specific contexts. Many IoT patterns have been published, such as IoT design patterns and IoT architecture patterns to document the successes (and failures) in IoT systems and software development. However, because these patterns are not well classified, their adoption does not live up to their potential. To understand the reasons, we conducted a systematic literature review. From the 32 identified papers, 143 IoT architecture and design patterns were extracted. We analyzed these patterns according to several characteristics and outlined directions for improvements when publishing and adopting IoT patterns. Of the extracted patterns, 57% are non-IoT patterns, suggesting that IoT systems and software are often designed via conventional architecture and design patterns that are not specific to IoT design. Although most IoT design patterns are applicable to any domain, IoT architecture patterns tend to be domain specific, implying that the unique nature of IoT adoption in specific domains appears at the architecture level. As more domains adopt IoT, the number of domain-specific IoT design patterns should increase. In terms of quality attributes, many IoT patterns address compatibility, security, and maintainability.
Highlights
T HE INTERNET of Things (IoT) is expected to bridge diverse Internet collaborative technologies to enable new services and applications by connecting physical objects
Fourteen papers [18], [21], [23], [26], [27], [35], [37], [39], [41]–[43], [46], [48], [49] only used non-Internet of Things (IoT) patterns. These results indicate that IoT systems and software are often designed via conventional architecture and design patterns that are not specific to IoT design
Are all existing IoT architecture and design patterns really IoT patterns? Of the extracted patterns, 57% are non-IoT patterns, suggesting that IoT systems and software are often designed via conventional architecture and design patterns that are not specific to IoT design
Summary
T HE INTERNET of Things (IoT) is expected to bridge diverse Internet collaborative technologies to enable new services and applications by connecting physical objects Some IoT architecture styles have been studied [5], IoT architecture and design patterns at different abstraction levels are not well classified or researched. Adopting such patterns may not resolve problems or have the desired impact. We distinguished between architecture and design patterns specific to IoT systems and non-IoT patterns that are applicable to any system or software design. We classified these IoT patterns with respect to three characteristics: 1) abstraction level; 2) domain specificity; and 3) quality attributes. We showed that IoT patterns exist but are related to different abstraction levels, domain specificities, and quality attributes.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.