Abstract
This thesis explores the idea of how to use physical objects with digital functionality to interact and communicate with each other in order to assist people with carrying out their everyday activities. The main contribution of this thesis is the proposition of the Open Object concept and its respective supporting framework.
An Open Object is a physical object that is capable of network connectivity
enabling it to (a) expose and share its capabilities to the outside environment
including people and other objects; (b) request the use of capabilities from
other objects or external services when needed; and (c) allow people to modify
or introduce new functionalities, effectively changing the object’s behaviour.
This is to be contrasted with existing object or service oriented models whose
functionality, although exposed and accessible, is not normally open to changes
from the outside.
Basic Open Objects are then used as building blocks to construct assemblies
of objects that interact and communicate with each other to manage themselves
independently and work as a single entity, which we call Open Super-Object. The
key issue of Open Super-Objects is how they can be best constructed through
the specification of rules that control and coordinate their interactions. This leads to a general approach of architecting, specifying and implementing Open
Objects in such a way that the overall coordination of more complex objects is
supported by composing the capabilities of simpler objects, regardless of their
internal implementation and structure.
Throughout the thesis, Open Objects are presented through a series of scenarios
illustrating how the openness of simple and Open Super-Objects can be specified and implemented. However, to investigate the practical value of Open Objects, we also present and evaluate a prototype implementation of a
eal-world scenario. In this scenario, an Open Super-Object situated in an office
environment notifies people of the availability of a co-worker. We also aggregate
a collection of methodologies for implementing different standard computing and software patterns to produce a lightweight Open Object system. We conclude the thesis with a summary of the achievements and a discussion of future work, in particular how Open Objects can be used as a platform to support end-user development.
An Open Object is a physical object that is capable of network connectivity
enabling it to (a) expose and share its capabilities to the outside environment
including people and other objects; (b) request the use of capabilities from
other objects or external services when needed; and (c) allow people to modify
or introduce new functionalities, effectively changing the object’s behaviour.
This is to be contrasted with existing object or service oriented models whose
functionality, although exposed and accessible, is not normally open to changes
from the outside.
Basic Open Objects are then used as building blocks to construct assemblies
of objects that interact and communicate with each other to manage themselves
independently and work as a single entity, which we call Open Super-Object. The
key issue of Open Super-Objects is how they can be best constructed through
the specification of rules that control and coordinate their interactions. This leads to a general approach of architecting, specifying and implementing Open
Objects in such a way that the overall coordination of more complex objects is
supported by composing the capabilities of simpler objects, regardless of their
internal implementation and structure.
Throughout the thesis, Open Objects are presented through a series of scenarios
illustrating how the openness of simple and Open Super-Objects can be specified and implemented. However, to investigate the practical value of Open Objects, we also present and evaluate a prototype implementation of a
eal-world scenario. In this scenario, an Open Super-Object situated in an office
environment notifies people of the availability of a co-worker. We also aggregate
a collection of methodologies for implementing different standard computing and software patterns to produce a lightweight Open Object system. We conclude the thesis with a summary of the achievements and a discussion of future work, in particular how Open Objects can be used as a platform to support end-user development.
Original language | English |
---|---|
Qualification | Ph.D. |
Awarding Institution |
|
Supervisors/Advisors |
|
Award date | 1 Jun 2015 |
Publication status | Unpublished - 2015 |
Keywords
- Internet of Things
- Distributed Computing
- Web of Things