194 research outputs found
Middleware Technologies for Cloud of Things - a survey
The next wave of communication and applications rely on the new services
provided by Internet of Things which is becoming an important aspect in human
and machines future. The IoT services are a key solution for providing smart
environments in homes, buildings and cities. In the era of a massive number of
connected things and objects with a high grow rate, several challenges have
been raised such as management, aggregation and storage for big produced data.
In order to tackle some of these issues, cloud computing emerged to IoT as
Cloud of Things (CoT) which provides virtually unlimited cloud services to
enhance the large scale IoT platforms. There are several factors to be
considered in design and implementation of a CoT platform. One of the most
important and challenging problems is the heterogeneity of different objects.
This problem can be addressed by deploying suitable "Middleware". Middleware
sits between things and applications that make a reliable platform for
communication among things with different interfaces, operating systems, and
architectures. The main aim of this paper is to study the middleware
technologies for CoT. Toward this end, we first present the main features and
characteristics of middlewares. Next we study different architecture styles and
service domains. Then we presents several middlewares that are suitable for CoT
based platforms and lastly a list of current challenges and issues in design of
CoT based middlewares is discussed.Comment: http://www.sciencedirect.com/science/article/pii/S2352864817301268,
Digital Communications and Networks, Elsevier (2017
Middleware Technologies for Cloud of Things - a survey
The next wave of communication and applications rely on the new services
provided by Internet of Things which is becoming an important aspect in human
and machines future. The IoT services are a key solution for providing smart
environments in homes, buildings and cities. In the era of a massive number of
connected things and objects with a high grow rate, several challenges have
been raised such as management, aggregation and storage for big produced data.
In order to tackle some of these issues, cloud computing emerged to IoT as
Cloud of Things (CoT) which provides virtually unlimited cloud services to
enhance the large scale IoT platforms. There are several factors to be
considered in design and implementation of a CoT platform. One of the most
important and challenging problems is the heterogeneity of different objects.
This problem can be addressed by deploying suitable "Middleware". Middleware
sits between things and applications that make a reliable platform for
communication among things with different interfaces, operating systems, and
architectures. The main aim of this paper is to study the middleware
technologies for CoT. Toward this end, we first present the main features and
characteristics of middlewares. Next we study different architecture styles and
service domains. Then we presents several middlewares that are suitable for CoT
based platforms and lastly a list of current challenges and issues in design of
CoT based middlewares is discussed.Comment: http://www.sciencedirect.com/science/article/pii/S2352864817301268,
Digital Communications and Networks, Elsevier (2017
Towards Run-Time Verification of Compositions in the Web of Things using Complex Event Processing
Following the vision of the Internet of Things, physical world entities are integrated into virtual world things. Things are expected to become active participants in business and social processes. Then, the Internet of Things could benefit from the Web Service architecture like today’s Web does, so Future ser-vice-oriented Internet things will offer their functionality via service-enabled in-terfaces. In previous work, we demonstrated the need of considering the behav-iour of things to develop applications in a more rigorous way, and we proposed a lightweight model for representing such behaviour. Our methodology relies on the service-oriented paradigm and extends the DPWS profile to specify the order with which things can receive messages. We also proposed a static verifi-cation technique to check whether a mashup of things respects the behaviour, specified at design-time, of the composed things. However, a change in the be-haviour of a thing may cause that some compositions do not fulfill its behaviour anymore. Moreover, given that a thing can receive requests from instances of different mashups at run-time, these requests could violate the behaviour of that thing, even though each mashup fulfills such behaviour, due to the change of state of the thing. To address these issues, we present a proposal based on me-diation techniques and complex event processing to detect and inhibit invalid invocations, so things only receive requests compatible with their behaviour.Work partially supported by projects TIN2008-05932, TIN2012-35669, CSD2007-0004 funded by Spanish Ministry MINECO and FEDER; P11-TIC-7659 funded by Andalusian Government; and Universidad de Málaga, Campus de Excelencia Internacional AndalucĂa Tec
Choral: Object-Oriented Choreographic Programming
We present Choral, the first choreographic programming language based on
mainstream abstractions. The key idea in Choral is a new notion of data type,
which allows for expressing that data is distributed over different roles. We
use this idea to reconstruct the paradigm of choreographic programming through
object-oriented abstractions. Choreographies are classes, and instances of
choreographies are objects with states and behaviours implemented
collaboratively by roles.
Choral comes with a compiler that, given a choreography, generates an
implementation for each of its roles. These implementations are libraries in
pure Java, whose types are under the control of the Choral programmer.
Developers can then modularly compose these libraries in their own programs, in
order to participate correctly in choreographies. Choral is the first
incarnation of choreographic programming offering such modularity, which
finally connects more than a decade of research on the paradigm to practical
software development.
The integration of choreographic and object-oriented programming yields other
powerful advantages, where the features of one paradigm benefit the other in
ways that go beyond the sum of the parts. The high-level abstractions and
static checks from the world of choreographies can be used to write concurrent
and distributed object-oriented software more concisely and correctly. We
obtain a much more expressive choreographic language from object-oriented
abstractions than in previous work. For example, object passing makes Choral
the first higher-order choreographic programming language, whereby
choreographies can be parameterised over other choreographies without any need
for central coordination. Together with subtyping and generics, this allows
Choral to elegantly support user-defined communication mechanisms and
middleware
Decomposition-based Verification of Global Compliance in Process Choreographies
The verification of global compliance rules (GCR) in process choreographies (e.g., partner-spanning quality assurance in supply chains) is crucial and challenging due to the restricted visibility of the private processes of the collaborating partners. This paper provides a novel algorithm that decomposes global compliance rules into assertions that can be verified by the partners in a distributed way without revealing any private process details. The decomposition is based on transitivity properties of the underlying GCR specification. This work uses GCR based on antecedent and occurrence patterns and illustrates the transitivity properties based on their specification in first order predicate logic. It is formally shown that the original GCR can be reconstructed from the assertions, which ensures the viability of the approach. The algorithms are prototypically implemented and applied to several scenarios. The ability of checking global compliance constitutes a fundamental pillar of any approach implementing process choreographies with multiple partners
- …