Abstract
IoT architecture and design patterns document the successes in IoT systems and software design. Although these patterns are often described based on well-accepted common description forms such as the Gang of Four (GoF), Pattern-Oriented Software Architecture (POSA), and Canonical forms, IoT patterns occasionally adopt a unique description form to capture IoT-specific aspects. Such heterogeneity in the description makes it difficult to understand, compare, apply, and verify various IoT patterns in systems and software development processes. To mitigate these issues and provide recommendations on IoT pattern descriptions to the IoT and pattern communities, we conducted an in-depth analysis of the descriptions of the 61 IoT patterns described in 18 papers identified by a systematic literature review. We first analyzed the description forms and sections currently adopted in IoT patterns. We found that about a quarter of IoT patterns are immature and are not well described. Of the well-documented IoT patterns, almost half adopt common pattern forms. “Related Pattern (See also)” is the most used section followed by “Problem” and “Solution.” The high number of adoptions of “Related Pattern” indicates that many IoT patterns can be utilized to constitute large solutions. Then we identified IoT-specific description sections as well as commonalities and differences compared with other types of patterns. “Inspired by” is used to specify general patterns as a basis of the target IoT pattern. A comparison between IoT and security patterns showed that “Problem,” “Solution,” “Related Patterns,” and “Known Uses” are identified as typical sections, whereas “Consequences” is less familiar to IoT pattern descriptions. The IoT and pattern communities should further investigate IoT patterns’ usefulness in IoT systems and software development as well as identify missing IoT-specific aspects to be documented.
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.