Reference Paper
Flavio Corradini, Arianna Fedeli, Fabrizio Fornari, Andrea Polini and Barbara Re, FloWare: An Approach for IoT Support and Application Development, Enterprise, Business-Process and Information Systems Modeling, 421, pp. 350-365, Springer, 2021.

FloWare is a novel model-driven approach proposed to reduce the effort required by experts to build IoT applications. It proposes to covers all the stages of IoT applications construction, starting from the modelling to the development phase.

The FloWare approach, as described in Figure, requires the involvement of different actors in different phases for modelling and developing the application. Actors follow rigorous steps and use specific tools, entities (repository and database) and artefacts to ensure IoT application’s right creation.

All the elements that compose the FloWare approach

More in general, FloWare aims to combine the Software Product Line paradigm with the Flow-based programming paradigm’s potential.
Software Product Line is a modelling paradigm that allows model IoT applications using models, mainly Feature Models.
Flow-based programming is a paradigm that allows building IoT applications more efficiently than traditional methodologies.

From a Feature model to an IoT application

FloWare Usage

For the design of the Feature models, we recommend using Feature IDE, an Eclipse Modelling Tool. It allows designing an IoT system feature model to represent an IoT scenario (for example, a Smart room) and IoT device feature model and verify the validity of the models designed.

To cover all the remaining phases of the FloWare approach, we provide FloWare Core, an open-source Javascript component. Specific information regarding FloWare Core, installing and using it, are available at the repository link.