Modeling and Specification
of Bootstrapping and Registration Design
Patterns for IoT Applications
Mohamed Hadj Kacem
(B) , Imen Tounsi, and Najeh Khalfi
ReDCAD laboratory, University of Sfax, Sfax, Tunisia
mohamed.hadjkacem@isimsf.rnu.tn, imen.tounsi@redcad.org
http://www.redcad.org/members/hadjkacemm/,
http://www.redcad.org/members/imen.tounsi/
Abstract. The architectures of software systems are becoming more
complex, large, and dynamic. The design of these architectures allows
architects to master building complex software systems. But, their informal description, may give rise to ambiguity, their understanding becomes
more and more difficult and leads to the incorrect implementation of
these software systems. There are many solutions allowing software architecture design. In this paper, we use software design patterns as a solution. This is due to their reusable software elements. Our principal objective is to propose other alternatives to the informal visual description of
software architectures. In past work, we have studied Service Oriented
Architectures. We used SOA design patterns with standard formal notations. This work is a continuation to the past one. We apply our approach
on design patterns for the Internet of Things. We introduce a refinementbased approach for modeling IoT design patterns. It takes advantage of
graphical modeling and formal method. It is organized around two main
axes. The first axis is to provide modeling solutions in conformance with
the UML standard language. The second axis covers the general specification of design pattern models with the Event-B method. As a result, we
propose a design support tool for IoT architectures based on IoT design
patterns. It allows modeling of correct-by-design software systems.
Keywords: Design patterns · UML modeling · Event-B method ·
Pattern modeling · Formal specification
1 Introduction
The Internet of Things (IoT) is a complex domain of application that allows
objects to exist on the Internet. Creating systems in this domain is a challenge
because it involves both software and hardware, sensing and actuating devices,
a communication infrastructure, in addition to storage constraints. For this,
a variety of IoT design patterns have been proposed in various categories to
address variety of issues [7]. They propose solutions for common and recurring
c
The Author(s) 2020
M. Jmaiel et al. (Eds.): ICOST 2020, LNCS 12157, pp. 55–66, 2020.
https://doi.org/10.1007/978-3-030-51517-1_5
of Bootstrapping and Registration Design
Patterns for IoT Applications
Mohamed Hadj Kacem
(B) , Imen Tounsi, and Najeh Khalfi
ReDCAD laboratory, University of Sfax, Sfax, Tunisia
mohamed.hadjkacem@isimsf.rnu.tn, imen.tounsi@redcad.org
http://www.redcad.org/members/hadjkacemm/,
http://www.redcad.org/members/imen.tounsi/
Abstract. The architectures of software systems are becoming more
complex, large, and dynamic. The design of these architectures allows
architects to master building complex software systems. But, their informal description, may give rise to ambiguity, their understanding becomes
more and more difficult and leads to the incorrect implementation of
these software systems. There are many solutions allowing software architecture design. In this paper, we use software design patterns as a solution. This is due to their reusable software elements. Our principal objective is to propose other alternatives to the informal visual description of
software architectures. In past work, we have studied Service Oriented
Architectures. We used SOA design patterns with standard formal notations. This work is a continuation to the past one. We apply our approach
on design patterns for the Internet of Things. We introduce a refinementbased approach for modeling IoT design patterns. It takes advantage of
graphical modeling and formal method. It is organized around two main
axes. The first axis is to provide modeling solutions in conformance with
the UML standard language. The second axis covers the general specification of design pattern models with the Event-B method. As a result, we
propose a design support tool for IoT architectures based on IoT design
patterns. It allows modeling of correct-by-design software systems.
Keywords: Design patterns · UML modeling · Event-B method ·
Pattern modeling · Formal specification
1 Introduction
The Internet of Things (IoT) is a complex domain of application that allows
objects to exist on the Internet. Creating systems in this domain is a challenge
because it involves both software and hardware, sensing and actuating devices,
a communication infrastructure, in addition to storage constraints. For this,
a variety of IoT design patterns have been proposed in various categories to
address variety of issues [7]. They propose solutions for common and recurring
c
The Author(s) 2020
M. Jmaiel et al. (Eds.): ICOST 2020, LNCS 12157, pp. 55–66, 2020.
https://doi.org/10.1007/978-3-030-51517-1_5
