All Rights for the images reserved to mugley photostream from flickr, if you keep them,please keep the credit.

A Bluetooth module, that establishes the communication between the Central Node and the Tags Node, allowing the Central Node to identify and sense tags. This module is responsible of scanning desired objects and estimate their proximity. Moreover, this module estabilishes the comunication channel between the Client Application Module and the Central Node used to sense their proximity to eachother and to forward notifications to the Client Application Module.
 

A Web Server module, that implements the web interface used to configure the Central Node. Through this, the user is able to manage system configuration such as creating events, tagging objects, searching for courses and indicate the obejct-course relations. Furthermore the module enables starting/stopping a scan, editing notification settings.


 

A Client Application Module running on the User Interface Node, that comunicates to the Central Node through the Bluetooth module. It has the same functionalities of the Web Server module and it is also capable of showing notifications coming from the Notification module.

 

A Database module, that is responsible for system data and the database located in the Central Node. This module stores data coming from the Web Server module or the User Interface Node, and return them back when necessary. This module also offers the Core module a series of functions to get consistent data for the processing phase.

 

A Notification module that, starting from the processing phase outputs made by the Central Node, provides the corresponding message to the User Interface Node (or to the Secondary User Interface).

 

A Core module, that is responsible for cooperation and coordination of the other modules.
It's also responsible for the processing phase which, depending on informations coming from the Bluetooth module and data coming from the Database module, decides which objects the user needs, understanding if something has to be added or removed.
Based on the previous elaboration, the core module assigns the task of notify the user to the Notification module.

This module is also responsible for updating course schedules once a day (or when the internet connection is available).


 

SOFTWARE ARCHITECTURE

Smyb Ambient intelligence: technology and design