IoTSuite: A Framework to Design, Implement, and Deploy IoT Applications
-
Upload
pankesh-patel -
Category
Technology
-
view
408 -
download
1
Transcript of IoTSuite: A Framework to Design, Implement, and Deploy IoT Applications
![Page 1: IoTSuite: A Framework to Design, Implement, and Deploy IoT Applications](https://reader036.fdocuments.in/reader036/viewer/2022082722/589b7f071a28ab8e5b8b576f/html5/thumbnails/1.jpg)
IoTSuite: A Framework to Design, Implement, and Deploy IoT Applications{Saurabh Chauhan, Pankesh Patel, Ashish Sureka}1; Flavia C. Delicato2; Sanjay Chaudhary 3
1ABB Corporate Research, India; 2Federal University of Rio de Janeiro, Brazil; 3Ahmedabad University
• IoTSuite provides a set of modelling languages and integrates automation techniques at different life-cycle phases.
• Early results demonstrate that IoTSuite reduces development effort for IoT application development compared to existing approaches.
Conclusions1. P. Patel and D. Cassou, “Enabling high-level application development for the internet of things”, Journal of
Systems and Software, vol. 103, pp. 62 – 84, 2015. 2. S. Chauhan, P. Patel, F. Delicato, and S. Chaudhary, “A development framework for programming cyber-
physical systems”, 2nd International Workshop on Software Engineering for Smart Cyber-Physical Systems (SEsCPS), co-located with ICSE 2016.
3. IoTSuite is available at URL: https://github.com/pankeshlinux/IoTSuite/wiki
References
• Heterogeneity• Types of Entities (e.g., Sensors, Actuators, Storage,
End-user interface, Storage, Processing, Tags)• Interaction modes (e.g., publish/subscribe, request/
response, periodic, command, notify)• Device properties (e.g., memory, mobile, processing
constraints)• Communication protocols (e.g., MQTT, CoAP)• Language Platforms (e.g., Android, JavaSE, Node.js).• Different data formats (e.g., JSON, XML, SensML).
• Different Life-cycle Phases• Design, Implementation, Deployment
Aim: Enable IoT application development with minimal effort by developers.
Research Motivation and Aim• Safety: • Fire detection application: It detects fire by
analyzing data from Temperature Sensor and SmokeSensor. In case of fire, residences are notified on their smart phone. Additionally, residents are their neighbors are informed through alarm.
• Comfort:• Personalized HVAC: It regulates temperature
according to resident’s preference. Based on this, Heater is set by Temperature Regulator.
• Situation Awareness: • Dashboard: It generates the current environment
status such as temperature, humidity, and outside temperature by interacting with Yahoo Weather Service.
Demo Application: Smart Home
Smart Home Application ImplementationEntities Component
(model)Interaction
mode Runs on
Sensor
Temperature (AM20302) Periodic Raspberry Pi
Humidity (AM203020) Periodic Raspberry Pi
Smoke (MQ2) Event-driven Arduino
Actuator
Heater (using 16 X 2 LCD) Command Raspberry Pi
Alarm (using buzzer) Command Raspberry Pi
Tag Badge Reader (RFID-RD522) Event Raspberry Pi
Web Service Yahoo Weather Req./Resp. Yahoo Server
End User Interaction
End User App Notify Android PhoneDashboard Periodic Desktop
Storage Database Server (MySQL) Req./Resp. Microsoft Cloud
Computation Proximity & others
Event, Command, Req./Resp.
Desktop
Approach S A T WS EU ST Comp. TotalGPL 51 40 9 19 211 36 267 633
Node-RED 51* 40* 9* 0 39 14 118 271
IoTSuite 40 (Domain. Spec.)+29(Arch. Spec.)+42(Deploy Spec.)+ 14(User Interaction
Spec.)+26(App. Logic Code)+36(User Interface Code)
188
Comparison of existing approaches: Lines of code required to develop smart home application
Notes:• *Nodes are not available in Node-RED library (flows.nodered.
org/) till February 29, 2016. • S (Sensor), A (Actuator), T (Tag), WS (Web Service), EU (End
User Application), ST (Storage), Comp. (Computational Service).
Dataflow of Smart Home Application
Early Results Application Development using IoTSuite