Abstract

Domain-Specific Languages (DSLs) serve a wide variety of purposes in the development of complex applications. The Internet of Things (IoT) brings additional complexity to software development due to its inherent distribution and inclusion of a massive number of heterogeneous devices (sensors and actuators). The process of developing software architectures for IoT involves the interaction of several components that play distinct roles. In this paper, we propose a language called BIoTA (Buildout IoT Application Language), a DSL whose objective is to assist and streamline the building of software architectures for IoT. The specification and implementation of the BIoTA language involve a grammar and a compiler, responsible for syntax and semantic analysis, as well as code generation. They facilitate the formalization of software architectures using automata, which would otherwise be created in an informal and ad-hoc manner to address specific IoT scenarios. We developed an IDE (Integrated Development Environment) capable of reading and creating software architectures using the BIoTA language. With the BIoTA IDE, we demonstrate three examples of software architectures for IoT smart applications in public buildings, irrigation, and parking. The IDE also makes it possible to export architectures to a software distribution package pattern based on containers (Docker Compose) for future deployment.

Highlights

  • DDomain-Specific Languages (DSLs) may assist the development of a wide variety of complex applications

  • We summarize the main contributions of this paper as: 1) The BIoTA DSL Language provides a framework and streamlines the development of Internet of Things (IoT) software architectures

  • This paper proposed BIoTA, a new domain-specific language that allows the creation of software architectures for IoT applications, facilitating the work of software developers and architects

Read more

Summary

INTRODUCTION

DDomain-Specific Languages (DSLs) may assist the development of a wide variety of complex applications.

RELATED WORK
VISUALIZATION COMPONENTS
THE BIoTA LANGUAGE
BIoTA IDE
Findings
DISCUSSION AND CHALLENGES
CONCLUSION
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call