Unit 4
Unit 4
• The sixth step in the IoT design methodology is to define the IoT level
for the system. In Chapter-1, we defined five IoT deployment levels.
Step 7: Functional View Specification
• The seventh step in the IoT design methodology is to define the
Functional View. The Functional View (FV) defines the functions of
the IoT systems grouped into various Functional Groups (FGs). Each
Functional Group either provides functionalities for interacting with
instances of concepts defined in the Domain Model or provides
information related to these concepts.
Step 8: Operational View Specification
• The eighth step in the IoT design methodology is to define the
Operational View Specifications. In this step, various options
pertaining to the IoT system deployment and operation are defined,
such as, service hosting options, storage options, device options,
application hosting options, etc
Step 9: Device & Component Integration
• The ninth step in the IoT design methodology is the integration of the
devices and components.
Step 10: Application Development
• The final step in the IoT design methodology is to develop the IoT
application.
Home Automation Case Study
Step:1 - Purpose & Requirements
Applying this to our example of a smart home automation system, the
purpose and requirements for the system may be described as follows:
• Purpose : A home automation system that allows controlling of the lights in a home
remotely using a web application.
• Behavior : The home automation system should have auto and manual modes. In auto
mode, the system measures the light level in the room and switches on the light when it
gets dark. In manual mode, the system provides the option of manually and remotely
switching on/off the light.
• System Management Requirement : The system should provide remote monitoring and
control functions.
• Data Analysis Requirement : The system should perform local analysis of the data.
• Application Deployment Requirement : The application should be deployed locally on
the device, but should be accessible remotely.
• Security Requirement : The system should have basic user authentication capability.
Step:2 - Process Specification
Step 3: Domain Model Specification
•Services provide an interface for
interacting with the physical entity.
•Services access the on-device resource or
network resource to obtain information
about the physical entity or perform
actuation upon the physical entity.
1. State service
2. Mode service
3. Controller service: that runs as a native
service on the device.
Step 4: Information Model Specification
Information model first list the virtual entities and then defines their attributes and relations:
1. Light appliance with attribute – light state
2. Room with attribute – light level
Step 5: Service Specifications
1. Mode service: a RESTful web service that sets the 2. State service: a RESTful web service that sets light
mode (PUT request) or retrieves the current mode (GET appliance state to on/off (PUT request) or retrieves the
request). current state (GET request).
The mode is updated to/or retrieved from Database. The state is updated to/or retrieved from Database.
3. Controller service: Controller service runs as a
native service on the device.
I. When in auto mode, the controller service
monitors the light level and switches the light
on/off and updates the status in the status
database.
II. When in manual mode, the controller service
retrieves the current state from the database and
switches the light on/off .
Step 6: IoT Level Specification
Step 7: Functional View Specification
1. IoT device maps to the device FG (sensors and actuators 4. Web Services map to services FG (web Services).
devices computing devices) and the management FG (device 5. Database maps to the management FG (Database Management) and
management). security FG (database security).
2. Resources map to the device FG (on-devices resource) and 6. Application maps to application FG (web application, application and
communication FG (communication API and protocols). database servers), management FG (app management) and security
3. Controller service maps to the services FG (native service). FG (app security).
Step 8: Operational View Specification
Step 9: Device & Component Integration
Step 10: Application Development
• Auto
• Controls the light appliance automatically based on the lighting
conditions in the room
• Light
• When Auto mode is off, it is used for manually controlling the
light appliance.
• When Auto mode is on, it reflects the current state of the light
appliance.
Case study on IoT system
for
Weather monitoring
Outline
• Behavior: The end nodes send the data to the cloud there data is aggregated and
analyzed.
• Data Analysis Requirement: The system should perform analysis of the data to
aggregate the data and make predictions.
• Application Deployment Requirement: A cloud based application is to be used for
visualizing the data.
• Security Requirement: The system should have basic authentication capability.
Step 2: Process Specification
Read Sensor
Store value
Wait
Step 3: Domain Model Specification
• The third step in the IoT design methodology is to define the Domain
Model. The domain model describes the main concepts, entities and
objects in the domain of IoT system to be designed.
• Domain model defines the attributes of the objects and relationships
between objects.
• Domain model provides an abstract representation of the concepts,
objects and entities in the domain, independent of any specific
technology or platform.
• With the domain model,the IoT system designers can get an
understanding of the IoT domain for which the system is to be
designed.
Step 3: Domain Model Specification
• Physical Entity: Physical Entity is a discrete and identifiable entity in
the physical environment. The IoT system provides information about
the Physical Entity( using sensors) or performs actuation upon the
physical entity.
• Virtual entity: virtual entity is a representation of the Physical Entity
in the digital world. For each physical entity, there is a Virtual Entity
in the domain model.
• Device: device provides a medium for interactions between physical
entities and virtual entities. Devices are either attached to physical
entities or placed near physical entities. Devices are used to gather
information about physical entities
Step 3: Domain Model Specification
Resource: Resources are software components which can be either "on-
device" or " network-resources". On-device resources are hosted on the
device and include software components that either provide information on
or enable actuation upon the physical entity to which the device is attached.
Network resources include the software components that are available in
network (such as database).
Service: Services provide an interface for interacting with the physical
entity. Services access the resources hosted on the device or the network
resources to obtain the information about the physical entity or perform
actuation upon the physical entity.
Step 3: Domain Model Specification
User
Invokes/
subscribes
Virtual Entity Physical Entity
Service Environment relates to Environment monitor
associated with
Exposes
Resource
associated with
Device
Hosts Mini-Computer
attached to attached to
Network On-Device
Resource Resource
Sensor Sensor Sensor Sensor
Temp sensor Pressure Humidity Light sensor
Step 4: Information Model Specification
Virtual Entity:
Environment
Entity type:
Environment
Read Sensor
Store value
Wait
Sevice
Name: Controller
Type: Native
Output
Schedule
Temperature
Interval:
Pressure
Every 15 sec
Humidity
Light
Step 6: IoT Level Specification
• The sixth step in the IoT design methodology is to define the IoT level
for the system.
Step 6: IoT Level Specification
Step 7: Functional View Specification
• The seventh step in the IoT design methodology is to define the
Functional View. The Functional View (FV) defines the functions of
the IoT systems grouped into various Functional Groups (FGs).
Each Functional Group either provides functionalities for
interacting with instances of concepts defined in the Domain
Model or provides information related to these concepts.
Step 7: Functional View Specification
1. IoT device maps to the device FG (sensors and computing devices) and
the management FG (device management).
REST Communication 2. Resources map to the device FG (on-devices resource) and
communication FG (communication API and protocols).
3. Controller service maps to the services FG (native service).
REST
Services 4. Web Services map to services FG (web Services).
Application
Web App Application Server Database Server Observer Analytics
Device
Sensor Computing Device
Step 7: Functional View Specification
Application
Application
Management Native Services Web Services Authentication
Database Management
Communication Authorization
Device Management
Communication API Communication Protocols
Device
Application Management:
Django App Management Authentication: Web App, DB
Application
DB Management: Management Native Services Web Services Authentication Authorization: Web App, DB
MySQL DB Management
Device Management:
Raspberry Pi Device Management
Database
Management Communication Authorization Communication API: REST APIs
Computing Device: Raspberry Pi Communication Protocols:
Sensor: Temp, Humidity, Pressure Link layer: 802.11
and Light sensors Device
Network layer: IPv4/IPv6
Management Communication API Communication Protocols Transport: TCP
Application: HTTP
Device