21
Research Article A Model of Socially Connected Web Objects for IoT Applications Sajjad Ali , 1 Muhammad Golam Kibria , 1 Muhammad Aslam Jarwar , 1 Hoon Ki Lee, 2 and Ilyoung Chong 1 1 Department of Information and Communications Engineering, Hankuk University of Foreign Studies, Yongin-si, Republic of Korea 2 Electronics and Telecommunications Research Institute (ETRI), Daejeon, Republic of Korea Correspondence should be addressed to Ilyoung Chong; [email protected] Received 2 September 2017; Revised 26 November 2017; Accepted 19 December 2017; Published 28 January 2018 Academic Editor: Nathalie Mitton Copyright © 2018 Sajjad Ali et al. is is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. e Internet of ings (IoT) is evolving with the connected objects at an unprecedented rate, bringing about enormous opportunities for the future IoT applications as well as challenges. One of the major challenges is to handle the complexity generated by the interconnection of billions of objects. However, Social Internet of ings (SIoT), emerging from the conglomeration of IoT and social networks, has realized an efficient way to facilitate the development of complex future IoT applications. Nevertheless, to fully utilize the benefits of SIoT, a platform that can provide efficient services using social relations among heterogeneous objects is highly required. e web objects enabled IoT environment promotes SIoT features by enabling virtualization using virtual objects and supporting the modularity with microservices. To realize SIoT services, this article proposes an architecture that provides a foundation for the development of lightweight microservices based on socially connected web objects. To efficiently discover web objects and reduce the complexity of service provisioning processes, a social relationship model is presented. To realize the interoperable service operations, a semantic ontology model has been developed. Finally, to evaluate the proposed design, a prototype has been implemented based on a use case scenario. 1. Introduction e Internet of ings (IoT) envisions billions of objects connected to the Internet that continuously generate data about the physical environment. Several state-of-the-art applications can be built using the information and services provided by the pervasive and heterogeneous IoT objects. However, building applications based on these objects raises some challenges. Examples include how the growing number of objects will interact or coordinate to render valuable services, how the complexity generated by the coordination of objects can be handled, and how a large amount of diverse data sensed from the surroundings can be managed properly. Numerous promising solutions have been provided to handle the complexity and the heterogeneity of IoT objects. One of the prominent approaches is to develop virtual envi- ronments to resolve the issues caused by the heterogeneous objects. Virtualization has become a key component in many IoT architectures, in the form of either virtual objects or virtual entities. A virtual object (VO) is defined as a digital representation of a real-world object [1] and provides a way for the IoT services to discover and compose features that cannot be achieved directly with a real-world object (RWO). It has been realized that issues such as heterogeneity of dissimilar objects and scalability can be effectively resolved using VOs. Hence, a crucial role of a VO is to bridge the gap between the physical world and the virtual world by hiding the physical characteristics of an IoT device and acquiring and interpreting its data and context. Another way to reduce the complexity caused by a large number of objects is to link these objects in a social network [2], which provides a more exact solution than using a sole individual object. is principle has given birth to the concept of Social Internet of ings (SIoT), which is emerging as a new paradigm with the merger of social networks and IoT [3–7]. It has been realized as an efficient way to facilitate the development of complex future IoT applications. It supports sharing of information generated by Hindawi Wireless Communications and Mobile Computing Volume 2018, Article ID 6309509, 20 pages https://doi.org/10.1155/2018/6309509

A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

Research ArticleA Model of Socially Connected Web Objects for IoT Applications

Sajjad Ali 1 Muhammad Golam Kibria 1 Muhammad Aslam Jarwar 1

Hoon Ki Lee2 and Ilyoung Chong 1

1Department of Information and Communications Engineering Hankuk University of Foreign Studies Yongin-si Republic of Korea2Electronics and Telecommunications Research Institute (ETRI) Daejeon Republic of Korea

Correspondence should be addressed to Ilyoung Chong iychonghufsackr

Received 2 September 2017 Revised 26 November 2017 Accepted 19 December 2017 Published 28 January 2018

Academic Editor Nathalie Mitton

Copyright copy 2018 Sajjad Ali et alThis is an open access article distributed under the Creative CommonsAttribution License whichpermits unrestricted use distribution and reproduction in any medium provided the original work is properly cited

The Internet of Things (IoT) is evolving with the connected objects at an unprecedented rate bringing about enormousopportunities for the future IoT applications as well as challenges One of themajor challenges is to handle the complexity generatedby the interconnection of billions of objects However Social Internet of Things (SIoT) emerging from the conglomeration of IoTand social networks has realized an efficient way to facilitate the development of complex future IoT applications Nevertheless tofully utilize the benefits of SIoT a platform that can provide efficient services using social relations among heterogeneous objects ishighly required The web objects enabled IoT environment promotes SIoT features by enabling virtualization using virtual objectsand supporting the modularity with microservices To realize SIoT services this article proposes an architecture that providesa foundation for the development of lightweight microservices based on socially connected web objects To efficiently discoverweb objects and reduce the complexity of service provisioning processes a social relationship model is presented To realizethe interoperable service operations a semantic ontology model has been developed Finally to evaluate the proposed design aprototype has been implemented based on a use case scenario

1 Introduction

The Internet of Things (IoT) envisions billions of objectsconnected to the Internet that continuously generate dataabout the physical environment Several state-of-the-artapplications can be built using the information and servicesprovided by the pervasive and heterogeneous IoT objectsHowever building applications based on these objects raisessome challenges Examples include how the growing numberof objects will interact or coordinate to render valuableservices how the complexity generated by the coordinationof objects can be handled and how a large amount of diversedata sensed from the surroundings can be managed properly

Numerous promising solutions have been provided tohandle the complexity and the heterogeneity of IoT objectsOne of the prominent approaches is to develop virtual envi-ronments to resolve the issues caused by the heterogeneousobjects Virtualization has become a key component in manyIoT architectures in the form of either virtual objects or

virtual entities A virtual object (VO) is defined as a digitalrepresentation of a real-world object [1] and provides a wayfor the IoT services to discover and compose features thatcannot be achieved directly with a real-world object (RWO)It has been realized that issues such as heterogeneity ofdissimilar objects and scalability can be effectively resolvedusing VOs Hence a crucial role of a VO is to bridge the gapbetween the physical world and the virtual world by hidingthe physical characteristics of an IoT device and acquiringand interpreting its data and context

Another way to reduce the complexity caused by alarge number of objects is to link these objects in a socialnetwork [2] which provides a more exact solution thanusing a sole individual object This principle has given birthto the concept of Social Internet of Things (SIoT) whichis emerging as a new paradigm with the merger of socialnetworks and IoT [3ndash7] It has been realized as an efficientway to facilitate the development of complex future IoTapplications It supports sharing of information generated by

HindawiWireless Communications and Mobile ComputingVolume 2018 Article ID 6309509 20 pageshttpsdoiorg10115520186309509

2 Wireless Communications and Mobile Computing

the people and the devices based on the social relationshipsThese relationships further promote efficient discovery of theobjects and effective service compositions

Let us have a glimpse of the application scenarios inwhichSIoT will make a profound effect on our daily life in thenear future Imagine a group of vehicles that form a mobilesocial network on the move when heading towards the samelocation or when they are bound in a common relationshipVehicles may form diverse social communities for examplesmall cars create a social network to share available parkingspace information or bicycles share information about thevacant paths using a network [8] Vehicles commuting fromhome to office can join a social network to share trafficcongestion experience accident warnings or other commoninformation (eg a meeting plan) with colleagues by access-ing their vehiclesrsquo social network Let us analyze another SIoTuse case where a user enters a public museum with an IoTenvironment which incorporates smart objects that exploitsocial relationships to share information At the entranceto the premises the userrsquos smartphone is prompted with abeacon signal to recommend a service app installationWhenthe user grants the permission an app is installed and asocial agent acquires his profile and friendship details Theapp incorporates a microservice which uses a smartphoneobject to establish a social relationship with the museumvisit service The museum is equipped with a network ofsmart objects that monitor the userrsquos location and provideservices to enhance hisher experience such as personalizingthe displays assisting in the navigation and recommendingthe relevant services

To support the above-mentioned use cases most of thecurrent IoT architectural approaches are not suitable as theyare based on the traditional monolithic approaches whichfurther hinder the development of efficient modular andindependent services that cannot scale well with the increas-ing userrsquos service demands as already witnessed in manystudies [9ndash12] Using monolithic approaches we cannotfully achieve the benefits offered by SIoT including efficientinformation discovery improved scalability and simplifiedinterconnection of objects

These limitations motivate the current paper to definea design for the development of SIoT based services withefficient and lightweight mechanisms to exploit SIoT featuresfor improved service provisioning The proposed design isbased on the microservices concept which promises a moresolid practice of SOA There is no particular definition ofmicroservices architectural style however it is explainedin [13] by Martin Fowler as ldquoan approach to developing asingle application as a suite of small services each runningin its own process and communicating with lightweightmechanisms often an HTTP resource APIrdquo Following themicroservices based proposed design SIoT applications canbe developed deployed and maintained more efficiently andindependently which will promote system modularity andinteroperability

Moreover a SIoT design needs to facilitate the efficientinformation discovery based on the social relationshipsamong objects To achieve this incorporating the existingsocial relationship models in the proposed design can be

useful However applications with intelligent service featuresrequire dynamic object selection Therefore objects need toacquire the ability to infer new relationships for intercon-nection with other objects in the system This view furthermotivates the present article to develop a social relationshipmodel based on the semantic ontologyTheutilized ontology-based approach is highly useful to dynamically infer newsocial relationships for efficient service provisioning

Furthermore to fully achieve the benefits of both theSIoT andmicroservices selecting an IoT environment is nec-essary where not only can the social interconnection amongheterogeneous objects be utilized but also the lightweightservices can be developed to apply these relationships foreffective IoT service provisioning To fulfill this goal theWeb of Objects (WoO) [14] platform has been selectedAccording to the ITU recommendation (ITU-T Y4452) [15]ldquothe Web of Objects (WoO) is a realization way of theIoT services where virtualized objects (ie virtual objects(VOs) and composite virtual objects (CVOs)) are connectedcontrolled and incorporated with resources to facilitate thedevelopment deployment and operation of IoT services onthe World Wide Webrdquo

To exploit the opportunities provided by the above dis-cussed technological advancements the main contributionsare highlighted as follows

(i) This article contributes a novel design based on themicroservices concept with lightweight and modularservices to support the development of SIoT applica-tions The proposed design involves mechanisms toenhance object discovery and to reduce the magni-tude of complexity generated due to the huge numberof objects

(ii) A social relationship ontological model is developedwhich helps identify the hidden and unidentified rela-tionships among objects with reasoning mechanisms

(iii) A use case with the implementation prototype basedon theWoOplatform is developed to exploit the socialrelationship model supporting the proposed designfor efficient IoT service provisioning

Further to support the above contributions virtual objectsserving on real-world objects have been developed whichcan be reusable in other services as well CVOs are imple-mented where each update of the information in the real-world object is reflected in the VO and propagated to theCVO Also the Social IoT notion is incorporated into virtualobjects to provide easy discovery and efficient executionwhile maintaining collaboration using social connectionsMoreover an experimental analysis has been carried out toevaluate the discovery time of VOs and the time required forservice execution with or without social relationships amongvirtual objects

The remainder of this article is organized as follows InSection 2 the relatedwork is described Section 3 presents theproposed design of the social web objects accompanied by thesocial interaction model In Section 4 an IoT environment

Wireless Communications and Mobile Computing 3

use case is explained with the details of the prototype imple-mentation and discussion of the performance evaluationFinally Section 5 provides a conclusion of this paper

2 Related Work

This section presents the related work with respect to theSIoT and microservices Further the significance of bothtechnologies pertaining to the IoT environment has beendiscussed

21 Social Internet ofThings (SIoT) The concept behind SIoTis to enable smart objects to create a social network similarto a human social network The objective is to exploit thesocial relationships among objects in an IoT environmentto facilitate the effective information discovery to promotethe scalability to enhance the interactive communicationbetween objects that are friends and to achieve trustworthi-ness [3]

The initial notion of a social network of objects wasproposed by [16] which discussed how the wireless devicesform social connections on the temporary bases that arecontrolled by the node owners As the work was carriedout before the introduction of IoT it did not considerthe SIoT concept Later studies [5] investigated the objectsrsquosocial interaction where objects formed social networks andcommunicated with each other based on the rules already set

The idea of using theWeb ofThings in a social ecosystemwas presented by [17 18] where things were shared usingthe social network infrastructures for example TwitterFacebook and LinkedIn These implementations consistedof objects that communicated either through the built-inembedded servers or through smart gateways Further inthese settings the web-enabled things owned by a personprovided an interface to hisher social group of friends so thatthey can interact with the things using a social network

Lysis [19] is another good example of Social IoT platformbased on cloud infrastructure It uses the platform as a service(PaaS) model and focuses on the deployment of applicationsin the cloud space However dynamic inferencing of newsocial relationships from existing relationships is not sup-ported by this system Moreover making a modular interop-erable design by employing concepts like microservices andsemantic web technologies is not considered in this work

Paraimpu [20] provided a social Web of Things platformto connect virtual and physical things to the web In thissystem the social concept only relates to humans by provid-ing them with the capability to share things with each otherusing a human social network Also virtual things are notconsidered as VOs but rather viewed as services on other IoTplatforms

Using SIoT at the edge of the network was investigated by[21] In this system an approach was proposed to cope withthe communication delay due to the objects being remotelylocated in the cloud This approach exploits the computingresources at the network edge to deploy virtual objects

The ThingSpeak solution was used as the basis for theimplementation of an early SIoT platform [22]This platformprovided the object social behavior functions incorporated at

the centralized server In this implementation functions suchas the creation and themanagement of the social relationshipswere developedHowever VO conceptwas limited only to therecords in the remote database

Another featured SIoT frameworkwas contributed by [4]This work presented how to combine services devices usersand their social interaction to enable interactivity discoveryand recommendation of services Social relationships havealso been investigated in communities [23] where a proposedframework enables the identification of communities in thesocial networks

Although most of the research contributions in the SIoTdomain incorporate a notion of the social association ofobjects however limited information has been providedabout the social relationship model and the details on howthat can be used by IoT services Furthermore existingapproaches are lacking lightweight andmodularmechanismswhich can be utilized by services to exploit social rela-tionships efficiently In our approach we have developeda semantic ontology-based social relationship model thatprovides the capability to infer new connections in a networkof social objects Another distinction of the proposed systemis a microservices based design that utilizes the developedsocial model to provide lightweight modular simple andinteroperable IoT services

22 Microservices The microservices architecture is emerg-ing as a new trend among the practices of developingdistributed web applications To develop SOA based systemsmicroservices have become a prominent approach in real-world settings [24] In the microservices based architecturalpattern each application incorporates a collection of smallservices which execute independently and use lightweightcommunication mechanisms [9] The microservices are tar-geted for doing one thing well at a time based on theprinciple of single responsibility [25] as defined by RobertC Martine ldquoGather together those things that change forthe same reason and separate those things that change fordifferent reasonsrdquo [26] Also the microservices are conceivedas autonomous entities which means they can be changedand deployed independently of each other without requiringtheir consumers to change [24]

In the last few years several IoT architectural designswere proposed and developed Some of these designs pro-vided innovative features such as the European FP7 projectiCore [27] which proposed a cognitive framework for IoTapplication development This project provided an architec-ture with the concept of virtual objects and their compositesHowever in iCore services are designed using a traditionalSOA based monolithic style whereas the microservicesbased architecture provides a better option to develop IoTservices Furthermore in iCore VOs lack the mechanismsto semantically represent real-world objects (RWOs) whichlimits extensibility and interoperability

To support IoT applications microservices based archi-tectures are being proposed in many research initiatives andapplied in several research projects In [28] microservices areused for M2M applications realizing the fact that monolithicapproaches for M2M cannot provide a real solution Another

4 Wireless Communications and Mobile Computing

work [10] provided an analysis of using microservices archi-tecture for large-scale distributed applications This workdemonstrated that significant benefits can be achieved ascompared to generic SOA approaches when using microser-vices in an IoT platform for smart city applications

Moreover Almanac FP7 EU Project [29] provides smartcity services based on the IoT environment The projectuses microservices to employ scalability in a horizontal andvertical fashion Also in the industry microservices havebecome a solution for developing large-scale applicationsNetflix Pivotal [30] and Amazon use microservices in theirsoftware bases

The increased importance of microservices for the IoTapplications is due to the fact that they simplify complexsystems By dividing a system into smaller parts highercohesion and lower coupling can be achieved which makesit highly scalable In scenarios where requirements keepchanging continuouslymicroservices can helpmake a systemeasily modifiable Moreover the major benefits that areenvisaged when using microservices in an IoT environmentare as follows Microservices leverage scalability to provide ahighly decoupled pattern and can allow scaling individuallyTheir usefulness can be realized as when the demand for therequirement increases the system complexity also rises Inthis case a system can be supported by creating new instancesof existing services Microservices scalability [9] fits in three-dimensional space that is horizontal scalability (typicalscalability) vertical scalability (splitting different individualmicroservices) and 119911-axis scalability (splitting similar thingssuch asDBpartitioning)Microservices architecture supportsa plug-and-play behavior where system components becomeloosely coupled To acquire new functionality or replace afailed service pull the plug from one microservice and pluginto a new microservice [31] One of the major problems thatIoT is facing today is how to deal with the heterogeneityof incompatible solutions To harmonize the heterogeneitysemantic web technologies with microservices are leveragedto provide interoperable exchange and communication ofdata Microservices realize a decentralized and autonomousbehavior operating on their own priorities and scheduleThisway they provide several benefits for being utilized in an IoTdesign

3 The Proposed Design of Social Web Objects

Recently there have been several research efforts [3ndash6 17 2032] for defining the Social IoT This new aspect minimizesthe complexity generated by the communication of billionsof real-world objects and enables sharing of informationThesocial notion can be incorporated into the WoO platformto provide a semantically rich base for IoT applicationsthat can utilize real-world object relationships for efficientinformation discoveryMoreover this section provides a briefintroduction of WoO reference architecture in Section 31A classification of social relationships among web objects(virtual objects and composite virtual objects) is discussedin Section 32 and a social relationship model is presented inSection 33 Further the details of functional components forthe proposed architecture are explained in Section 34

31 Web of Objects (WoO) Reference Architecture To enablethe deployment of IoT services on the World Wide WebWoO provides a reference framework In other words itrealizes the IoT services in such a way that virtualized objectsare interwoven with resources to support the developmentdeployment and operations of IoT services [33 34]TheWoOplatform provides service functionality by merging VOs andfeatures of web applications Moreover the WoO platformuses semantic web technologies to enable interoperabilityamong heterogeneous resourcesThis realization provides thebasis for the composition and harmonization of objects toprovide smart services in an IoT domain Building servicesbased onWoOplatformusing diverse technologies includingmicroservices [35] social networks and semantic web helpsreduce the complexity and fosters the easy and efficientdevelopment of IoT applications

Virtualization has become a major concept in IoT toaddress the heterogeneity of diverse types of physical objectsVO is a digital representation of a real-world object thatcan be anything living or nonliving mobile or stationaryconcrete or immaterial In WoO VO is defined as domain-specific semantic ontology based on the VO informationmodel [36] It is uniquely identified using URI and providesinformation updates on the representative real-world objectOn the other hand WoO also provides a notion of CVOwhich aggregates one or more VOs to enable service fea-tures that satisfy the application requirements CVOs chainsemantically interoperable VOs together The WoO platformincorporates features to efficiently reuse existing VOs andhandles the complexity generated by self-management andcontrol mechanisms [37] In the WoO service level decideswhich CVOs and VOs will take part in creating an objectmashup to fulfill service objectives The service logic is savedin the form of templates and stored in the template repository[38ndash40] The domain expert or knowledge engineer definesthe service templates that are used to instantiate new services

WoO reference architecture is shown in Figure 1 Inthis architecture the service layer handles requests andprovides several management functions whereas the CVOlevel consists of functions to manage and instantiate CVOsor reuse the existing ones based on the provided serviceexecution logic New objects such as sensors are registeredin the WoO platform using a registration function and theirtemplates are generated to make them digitally availablein the form of VOs Another most important aspect isthe semantic representation of data at three-layered WoOarchitecture [23 39] The database at each layer is supportedwith semantic web technologies

32 Types of Social Relationships Previous research [3] onSIoT has derived some basic relationship types amongobjects These relationships are characterized as followsParental Object relationship (POR) exists between the objectsthat belong to the same batch such as objects that are createdin the same production process or at the same time by acommon manufacturer Cowork object relationship (CWOR)is the relationship among objects that are grouped togetherbased on some commonly shared job to be done by themSimilarly colocation object relationship (CLOR) is established

Wireless Communications and Mobile Computing 5

Application A Application C Application B

Service DB

Servicetemplate

Service registory

CVO DB

CVO template

CVO registory

VO DB

VO template

VO registory

Database

WoO service level

Compositevirtual object (CVO) sublevel

Virtual object (VO) sublevel

API APIAPIAPIUser APISe

rvice

leve

lVi

rtual

leve

l

RWO RWORWORWO

IF-1

IF-2

Figure 1 Web of Objects reference architecture

between objects belonging to the same location such ashome or office Different or same types of objects can becombined based on the common location or premises On theother hand Ownership Object Relationship (OOR) is formedamong objects belonging to the same owner Social ObjectRelationship (SOR) is another kind of relationship that iscreated among objects when they come close to each othereither random in time or periodically This relationship canbe envisaged when the owners of objects come into contactwith each other Apart from the above relationships in [41]the authors define theGuardianObject Relationship (GOR) inthe Internet of Vehicles (IoV) scenario where on-board unitsof vehicles become children in relation to the super nodesof Road Side Units This child and parent association givesa special meaning to a new hierarchical relationship

In addition to the relationships defined in other studieswe have identified few more relationships suitable for somediverse scenarios These include Sibling Object Relationship(SIBOR) that is created among objects that belong to agroup of friends or family membersThis relationship amongobjects extracts the property of trustworthiness based on therelationship of their owners Another relationship type is theguest object relationship (GSTOR) which is formed between

objects that belong to the users in the guest role for examplewhen a person visits a friendrsquos home and gets the privilegeas a guest The same can be applied to the objects that movein guest relation (GSTOR) from one place to another theywill have some privilege of accessibility of information ascompared to other objects Stranger Object Relation (STGOR)applies to objects that encounter the presence of each otherin an anonymous environment such as on the go or in thepublic environment Similar to people who meet each othersometimes regularly but are anonymous to each other or arenot fully aware of each other this relationship can be usedamong objects to form different trust levels or to form strictrestrictions to promote secure connections Moreover inservice object relationship (SVOR) objects form a relationshipwhile coordinating in the same service composition to fulfilla service request Generally in the proposed scheme servicerequest execution generates a mashup of objects and objectsthat belong to the same mashup are assumed to be in SVOR

We believe that the above defined new social relation-ships are beneficial in several distinctive scenarios Forexample SIBOR is more useful in scenarios where trustis highly important for establishing a connection Unlikethe more generalized relation POR SIBOR is established

6 Wireless Communications and Mobile Computing

SIBOR

SVOR

STGOR

GSTOR

(i) Sibling Object Relationship (SIBOR)(ii) Service Object Relationship (SVOR)

(iii) Stranger Object Relationship (STGOR)

(v) Parental Object Relationship (POR) [3](vi) Colocation Object Relationship (CLOR) [3]

(vii) Ownership Object Relationship (OOR) [3](iv) Guest Object Relationship (GSTOR)

CVO

VO

MicroservicecomposedIn

relatedTo

hasRelationship

hasRelationship

VO instancehasInstance

Data item

Data stream

acquires

retrieves

Microservice instance

CVO instance

hasInstance

hasInstance

POR

CLOR

OOR

Relationship concepts

Figure 2 Ontological model representing web objectsrsquo relationships

among objects from the same manufacturer having similarfeatures but different behaviors Similarly GSTOR is suitablein scenarios where objects use relationships for privilegedservices Imagine a person as a guest speaker in a conferencewith his smart devices where he can connect to the networkeasily and his personal devices are recognized as a guest(with GSTOR) in the venue network to avail free serviceslike high-speed Internet special notifications and othersStranger Object Relation (STGOR) is used in scenarios whereobjects are on the go and to get some information they haveto compromise with a limited trust level For instance in apublic transit system one mobile node on the move wantsto use crowdsourced information from another mobile nodewhich is not fully trusted Also SVOR is useful in servicecomposition specific scenarios where object mashups areformed to facilitate service requirement and it is also usefulin a particular orchestration of objects

To model information about microservices social webobjects and their relationships a semantic ontological modelhas been developed as depicted in Figure 2 Conceptual-ization of objects and their social relationships in semanticstructures are highly beneficial to infer new connectionsamong a network of objects with the help of reasoningtechniques The ontology facilitates the representation ofobjects as well as what theymeasure in terms of observationstheir processing and functions Web objectsrsquo relationshipontology contains the concepts that define each object interms of a class The data properties are used to representobject values and the object properties are defined to identifythe link between two objects in the ontology Major conceptsin the ontology are microservices CVOs VOs and theirsocial relationships Further microservices have an indi-vidual instance that uniquely defines a microservice objectand associated data with it Similarly CVOs and VOs arealso instantiated and contain data properties to retain theirvalues With the increasing number of objects a semanticontology model is used to perform reasoning function thathelps identify new connections Further to analyze the socialrelationship among objects (such as VOs and CVOs) theirproperties are provided in Table 1

33 Social Relationship Model for Web Objects At each levelof service life cycle objects form a social relationship witheach other to accomplish a service task Codifying the rela-tionship among web objects can provide many benefits suchas efficient information discovery from related objects andbetter composition and reuse To perceive social interactionbetweenweb objects we assume every service is based on oneormoremicroservices and other objects including CVOs andVOs At VO level VOs create several relationships with eachother based on the RWO they represent CVOs associatedwith microservices are incorporated in relationships as well

Object-to-object associations are categorized as eithervertical associations (interobject relations) or horizontalassociations (intraobject relations) as shown in Figure 3The relationships that flow from the bottom to the top inWoO based architecture are known as interobject relations(ie from VO to CVO or vice versa) On the other handrelationships are known as intraobject relations if they aregenerated within objects at each level such as between oneVO and another or within one CVO to a relative CVO Thenewly defined relationships among objects are maintained atdifferent levels which enables information discovery moreefficiently It is considered that not only will the relationshipsbe maintained when two objects (ie VOs) are used in thesame CVO or service but also they will be maintained ifobjects are used in different CVOs or services

As depicted in Figure 3 VO1 and VO2 bind in theSIBOR relationship considering the fact that they belongto the same family of CVO1 Similarly VO4 VO5 andVO6 are combined in a CWOR as they are used in thesame service However all of them do not have a commonfamily relation that makes their trustworthiness restrictiveto some level as compared to SIBOR Moreover thoughVO7 and VO8 are not used together in a service setupstill they form a STGOR relationship This relationship alsohelps codify those VOs that have similarity in premisesduring a certain point in time regularly but they had nevercombined in any service scenario before For example if aperson visits a subway regularly but stays very shortly in suchscene the userrsquos smartphone VO and subway station point

Wireless Communications and Mobile Computing 7

Table 1 Social relationship attributes

Social object relationships types AttributespropertiesSibling object relation (SIBOR) O119909 has relationship with O119910 rarr SIBOR if objectsrsquo ownership is defined as == SameFamily

Service object relationship (SVOR) O119909 has relationship with O119910 rarr SVOR if objectsrsquo serviceStatus is defined as ==SameServiceComposition

Stranger object relation (STGOR) O119909 has relationship with O119910 rarr STGOR if objectsrsquo authentication is defined as ==Anonymous

Guest object relationship (GSTOR) O119909 has relationship with O119910 rarr GSTOR if objectsrsquo ownership is defined as =SameFamilyampamp == GuestFriend

Parental object relationship (POR) O119909 has relationship with O119910 rarr POR if objectsrsquo creation is defined as == SameBatch ==SameProduction

Colocation object relationship (CLOR) O119909 has relationship with O119910 rarr CLOR if objectsrsquo proximity is defined as == Neighborhood location is defined as == SameLocation

Ownership object relationship (OOR) O119909 has relationship with O119910 rarr OOR if objectsrsquo proprietorship is defined as == SameOwner

VO2VO1 VO4VO3 VO6

CVO 1

Service A Service B Service C Service D

CVO 4CVO 3CVO 2

RWO RWORWORWORWO

Service E

Horizontal intraobject (intra object relation)

Vert

ical

asso

ciat

ion

(Inte

robj

ect r

elatio

n)

CVO 5

VO5

RWO

VO7

RWO

Service F

CVO 6

VO8

RWO

SIBOR

PORCLOR

Application 1 Application 2

SIBOR

Application 3

STGOR

CWOR

CLOR

Figure 3 Hierarchical social relationships of web objects

VO or subway security camera VO may establish STGORThis may help reuse VOs in service scenarios where onlyfor short duration a VO object is required At CVO levelCVO2 forms two different relationships which increasesthe level of connectivity of the CVO CVO2 first shares aCLOR with CVO1 and CVO3 CVO4 and CVO5 togetherSecondly CVO2 is combined in a SIBOR with CVO3 andbecomes in the same service family Further in the selecteduse case scenario described in Section 4 several other socialinteractions have also been elaborated

34 Social Web Objects Architecture SIoT envisages a systemwhere the social framework will bring smart devices andpeople to interact with each other By incorporating webtechnologies like SOA based microservices IoT services canbe rendered on top of the social framework The proposedsocial web objects architecture (as shown in Figure 4) hasbeen decomposed into three levels service level object

virtualization level and aggregated object virtualization levelAt the service level to support social relationships withinweb objects severalmicroservices have been designed whichare discussed further in the following section Moreoverthe data management function in the proposed design helpseach layer to interconnect with semantic databases TheSPARQL endpoints have been defined at the service and theobject virtualization levels that expose interfaces to retrievestore and modify RDF graphs Several interfaces allow theknowledge engineer domain expert and the developer tocreate service templates and VOs as well as update the RWKmodel user profile and policies

341 Service Level Functional Components The service levelfunctions handle operations from the request inception tothe execution of services This level is supported by somecore functions common to be used in each service life cycleThese include the management function to handle service

8 Wireless Communications and Mobile Computing

Microservices communication hub Servicetemplate

RWK model(RDF concepts ampfacts)

Application A Application B Application C

VO DB

VO template

VO registory

CVO DB

CVO template

CVO registory

Serviceregistory

ServiceDB

User profile RDFOWL

Serv

ice le

vel

Aggr

egat

ed o

bj v

irtua

lizat

ion

level

Obj

ect v

irtua

lizat

ion

level

VO management amp optimization engine

VO generator

VO ownership management

VO container

Service Interface

CVO Level Interface

VO level interface

DatabaseDatabase

Developer

Installer

RWK

Service DB

CVO DB

VO DB

Knowledge engineer

API APIAPIAPI

User

RWK situation mgt

Composition engine

Service management

Discovery amp lookup

Service execution environment

CVO reuse management

CVO generatorand composer

system knowledge

engineAP

I

Domainexpertknowledge engineer

API

API

API

Semantic RWK s

Service lookup

Request evaluatorService

registration s

Sem

antic

Dat

a m

gt

User situation management

User profilemgt

Service reuse tracker s

Semantic match makerService life

status mgt

Integration validator

Composition maker

CVO registration

CVO hypothesis analyzer

CVO coordinator

Event processor

Semantic context collector

Service template mgt

Service binding s

CVO template mgt

Selection analyzer

Similarity checker

CVO discovery

Link mgt s Relationship lookup s

Rel dependability s

Relation observer s

Service logs mgt s

Situation discovery classification projection services

CVO life cyclemanagement

VO availability validator

Conflict resolution

VO registration VO access mgt

VO coordinator

VO identity mgtVO template mgt

VO metadata mgt

VO data synthesizer

VO discovery VO energy efficiency tracking

Sensor and actuators

Gateway

CVOconfiguration amp management

Workflow mgts

Group mgts

Figure 4 Social web objects functional architecture

Wireless Communications and Mobile Computing 9

requests and initiate service provisioning processes theservice discovery function to select the available services thecomposition engine to enable service mashups and the Real-World Knowledge (RWK) and situation management func-tion to acquire RWK and continuously maintain it Besidesthese core functions several microservices have been usedto provide the plug-and-play feature in the proposed designthat is in case of service failure it is replaced with anotherone These services include the Request Evaluator microser-vice which interprets a service request and matches a requestquery to the service template The registration microserviceregisters newly added service objects to the registry Whena new template is instantiated objects are put in serviceand to know the existence of available service instances theyare recorded in the service registry The lookup microserviceis defined to search for the required service objects usingthe semantic representation The representations availablein RDFOWL format are queried from the registry basedon the request parameters Service life cycle managementkeeps track of the states of service objects during their lifecycle whereas RWKmanagement microservice is a semanticdata processing service which processes facts about userpreferences profile and situational information

To realize service provisioning it is always not possible tosatisfy the service requirement with a single service functionService composition and harmonization features are requiredto fulfill a demanding service request Service composition isnot a single operation many microservices are used to com-pose the individual features One of the major componentsof the composition is the Workflow Management (WFM)microservice which is responsible for decomposing the ser-vice requirement if no single service is available to satisfythe task WFM microservice identifies the service objectsusing input and output interfaces In this concern it usesthe matchmaking microservice to identify the approximatematches that can serve the required service functionalityHere service objects are semantically represented in the formof ontologies The semantic ontology alignment algorithm isused tomatch the service up to a certain threshold level that isdefined by the matchmaking microservice The reuse trackermicroservice is used to identify the current service instanceusage by the application it incorporates a coordinationmechanism before instantiating any new instance and thishelps in service reuse by many clients Binding microserviceenables tying of services selected by WFM this functionsynchronizes input and output of services in a workflowto produce a single service output based on the generatedcomposition plan

Furthermore user characterization is another importantelement to support the IoT services bymatching user require-ments more closely The User Profile Manager microservicehandles many facts related to the human user These includeuser profile preference context and policies Semantic Con-text Collector microservice organizes the services requestedby the user and the context in which these services wererequested This helps in identifying user interest with respectto the service context User context or situation helps inservice selection more efficiently if a user requests againwith a similar service requirement Some microservices have

been designed to handle user situation information thesemicroservices include situation discovery classification andrecognition functions Situation discovery is used to processsensor data that is provided by CVOs to prompt a situationwhereas machine learning algorithms are applied to removethe false values and data normalization is performed in caseinappropriate triggers in the data exist Situation classificationincorporates the reasoning methods and rules to generatea relationship over detected events and refine the missingknowledge between the events Situation projection analyzesthe events data with the help of machine learning methodsand provides an output in the form of predicted facts thatare related to the situation being detected Moreover allthe microservices coordinate using a communication hub toshare information with each other

Aflowof service inception to service execution in the pro-posed architecture is depicted in Figure 5 where service man-agement is responsible for initiating the above-mentionedfunctionalities and instantiating the microservices This pro-cess further results in the generation of CVOVO mashupgraphs to be handled by CVO management (discussed inSection 342) Situational information has also been used toimprove request analysis and service provisioning whereasVO management (discussed in Section 343) acquires andaggregates data from sensors and other RWOs

Social RelationshipManagementMicroservicesTo support thesocial relationships among web objects at each layer of theproposed system relationship management microservicesare defined which support the codification of relationshipsamong web objects (VOs and CVOs) and their managementThese microservices are defined as follows Group manage-ment microservice identifies the grouping of objects intospecific sets based on the type and interaction of objects itbuilds a social graph of the object relationships Link man-agement microservice incorporates mechanisms to maintainrelationships among different objects and it includes severalother subfunctions The first subfunction is object selectionwhich involves choosing candidate objects that are likelyto form a particular association The second subfunctionis matchmaking service which provides exact relationshipmatch based on the type of objects The third subfunctionis the association life cycle manager which maintains therelationship status between objects it checkswhether they arein active relation or not It keeps track of relationship validityand also the duration of relationships Relationship observermicroservice enables the object activities to be observedand it also handles the mutual sharing which defines whatinformation an object is allowed to share or use of anotherobject based on the relationship among them Relationshipdependability recognizer microservice identifies maintainsand continuously improves the level of reliability amongobjects If objects A and B are frequently interacting andalways perform a task together that leads to successfulexecution of an application to serve the requirements thenthey are more likely to form a reliable relationship with eachother The consistency of the relationship allows objects toshare their information with fewer constraints as comparedto unpredictable association among objects Relationship

10 Wireless Communications and Mobile Computing

Application domain

Service manager

Composite VO mgt

ServiceCVOVO registry DB

VO management

SituationRWK management

User profile

Evaluate RequestDiscover microservicesSelect service template

Composition mgt

Req CVO entries

Microservice container

CVO registrationCVO ontology lookupReuse approximation

Service request

Resp CVOs

VO instantiate req

Req user situation parameters

Resp user situation parameters

Req VO entriesResp VOs

Req user modelResp user model

SelectVOs

Microservice notificationstatus

Instantiatemicroservice

Req CVOcreation

VO notificationCVO notificationMicroservice deployment

Service resp

VO RegistrationVO ontology discovery

VO metadata mgt Update preferences

Update events

Situation projection

Update user model

Req serviceService resp

Situation detection

Classified situation

Figure 5 Request initiation and service execution flow in the proposed architecture

lookup microservice incorporates the discovery algorithm(as given in listing of Algorithm 1) to discover the socialrelationships and maintains the list of all objects and theirpotential association rating The rating defines the opportu-nity for objects to form a relationship with each other

Moreover the operation flow of social microservices hasbeen illustrated in Figure 6 where VOmanagement retrievesthe social relationship among objects this is queried usinglink management which uses a lookup service Associationsare maintained in a social relationship graph using semanticontology and queried using the relation observer serviceThesocial graph is also updated and maintained continuouslywith respect to changing links among objects on the basisof which VOs are selected

342 Functional Components in Aggregated Object Virtual-ization Level Aggregated object virtualization (AOV) levelinvolves all the necessary functions to instantiate manageand continuously monitor CVOs Besides it includes theinterface required by the service level to interact with CVOcomponents Service level provides the mashup graphs ofCVOs and VOs that are required to fulfill a service requestAggregation level also supports some core functions theseare categorized as CVO configuration and management todecompose requests from service level and manage CVOinstances CVO generator to instantiate CVOs compositionfunction to form CVO and VO mashups reuse management

to select existing CVOs that approximately match servicerequirement and system knowledge engine to grow knowl-edge for the optimal use of CVO resources Further otheraggregation level functionalities are as follows registrationfunction records the CVO entry into the semantic CVOregistry in the form of RDFJSON format CVO includesontologies that specify conditions to be applied on theVO data Also at this level templates are created by adomain expert or knowledge engineer which consist offunctionalities associated with each CVO type Templatemanagement module provides an interface to include tem-plates to the CVO template repository and also supportsthe modification mechanism CVOs are discovered usingtheir semantic annotation via the discovery function CVOselection analyzer function provides estimated selection ofa CVO for reuse if there is no single CVO that can exactlyprovide the required service This is supported by similar-ity checking mechanism to analyze the level of similaritybefore recommending for reuse At aggregation level anotherimportant function is event processing event streams gen-erated by object virtualization level are highly valuable toinfer situational awareness and building RWK that is usedby high-level functions Event processing module facilitatesprocessing of events and provides generated facts as outputEvent processing is supported by CVO hypothesis analyzerthat incorporates several hypotheses which are trained overdata to build system level knowledge Aggregation level also

Wireless Communications and Mobile Computing 11

VO mgt Social relationship manager

Social link mgt

Relationship lookup MS

Group mgt

Relation observer

Social relation graph

Object selectionQuery generation

Req lookup

Social rel queryLookup resp

Modified social graph

Update dependencies

graph result

Update change inassociation

Generate update queryUpdate triples

Req relation graph

MatchmakingValidate association

Infer relation

Organize group

Add member

Select registered VOs

Execute query

Relation graph resp

Retrieve social object relation

Update VO

Social graph update

Inferred relationships

AckUpdate Group

Update VO

Social rel search

Figure 6 Sequence of operation required to establish a social relationship among objects

provides composition function which provides the basis formerging multiple VOs to generate single service feature andvalidation function to validate the compositions of multipleVOs Moreover the coordinator helps in resolving conflictsin case of simultaneous access of single CVO by multipleservices together

343 Functional Components in Object Virtualization LevelAlthough IoT middleware virtualizes sensors and actuatorsin some form of virtual entities however in WoO everyliving or nonliving thing can be represented in the virtualworld VOs are supported by an information model [1415] which includes the representation of RWO that canbe ICT or non-ICT In the proposed architecture objectvirtualization level includes functions to create maintainand coordinate VOs such as VO generator VOmanagementand optimization engine VO registration function providesan interface to register VOs with the help of VO ownershipmanagement function where the VO ownership is main-tained Template management function handles templatesor loads updated ones as provided by the domain expertMetadata management maintains data associated with VOsas VO is a digital representative of real-world entities thereis a high need to store metadata information to recognizethe class of sensed data Use of metadata provides the realvalue of the data in the form of the context stored withinit Furthermore VO data synthesizer service handles the

discrepancies if found in the data corresponding to VO thisincludes data manipulation and missing value rectificationsConflict resolution function helps in case the same VO isused by multiple service instances to resolve the conflictsAlso VO access management function controls access forVOs in case access right information has been defined bythe VO owner whereas identification management modulemaintains identification information about VOs so that eachVO can be uniquely identified in the system

344 Social Relationship Discovery and Composition Toidentify associations among web objects within a socialrelationship graph an algorithm is elaborated briefly In thefollowing algorithm the microservices that are in executionare retrieved first represented as M120583 next all the CVOsassociated with each of those microservices are recoveredin Mc and further the corresponding VO model Mvis iterated In the next step executing the query statementroutine returns the results denoted as The process offinding the relationships is carried out through lines (6)ndash(19)in multiple nested iterations as shown in the pseudocode ofAlgorithm 1 listing

Algorithm 2 facilitates the composition of objects basedon social association types This algorithm takes as input theset of object social relationships denoted by Z and registryentries of the objects that are currently available in thesystem represented as Re After the object model denoted

12 Wireless Communications and Mobile Computing

Require (C) (R119890)(1)Output S (social relationship graph of objects)(2) M120583 larr Load Microservices in model(3) M119888 larr Load CVOs in model(4) MV larr Load VOs in model(5) larr executeQueryStatement (M120583 M119888 MV 119876)(6) for All 120583 in 120583 do (iterate Microservice instance being used)(7) for All 119874 isin 120583 do (check CVO and VOs used by the Services)(8) if O119894 == output of C119877 in a relationship set R119888 then(9) add C119877 to119871(10) else(11) if O119894 == output of V119877 in relationship set RV then(12) add V119877 to119871(13) N119894 larr tag (Assign relationship tag to each object entry)(14) else(15) add O119894 to119880(16) end if(17) end if(18) end for(19) end for

Algorithm 1 Social relationship discovery

Require (C) (R119890) (Z)(1)Output C (Composite Service)(2) Mlarr List all objects available (Microservices CVOs VOs) in model(3) larr executeQueryStatement (M 119876)(4) Zlarr executeQueryStatement (M 1198761015840)(5) for All 120590119894 isin do(6) for All 120582119894 isin 120590 do(7) if 120582119894 == any 119911 in Z then(8) add 120582119894 toLm(9) storeLm(10) end if(11) end for(12) for All 120603i isin Lm do(13) if 120603i == any 120603i inLm then(14) 120597 larr ranking (Assign rank to each service)(15) add 120603i toLR(16) storeLR(17) end if(18) end for(19) for All 120590119895 isin LR do(20) if 120590119895(R120597) gt 120581 then(21) add 120590119895 to Wf(22) Pqlarr assign to queue(23) Sort Pq(24) Formulate Wf(25) end if(26) end for

Algorithm 2 Composition of objects based on social relationship

as M is loaded the first step is to compose objects basedon their relationship types This way the SPARQL queriesare executed the first query is denoted as 119876 to retrievethe available service templates and the second query isrepresented as 1198761015840 to extract the relationships associated with

the services From line (5) to (11) first the social relationshipis searched among objects and then the found relative objectsare composed in groups The design philosophy employedover here is to assign a ranking to each selected groupbased on the relationship type that helps in a more efficient

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 2: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

2 Wireless Communications and Mobile Computing

the people and the devices based on the social relationshipsThese relationships further promote efficient discovery of theobjects and effective service compositions

Let us have a glimpse of the application scenarios inwhichSIoT will make a profound effect on our daily life in thenear future Imagine a group of vehicles that form a mobilesocial network on the move when heading towards the samelocation or when they are bound in a common relationshipVehicles may form diverse social communities for examplesmall cars create a social network to share available parkingspace information or bicycles share information about thevacant paths using a network [8] Vehicles commuting fromhome to office can join a social network to share trafficcongestion experience accident warnings or other commoninformation (eg a meeting plan) with colleagues by access-ing their vehiclesrsquo social network Let us analyze another SIoTuse case where a user enters a public museum with an IoTenvironment which incorporates smart objects that exploitsocial relationships to share information At the entranceto the premises the userrsquos smartphone is prompted with abeacon signal to recommend a service app installationWhenthe user grants the permission an app is installed and asocial agent acquires his profile and friendship details Theapp incorporates a microservice which uses a smartphoneobject to establish a social relationship with the museumvisit service The museum is equipped with a network ofsmart objects that monitor the userrsquos location and provideservices to enhance hisher experience such as personalizingthe displays assisting in the navigation and recommendingthe relevant services

To support the above-mentioned use cases most of thecurrent IoT architectural approaches are not suitable as theyare based on the traditional monolithic approaches whichfurther hinder the development of efficient modular andindependent services that cannot scale well with the increas-ing userrsquos service demands as already witnessed in manystudies [9ndash12] Using monolithic approaches we cannotfully achieve the benefits offered by SIoT including efficientinformation discovery improved scalability and simplifiedinterconnection of objects

These limitations motivate the current paper to definea design for the development of SIoT based services withefficient and lightweight mechanisms to exploit SIoT featuresfor improved service provisioning The proposed design isbased on the microservices concept which promises a moresolid practice of SOA There is no particular definition ofmicroservices architectural style however it is explainedin [13] by Martin Fowler as ldquoan approach to developing asingle application as a suite of small services each runningin its own process and communicating with lightweightmechanisms often an HTTP resource APIrdquo Following themicroservices based proposed design SIoT applications canbe developed deployed and maintained more efficiently andindependently which will promote system modularity andinteroperability

Moreover a SIoT design needs to facilitate the efficientinformation discovery based on the social relationshipsamong objects To achieve this incorporating the existingsocial relationship models in the proposed design can be

useful However applications with intelligent service featuresrequire dynamic object selection Therefore objects need toacquire the ability to infer new relationships for intercon-nection with other objects in the system This view furthermotivates the present article to develop a social relationshipmodel based on the semantic ontologyTheutilized ontology-based approach is highly useful to dynamically infer newsocial relationships for efficient service provisioning

Furthermore to fully achieve the benefits of both theSIoT andmicroservices selecting an IoT environment is nec-essary where not only can the social interconnection amongheterogeneous objects be utilized but also the lightweightservices can be developed to apply these relationships foreffective IoT service provisioning To fulfill this goal theWeb of Objects (WoO) [14] platform has been selectedAccording to the ITU recommendation (ITU-T Y4452) [15]ldquothe Web of Objects (WoO) is a realization way of theIoT services where virtualized objects (ie virtual objects(VOs) and composite virtual objects (CVOs)) are connectedcontrolled and incorporated with resources to facilitate thedevelopment deployment and operation of IoT services onthe World Wide Webrdquo

To exploit the opportunities provided by the above dis-cussed technological advancements the main contributionsare highlighted as follows

(i) This article contributes a novel design based on themicroservices concept with lightweight and modularservices to support the development of SIoT applica-tions The proposed design involves mechanisms toenhance object discovery and to reduce the magni-tude of complexity generated due to the huge numberof objects

(ii) A social relationship ontological model is developedwhich helps identify the hidden and unidentified rela-tionships among objects with reasoning mechanisms

(iii) A use case with the implementation prototype basedon theWoOplatform is developed to exploit the socialrelationship model supporting the proposed designfor efficient IoT service provisioning

Further to support the above contributions virtual objectsserving on real-world objects have been developed whichcan be reusable in other services as well CVOs are imple-mented where each update of the information in the real-world object is reflected in the VO and propagated to theCVO Also the Social IoT notion is incorporated into virtualobjects to provide easy discovery and efficient executionwhile maintaining collaboration using social connectionsMoreover an experimental analysis has been carried out toevaluate the discovery time of VOs and the time required forservice execution with or without social relationships amongvirtual objects

The remainder of this article is organized as follows InSection 2 the relatedwork is described Section 3 presents theproposed design of the social web objects accompanied by thesocial interaction model In Section 4 an IoT environment

Wireless Communications and Mobile Computing 3

use case is explained with the details of the prototype imple-mentation and discussion of the performance evaluationFinally Section 5 provides a conclusion of this paper

2 Related Work

This section presents the related work with respect to theSIoT and microservices Further the significance of bothtechnologies pertaining to the IoT environment has beendiscussed

21 Social Internet ofThings (SIoT) The concept behind SIoTis to enable smart objects to create a social network similarto a human social network The objective is to exploit thesocial relationships among objects in an IoT environmentto facilitate the effective information discovery to promotethe scalability to enhance the interactive communicationbetween objects that are friends and to achieve trustworthi-ness [3]

The initial notion of a social network of objects wasproposed by [16] which discussed how the wireless devicesform social connections on the temporary bases that arecontrolled by the node owners As the work was carriedout before the introduction of IoT it did not considerthe SIoT concept Later studies [5] investigated the objectsrsquosocial interaction where objects formed social networks andcommunicated with each other based on the rules already set

The idea of using theWeb ofThings in a social ecosystemwas presented by [17 18] where things were shared usingthe social network infrastructures for example TwitterFacebook and LinkedIn These implementations consistedof objects that communicated either through the built-inembedded servers or through smart gateways Further inthese settings the web-enabled things owned by a personprovided an interface to hisher social group of friends so thatthey can interact with the things using a social network

Lysis [19] is another good example of Social IoT platformbased on cloud infrastructure It uses the platform as a service(PaaS) model and focuses on the deployment of applicationsin the cloud space However dynamic inferencing of newsocial relationships from existing relationships is not sup-ported by this system Moreover making a modular interop-erable design by employing concepts like microservices andsemantic web technologies is not considered in this work

Paraimpu [20] provided a social Web of Things platformto connect virtual and physical things to the web In thissystem the social concept only relates to humans by provid-ing them with the capability to share things with each otherusing a human social network Also virtual things are notconsidered as VOs but rather viewed as services on other IoTplatforms

Using SIoT at the edge of the network was investigated by[21] In this system an approach was proposed to cope withthe communication delay due to the objects being remotelylocated in the cloud This approach exploits the computingresources at the network edge to deploy virtual objects

The ThingSpeak solution was used as the basis for theimplementation of an early SIoT platform [22]This platformprovided the object social behavior functions incorporated at

the centralized server In this implementation functions suchas the creation and themanagement of the social relationshipswere developedHowever VO conceptwas limited only to therecords in the remote database

Another featured SIoT frameworkwas contributed by [4]This work presented how to combine services devices usersand their social interaction to enable interactivity discoveryand recommendation of services Social relationships havealso been investigated in communities [23] where a proposedframework enables the identification of communities in thesocial networks

Although most of the research contributions in the SIoTdomain incorporate a notion of the social association ofobjects however limited information has been providedabout the social relationship model and the details on howthat can be used by IoT services Furthermore existingapproaches are lacking lightweight andmodularmechanismswhich can be utilized by services to exploit social rela-tionships efficiently In our approach we have developeda semantic ontology-based social relationship model thatprovides the capability to infer new connections in a networkof social objects Another distinction of the proposed systemis a microservices based design that utilizes the developedsocial model to provide lightweight modular simple andinteroperable IoT services

22 Microservices The microservices architecture is emerg-ing as a new trend among the practices of developingdistributed web applications To develop SOA based systemsmicroservices have become a prominent approach in real-world settings [24] In the microservices based architecturalpattern each application incorporates a collection of smallservices which execute independently and use lightweightcommunication mechanisms [9] The microservices are tar-geted for doing one thing well at a time based on theprinciple of single responsibility [25] as defined by RobertC Martine ldquoGather together those things that change forthe same reason and separate those things that change fordifferent reasonsrdquo [26] Also the microservices are conceivedas autonomous entities which means they can be changedand deployed independently of each other without requiringtheir consumers to change [24]

In the last few years several IoT architectural designswere proposed and developed Some of these designs pro-vided innovative features such as the European FP7 projectiCore [27] which proposed a cognitive framework for IoTapplication development This project provided an architec-ture with the concept of virtual objects and their compositesHowever in iCore services are designed using a traditionalSOA based monolithic style whereas the microservicesbased architecture provides a better option to develop IoTservices Furthermore in iCore VOs lack the mechanismsto semantically represent real-world objects (RWOs) whichlimits extensibility and interoperability

To support IoT applications microservices based archi-tectures are being proposed in many research initiatives andapplied in several research projects In [28] microservices areused for M2M applications realizing the fact that monolithicapproaches for M2M cannot provide a real solution Another

4 Wireless Communications and Mobile Computing

work [10] provided an analysis of using microservices archi-tecture for large-scale distributed applications This workdemonstrated that significant benefits can be achieved ascompared to generic SOA approaches when using microser-vices in an IoT platform for smart city applications

Moreover Almanac FP7 EU Project [29] provides smartcity services based on the IoT environment The projectuses microservices to employ scalability in a horizontal andvertical fashion Also in the industry microservices havebecome a solution for developing large-scale applicationsNetflix Pivotal [30] and Amazon use microservices in theirsoftware bases

The increased importance of microservices for the IoTapplications is due to the fact that they simplify complexsystems By dividing a system into smaller parts highercohesion and lower coupling can be achieved which makesit highly scalable In scenarios where requirements keepchanging continuouslymicroservices can helpmake a systemeasily modifiable Moreover the major benefits that areenvisaged when using microservices in an IoT environmentare as follows Microservices leverage scalability to provide ahighly decoupled pattern and can allow scaling individuallyTheir usefulness can be realized as when the demand for therequirement increases the system complexity also rises Inthis case a system can be supported by creating new instancesof existing services Microservices scalability [9] fits in three-dimensional space that is horizontal scalability (typicalscalability) vertical scalability (splitting different individualmicroservices) and 119911-axis scalability (splitting similar thingssuch asDBpartitioning)Microservices architecture supportsa plug-and-play behavior where system components becomeloosely coupled To acquire new functionality or replace afailed service pull the plug from one microservice and pluginto a new microservice [31] One of the major problems thatIoT is facing today is how to deal with the heterogeneityof incompatible solutions To harmonize the heterogeneitysemantic web technologies with microservices are leveragedto provide interoperable exchange and communication ofdata Microservices realize a decentralized and autonomousbehavior operating on their own priorities and scheduleThisway they provide several benefits for being utilized in an IoTdesign

3 The Proposed Design of Social Web Objects

Recently there have been several research efforts [3ndash6 17 2032] for defining the Social IoT This new aspect minimizesthe complexity generated by the communication of billionsof real-world objects and enables sharing of informationThesocial notion can be incorporated into the WoO platformto provide a semantically rich base for IoT applicationsthat can utilize real-world object relationships for efficientinformation discoveryMoreover this section provides a briefintroduction of WoO reference architecture in Section 31A classification of social relationships among web objects(virtual objects and composite virtual objects) is discussedin Section 32 and a social relationship model is presented inSection 33 Further the details of functional components forthe proposed architecture are explained in Section 34

31 Web of Objects (WoO) Reference Architecture To enablethe deployment of IoT services on the World Wide WebWoO provides a reference framework In other words itrealizes the IoT services in such a way that virtualized objectsare interwoven with resources to support the developmentdeployment and operations of IoT services [33 34]TheWoOplatform provides service functionality by merging VOs andfeatures of web applications Moreover the WoO platformuses semantic web technologies to enable interoperabilityamong heterogeneous resourcesThis realization provides thebasis for the composition and harmonization of objects toprovide smart services in an IoT domain Building servicesbased onWoOplatformusing diverse technologies includingmicroservices [35] social networks and semantic web helpsreduce the complexity and fosters the easy and efficientdevelopment of IoT applications

Virtualization has become a major concept in IoT toaddress the heterogeneity of diverse types of physical objectsVO is a digital representation of a real-world object thatcan be anything living or nonliving mobile or stationaryconcrete or immaterial In WoO VO is defined as domain-specific semantic ontology based on the VO informationmodel [36] It is uniquely identified using URI and providesinformation updates on the representative real-world objectOn the other hand WoO also provides a notion of CVOwhich aggregates one or more VOs to enable service fea-tures that satisfy the application requirements CVOs chainsemantically interoperable VOs together The WoO platformincorporates features to efficiently reuse existing VOs andhandles the complexity generated by self-management andcontrol mechanisms [37] In the WoO service level decideswhich CVOs and VOs will take part in creating an objectmashup to fulfill service objectives The service logic is savedin the form of templates and stored in the template repository[38ndash40] The domain expert or knowledge engineer definesthe service templates that are used to instantiate new services

WoO reference architecture is shown in Figure 1 Inthis architecture the service layer handles requests andprovides several management functions whereas the CVOlevel consists of functions to manage and instantiate CVOsor reuse the existing ones based on the provided serviceexecution logic New objects such as sensors are registeredin the WoO platform using a registration function and theirtemplates are generated to make them digitally availablein the form of VOs Another most important aspect isthe semantic representation of data at three-layered WoOarchitecture [23 39] The database at each layer is supportedwith semantic web technologies

32 Types of Social Relationships Previous research [3] onSIoT has derived some basic relationship types amongobjects These relationships are characterized as followsParental Object relationship (POR) exists between the objectsthat belong to the same batch such as objects that are createdin the same production process or at the same time by acommon manufacturer Cowork object relationship (CWOR)is the relationship among objects that are grouped togetherbased on some commonly shared job to be done by themSimilarly colocation object relationship (CLOR) is established

Wireless Communications and Mobile Computing 5

Application A Application C Application B

Service DB

Servicetemplate

Service registory

CVO DB

CVO template

CVO registory

VO DB

VO template

VO registory

Database

WoO service level

Compositevirtual object (CVO) sublevel

Virtual object (VO) sublevel

API APIAPIAPIUser APISe

rvice

leve

lVi

rtual

leve

l

RWO RWORWORWO

IF-1

IF-2

Figure 1 Web of Objects reference architecture

between objects belonging to the same location such ashome or office Different or same types of objects can becombined based on the common location or premises On theother hand Ownership Object Relationship (OOR) is formedamong objects belonging to the same owner Social ObjectRelationship (SOR) is another kind of relationship that iscreated among objects when they come close to each othereither random in time or periodically This relationship canbe envisaged when the owners of objects come into contactwith each other Apart from the above relationships in [41]the authors define theGuardianObject Relationship (GOR) inthe Internet of Vehicles (IoV) scenario where on-board unitsof vehicles become children in relation to the super nodesof Road Side Units This child and parent association givesa special meaning to a new hierarchical relationship

In addition to the relationships defined in other studieswe have identified few more relationships suitable for somediverse scenarios These include Sibling Object Relationship(SIBOR) that is created among objects that belong to agroup of friends or family membersThis relationship amongobjects extracts the property of trustworthiness based on therelationship of their owners Another relationship type is theguest object relationship (GSTOR) which is formed between

objects that belong to the users in the guest role for examplewhen a person visits a friendrsquos home and gets the privilegeas a guest The same can be applied to the objects that movein guest relation (GSTOR) from one place to another theywill have some privilege of accessibility of information ascompared to other objects Stranger Object Relation (STGOR)applies to objects that encounter the presence of each otherin an anonymous environment such as on the go or in thepublic environment Similar to people who meet each othersometimes regularly but are anonymous to each other or arenot fully aware of each other this relationship can be usedamong objects to form different trust levels or to form strictrestrictions to promote secure connections Moreover inservice object relationship (SVOR) objects form a relationshipwhile coordinating in the same service composition to fulfilla service request Generally in the proposed scheme servicerequest execution generates a mashup of objects and objectsthat belong to the same mashup are assumed to be in SVOR

We believe that the above defined new social relation-ships are beneficial in several distinctive scenarios Forexample SIBOR is more useful in scenarios where trustis highly important for establishing a connection Unlikethe more generalized relation POR SIBOR is established

6 Wireless Communications and Mobile Computing

SIBOR

SVOR

STGOR

GSTOR

(i) Sibling Object Relationship (SIBOR)(ii) Service Object Relationship (SVOR)

(iii) Stranger Object Relationship (STGOR)

(v) Parental Object Relationship (POR) [3](vi) Colocation Object Relationship (CLOR) [3]

(vii) Ownership Object Relationship (OOR) [3](iv) Guest Object Relationship (GSTOR)

CVO

VO

MicroservicecomposedIn

relatedTo

hasRelationship

hasRelationship

VO instancehasInstance

Data item

Data stream

acquires

retrieves

Microservice instance

CVO instance

hasInstance

hasInstance

POR

CLOR

OOR

Relationship concepts

Figure 2 Ontological model representing web objectsrsquo relationships

among objects from the same manufacturer having similarfeatures but different behaviors Similarly GSTOR is suitablein scenarios where objects use relationships for privilegedservices Imagine a person as a guest speaker in a conferencewith his smart devices where he can connect to the networkeasily and his personal devices are recognized as a guest(with GSTOR) in the venue network to avail free serviceslike high-speed Internet special notifications and othersStranger Object Relation (STGOR) is used in scenarios whereobjects are on the go and to get some information they haveto compromise with a limited trust level For instance in apublic transit system one mobile node on the move wantsto use crowdsourced information from another mobile nodewhich is not fully trusted Also SVOR is useful in servicecomposition specific scenarios where object mashups areformed to facilitate service requirement and it is also usefulin a particular orchestration of objects

To model information about microservices social webobjects and their relationships a semantic ontological modelhas been developed as depicted in Figure 2 Conceptual-ization of objects and their social relationships in semanticstructures are highly beneficial to infer new connectionsamong a network of objects with the help of reasoningtechniques The ontology facilitates the representation ofobjects as well as what theymeasure in terms of observationstheir processing and functions Web objectsrsquo relationshipontology contains the concepts that define each object interms of a class The data properties are used to representobject values and the object properties are defined to identifythe link between two objects in the ontology Major conceptsin the ontology are microservices CVOs VOs and theirsocial relationships Further microservices have an indi-vidual instance that uniquely defines a microservice objectand associated data with it Similarly CVOs and VOs arealso instantiated and contain data properties to retain theirvalues With the increasing number of objects a semanticontology model is used to perform reasoning function thathelps identify new connections Further to analyze the socialrelationship among objects (such as VOs and CVOs) theirproperties are provided in Table 1

33 Social Relationship Model for Web Objects At each levelof service life cycle objects form a social relationship witheach other to accomplish a service task Codifying the rela-tionship among web objects can provide many benefits suchas efficient information discovery from related objects andbetter composition and reuse To perceive social interactionbetweenweb objects we assume every service is based on oneormoremicroservices and other objects including CVOs andVOs At VO level VOs create several relationships with eachother based on the RWO they represent CVOs associatedwith microservices are incorporated in relationships as well

Object-to-object associations are categorized as eithervertical associations (interobject relations) or horizontalassociations (intraobject relations) as shown in Figure 3The relationships that flow from the bottom to the top inWoO based architecture are known as interobject relations(ie from VO to CVO or vice versa) On the other handrelationships are known as intraobject relations if they aregenerated within objects at each level such as between oneVO and another or within one CVO to a relative CVO Thenewly defined relationships among objects are maintained atdifferent levels which enables information discovery moreefficiently It is considered that not only will the relationshipsbe maintained when two objects (ie VOs) are used in thesame CVO or service but also they will be maintained ifobjects are used in different CVOs or services

As depicted in Figure 3 VO1 and VO2 bind in theSIBOR relationship considering the fact that they belongto the same family of CVO1 Similarly VO4 VO5 andVO6 are combined in a CWOR as they are used in thesame service However all of them do not have a commonfamily relation that makes their trustworthiness restrictiveto some level as compared to SIBOR Moreover thoughVO7 and VO8 are not used together in a service setupstill they form a STGOR relationship This relationship alsohelps codify those VOs that have similarity in premisesduring a certain point in time regularly but they had nevercombined in any service scenario before For example if aperson visits a subway regularly but stays very shortly in suchscene the userrsquos smartphone VO and subway station point

Wireless Communications and Mobile Computing 7

Table 1 Social relationship attributes

Social object relationships types AttributespropertiesSibling object relation (SIBOR) O119909 has relationship with O119910 rarr SIBOR if objectsrsquo ownership is defined as == SameFamily

Service object relationship (SVOR) O119909 has relationship with O119910 rarr SVOR if objectsrsquo serviceStatus is defined as ==SameServiceComposition

Stranger object relation (STGOR) O119909 has relationship with O119910 rarr STGOR if objectsrsquo authentication is defined as ==Anonymous

Guest object relationship (GSTOR) O119909 has relationship with O119910 rarr GSTOR if objectsrsquo ownership is defined as =SameFamilyampamp == GuestFriend

Parental object relationship (POR) O119909 has relationship with O119910 rarr POR if objectsrsquo creation is defined as == SameBatch ==SameProduction

Colocation object relationship (CLOR) O119909 has relationship with O119910 rarr CLOR if objectsrsquo proximity is defined as == Neighborhood location is defined as == SameLocation

Ownership object relationship (OOR) O119909 has relationship with O119910 rarr OOR if objectsrsquo proprietorship is defined as == SameOwner

VO2VO1 VO4VO3 VO6

CVO 1

Service A Service B Service C Service D

CVO 4CVO 3CVO 2

RWO RWORWORWORWO

Service E

Horizontal intraobject (intra object relation)

Vert

ical

asso

ciat

ion

(Inte

robj

ect r

elatio

n)

CVO 5

VO5

RWO

VO7

RWO

Service F

CVO 6

VO8

RWO

SIBOR

PORCLOR

Application 1 Application 2

SIBOR

Application 3

STGOR

CWOR

CLOR

Figure 3 Hierarchical social relationships of web objects

VO or subway security camera VO may establish STGORThis may help reuse VOs in service scenarios where onlyfor short duration a VO object is required At CVO levelCVO2 forms two different relationships which increasesthe level of connectivity of the CVO CVO2 first shares aCLOR with CVO1 and CVO3 CVO4 and CVO5 togetherSecondly CVO2 is combined in a SIBOR with CVO3 andbecomes in the same service family Further in the selecteduse case scenario described in Section 4 several other socialinteractions have also been elaborated

34 Social Web Objects Architecture SIoT envisages a systemwhere the social framework will bring smart devices andpeople to interact with each other By incorporating webtechnologies like SOA based microservices IoT services canbe rendered on top of the social framework The proposedsocial web objects architecture (as shown in Figure 4) hasbeen decomposed into three levels service level object

virtualization level and aggregated object virtualization levelAt the service level to support social relationships withinweb objects severalmicroservices have been designed whichare discussed further in the following section Moreoverthe data management function in the proposed design helpseach layer to interconnect with semantic databases TheSPARQL endpoints have been defined at the service and theobject virtualization levels that expose interfaces to retrievestore and modify RDF graphs Several interfaces allow theknowledge engineer domain expert and the developer tocreate service templates and VOs as well as update the RWKmodel user profile and policies

341 Service Level Functional Components The service levelfunctions handle operations from the request inception tothe execution of services This level is supported by somecore functions common to be used in each service life cycleThese include the management function to handle service

8 Wireless Communications and Mobile Computing

Microservices communication hub Servicetemplate

RWK model(RDF concepts ampfacts)

Application A Application B Application C

VO DB

VO template

VO registory

CVO DB

CVO template

CVO registory

Serviceregistory

ServiceDB

User profile RDFOWL

Serv

ice le

vel

Aggr

egat

ed o

bj v

irtua

lizat

ion

level

Obj

ect v

irtua

lizat

ion

level

VO management amp optimization engine

VO generator

VO ownership management

VO container

Service Interface

CVO Level Interface

VO level interface

DatabaseDatabase

Developer

Installer

RWK

Service DB

CVO DB

VO DB

Knowledge engineer

API APIAPIAPI

User

RWK situation mgt

Composition engine

Service management

Discovery amp lookup

Service execution environment

CVO reuse management

CVO generatorand composer

system knowledge

engineAP

I

Domainexpertknowledge engineer

API

API

API

Semantic RWK s

Service lookup

Request evaluatorService

registration s

Sem

antic

Dat

a m

gt

User situation management

User profilemgt

Service reuse tracker s

Semantic match makerService life

status mgt

Integration validator

Composition maker

CVO registration

CVO hypothesis analyzer

CVO coordinator

Event processor

Semantic context collector

Service template mgt

Service binding s

CVO template mgt

Selection analyzer

Similarity checker

CVO discovery

Link mgt s Relationship lookup s

Rel dependability s

Relation observer s

Service logs mgt s

Situation discovery classification projection services

CVO life cyclemanagement

VO availability validator

Conflict resolution

VO registration VO access mgt

VO coordinator

VO identity mgtVO template mgt

VO metadata mgt

VO data synthesizer

VO discovery VO energy efficiency tracking

Sensor and actuators

Gateway

CVOconfiguration amp management

Workflow mgts

Group mgts

Figure 4 Social web objects functional architecture

Wireless Communications and Mobile Computing 9

requests and initiate service provisioning processes theservice discovery function to select the available services thecomposition engine to enable service mashups and the Real-World Knowledge (RWK) and situation management func-tion to acquire RWK and continuously maintain it Besidesthese core functions several microservices have been usedto provide the plug-and-play feature in the proposed designthat is in case of service failure it is replaced with anotherone These services include the Request Evaluator microser-vice which interprets a service request and matches a requestquery to the service template The registration microserviceregisters newly added service objects to the registry Whena new template is instantiated objects are put in serviceand to know the existence of available service instances theyare recorded in the service registry The lookup microserviceis defined to search for the required service objects usingthe semantic representation The representations availablein RDFOWL format are queried from the registry basedon the request parameters Service life cycle managementkeeps track of the states of service objects during their lifecycle whereas RWKmanagement microservice is a semanticdata processing service which processes facts about userpreferences profile and situational information

To realize service provisioning it is always not possible tosatisfy the service requirement with a single service functionService composition and harmonization features are requiredto fulfill a demanding service request Service composition isnot a single operation many microservices are used to com-pose the individual features One of the major componentsof the composition is the Workflow Management (WFM)microservice which is responsible for decomposing the ser-vice requirement if no single service is available to satisfythe task WFM microservice identifies the service objectsusing input and output interfaces In this concern it usesthe matchmaking microservice to identify the approximatematches that can serve the required service functionalityHere service objects are semantically represented in the formof ontologies The semantic ontology alignment algorithm isused tomatch the service up to a certain threshold level that isdefined by the matchmaking microservice The reuse trackermicroservice is used to identify the current service instanceusage by the application it incorporates a coordinationmechanism before instantiating any new instance and thishelps in service reuse by many clients Binding microserviceenables tying of services selected by WFM this functionsynchronizes input and output of services in a workflowto produce a single service output based on the generatedcomposition plan

Furthermore user characterization is another importantelement to support the IoT services bymatching user require-ments more closely The User Profile Manager microservicehandles many facts related to the human user These includeuser profile preference context and policies Semantic Con-text Collector microservice organizes the services requestedby the user and the context in which these services wererequested This helps in identifying user interest with respectto the service context User context or situation helps inservice selection more efficiently if a user requests againwith a similar service requirement Some microservices have

been designed to handle user situation information thesemicroservices include situation discovery classification andrecognition functions Situation discovery is used to processsensor data that is provided by CVOs to prompt a situationwhereas machine learning algorithms are applied to removethe false values and data normalization is performed in caseinappropriate triggers in the data exist Situation classificationincorporates the reasoning methods and rules to generatea relationship over detected events and refine the missingknowledge between the events Situation projection analyzesthe events data with the help of machine learning methodsand provides an output in the form of predicted facts thatare related to the situation being detected Moreover allthe microservices coordinate using a communication hub toshare information with each other

Aflowof service inception to service execution in the pro-posed architecture is depicted in Figure 5 where service man-agement is responsible for initiating the above-mentionedfunctionalities and instantiating the microservices This pro-cess further results in the generation of CVOVO mashupgraphs to be handled by CVO management (discussed inSection 342) Situational information has also been used toimprove request analysis and service provisioning whereasVO management (discussed in Section 343) acquires andaggregates data from sensors and other RWOs

Social RelationshipManagementMicroservicesTo support thesocial relationships among web objects at each layer of theproposed system relationship management microservicesare defined which support the codification of relationshipsamong web objects (VOs and CVOs) and their managementThese microservices are defined as follows Group manage-ment microservice identifies the grouping of objects intospecific sets based on the type and interaction of objects itbuilds a social graph of the object relationships Link man-agement microservice incorporates mechanisms to maintainrelationships among different objects and it includes severalother subfunctions The first subfunction is object selectionwhich involves choosing candidate objects that are likelyto form a particular association The second subfunctionis matchmaking service which provides exact relationshipmatch based on the type of objects The third subfunctionis the association life cycle manager which maintains therelationship status between objects it checkswhether they arein active relation or not It keeps track of relationship validityand also the duration of relationships Relationship observermicroservice enables the object activities to be observedand it also handles the mutual sharing which defines whatinformation an object is allowed to share or use of anotherobject based on the relationship among them Relationshipdependability recognizer microservice identifies maintainsand continuously improves the level of reliability amongobjects If objects A and B are frequently interacting andalways perform a task together that leads to successfulexecution of an application to serve the requirements thenthey are more likely to form a reliable relationship with eachother The consistency of the relationship allows objects toshare their information with fewer constraints as comparedto unpredictable association among objects Relationship

10 Wireless Communications and Mobile Computing

Application domain

Service manager

Composite VO mgt

ServiceCVOVO registry DB

VO management

SituationRWK management

User profile

Evaluate RequestDiscover microservicesSelect service template

Composition mgt

Req CVO entries

Microservice container

CVO registrationCVO ontology lookupReuse approximation

Service request

Resp CVOs

VO instantiate req

Req user situation parameters

Resp user situation parameters

Req VO entriesResp VOs

Req user modelResp user model

SelectVOs

Microservice notificationstatus

Instantiatemicroservice

Req CVOcreation

VO notificationCVO notificationMicroservice deployment

Service resp

VO RegistrationVO ontology discovery

VO metadata mgt Update preferences

Update events

Situation projection

Update user model

Req serviceService resp

Situation detection

Classified situation

Figure 5 Request initiation and service execution flow in the proposed architecture

lookup microservice incorporates the discovery algorithm(as given in listing of Algorithm 1) to discover the socialrelationships and maintains the list of all objects and theirpotential association rating The rating defines the opportu-nity for objects to form a relationship with each other

Moreover the operation flow of social microservices hasbeen illustrated in Figure 6 where VOmanagement retrievesthe social relationship among objects this is queried usinglink management which uses a lookup service Associationsare maintained in a social relationship graph using semanticontology and queried using the relation observer serviceThesocial graph is also updated and maintained continuouslywith respect to changing links among objects on the basisof which VOs are selected

342 Functional Components in Aggregated Object Virtual-ization Level Aggregated object virtualization (AOV) levelinvolves all the necessary functions to instantiate manageand continuously monitor CVOs Besides it includes theinterface required by the service level to interact with CVOcomponents Service level provides the mashup graphs ofCVOs and VOs that are required to fulfill a service requestAggregation level also supports some core functions theseare categorized as CVO configuration and management todecompose requests from service level and manage CVOinstances CVO generator to instantiate CVOs compositionfunction to form CVO and VO mashups reuse management

to select existing CVOs that approximately match servicerequirement and system knowledge engine to grow knowl-edge for the optimal use of CVO resources Further otheraggregation level functionalities are as follows registrationfunction records the CVO entry into the semantic CVOregistry in the form of RDFJSON format CVO includesontologies that specify conditions to be applied on theVO data Also at this level templates are created by adomain expert or knowledge engineer which consist offunctionalities associated with each CVO type Templatemanagement module provides an interface to include tem-plates to the CVO template repository and also supportsthe modification mechanism CVOs are discovered usingtheir semantic annotation via the discovery function CVOselection analyzer function provides estimated selection ofa CVO for reuse if there is no single CVO that can exactlyprovide the required service This is supported by similar-ity checking mechanism to analyze the level of similaritybefore recommending for reuse At aggregation level anotherimportant function is event processing event streams gen-erated by object virtualization level are highly valuable toinfer situational awareness and building RWK that is usedby high-level functions Event processing module facilitatesprocessing of events and provides generated facts as outputEvent processing is supported by CVO hypothesis analyzerthat incorporates several hypotheses which are trained overdata to build system level knowledge Aggregation level also

Wireless Communications and Mobile Computing 11

VO mgt Social relationship manager

Social link mgt

Relationship lookup MS

Group mgt

Relation observer

Social relation graph

Object selectionQuery generation

Req lookup

Social rel queryLookup resp

Modified social graph

Update dependencies

graph result

Update change inassociation

Generate update queryUpdate triples

Req relation graph

MatchmakingValidate association

Infer relation

Organize group

Add member

Select registered VOs

Execute query

Relation graph resp

Retrieve social object relation

Update VO

Social graph update

Inferred relationships

AckUpdate Group

Update VO

Social rel search

Figure 6 Sequence of operation required to establish a social relationship among objects

provides composition function which provides the basis formerging multiple VOs to generate single service feature andvalidation function to validate the compositions of multipleVOs Moreover the coordinator helps in resolving conflictsin case of simultaneous access of single CVO by multipleservices together

343 Functional Components in Object Virtualization LevelAlthough IoT middleware virtualizes sensors and actuatorsin some form of virtual entities however in WoO everyliving or nonliving thing can be represented in the virtualworld VOs are supported by an information model [1415] which includes the representation of RWO that canbe ICT or non-ICT In the proposed architecture objectvirtualization level includes functions to create maintainand coordinate VOs such as VO generator VOmanagementand optimization engine VO registration function providesan interface to register VOs with the help of VO ownershipmanagement function where the VO ownership is main-tained Template management function handles templatesor loads updated ones as provided by the domain expertMetadata management maintains data associated with VOsas VO is a digital representative of real-world entities thereis a high need to store metadata information to recognizethe class of sensed data Use of metadata provides the realvalue of the data in the form of the context stored withinit Furthermore VO data synthesizer service handles the

discrepancies if found in the data corresponding to VO thisincludes data manipulation and missing value rectificationsConflict resolution function helps in case the same VO isused by multiple service instances to resolve the conflictsAlso VO access management function controls access forVOs in case access right information has been defined bythe VO owner whereas identification management modulemaintains identification information about VOs so that eachVO can be uniquely identified in the system

344 Social Relationship Discovery and Composition Toidentify associations among web objects within a socialrelationship graph an algorithm is elaborated briefly In thefollowing algorithm the microservices that are in executionare retrieved first represented as M120583 next all the CVOsassociated with each of those microservices are recoveredin Mc and further the corresponding VO model Mvis iterated In the next step executing the query statementroutine returns the results denoted as The process offinding the relationships is carried out through lines (6)ndash(19)in multiple nested iterations as shown in the pseudocode ofAlgorithm 1 listing

Algorithm 2 facilitates the composition of objects basedon social association types This algorithm takes as input theset of object social relationships denoted by Z and registryentries of the objects that are currently available in thesystem represented as Re After the object model denoted

12 Wireless Communications and Mobile Computing

Require (C) (R119890)(1)Output S (social relationship graph of objects)(2) M120583 larr Load Microservices in model(3) M119888 larr Load CVOs in model(4) MV larr Load VOs in model(5) larr executeQueryStatement (M120583 M119888 MV 119876)(6) for All 120583 in 120583 do (iterate Microservice instance being used)(7) for All 119874 isin 120583 do (check CVO and VOs used by the Services)(8) if O119894 == output of C119877 in a relationship set R119888 then(9) add C119877 to119871(10) else(11) if O119894 == output of V119877 in relationship set RV then(12) add V119877 to119871(13) N119894 larr tag (Assign relationship tag to each object entry)(14) else(15) add O119894 to119880(16) end if(17) end if(18) end for(19) end for

Algorithm 1 Social relationship discovery

Require (C) (R119890) (Z)(1)Output C (Composite Service)(2) Mlarr List all objects available (Microservices CVOs VOs) in model(3) larr executeQueryStatement (M 119876)(4) Zlarr executeQueryStatement (M 1198761015840)(5) for All 120590119894 isin do(6) for All 120582119894 isin 120590 do(7) if 120582119894 == any 119911 in Z then(8) add 120582119894 toLm(9) storeLm(10) end if(11) end for(12) for All 120603i isin Lm do(13) if 120603i == any 120603i inLm then(14) 120597 larr ranking (Assign rank to each service)(15) add 120603i toLR(16) storeLR(17) end if(18) end for(19) for All 120590119895 isin LR do(20) if 120590119895(R120597) gt 120581 then(21) add 120590119895 to Wf(22) Pqlarr assign to queue(23) Sort Pq(24) Formulate Wf(25) end if(26) end for

Algorithm 2 Composition of objects based on social relationship

as M is loaded the first step is to compose objects basedon their relationship types This way the SPARQL queriesare executed the first query is denoted as 119876 to retrievethe available service templates and the second query isrepresented as 1198761015840 to extract the relationships associated with

the services From line (5) to (11) first the social relationshipis searched among objects and then the found relative objectsare composed in groups The design philosophy employedover here is to assign a ranking to each selected groupbased on the relationship type that helps in a more efficient

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 3: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

Wireless Communications and Mobile Computing 3

use case is explained with the details of the prototype imple-mentation and discussion of the performance evaluationFinally Section 5 provides a conclusion of this paper

2 Related Work

This section presents the related work with respect to theSIoT and microservices Further the significance of bothtechnologies pertaining to the IoT environment has beendiscussed

21 Social Internet ofThings (SIoT) The concept behind SIoTis to enable smart objects to create a social network similarto a human social network The objective is to exploit thesocial relationships among objects in an IoT environmentto facilitate the effective information discovery to promotethe scalability to enhance the interactive communicationbetween objects that are friends and to achieve trustworthi-ness [3]

The initial notion of a social network of objects wasproposed by [16] which discussed how the wireless devicesform social connections on the temporary bases that arecontrolled by the node owners As the work was carriedout before the introduction of IoT it did not considerthe SIoT concept Later studies [5] investigated the objectsrsquosocial interaction where objects formed social networks andcommunicated with each other based on the rules already set

The idea of using theWeb ofThings in a social ecosystemwas presented by [17 18] where things were shared usingthe social network infrastructures for example TwitterFacebook and LinkedIn These implementations consistedof objects that communicated either through the built-inembedded servers or through smart gateways Further inthese settings the web-enabled things owned by a personprovided an interface to hisher social group of friends so thatthey can interact with the things using a social network

Lysis [19] is another good example of Social IoT platformbased on cloud infrastructure It uses the platform as a service(PaaS) model and focuses on the deployment of applicationsin the cloud space However dynamic inferencing of newsocial relationships from existing relationships is not sup-ported by this system Moreover making a modular interop-erable design by employing concepts like microservices andsemantic web technologies is not considered in this work

Paraimpu [20] provided a social Web of Things platformto connect virtual and physical things to the web In thissystem the social concept only relates to humans by provid-ing them with the capability to share things with each otherusing a human social network Also virtual things are notconsidered as VOs but rather viewed as services on other IoTplatforms

Using SIoT at the edge of the network was investigated by[21] In this system an approach was proposed to cope withthe communication delay due to the objects being remotelylocated in the cloud This approach exploits the computingresources at the network edge to deploy virtual objects

The ThingSpeak solution was used as the basis for theimplementation of an early SIoT platform [22]This platformprovided the object social behavior functions incorporated at

the centralized server In this implementation functions suchas the creation and themanagement of the social relationshipswere developedHowever VO conceptwas limited only to therecords in the remote database

Another featured SIoT frameworkwas contributed by [4]This work presented how to combine services devices usersand their social interaction to enable interactivity discoveryand recommendation of services Social relationships havealso been investigated in communities [23] where a proposedframework enables the identification of communities in thesocial networks

Although most of the research contributions in the SIoTdomain incorporate a notion of the social association ofobjects however limited information has been providedabout the social relationship model and the details on howthat can be used by IoT services Furthermore existingapproaches are lacking lightweight andmodularmechanismswhich can be utilized by services to exploit social rela-tionships efficiently In our approach we have developeda semantic ontology-based social relationship model thatprovides the capability to infer new connections in a networkof social objects Another distinction of the proposed systemis a microservices based design that utilizes the developedsocial model to provide lightweight modular simple andinteroperable IoT services

22 Microservices The microservices architecture is emerg-ing as a new trend among the practices of developingdistributed web applications To develop SOA based systemsmicroservices have become a prominent approach in real-world settings [24] In the microservices based architecturalpattern each application incorporates a collection of smallservices which execute independently and use lightweightcommunication mechanisms [9] The microservices are tar-geted for doing one thing well at a time based on theprinciple of single responsibility [25] as defined by RobertC Martine ldquoGather together those things that change forthe same reason and separate those things that change fordifferent reasonsrdquo [26] Also the microservices are conceivedas autonomous entities which means they can be changedand deployed independently of each other without requiringtheir consumers to change [24]

In the last few years several IoT architectural designswere proposed and developed Some of these designs pro-vided innovative features such as the European FP7 projectiCore [27] which proposed a cognitive framework for IoTapplication development This project provided an architec-ture with the concept of virtual objects and their compositesHowever in iCore services are designed using a traditionalSOA based monolithic style whereas the microservicesbased architecture provides a better option to develop IoTservices Furthermore in iCore VOs lack the mechanismsto semantically represent real-world objects (RWOs) whichlimits extensibility and interoperability

To support IoT applications microservices based archi-tectures are being proposed in many research initiatives andapplied in several research projects In [28] microservices areused for M2M applications realizing the fact that monolithicapproaches for M2M cannot provide a real solution Another

4 Wireless Communications and Mobile Computing

work [10] provided an analysis of using microservices archi-tecture for large-scale distributed applications This workdemonstrated that significant benefits can be achieved ascompared to generic SOA approaches when using microser-vices in an IoT platform for smart city applications

Moreover Almanac FP7 EU Project [29] provides smartcity services based on the IoT environment The projectuses microservices to employ scalability in a horizontal andvertical fashion Also in the industry microservices havebecome a solution for developing large-scale applicationsNetflix Pivotal [30] and Amazon use microservices in theirsoftware bases

The increased importance of microservices for the IoTapplications is due to the fact that they simplify complexsystems By dividing a system into smaller parts highercohesion and lower coupling can be achieved which makesit highly scalable In scenarios where requirements keepchanging continuouslymicroservices can helpmake a systemeasily modifiable Moreover the major benefits that areenvisaged when using microservices in an IoT environmentare as follows Microservices leverage scalability to provide ahighly decoupled pattern and can allow scaling individuallyTheir usefulness can be realized as when the demand for therequirement increases the system complexity also rises Inthis case a system can be supported by creating new instancesof existing services Microservices scalability [9] fits in three-dimensional space that is horizontal scalability (typicalscalability) vertical scalability (splitting different individualmicroservices) and 119911-axis scalability (splitting similar thingssuch asDBpartitioning)Microservices architecture supportsa plug-and-play behavior where system components becomeloosely coupled To acquire new functionality or replace afailed service pull the plug from one microservice and pluginto a new microservice [31] One of the major problems thatIoT is facing today is how to deal with the heterogeneityof incompatible solutions To harmonize the heterogeneitysemantic web technologies with microservices are leveragedto provide interoperable exchange and communication ofdata Microservices realize a decentralized and autonomousbehavior operating on their own priorities and scheduleThisway they provide several benefits for being utilized in an IoTdesign

3 The Proposed Design of Social Web Objects

Recently there have been several research efforts [3ndash6 17 2032] for defining the Social IoT This new aspect minimizesthe complexity generated by the communication of billionsof real-world objects and enables sharing of informationThesocial notion can be incorporated into the WoO platformto provide a semantically rich base for IoT applicationsthat can utilize real-world object relationships for efficientinformation discoveryMoreover this section provides a briefintroduction of WoO reference architecture in Section 31A classification of social relationships among web objects(virtual objects and composite virtual objects) is discussedin Section 32 and a social relationship model is presented inSection 33 Further the details of functional components forthe proposed architecture are explained in Section 34

31 Web of Objects (WoO) Reference Architecture To enablethe deployment of IoT services on the World Wide WebWoO provides a reference framework In other words itrealizes the IoT services in such a way that virtualized objectsare interwoven with resources to support the developmentdeployment and operations of IoT services [33 34]TheWoOplatform provides service functionality by merging VOs andfeatures of web applications Moreover the WoO platformuses semantic web technologies to enable interoperabilityamong heterogeneous resourcesThis realization provides thebasis for the composition and harmonization of objects toprovide smart services in an IoT domain Building servicesbased onWoOplatformusing diverse technologies includingmicroservices [35] social networks and semantic web helpsreduce the complexity and fosters the easy and efficientdevelopment of IoT applications

Virtualization has become a major concept in IoT toaddress the heterogeneity of diverse types of physical objectsVO is a digital representation of a real-world object thatcan be anything living or nonliving mobile or stationaryconcrete or immaterial In WoO VO is defined as domain-specific semantic ontology based on the VO informationmodel [36] It is uniquely identified using URI and providesinformation updates on the representative real-world objectOn the other hand WoO also provides a notion of CVOwhich aggregates one or more VOs to enable service fea-tures that satisfy the application requirements CVOs chainsemantically interoperable VOs together The WoO platformincorporates features to efficiently reuse existing VOs andhandles the complexity generated by self-management andcontrol mechanisms [37] In the WoO service level decideswhich CVOs and VOs will take part in creating an objectmashup to fulfill service objectives The service logic is savedin the form of templates and stored in the template repository[38ndash40] The domain expert or knowledge engineer definesthe service templates that are used to instantiate new services

WoO reference architecture is shown in Figure 1 Inthis architecture the service layer handles requests andprovides several management functions whereas the CVOlevel consists of functions to manage and instantiate CVOsor reuse the existing ones based on the provided serviceexecution logic New objects such as sensors are registeredin the WoO platform using a registration function and theirtemplates are generated to make them digitally availablein the form of VOs Another most important aspect isthe semantic representation of data at three-layered WoOarchitecture [23 39] The database at each layer is supportedwith semantic web technologies

32 Types of Social Relationships Previous research [3] onSIoT has derived some basic relationship types amongobjects These relationships are characterized as followsParental Object relationship (POR) exists between the objectsthat belong to the same batch such as objects that are createdin the same production process or at the same time by acommon manufacturer Cowork object relationship (CWOR)is the relationship among objects that are grouped togetherbased on some commonly shared job to be done by themSimilarly colocation object relationship (CLOR) is established

Wireless Communications and Mobile Computing 5

Application A Application C Application B

Service DB

Servicetemplate

Service registory

CVO DB

CVO template

CVO registory

VO DB

VO template

VO registory

Database

WoO service level

Compositevirtual object (CVO) sublevel

Virtual object (VO) sublevel

API APIAPIAPIUser APISe

rvice

leve

lVi

rtual

leve

l

RWO RWORWORWO

IF-1

IF-2

Figure 1 Web of Objects reference architecture

between objects belonging to the same location such ashome or office Different or same types of objects can becombined based on the common location or premises On theother hand Ownership Object Relationship (OOR) is formedamong objects belonging to the same owner Social ObjectRelationship (SOR) is another kind of relationship that iscreated among objects when they come close to each othereither random in time or periodically This relationship canbe envisaged when the owners of objects come into contactwith each other Apart from the above relationships in [41]the authors define theGuardianObject Relationship (GOR) inthe Internet of Vehicles (IoV) scenario where on-board unitsof vehicles become children in relation to the super nodesof Road Side Units This child and parent association givesa special meaning to a new hierarchical relationship

In addition to the relationships defined in other studieswe have identified few more relationships suitable for somediverse scenarios These include Sibling Object Relationship(SIBOR) that is created among objects that belong to agroup of friends or family membersThis relationship amongobjects extracts the property of trustworthiness based on therelationship of their owners Another relationship type is theguest object relationship (GSTOR) which is formed between

objects that belong to the users in the guest role for examplewhen a person visits a friendrsquos home and gets the privilegeas a guest The same can be applied to the objects that movein guest relation (GSTOR) from one place to another theywill have some privilege of accessibility of information ascompared to other objects Stranger Object Relation (STGOR)applies to objects that encounter the presence of each otherin an anonymous environment such as on the go or in thepublic environment Similar to people who meet each othersometimes regularly but are anonymous to each other or arenot fully aware of each other this relationship can be usedamong objects to form different trust levels or to form strictrestrictions to promote secure connections Moreover inservice object relationship (SVOR) objects form a relationshipwhile coordinating in the same service composition to fulfilla service request Generally in the proposed scheme servicerequest execution generates a mashup of objects and objectsthat belong to the same mashup are assumed to be in SVOR

We believe that the above defined new social relation-ships are beneficial in several distinctive scenarios Forexample SIBOR is more useful in scenarios where trustis highly important for establishing a connection Unlikethe more generalized relation POR SIBOR is established

6 Wireless Communications and Mobile Computing

SIBOR

SVOR

STGOR

GSTOR

(i) Sibling Object Relationship (SIBOR)(ii) Service Object Relationship (SVOR)

(iii) Stranger Object Relationship (STGOR)

(v) Parental Object Relationship (POR) [3](vi) Colocation Object Relationship (CLOR) [3]

(vii) Ownership Object Relationship (OOR) [3](iv) Guest Object Relationship (GSTOR)

CVO

VO

MicroservicecomposedIn

relatedTo

hasRelationship

hasRelationship

VO instancehasInstance

Data item

Data stream

acquires

retrieves

Microservice instance

CVO instance

hasInstance

hasInstance

POR

CLOR

OOR

Relationship concepts

Figure 2 Ontological model representing web objectsrsquo relationships

among objects from the same manufacturer having similarfeatures but different behaviors Similarly GSTOR is suitablein scenarios where objects use relationships for privilegedservices Imagine a person as a guest speaker in a conferencewith his smart devices where he can connect to the networkeasily and his personal devices are recognized as a guest(with GSTOR) in the venue network to avail free serviceslike high-speed Internet special notifications and othersStranger Object Relation (STGOR) is used in scenarios whereobjects are on the go and to get some information they haveto compromise with a limited trust level For instance in apublic transit system one mobile node on the move wantsto use crowdsourced information from another mobile nodewhich is not fully trusted Also SVOR is useful in servicecomposition specific scenarios where object mashups areformed to facilitate service requirement and it is also usefulin a particular orchestration of objects

To model information about microservices social webobjects and their relationships a semantic ontological modelhas been developed as depicted in Figure 2 Conceptual-ization of objects and their social relationships in semanticstructures are highly beneficial to infer new connectionsamong a network of objects with the help of reasoningtechniques The ontology facilitates the representation ofobjects as well as what theymeasure in terms of observationstheir processing and functions Web objectsrsquo relationshipontology contains the concepts that define each object interms of a class The data properties are used to representobject values and the object properties are defined to identifythe link between two objects in the ontology Major conceptsin the ontology are microservices CVOs VOs and theirsocial relationships Further microservices have an indi-vidual instance that uniquely defines a microservice objectand associated data with it Similarly CVOs and VOs arealso instantiated and contain data properties to retain theirvalues With the increasing number of objects a semanticontology model is used to perform reasoning function thathelps identify new connections Further to analyze the socialrelationship among objects (such as VOs and CVOs) theirproperties are provided in Table 1

33 Social Relationship Model for Web Objects At each levelof service life cycle objects form a social relationship witheach other to accomplish a service task Codifying the rela-tionship among web objects can provide many benefits suchas efficient information discovery from related objects andbetter composition and reuse To perceive social interactionbetweenweb objects we assume every service is based on oneormoremicroservices and other objects including CVOs andVOs At VO level VOs create several relationships with eachother based on the RWO they represent CVOs associatedwith microservices are incorporated in relationships as well

Object-to-object associations are categorized as eithervertical associations (interobject relations) or horizontalassociations (intraobject relations) as shown in Figure 3The relationships that flow from the bottom to the top inWoO based architecture are known as interobject relations(ie from VO to CVO or vice versa) On the other handrelationships are known as intraobject relations if they aregenerated within objects at each level such as between oneVO and another or within one CVO to a relative CVO Thenewly defined relationships among objects are maintained atdifferent levels which enables information discovery moreefficiently It is considered that not only will the relationshipsbe maintained when two objects (ie VOs) are used in thesame CVO or service but also they will be maintained ifobjects are used in different CVOs or services

As depicted in Figure 3 VO1 and VO2 bind in theSIBOR relationship considering the fact that they belongto the same family of CVO1 Similarly VO4 VO5 andVO6 are combined in a CWOR as they are used in thesame service However all of them do not have a commonfamily relation that makes their trustworthiness restrictiveto some level as compared to SIBOR Moreover thoughVO7 and VO8 are not used together in a service setupstill they form a STGOR relationship This relationship alsohelps codify those VOs that have similarity in premisesduring a certain point in time regularly but they had nevercombined in any service scenario before For example if aperson visits a subway regularly but stays very shortly in suchscene the userrsquos smartphone VO and subway station point

Wireless Communications and Mobile Computing 7

Table 1 Social relationship attributes

Social object relationships types AttributespropertiesSibling object relation (SIBOR) O119909 has relationship with O119910 rarr SIBOR if objectsrsquo ownership is defined as == SameFamily

Service object relationship (SVOR) O119909 has relationship with O119910 rarr SVOR if objectsrsquo serviceStatus is defined as ==SameServiceComposition

Stranger object relation (STGOR) O119909 has relationship with O119910 rarr STGOR if objectsrsquo authentication is defined as ==Anonymous

Guest object relationship (GSTOR) O119909 has relationship with O119910 rarr GSTOR if objectsrsquo ownership is defined as =SameFamilyampamp == GuestFriend

Parental object relationship (POR) O119909 has relationship with O119910 rarr POR if objectsrsquo creation is defined as == SameBatch ==SameProduction

Colocation object relationship (CLOR) O119909 has relationship with O119910 rarr CLOR if objectsrsquo proximity is defined as == Neighborhood location is defined as == SameLocation

Ownership object relationship (OOR) O119909 has relationship with O119910 rarr OOR if objectsrsquo proprietorship is defined as == SameOwner

VO2VO1 VO4VO3 VO6

CVO 1

Service A Service B Service C Service D

CVO 4CVO 3CVO 2

RWO RWORWORWORWO

Service E

Horizontal intraobject (intra object relation)

Vert

ical

asso

ciat

ion

(Inte

robj

ect r

elatio

n)

CVO 5

VO5

RWO

VO7

RWO

Service F

CVO 6

VO8

RWO

SIBOR

PORCLOR

Application 1 Application 2

SIBOR

Application 3

STGOR

CWOR

CLOR

Figure 3 Hierarchical social relationships of web objects

VO or subway security camera VO may establish STGORThis may help reuse VOs in service scenarios where onlyfor short duration a VO object is required At CVO levelCVO2 forms two different relationships which increasesthe level of connectivity of the CVO CVO2 first shares aCLOR with CVO1 and CVO3 CVO4 and CVO5 togetherSecondly CVO2 is combined in a SIBOR with CVO3 andbecomes in the same service family Further in the selecteduse case scenario described in Section 4 several other socialinteractions have also been elaborated

34 Social Web Objects Architecture SIoT envisages a systemwhere the social framework will bring smart devices andpeople to interact with each other By incorporating webtechnologies like SOA based microservices IoT services canbe rendered on top of the social framework The proposedsocial web objects architecture (as shown in Figure 4) hasbeen decomposed into three levels service level object

virtualization level and aggregated object virtualization levelAt the service level to support social relationships withinweb objects severalmicroservices have been designed whichare discussed further in the following section Moreoverthe data management function in the proposed design helpseach layer to interconnect with semantic databases TheSPARQL endpoints have been defined at the service and theobject virtualization levels that expose interfaces to retrievestore and modify RDF graphs Several interfaces allow theknowledge engineer domain expert and the developer tocreate service templates and VOs as well as update the RWKmodel user profile and policies

341 Service Level Functional Components The service levelfunctions handle operations from the request inception tothe execution of services This level is supported by somecore functions common to be used in each service life cycleThese include the management function to handle service

8 Wireless Communications and Mobile Computing

Microservices communication hub Servicetemplate

RWK model(RDF concepts ampfacts)

Application A Application B Application C

VO DB

VO template

VO registory

CVO DB

CVO template

CVO registory

Serviceregistory

ServiceDB

User profile RDFOWL

Serv

ice le

vel

Aggr

egat

ed o

bj v

irtua

lizat

ion

level

Obj

ect v

irtua

lizat

ion

level

VO management amp optimization engine

VO generator

VO ownership management

VO container

Service Interface

CVO Level Interface

VO level interface

DatabaseDatabase

Developer

Installer

RWK

Service DB

CVO DB

VO DB

Knowledge engineer

API APIAPIAPI

User

RWK situation mgt

Composition engine

Service management

Discovery amp lookup

Service execution environment

CVO reuse management

CVO generatorand composer

system knowledge

engineAP

I

Domainexpertknowledge engineer

API

API

API

Semantic RWK s

Service lookup

Request evaluatorService

registration s

Sem

antic

Dat

a m

gt

User situation management

User profilemgt

Service reuse tracker s

Semantic match makerService life

status mgt

Integration validator

Composition maker

CVO registration

CVO hypothesis analyzer

CVO coordinator

Event processor

Semantic context collector

Service template mgt

Service binding s

CVO template mgt

Selection analyzer

Similarity checker

CVO discovery

Link mgt s Relationship lookup s

Rel dependability s

Relation observer s

Service logs mgt s

Situation discovery classification projection services

CVO life cyclemanagement

VO availability validator

Conflict resolution

VO registration VO access mgt

VO coordinator

VO identity mgtVO template mgt

VO metadata mgt

VO data synthesizer

VO discovery VO energy efficiency tracking

Sensor and actuators

Gateway

CVOconfiguration amp management

Workflow mgts

Group mgts

Figure 4 Social web objects functional architecture

Wireless Communications and Mobile Computing 9

requests and initiate service provisioning processes theservice discovery function to select the available services thecomposition engine to enable service mashups and the Real-World Knowledge (RWK) and situation management func-tion to acquire RWK and continuously maintain it Besidesthese core functions several microservices have been usedto provide the plug-and-play feature in the proposed designthat is in case of service failure it is replaced with anotherone These services include the Request Evaluator microser-vice which interprets a service request and matches a requestquery to the service template The registration microserviceregisters newly added service objects to the registry Whena new template is instantiated objects are put in serviceand to know the existence of available service instances theyare recorded in the service registry The lookup microserviceis defined to search for the required service objects usingthe semantic representation The representations availablein RDFOWL format are queried from the registry basedon the request parameters Service life cycle managementkeeps track of the states of service objects during their lifecycle whereas RWKmanagement microservice is a semanticdata processing service which processes facts about userpreferences profile and situational information

To realize service provisioning it is always not possible tosatisfy the service requirement with a single service functionService composition and harmonization features are requiredto fulfill a demanding service request Service composition isnot a single operation many microservices are used to com-pose the individual features One of the major componentsof the composition is the Workflow Management (WFM)microservice which is responsible for decomposing the ser-vice requirement if no single service is available to satisfythe task WFM microservice identifies the service objectsusing input and output interfaces In this concern it usesthe matchmaking microservice to identify the approximatematches that can serve the required service functionalityHere service objects are semantically represented in the formof ontologies The semantic ontology alignment algorithm isused tomatch the service up to a certain threshold level that isdefined by the matchmaking microservice The reuse trackermicroservice is used to identify the current service instanceusage by the application it incorporates a coordinationmechanism before instantiating any new instance and thishelps in service reuse by many clients Binding microserviceenables tying of services selected by WFM this functionsynchronizes input and output of services in a workflowto produce a single service output based on the generatedcomposition plan

Furthermore user characterization is another importantelement to support the IoT services bymatching user require-ments more closely The User Profile Manager microservicehandles many facts related to the human user These includeuser profile preference context and policies Semantic Con-text Collector microservice organizes the services requestedby the user and the context in which these services wererequested This helps in identifying user interest with respectto the service context User context or situation helps inservice selection more efficiently if a user requests againwith a similar service requirement Some microservices have

been designed to handle user situation information thesemicroservices include situation discovery classification andrecognition functions Situation discovery is used to processsensor data that is provided by CVOs to prompt a situationwhereas machine learning algorithms are applied to removethe false values and data normalization is performed in caseinappropriate triggers in the data exist Situation classificationincorporates the reasoning methods and rules to generatea relationship over detected events and refine the missingknowledge between the events Situation projection analyzesthe events data with the help of machine learning methodsand provides an output in the form of predicted facts thatare related to the situation being detected Moreover allthe microservices coordinate using a communication hub toshare information with each other

Aflowof service inception to service execution in the pro-posed architecture is depicted in Figure 5 where service man-agement is responsible for initiating the above-mentionedfunctionalities and instantiating the microservices This pro-cess further results in the generation of CVOVO mashupgraphs to be handled by CVO management (discussed inSection 342) Situational information has also been used toimprove request analysis and service provisioning whereasVO management (discussed in Section 343) acquires andaggregates data from sensors and other RWOs

Social RelationshipManagementMicroservicesTo support thesocial relationships among web objects at each layer of theproposed system relationship management microservicesare defined which support the codification of relationshipsamong web objects (VOs and CVOs) and their managementThese microservices are defined as follows Group manage-ment microservice identifies the grouping of objects intospecific sets based on the type and interaction of objects itbuilds a social graph of the object relationships Link man-agement microservice incorporates mechanisms to maintainrelationships among different objects and it includes severalother subfunctions The first subfunction is object selectionwhich involves choosing candidate objects that are likelyto form a particular association The second subfunctionis matchmaking service which provides exact relationshipmatch based on the type of objects The third subfunctionis the association life cycle manager which maintains therelationship status between objects it checkswhether they arein active relation or not It keeps track of relationship validityand also the duration of relationships Relationship observermicroservice enables the object activities to be observedand it also handles the mutual sharing which defines whatinformation an object is allowed to share or use of anotherobject based on the relationship among them Relationshipdependability recognizer microservice identifies maintainsand continuously improves the level of reliability amongobjects If objects A and B are frequently interacting andalways perform a task together that leads to successfulexecution of an application to serve the requirements thenthey are more likely to form a reliable relationship with eachother The consistency of the relationship allows objects toshare their information with fewer constraints as comparedto unpredictable association among objects Relationship

10 Wireless Communications and Mobile Computing

Application domain

Service manager

Composite VO mgt

ServiceCVOVO registry DB

VO management

SituationRWK management

User profile

Evaluate RequestDiscover microservicesSelect service template

Composition mgt

Req CVO entries

Microservice container

CVO registrationCVO ontology lookupReuse approximation

Service request

Resp CVOs

VO instantiate req

Req user situation parameters

Resp user situation parameters

Req VO entriesResp VOs

Req user modelResp user model

SelectVOs

Microservice notificationstatus

Instantiatemicroservice

Req CVOcreation

VO notificationCVO notificationMicroservice deployment

Service resp

VO RegistrationVO ontology discovery

VO metadata mgt Update preferences

Update events

Situation projection

Update user model

Req serviceService resp

Situation detection

Classified situation

Figure 5 Request initiation and service execution flow in the proposed architecture

lookup microservice incorporates the discovery algorithm(as given in listing of Algorithm 1) to discover the socialrelationships and maintains the list of all objects and theirpotential association rating The rating defines the opportu-nity for objects to form a relationship with each other

Moreover the operation flow of social microservices hasbeen illustrated in Figure 6 where VOmanagement retrievesthe social relationship among objects this is queried usinglink management which uses a lookup service Associationsare maintained in a social relationship graph using semanticontology and queried using the relation observer serviceThesocial graph is also updated and maintained continuouslywith respect to changing links among objects on the basisof which VOs are selected

342 Functional Components in Aggregated Object Virtual-ization Level Aggregated object virtualization (AOV) levelinvolves all the necessary functions to instantiate manageand continuously monitor CVOs Besides it includes theinterface required by the service level to interact with CVOcomponents Service level provides the mashup graphs ofCVOs and VOs that are required to fulfill a service requestAggregation level also supports some core functions theseare categorized as CVO configuration and management todecompose requests from service level and manage CVOinstances CVO generator to instantiate CVOs compositionfunction to form CVO and VO mashups reuse management

to select existing CVOs that approximately match servicerequirement and system knowledge engine to grow knowl-edge for the optimal use of CVO resources Further otheraggregation level functionalities are as follows registrationfunction records the CVO entry into the semantic CVOregistry in the form of RDFJSON format CVO includesontologies that specify conditions to be applied on theVO data Also at this level templates are created by adomain expert or knowledge engineer which consist offunctionalities associated with each CVO type Templatemanagement module provides an interface to include tem-plates to the CVO template repository and also supportsthe modification mechanism CVOs are discovered usingtheir semantic annotation via the discovery function CVOselection analyzer function provides estimated selection ofa CVO for reuse if there is no single CVO that can exactlyprovide the required service This is supported by similar-ity checking mechanism to analyze the level of similaritybefore recommending for reuse At aggregation level anotherimportant function is event processing event streams gen-erated by object virtualization level are highly valuable toinfer situational awareness and building RWK that is usedby high-level functions Event processing module facilitatesprocessing of events and provides generated facts as outputEvent processing is supported by CVO hypothesis analyzerthat incorporates several hypotheses which are trained overdata to build system level knowledge Aggregation level also

Wireless Communications and Mobile Computing 11

VO mgt Social relationship manager

Social link mgt

Relationship lookup MS

Group mgt

Relation observer

Social relation graph

Object selectionQuery generation

Req lookup

Social rel queryLookup resp

Modified social graph

Update dependencies

graph result

Update change inassociation

Generate update queryUpdate triples

Req relation graph

MatchmakingValidate association

Infer relation

Organize group

Add member

Select registered VOs

Execute query

Relation graph resp

Retrieve social object relation

Update VO

Social graph update

Inferred relationships

AckUpdate Group

Update VO

Social rel search

Figure 6 Sequence of operation required to establish a social relationship among objects

provides composition function which provides the basis formerging multiple VOs to generate single service feature andvalidation function to validate the compositions of multipleVOs Moreover the coordinator helps in resolving conflictsin case of simultaneous access of single CVO by multipleservices together

343 Functional Components in Object Virtualization LevelAlthough IoT middleware virtualizes sensors and actuatorsin some form of virtual entities however in WoO everyliving or nonliving thing can be represented in the virtualworld VOs are supported by an information model [1415] which includes the representation of RWO that canbe ICT or non-ICT In the proposed architecture objectvirtualization level includes functions to create maintainand coordinate VOs such as VO generator VOmanagementand optimization engine VO registration function providesan interface to register VOs with the help of VO ownershipmanagement function where the VO ownership is main-tained Template management function handles templatesor loads updated ones as provided by the domain expertMetadata management maintains data associated with VOsas VO is a digital representative of real-world entities thereis a high need to store metadata information to recognizethe class of sensed data Use of metadata provides the realvalue of the data in the form of the context stored withinit Furthermore VO data synthesizer service handles the

discrepancies if found in the data corresponding to VO thisincludes data manipulation and missing value rectificationsConflict resolution function helps in case the same VO isused by multiple service instances to resolve the conflictsAlso VO access management function controls access forVOs in case access right information has been defined bythe VO owner whereas identification management modulemaintains identification information about VOs so that eachVO can be uniquely identified in the system

344 Social Relationship Discovery and Composition Toidentify associations among web objects within a socialrelationship graph an algorithm is elaborated briefly In thefollowing algorithm the microservices that are in executionare retrieved first represented as M120583 next all the CVOsassociated with each of those microservices are recoveredin Mc and further the corresponding VO model Mvis iterated In the next step executing the query statementroutine returns the results denoted as The process offinding the relationships is carried out through lines (6)ndash(19)in multiple nested iterations as shown in the pseudocode ofAlgorithm 1 listing

Algorithm 2 facilitates the composition of objects basedon social association types This algorithm takes as input theset of object social relationships denoted by Z and registryentries of the objects that are currently available in thesystem represented as Re After the object model denoted

12 Wireless Communications and Mobile Computing

Require (C) (R119890)(1)Output S (social relationship graph of objects)(2) M120583 larr Load Microservices in model(3) M119888 larr Load CVOs in model(4) MV larr Load VOs in model(5) larr executeQueryStatement (M120583 M119888 MV 119876)(6) for All 120583 in 120583 do (iterate Microservice instance being used)(7) for All 119874 isin 120583 do (check CVO and VOs used by the Services)(8) if O119894 == output of C119877 in a relationship set R119888 then(9) add C119877 to119871(10) else(11) if O119894 == output of V119877 in relationship set RV then(12) add V119877 to119871(13) N119894 larr tag (Assign relationship tag to each object entry)(14) else(15) add O119894 to119880(16) end if(17) end if(18) end for(19) end for

Algorithm 1 Social relationship discovery

Require (C) (R119890) (Z)(1)Output C (Composite Service)(2) Mlarr List all objects available (Microservices CVOs VOs) in model(3) larr executeQueryStatement (M 119876)(4) Zlarr executeQueryStatement (M 1198761015840)(5) for All 120590119894 isin do(6) for All 120582119894 isin 120590 do(7) if 120582119894 == any 119911 in Z then(8) add 120582119894 toLm(9) storeLm(10) end if(11) end for(12) for All 120603i isin Lm do(13) if 120603i == any 120603i inLm then(14) 120597 larr ranking (Assign rank to each service)(15) add 120603i toLR(16) storeLR(17) end if(18) end for(19) for All 120590119895 isin LR do(20) if 120590119895(R120597) gt 120581 then(21) add 120590119895 to Wf(22) Pqlarr assign to queue(23) Sort Pq(24) Formulate Wf(25) end if(26) end for

Algorithm 2 Composition of objects based on social relationship

as M is loaded the first step is to compose objects basedon their relationship types This way the SPARQL queriesare executed the first query is denoted as 119876 to retrievethe available service templates and the second query isrepresented as 1198761015840 to extract the relationships associated with

the services From line (5) to (11) first the social relationshipis searched among objects and then the found relative objectsare composed in groups The design philosophy employedover here is to assign a ranking to each selected groupbased on the relationship type that helps in a more efficient

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 4: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

4 Wireless Communications and Mobile Computing

work [10] provided an analysis of using microservices archi-tecture for large-scale distributed applications This workdemonstrated that significant benefits can be achieved ascompared to generic SOA approaches when using microser-vices in an IoT platform for smart city applications

Moreover Almanac FP7 EU Project [29] provides smartcity services based on the IoT environment The projectuses microservices to employ scalability in a horizontal andvertical fashion Also in the industry microservices havebecome a solution for developing large-scale applicationsNetflix Pivotal [30] and Amazon use microservices in theirsoftware bases

The increased importance of microservices for the IoTapplications is due to the fact that they simplify complexsystems By dividing a system into smaller parts highercohesion and lower coupling can be achieved which makesit highly scalable In scenarios where requirements keepchanging continuouslymicroservices can helpmake a systemeasily modifiable Moreover the major benefits that areenvisaged when using microservices in an IoT environmentare as follows Microservices leverage scalability to provide ahighly decoupled pattern and can allow scaling individuallyTheir usefulness can be realized as when the demand for therequirement increases the system complexity also rises Inthis case a system can be supported by creating new instancesof existing services Microservices scalability [9] fits in three-dimensional space that is horizontal scalability (typicalscalability) vertical scalability (splitting different individualmicroservices) and 119911-axis scalability (splitting similar thingssuch asDBpartitioning)Microservices architecture supportsa plug-and-play behavior where system components becomeloosely coupled To acquire new functionality or replace afailed service pull the plug from one microservice and pluginto a new microservice [31] One of the major problems thatIoT is facing today is how to deal with the heterogeneityof incompatible solutions To harmonize the heterogeneitysemantic web technologies with microservices are leveragedto provide interoperable exchange and communication ofdata Microservices realize a decentralized and autonomousbehavior operating on their own priorities and scheduleThisway they provide several benefits for being utilized in an IoTdesign

3 The Proposed Design of Social Web Objects

Recently there have been several research efforts [3ndash6 17 2032] for defining the Social IoT This new aspect minimizesthe complexity generated by the communication of billionsof real-world objects and enables sharing of informationThesocial notion can be incorporated into the WoO platformto provide a semantically rich base for IoT applicationsthat can utilize real-world object relationships for efficientinformation discoveryMoreover this section provides a briefintroduction of WoO reference architecture in Section 31A classification of social relationships among web objects(virtual objects and composite virtual objects) is discussedin Section 32 and a social relationship model is presented inSection 33 Further the details of functional components forthe proposed architecture are explained in Section 34

31 Web of Objects (WoO) Reference Architecture To enablethe deployment of IoT services on the World Wide WebWoO provides a reference framework In other words itrealizes the IoT services in such a way that virtualized objectsare interwoven with resources to support the developmentdeployment and operations of IoT services [33 34]TheWoOplatform provides service functionality by merging VOs andfeatures of web applications Moreover the WoO platformuses semantic web technologies to enable interoperabilityamong heterogeneous resourcesThis realization provides thebasis for the composition and harmonization of objects toprovide smart services in an IoT domain Building servicesbased onWoOplatformusing diverse technologies includingmicroservices [35] social networks and semantic web helpsreduce the complexity and fosters the easy and efficientdevelopment of IoT applications

Virtualization has become a major concept in IoT toaddress the heterogeneity of diverse types of physical objectsVO is a digital representation of a real-world object thatcan be anything living or nonliving mobile or stationaryconcrete or immaterial In WoO VO is defined as domain-specific semantic ontology based on the VO informationmodel [36] It is uniquely identified using URI and providesinformation updates on the representative real-world objectOn the other hand WoO also provides a notion of CVOwhich aggregates one or more VOs to enable service fea-tures that satisfy the application requirements CVOs chainsemantically interoperable VOs together The WoO platformincorporates features to efficiently reuse existing VOs andhandles the complexity generated by self-management andcontrol mechanisms [37] In the WoO service level decideswhich CVOs and VOs will take part in creating an objectmashup to fulfill service objectives The service logic is savedin the form of templates and stored in the template repository[38ndash40] The domain expert or knowledge engineer definesthe service templates that are used to instantiate new services

WoO reference architecture is shown in Figure 1 Inthis architecture the service layer handles requests andprovides several management functions whereas the CVOlevel consists of functions to manage and instantiate CVOsor reuse the existing ones based on the provided serviceexecution logic New objects such as sensors are registeredin the WoO platform using a registration function and theirtemplates are generated to make them digitally availablein the form of VOs Another most important aspect isthe semantic representation of data at three-layered WoOarchitecture [23 39] The database at each layer is supportedwith semantic web technologies

32 Types of Social Relationships Previous research [3] onSIoT has derived some basic relationship types amongobjects These relationships are characterized as followsParental Object relationship (POR) exists between the objectsthat belong to the same batch such as objects that are createdin the same production process or at the same time by acommon manufacturer Cowork object relationship (CWOR)is the relationship among objects that are grouped togetherbased on some commonly shared job to be done by themSimilarly colocation object relationship (CLOR) is established

Wireless Communications and Mobile Computing 5

Application A Application C Application B

Service DB

Servicetemplate

Service registory

CVO DB

CVO template

CVO registory

VO DB

VO template

VO registory

Database

WoO service level

Compositevirtual object (CVO) sublevel

Virtual object (VO) sublevel

API APIAPIAPIUser APISe

rvice

leve

lVi

rtual

leve

l

RWO RWORWORWO

IF-1

IF-2

Figure 1 Web of Objects reference architecture

between objects belonging to the same location such ashome or office Different or same types of objects can becombined based on the common location or premises On theother hand Ownership Object Relationship (OOR) is formedamong objects belonging to the same owner Social ObjectRelationship (SOR) is another kind of relationship that iscreated among objects when they come close to each othereither random in time or periodically This relationship canbe envisaged when the owners of objects come into contactwith each other Apart from the above relationships in [41]the authors define theGuardianObject Relationship (GOR) inthe Internet of Vehicles (IoV) scenario where on-board unitsof vehicles become children in relation to the super nodesof Road Side Units This child and parent association givesa special meaning to a new hierarchical relationship

In addition to the relationships defined in other studieswe have identified few more relationships suitable for somediverse scenarios These include Sibling Object Relationship(SIBOR) that is created among objects that belong to agroup of friends or family membersThis relationship amongobjects extracts the property of trustworthiness based on therelationship of their owners Another relationship type is theguest object relationship (GSTOR) which is formed between

objects that belong to the users in the guest role for examplewhen a person visits a friendrsquos home and gets the privilegeas a guest The same can be applied to the objects that movein guest relation (GSTOR) from one place to another theywill have some privilege of accessibility of information ascompared to other objects Stranger Object Relation (STGOR)applies to objects that encounter the presence of each otherin an anonymous environment such as on the go or in thepublic environment Similar to people who meet each othersometimes regularly but are anonymous to each other or arenot fully aware of each other this relationship can be usedamong objects to form different trust levels or to form strictrestrictions to promote secure connections Moreover inservice object relationship (SVOR) objects form a relationshipwhile coordinating in the same service composition to fulfilla service request Generally in the proposed scheme servicerequest execution generates a mashup of objects and objectsthat belong to the same mashup are assumed to be in SVOR

We believe that the above defined new social relation-ships are beneficial in several distinctive scenarios Forexample SIBOR is more useful in scenarios where trustis highly important for establishing a connection Unlikethe more generalized relation POR SIBOR is established

6 Wireless Communications and Mobile Computing

SIBOR

SVOR

STGOR

GSTOR

(i) Sibling Object Relationship (SIBOR)(ii) Service Object Relationship (SVOR)

(iii) Stranger Object Relationship (STGOR)

(v) Parental Object Relationship (POR) [3](vi) Colocation Object Relationship (CLOR) [3]

(vii) Ownership Object Relationship (OOR) [3](iv) Guest Object Relationship (GSTOR)

CVO

VO

MicroservicecomposedIn

relatedTo

hasRelationship

hasRelationship

VO instancehasInstance

Data item

Data stream

acquires

retrieves

Microservice instance

CVO instance

hasInstance

hasInstance

POR

CLOR

OOR

Relationship concepts

Figure 2 Ontological model representing web objectsrsquo relationships

among objects from the same manufacturer having similarfeatures but different behaviors Similarly GSTOR is suitablein scenarios where objects use relationships for privilegedservices Imagine a person as a guest speaker in a conferencewith his smart devices where he can connect to the networkeasily and his personal devices are recognized as a guest(with GSTOR) in the venue network to avail free serviceslike high-speed Internet special notifications and othersStranger Object Relation (STGOR) is used in scenarios whereobjects are on the go and to get some information they haveto compromise with a limited trust level For instance in apublic transit system one mobile node on the move wantsto use crowdsourced information from another mobile nodewhich is not fully trusted Also SVOR is useful in servicecomposition specific scenarios where object mashups areformed to facilitate service requirement and it is also usefulin a particular orchestration of objects

To model information about microservices social webobjects and their relationships a semantic ontological modelhas been developed as depicted in Figure 2 Conceptual-ization of objects and their social relationships in semanticstructures are highly beneficial to infer new connectionsamong a network of objects with the help of reasoningtechniques The ontology facilitates the representation ofobjects as well as what theymeasure in terms of observationstheir processing and functions Web objectsrsquo relationshipontology contains the concepts that define each object interms of a class The data properties are used to representobject values and the object properties are defined to identifythe link between two objects in the ontology Major conceptsin the ontology are microservices CVOs VOs and theirsocial relationships Further microservices have an indi-vidual instance that uniquely defines a microservice objectand associated data with it Similarly CVOs and VOs arealso instantiated and contain data properties to retain theirvalues With the increasing number of objects a semanticontology model is used to perform reasoning function thathelps identify new connections Further to analyze the socialrelationship among objects (such as VOs and CVOs) theirproperties are provided in Table 1

33 Social Relationship Model for Web Objects At each levelof service life cycle objects form a social relationship witheach other to accomplish a service task Codifying the rela-tionship among web objects can provide many benefits suchas efficient information discovery from related objects andbetter composition and reuse To perceive social interactionbetweenweb objects we assume every service is based on oneormoremicroservices and other objects including CVOs andVOs At VO level VOs create several relationships with eachother based on the RWO they represent CVOs associatedwith microservices are incorporated in relationships as well

Object-to-object associations are categorized as eithervertical associations (interobject relations) or horizontalassociations (intraobject relations) as shown in Figure 3The relationships that flow from the bottom to the top inWoO based architecture are known as interobject relations(ie from VO to CVO or vice versa) On the other handrelationships are known as intraobject relations if they aregenerated within objects at each level such as between oneVO and another or within one CVO to a relative CVO Thenewly defined relationships among objects are maintained atdifferent levels which enables information discovery moreefficiently It is considered that not only will the relationshipsbe maintained when two objects (ie VOs) are used in thesame CVO or service but also they will be maintained ifobjects are used in different CVOs or services

As depicted in Figure 3 VO1 and VO2 bind in theSIBOR relationship considering the fact that they belongto the same family of CVO1 Similarly VO4 VO5 andVO6 are combined in a CWOR as they are used in thesame service However all of them do not have a commonfamily relation that makes their trustworthiness restrictiveto some level as compared to SIBOR Moreover thoughVO7 and VO8 are not used together in a service setupstill they form a STGOR relationship This relationship alsohelps codify those VOs that have similarity in premisesduring a certain point in time regularly but they had nevercombined in any service scenario before For example if aperson visits a subway regularly but stays very shortly in suchscene the userrsquos smartphone VO and subway station point

Wireless Communications and Mobile Computing 7

Table 1 Social relationship attributes

Social object relationships types AttributespropertiesSibling object relation (SIBOR) O119909 has relationship with O119910 rarr SIBOR if objectsrsquo ownership is defined as == SameFamily

Service object relationship (SVOR) O119909 has relationship with O119910 rarr SVOR if objectsrsquo serviceStatus is defined as ==SameServiceComposition

Stranger object relation (STGOR) O119909 has relationship with O119910 rarr STGOR if objectsrsquo authentication is defined as ==Anonymous

Guest object relationship (GSTOR) O119909 has relationship with O119910 rarr GSTOR if objectsrsquo ownership is defined as =SameFamilyampamp == GuestFriend

Parental object relationship (POR) O119909 has relationship with O119910 rarr POR if objectsrsquo creation is defined as == SameBatch ==SameProduction

Colocation object relationship (CLOR) O119909 has relationship with O119910 rarr CLOR if objectsrsquo proximity is defined as == Neighborhood location is defined as == SameLocation

Ownership object relationship (OOR) O119909 has relationship with O119910 rarr OOR if objectsrsquo proprietorship is defined as == SameOwner

VO2VO1 VO4VO3 VO6

CVO 1

Service A Service B Service C Service D

CVO 4CVO 3CVO 2

RWO RWORWORWORWO

Service E

Horizontal intraobject (intra object relation)

Vert

ical

asso

ciat

ion

(Inte

robj

ect r

elatio

n)

CVO 5

VO5

RWO

VO7

RWO

Service F

CVO 6

VO8

RWO

SIBOR

PORCLOR

Application 1 Application 2

SIBOR

Application 3

STGOR

CWOR

CLOR

Figure 3 Hierarchical social relationships of web objects

VO or subway security camera VO may establish STGORThis may help reuse VOs in service scenarios where onlyfor short duration a VO object is required At CVO levelCVO2 forms two different relationships which increasesthe level of connectivity of the CVO CVO2 first shares aCLOR with CVO1 and CVO3 CVO4 and CVO5 togetherSecondly CVO2 is combined in a SIBOR with CVO3 andbecomes in the same service family Further in the selecteduse case scenario described in Section 4 several other socialinteractions have also been elaborated

34 Social Web Objects Architecture SIoT envisages a systemwhere the social framework will bring smart devices andpeople to interact with each other By incorporating webtechnologies like SOA based microservices IoT services canbe rendered on top of the social framework The proposedsocial web objects architecture (as shown in Figure 4) hasbeen decomposed into three levels service level object

virtualization level and aggregated object virtualization levelAt the service level to support social relationships withinweb objects severalmicroservices have been designed whichare discussed further in the following section Moreoverthe data management function in the proposed design helpseach layer to interconnect with semantic databases TheSPARQL endpoints have been defined at the service and theobject virtualization levels that expose interfaces to retrievestore and modify RDF graphs Several interfaces allow theknowledge engineer domain expert and the developer tocreate service templates and VOs as well as update the RWKmodel user profile and policies

341 Service Level Functional Components The service levelfunctions handle operations from the request inception tothe execution of services This level is supported by somecore functions common to be used in each service life cycleThese include the management function to handle service

8 Wireless Communications and Mobile Computing

Microservices communication hub Servicetemplate

RWK model(RDF concepts ampfacts)

Application A Application B Application C

VO DB

VO template

VO registory

CVO DB

CVO template

CVO registory

Serviceregistory

ServiceDB

User profile RDFOWL

Serv

ice le

vel

Aggr

egat

ed o

bj v

irtua

lizat

ion

level

Obj

ect v

irtua

lizat

ion

level

VO management amp optimization engine

VO generator

VO ownership management

VO container

Service Interface

CVO Level Interface

VO level interface

DatabaseDatabase

Developer

Installer

RWK

Service DB

CVO DB

VO DB

Knowledge engineer

API APIAPIAPI

User

RWK situation mgt

Composition engine

Service management

Discovery amp lookup

Service execution environment

CVO reuse management

CVO generatorand composer

system knowledge

engineAP

I

Domainexpertknowledge engineer

API

API

API

Semantic RWK s

Service lookup

Request evaluatorService

registration s

Sem

antic

Dat

a m

gt

User situation management

User profilemgt

Service reuse tracker s

Semantic match makerService life

status mgt

Integration validator

Composition maker

CVO registration

CVO hypothesis analyzer

CVO coordinator

Event processor

Semantic context collector

Service template mgt

Service binding s

CVO template mgt

Selection analyzer

Similarity checker

CVO discovery

Link mgt s Relationship lookup s

Rel dependability s

Relation observer s

Service logs mgt s

Situation discovery classification projection services

CVO life cyclemanagement

VO availability validator

Conflict resolution

VO registration VO access mgt

VO coordinator

VO identity mgtVO template mgt

VO metadata mgt

VO data synthesizer

VO discovery VO energy efficiency tracking

Sensor and actuators

Gateway

CVOconfiguration amp management

Workflow mgts

Group mgts

Figure 4 Social web objects functional architecture

Wireless Communications and Mobile Computing 9

requests and initiate service provisioning processes theservice discovery function to select the available services thecomposition engine to enable service mashups and the Real-World Knowledge (RWK) and situation management func-tion to acquire RWK and continuously maintain it Besidesthese core functions several microservices have been usedto provide the plug-and-play feature in the proposed designthat is in case of service failure it is replaced with anotherone These services include the Request Evaluator microser-vice which interprets a service request and matches a requestquery to the service template The registration microserviceregisters newly added service objects to the registry Whena new template is instantiated objects are put in serviceand to know the existence of available service instances theyare recorded in the service registry The lookup microserviceis defined to search for the required service objects usingthe semantic representation The representations availablein RDFOWL format are queried from the registry basedon the request parameters Service life cycle managementkeeps track of the states of service objects during their lifecycle whereas RWKmanagement microservice is a semanticdata processing service which processes facts about userpreferences profile and situational information

To realize service provisioning it is always not possible tosatisfy the service requirement with a single service functionService composition and harmonization features are requiredto fulfill a demanding service request Service composition isnot a single operation many microservices are used to com-pose the individual features One of the major componentsof the composition is the Workflow Management (WFM)microservice which is responsible for decomposing the ser-vice requirement if no single service is available to satisfythe task WFM microservice identifies the service objectsusing input and output interfaces In this concern it usesthe matchmaking microservice to identify the approximatematches that can serve the required service functionalityHere service objects are semantically represented in the formof ontologies The semantic ontology alignment algorithm isused tomatch the service up to a certain threshold level that isdefined by the matchmaking microservice The reuse trackermicroservice is used to identify the current service instanceusage by the application it incorporates a coordinationmechanism before instantiating any new instance and thishelps in service reuse by many clients Binding microserviceenables tying of services selected by WFM this functionsynchronizes input and output of services in a workflowto produce a single service output based on the generatedcomposition plan

Furthermore user characterization is another importantelement to support the IoT services bymatching user require-ments more closely The User Profile Manager microservicehandles many facts related to the human user These includeuser profile preference context and policies Semantic Con-text Collector microservice organizes the services requestedby the user and the context in which these services wererequested This helps in identifying user interest with respectto the service context User context or situation helps inservice selection more efficiently if a user requests againwith a similar service requirement Some microservices have

been designed to handle user situation information thesemicroservices include situation discovery classification andrecognition functions Situation discovery is used to processsensor data that is provided by CVOs to prompt a situationwhereas machine learning algorithms are applied to removethe false values and data normalization is performed in caseinappropriate triggers in the data exist Situation classificationincorporates the reasoning methods and rules to generatea relationship over detected events and refine the missingknowledge between the events Situation projection analyzesthe events data with the help of machine learning methodsand provides an output in the form of predicted facts thatare related to the situation being detected Moreover allthe microservices coordinate using a communication hub toshare information with each other

Aflowof service inception to service execution in the pro-posed architecture is depicted in Figure 5 where service man-agement is responsible for initiating the above-mentionedfunctionalities and instantiating the microservices This pro-cess further results in the generation of CVOVO mashupgraphs to be handled by CVO management (discussed inSection 342) Situational information has also been used toimprove request analysis and service provisioning whereasVO management (discussed in Section 343) acquires andaggregates data from sensors and other RWOs

Social RelationshipManagementMicroservicesTo support thesocial relationships among web objects at each layer of theproposed system relationship management microservicesare defined which support the codification of relationshipsamong web objects (VOs and CVOs) and their managementThese microservices are defined as follows Group manage-ment microservice identifies the grouping of objects intospecific sets based on the type and interaction of objects itbuilds a social graph of the object relationships Link man-agement microservice incorporates mechanisms to maintainrelationships among different objects and it includes severalother subfunctions The first subfunction is object selectionwhich involves choosing candidate objects that are likelyto form a particular association The second subfunctionis matchmaking service which provides exact relationshipmatch based on the type of objects The third subfunctionis the association life cycle manager which maintains therelationship status between objects it checkswhether they arein active relation or not It keeps track of relationship validityand also the duration of relationships Relationship observermicroservice enables the object activities to be observedand it also handles the mutual sharing which defines whatinformation an object is allowed to share or use of anotherobject based on the relationship among them Relationshipdependability recognizer microservice identifies maintainsand continuously improves the level of reliability amongobjects If objects A and B are frequently interacting andalways perform a task together that leads to successfulexecution of an application to serve the requirements thenthey are more likely to form a reliable relationship with eachother The consistency of the relationship allows objects toshare their information with fewer constraints as comparedto unpredictable association among objects Relationship

10 Wireless Communications and Mobile Computing

Application domain

Service manager

Composite VO mgt

ServiceCVOVO registry DB

VO management

SituationRWK management

User profile

Evaluate RequestDiscover microservicesSelect service template

Composition mgt

Req CVO entries

Microservice container

CVO registrationCVO ontology lookupReuse approximation

Service request

Resp CVOs

VO instantiate req

Req user situation parameters

Resp user situation parameters

Req VO entriesResp VOs

Req user modelResp user model

SelectVOs

Microservice notificationstatus

Instantiatemicroservice

Req CVOcreation

VO notificationCVO notificationMicroservice deployment

Service resp

VO RegistrationVO ontology discovery

VO metadata mgt Update preferences

Update events

Situation projection

Update user model

Req serviceService resp

Situation detection

Classified situation

Figure 5 Request initiation and service execution flow in the proposed architecture

lookup microservice incorporates the discovery algorithm(as given in listing of Algorithm 1) to discover the socialrelationships and maintains the list of all objects and theirpotential association rating The rating defines the opportu-nity for objects to form a relationship with each other

Moreover the operation flow of social microservices hasbeen illustrated in Figure 6 where VOmanagement retrievesthe social relationship among objects this is queried usinglink management which uses a lookup service Associationsare maintained in a social relationship graph using semanticontology and queried using the relation observer serviceThesocial graph is also updated and maintained continuouslywith respect to changing links among objects on the basisof which VOs are selected

342 Functional Components in Aggregated Object Virtual-ization Level Aggregated object virtualization (AOV) levelinvolves all the necessary functions to instantiate manageand continuously monitor CVOs Besides it includes theinterface required by the service level to interact with CVOcomponents Service level provides the mashup graphs ofCVOs and VOs that are required to fulfill a service requestAggregation level also supports some core functions theseare categorized as CVO configuration and management todecompose requests from service level and manage CVOinstances CVO generator to instantiate CVOs compositionfunction to form CVO and VO mashups reuse management

to select existing CVOs that approximately match servicerequirement and system knowledge engine to grow knowl-edge for the optimal use of CVO resources Further otheraggregation level functionalities are as follows registrationfunction records the CVO entry into the semantic CVOregistry in the form of RDFJSON format CVO includesontologies that specify conditions to be applied on theVO data Also at this level templates are created by adomain expert or knowledge engineer which consist offunctionalities associated with each CVO type Templatemanagement module provides an interface to include tem-plates to the CVO template repository and also supportsthe modification mechanism CVOs are discovered usingtheir semantic annotation via the discovery function CVOselection analyzer function provides estimated selection ofa CVO for reuse if there is no single CVO that can exactlyprovide the required service This is supported by similar-ity checking mechanism to analyze the level of similaritybefore recommending for reuse At aggregation level anotherimportant function is event processing event streams gen-erated by object virtualization level are highly valuable toinfer situational awareness and building RWK that is usedby high-level functions Event processing module facilitatesprocessing of events and provides generated facts as outputEvent processing is supported by CVO hypothesis analyzerthat incorporates several hypotheses which are trained overdata to build system level knowledge Aggregation level also

Wireless Communications and Mobile Computing 11

VO mgt Social relationship manager

Social link mgt

Relationship lookup MS

Group mgt

Relation observer

Social relation graph

Object selectionQuery generation

Req lookup

Social rel queryLookup resp

Modified social graph

Update dependencies

graph result

Update change inassociation

Generate update queryUpdate triples

Req relation graph

MatchmakingValidate association

Infer relation

Organize group

Add member

Select registered VOs

Execute query

Relation graph resp

Retrieve social object relation

Update VO

Social graph update

Inferred relationships

AckUpdate Group

Update VO

Social rel search

Figure 6 Sequence of operation required to establish a social relationship among objects

provides composition function which provides the basis formerging multiple VOs to generate single service feature andvalidation function to validate the compositions of multipleVOs Moreover the coordinator helps in resolving conflictsin case of simultaneous access of single CVO by multipleservices together

343 Functional Components in Object Virtualization LevelAlthough IoT middleware virtualizes sensors and actuatorsin some form of virtual entities however in WoO everyliving or nonliving thing can be represented in the virtualworld VOs are supported by an information model [1415] which includes the representation of RWO that canbe ICT or non-ICT In the proposed architecture objectvirtualization level includes functions to create maintainand coordinate VOs such as VO generator VOmanagementand optimization engine VO registration function providesan interface to register VOs with the help of VO ownershipmanagement function where the VO ownership is main-tained Template management function handles templatesor loads updated ones as provided by the domain expertMetadata management maintains data associated with VOsas VO is a digital representative of real-world entities thereis a high need to store metadata information to recognizethe class of sensed data Use of metadata provides the realvalue of the data in the form of the context stored withinit Furthermore VO data synthesizer service handles the

discrepancies if found in the data corresponding to VO thisincludes data manipulation and missing value rectificationsConflict resolution function helps in case the same VO isused by multiple service instances to resolve the conflictsAlso VO access management function controls access forVOs in case access right information has been defined bythe VO owner whereas identification management modulemaintains identification information about VOs so that eachVO can be uniquely identified in the system

344 Social Relationship Discovery and Composition Toidentify associations among web objects within a socialrelationship graph an algorithm is elaborated briefly In thefollowing algorithm the microservices that are in executionare retrieved first represented as M120583 next all the CVOsassociated with each of those microservices are recoveredin Mc and further the corresponding VO model Mvis iterated In the next step executing the query statementroutine returns the results denoted as The process offinding the relationships is carried out through lines (6)ndash(19)in multiple nested iterations as shown in the pseudocode ofAlgorithm 1 listing

Algorithm 2 facilitates the composition of objects basedon social association types This algorithm takes as input theset of object social relationships denoted by Z and registryentries of the objects that are currently available in thesystem represented as Re After the object model denoted

12 Wireless Communications and Mobile Computing

Require (C) (R119890)(1)Output S (social relationship graph of objects)(2) M120583 larr Load Microservices in model(3) M119888 larr Load CVOs in model(4) MV larr Load VOs in model(5) larr executeQueryStatement (M120583 M119888 MV 119876)(6) for All 120583 in 120583 do (iterate Microservice instance being used)(7) for All 119874 isin 120583 do (check CVO and VOs used by the Services)(8) if O119894 == output of C119877 in a relationship set R119888 then(9) add C119877 to119871(10) else(11) if O119894 == output of V119877 in relationship set RV then(12) add V119877 to119871(13) N119894 larr tag (Assign relationship tag to each object entry)(14) else(15) add O119894 to119880(16) end if(17) end if(18) end for(19) end for

Algorithm 1 Social relationship discovery

Require (C) (R119890) (Z)(1)Output C (Composite Service)(2) Mlarr List all objects available (Microservices CVOs VOs) in model(3) larr executeQueryStatement (M 119876)(4) Zlarr executeQueryStatement (M 1198761015840)(5) for All 120590119894 isin do(6) for All 120582119894 isin 120590 do(7) if 120582119894 == any 119911 in Z then(8) add 120582119894 toLm(9) storeLm(10) end if(11) end for(12) for All 120603i isin Lm do(13) if 120603i == any 120603i inLm then(14) 120597 larr ranking (Assign rank to each service)(15) add 120603i toLR(16) storeLR(17) end if(18) end for(19) for All 120590119895 isin LR do(20) if 120590119895(R120597) gt 120581 then(21) add 120590119895 to Wf(22) Pqlarr assign to queue(23) Sort Pq(24) Formulate Wf(25) end if(26) end for

Algorithm 2 Composition of objects based on social relationship

as M is loaded the first step is to compose objects basedon their relationship types This way the SPARQL queriesare executed the first query is denoted as 119876 to retrievethe available service templates and the second query isrepresented as 1198761015840 to extract the relationships associated with

the services From line (5) to (11) first the social relationshipis searched among objects and then the found relative objectsare composed in groups The design philosophy employedover here is to assign a ranking to each selected groupbased on the relationship type that helps in a more efficient

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 5: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

Wireless Communications and Mobile Computing 5

Application A Application C Application B

Service DB

Servicetemplate

Service registory

CVO DB

CVO template

CVO registory

VO DB

VO template

VO registory

Database

WoO service level

Compositevirtual object (CVO) sublevel

Virtual object (VO) sublevel

API APIAPIAPIUser APISe

rvice

leve

lVi

rtual

leve

l

RWO RWORWORWO

IF-1

IF-2

Figure 1 Web of Objects reference architecture

between objects belonging to the same location such ashome or office Different or same types of objects can becombined based on the common location or premises On theother hand Ownership Object Relationship (OOR) is formedamong objects belonging to the same owner Social ObjectRelationship (SOR) is another kind of relationship that iscreated among objects when they come close to each othereither random in time or periodically This relationship canbe envisaged when the owners of objects come into contactwith each other Apart from the above relationships in [41]the authors define theGuardianObject Relationship (GOR) inthe Internet of Vehicles (IoV) scenario where on-board unitsof vehicles become children in relation to the super nodesof Road Side Units This child and parent association givesa special meaning to a new hierarchical relationship

In addition to the relationships defined in other studieswe have identified few more relationships suitable for somediverse scenarios These include Sibling Object Relationship(SIBOR) that is created among objects that belong to agroup of friends or family membersThis relationship amongobjects extracts the property of trustworthiness based on therelationship of their owners Another relationship type is theguest object relationship (GSTOR) which is formed between

objects that belong to the users in the guest role for examplewhen a person visits a friendrsquos home and gets the privilegeas a guest The same can be applied to the objects that movein guest relation (GSTOR) from one place to another theywill have some privilege of accessibility of information ascompared to other objects Stranger Object Relation (STGOR)applies to objects that encounter the presence of each otherin an anonymous environment such as on the go or in thepublic environment Similar to people who meet each othersometimes regularly but are anonymous to each other or arenot fully aware of each other this relationship can be usedamong objects to form different trust levels or to form strictrestrictions to promote secure connections Moreover inservice object relationship (SVOR) objects form a relationshipwhile coordinating in the same service composition to fulfilla service request Generally in the proposed scheme servicerequest execution generates a mashup of objects and objectsthat belong to the same mashup are assumed to be in SVOR

We believe that the above defined new social relation-ships are beneficial in several distinctive scenarios Forexample SIBOR is more useful in scenarios where trustis highly important for establishing a connection Unlikethe more generalized relation POR SIBOR is established

6 Wireless Communications and Mobile Computing

SIBOR

SVOR

STGOR

GSTOR

(i) Sibling Object Relationship (SIBOR)(ii) Service Object Relationship (SVOR)

(iii) Stranger Object Relationship (STGOR)

(v) Parental Object Relationship (POR) [3](vi) Colocation Object Relationship (CLOR) [3]

(vii) Ownership Object Relationship (OOR) [3](iv) Guest Object Relationship (GSTOR)

CVO

VO

MicroservicecomposedIn

relatedTo

hasRelationship

hasRelationship

VO instancehasInstance

Data item

Data stream

acquires

retrieves

Microservice instance

CVO instance

hasInstance

hasInstance

POR

CLOR

OOR

Relationship concepts

Figure 2 Ontological model representing web objectsrsquo relationships

among objects from the same manufacturer having similarfeatures but different behaviors Similarly GSTOR is suitablein scenarios where objects use relationships for privilegedservices Imagine a person as a guest speaker in a conferencewith his smart devices where he can connect to the networkeasily and his personal devices are recognized as a guest(with GSTOR) in the venue network to avail free serviceslike high-speed Internet special notifications and othersStranger Object Relation (STGOR) is used in scenarios whereobjects are on the go and to get some information they haveto compromise with a limited trust level For instance in apublic transit system one mobile node on the move wantsto use crowdsourced information from another mobile nodewhich is not fully trusted Also SVOR is useful in servicecomposition specific scenarios where object mashups areformed to facilitate service requirement and it is also usefulin a particular orchestration of objects

To model information about microservices social webobjects and their relationships a semantic ontological modelhas been developed as depicted in Figure 2 Conceptual-ization of objects and their social relationships in semanticstructures are highly beneficial to infer new connectionsamong a network of objects with the help of reasoningtechniques The ontology facilitates the representation ofobjects as well as what theymeasure in terms of observationstheir processing and functions Web objectsrsquo relationshipontology contains the concepts that define each object interms of a class The data properties are used to representobject values and the object properties are defined to identifythe link between two objects in the ontology Major conceptsin the ontology are microservices CVOs VOs and theirsocial relationships Further microservices have an indi-vidual instance that uniquely defines a microservice objectand associated data with it Similarly CVOs and VOs arealso instantiated and contain data properties to retain theirvalues With the increasing number of objects a semanticontology model is used to perform reasoning function thathelps identify new connections Further to analyze the socialrelationship among objects (such as VOs and CVOs) theirproperties are provided in Table 1

33 Social Relationship Model for Web Objects At each levelof service life cycle objects form a social relationship witheach other to accomplish a service task Codifying the rela-tionship among web objects can provide many benefits suchas efficient information discovery from related objects andbetter composition and reuse To perceive social interactionbetweenweb objects we assume every service is based on oneormoremicroservices and other objects including CVOs andVOs At VO level VOs create several relationships with eachother based on the RWO they represent CVOs associatedwith microservices are incorporated in relationships as well

Object-to-object associations are categorized as eithervertical associations (interobject relations) or horizontalassociations (intraobject relations) as shown in Figure 3The relationships that flow from the bottom to the top inWoO based architecture are known as interobject relations(ie from VO to CVO or vice versa) On the other handrelationships are known as intraobject relations if they aregenerated within objects at each level such as between oneVO and another or within one CVO to a relative CVO Thenewly defined relationships among objects are maintained atdifferent levels which enables information discovery moreefficiently It is considered that not only will the relationshipsbe maintained when two objects (ie VOs) are used in thesame CVO or service but also they will be maintained ifobjects are used in different CVOs or services

As depicted in Figure 3 VO1 and VO2 bind in theSIBOR relationship considering the fact that they belongto the same family of CVO1 Similarly VO4 VO5 andVO6 are combined in a CWOR as they are used in thesame service However all of them do not have a commonfamily relation that makes their trustworthiness restrictiveto some level as compared to SIBOR Moreover thoughVO7 and VO8 are not used together in a service setupstill they form a STGOR relationship This relationship alsohelps codify those VOs that have similarity in premisesduring a certain point in time regularly but they had nevercombined in any service scenario before For example if aperson visits a subway regularly but stays very shortly in suchscene the userrsquos smartphone VO and subway station point

Wireless Communications and Mobile Computing 7

Table 1 Social relationship attributes

Social object relationships types AttributespropertiesSibling object relation (SIBOR) O119909 has relationship with O119910 rarr SIBOR if objectsrsquo ownership is defined as == SameFamily

Service object relationship (SVOR) O119909 has relationship with O119910 rarr SVOR if objectsrsquo serviceStatus is defined as ==SameServiceComposition

Stranger object relation (STGOR) O119909 has relationship with O119910 rarr STGOR if objectsrsquo authentication is defined as ==Anonymous

Guest object relationship (GSTOR) O119909 has relationship with O119910 rarr GSTOR if objectsrsquo ownership is defined as =SameFamilyampamp == GuestFriend

Parental object relationship (POR) O119909 has relationship with O119910 rarr POR if objectsrsquo creation is defined as == SameBatch ==SameProduction

Colocation object relationship (CLOR) O119909 has relationship with O119910 rarr CLOR if objectsrsquo proximity is defined as == Neighborhood location is defined as == SameLocation

Ownership object relationship (OOR) O119909 has relationship with O119910 rarr OOR if objectsrsquo proprietorship is defined as == SameOwner

VO2VO1 VO4VO3 VO6

CVO 1

Service A Service B Service C Service D

CVO 4CVO 3CVO 2

RWO RWORWORWORWO

Service E

Horizontal intraobject (intra object relation)

Vert

ical

asso

ciat

ion

(Inte

robj

ect r

elatio

n)

CVO 5

VO5

RWO

VO7

RWO

Service F

CVO 6

VO8

RWO

SIBOR

PORCLOR

Application 1 Application 2

SIBOR

Application 3

STGOR

CWOR

CLOR

Figure 3 Hierarchical social relationships of web objects

VO or subway security camera VO may establish STGORThis may help reuse VOs in service scenarios where onlyfor short duration a VO object is required At CVO levelCVO2 forms two different relationships which increasesthe level of connectivity of the CVO CVO2 first shares aCLOR with CVO1 and CVO3 CVO4 and CVO5 togetherSecondly CVO2 is combined in a SIBOR with CVO3 andbecomes in the same service family Further in the selecteduse case scenario described in Section 4 several other socialinteractions have also been elaborated

34 Social Web Objects Architecture SIoT envisages a systemwhere the social framework will bring smart devices andpeople to interact with each other By incorporating webtechnologies like SOA based microservices IoT services canbe rendered on top of the social framework The proposedsocial web objects architecture (as shown in Figure 4) hasbeen decomposed into three levels service level object

virtualization level and aggregated object virtualization levelAt the service level to support social relationships withinweb objects severalmicroservices have been designed whichare discussed further in the following section Moreoverthe data management function in the proposed design helpseach layer to interconnect with semantic databases TheSPARQL endpoints have been defined at the service and theobject virtualization levels that expose interfaces to retrievestore and modify RDF graphs Several interfaces allow theknowledge engineer domain expert and the developer tocreate service templates and VOs as well as update the RWKmodel user profile and policies

341 Service Level Functional Components The service levelfunctions handle operations from the request inception tothe execution of services This level is supported by somecore functions common to be used in each service life cycleThese include the management function to handle service

8 Wireless Communications and Mobile Computing

Microservices communication hub Servicetemplate

RWK model(RDF concepts ampfacts)

Application A Application B Application C

VO DB

VO template

VO registory

CVO DB

CVO template

CVO registory

Serviceregistory

ServiceDB

User profile RDFOWL

Serv

ice le

vel

Aggr

egat

ed o

bj v

irtua

lizat

ion

level

Obj

ect v

irtua

lizat

ion

level

VO management amp optimization engine

VO generator

VO ownership management

VO container

Service Interface

CVO Level Interface

VO level interface

DatabaseDatabase

Developer

Installer

RWK

Service DB

CVO DB

VO DB

Knowledge engineer

API APIAPIAPI

User

RWK situation mgt

Composition engine

Service management

Discovery amp lookup

Service execution environment

CVO reuse management

CVO generatorand composer

system knowledge

engineAP

I

Domainexpertknowledge engineer

API

API

API

Semantic RWK s

Service lookup

Request evaluatorService

registration s

Sem

antic

Dat

a m

gt

User situation management

User profilemgt

Service reuse tracker s

Semantic match makerService life

status mgt

Integration validator

Composition maker

CVO registration

CVO hypothesis analyzer

CVO coordinator

Event processor

Semantic context collector

Service template mgt

Service binding s

CVO template mgt

Selection analyzer

Similarity checker

CVO discovery

Link mgt s Relationship lookup s

Rel dependability s

Relation observer s

Service logs mgt s

Situation discovery classification projection services

CVO life cyclemanagement

VO availability validator

Conflict resolution

VO registration VO access mgt

VO coordinator

VO identity mgtVO template mgt

VO metadata mgt

VO data synthesizer

VO discovery VO energy efficiency tracking

Sensor and actuators

Gateway

CVOconfiguration amp management

Workflow mgts

Group mgts

Figure 4 Social web objects functional architecture

Wireless Communications and Mobile Computing 9

requests and initiate service provisioning processes theservice discovery function to select the available services thecomposition engine to enable service mashups and the Real-World Knowledge (RWK) and situation management func-tion to acquire RWK and continuously maintain it Besidesthese core functions several microservices have been usedto provide the plug-and-play feature in the proposed designthat is in case of service failure it is replaced with anotherone These services include the Request Evaluator microser-vice which interprets a service request and matches a requestquery to the service template The registration microserviceregisters newly added service objects to the registry Whena new template is instantiated objects are put in serviceand to know the existence of available service instances theyare recorded in the service registry The lookup microserviceis defined to search for the required service objects usingthe semantic representation The representations availablein RDFOWL format are queried from the registry basedon the request parameters Service life cycle managementkeeps track of the states of service objects during their lifecycle whereas RWKmanagement microservice is a semanticdata processing service which processes facts about userpreferences profile and situational information

To realize service provisioning it is always not possible tosatisfy the service requirement with a single service functionService composition and harmonization features are requiredto fulfill a demanding service request Service composition isnot a single operation many microservices are used to com-pose the individual features One of the major componentsof the composition is the Workflow Management (WFM)microservice which is responsible for decomposing the ser-vice requirement if no single service is available to satisfythe task WFM microservice identifies the service objectsusing input and output interfaces In this concern it usesthe matchmaking microservice to identify the approximatematches that can serve the required service functionalityHere service objects are semantically represented in the formof ontologies The semantic ontology alignment algorithm isused tomatch the service up to a certain threshold level that isdefined by the matchmaking microservice The reuse trackermicroservice is used to identify the current service instanceusage by the application it incorporates a coordinationmechanism before instantiating any new instance and thishelps in service reuse by many clients Binding microserviceenables tying of services selected by WFM this functionsynchronizes input and output of services in a workflowto produce a single service output based on the generatedcomposition plan

Furthermore user characterization is another importantelement to support the IoT services bymatching user require-ments more closely The User Profile Manager microservicehandles many facts related to the human user These includeuser profile preference context and policies Semantic Con-text Collector microservice organizes the services requestedby the user and the context in which these services wererequested This helps in identifying user interest with respectto the service context User context or situation helps inservice selection more efficiently if a user requests againwith a similar service requirement Some microservices have

been designed to handle user situation information thesemicroservices include situation discovery classification andrecognition functions Situation discovery is used to processsensor data that is provided by CVOs to prompt a situationwhereas machine learning algorithms are applied to removethe false values and data normalization is performed in caseinappropriate triggers in the data exist Situation classificationincorporates the reasoning methods and rules to generatea relationship over detected events and refine the missingknowledge between the events Situation projection analyzesthe events data with the help of machine learning methodsand provides an output in the form of predicted facts thatare related to the situation being detected Moreover allthe microservices coordinate using a communication hub toshare information with each other

Aflowof service inception to service execution in the pro-posed architecture is depicted in Figure 5 where service man-agement is responsible for initiating the above-mentionedfunctionalities and instantiating the microservices This pro-cess further results in the generation of CVOVO mashupgraphs to be handled by CVO management (discussed inSection 342) Situational information has also been used toimprove request analysis and service provisioning whereasVO management (discussed in Section 343) acquires andaggregates data from sensors and other RWOs

Social RelationshipManagementMicroservicesTo support thesocial relationships among web objects at each layer of theproposed system relationship management microservicesare defined which support the codification of relationshipsamong web objects (VOs and CVOs) and their managementThese microservices are defined as follows Group manage-ment microservice identifies the grouping of objects intospecific sets based on the type and interaction of objects itbuilds a social graph of the object relationships Link man-agement microservice incorporates mechanisms to maintainrelationships among different objects and it includes severalother subfunctions The first subfunction is object selectionwhich involves choosing candidate objects that are likelyto form a particular association The second subfunctionis matchmaking service which provides exact relationshipmatch based on the type of objects The third subfunctionis the association life cycle manager which maintains therelationship status between objects it checkswhether they arein active relation or not It keeps track of relationship validityand also the duration of relationships Relationship observermicroservice enables the object activities to be observedand it also handles the mutual sharing which defines whatinformation an object is allowed to share or use of anotherobject based on the relationship among them Relationshipdependability recognizer microservice identifies maintainsand continuously improves the level of reliability amongobjects If objects A and B are frequently interacting andalways perform a task together that leads to successfulexecution of an application to serve the requirements thenthey are more likely to form a reliable relationship with eachother The consistency of the relationship allows objects toshare their information with fewer constraints as comparedto unpredictable association among objects Relationship

10 Wireless Communications and Mobile Computing

Application domain

Service manager

Composite VO mgt

ServiceCVOVO registry DB

VO management

SituationRWK management

User profile

Evaluate RequestDiscover microservicesSelect service template

Composition mgt

Req CVO entries

Microservice container

CVO registrationCVO ontology lookupReuse approximation

Service request

Resp CVOs

VO instantiate req

Req user situation parameters

Resp user situation parameters

Req VO entriesResp VOs

Req user modelResp user model

SelectVOs

Microservice notificationstatus

Instantiatemicroservice

Req CVOcreation

VO notificationCVO notificationMicroservice deployment

Service resp

VO RegistrationVO ontology discovery

VO metadata mgt Update preferences

Update events

Situation projection

Update user model

Req serviceService resp

Situation detection

Classified situation

Figure 5 Request initiation and service execution flow in the proposed architecture

lookup microservice incorporates the discovery algorithm(as given in listing of Algorithm 1) to discover the socialrelationships and maintains the list of all objects and theirpotential association rating The rating defines the opportu-nity for objects to form a relationship with each other

Moreover the operation flow of social microservices hasbeen illustrated in Figure 6 where VOmanagement retrievesthe social relationship among objects this is queried usinglink management which uses a lookup service Associationsare maintained in a social relationship graph using semanticontology and queried using the relation observer serviceThesocial graph is also updated and maintained continuouslywith respect to changing links among objects on the basisof which VOs are selected

342 Functional Components in Aggregated Object Virtual-ization Level Aggregated object virtualization (AOV) levelinvolves all the necessary functions to instantiate manageand continuously monitor CVOs Besides it includes theinterface required by the service level to interact with CVOcomponents Service level provides the mashup graphs ofCVOs and VOs that are required to fulfill a service requestAggregation level also supports some core functions theseare categorized as CVO configuration and management todecompose requests from service level and manage CVOinstances CVO generator to instantiate CVOs compositionfunction to form CVO and VO mashups reuse management

to select existing CVOs that approximately match servicerequirement and system knowledge engine to grow knowl-edge for the optimal use of CVO resources Further otheraggregation level functionalities are as follows registrationfunction records the CVO entry into the semantic CVOregistry in the form of RDFJSON format CVO includesontologies that specify conditions to be applied on theVO data Also at this level templates are created by adomain expert or knowledge engineer which consist offunctionalities associated with each CVO type Templatemanagement module provides an interface to include tem-plates to the CVO template repository and also supportsthe modification mechanism CVOs are discovered usingtheir semantic annotation via the discovery function CVOselection analyzer function provides estimated selection ofa CVO for reuse if there is no single CVO that can exactlyprovide the required service This is supported by similar-ity checking mechanism to analyze the level of similaritybefore recommending for reuse At aggregation level anotherimportant function is event processing event streams gen-erated by object virtualization level are highly valuable toinfer situational awareness and building RWK that is usedby high-level functions Event processing module facilitatesprocessing of events and provides generated facts as outputEvent processing is supported by CVO hypothesis analyzerthat incorporates several hypotheses which are trained overdata to build system level knowledge Aggregation level also

Wireless Communications and Mobile Computing 11

VO mgt Social relationship manager

Social link mgt

Relationship lookup MS

Group mgt

Relation observer

Social relation graph

Object selectionQuery generation

Req lookup

Social rel queryLookup resp

Modified social graph

Update dependencies

graph result

Update change inassociation

Generate update queryUpdate triples

Req relation graph

MatchmakingValidate association

Infer relation

Organize group

Add member

Select registered VOs

Execute query

Relation graph resp

Retrieve social object relation

Update VO

Social graph update

Inferred relationships

AckUpdate Group

Update VO

Social rel search

Figure 6 Sequence of operation required to establish a social relationship among objects

provides composition function which provides the basis formerging multiple VOs to generate single service feature andvalidation function to validate the compositions of multipleVOs Moreover the coordinator helps in resolving conflictsin case of simultaneous access of single CVO by multipleservices together

343 Functional Components in Object Virtualization LevelAlthough IoT middleware virtualizes sensors and actuatorsin some form of virtual entities however in WoO everyliving or nonliving thing can be represented in the virtualworld VOs are supported by an information model [1415] which includes the representation of RWO that canbe ICT or non-ICT In the proposed architecture objectvirtualization level includes functions to create maintainand coordinate VOs such as VO generator VOmanagementand optimization engine VO registration function providesan interface to register VOs with the help of VO ownershipmanagement function where the VO ownership is main-tained Template management function handles templatesor loads updated ones as provided by the domain expertMetadata management maintains data associated with VOsas VO is a digital representative of real-world entities thereis a high need to store metadata information to recognizethe class of sensed data Use of metadata provides the realvalue of the data in the form of the context stored withinit Furthermore VO data synthesizer service handles the

discrepancies if found in the data corresponding to VO thisincludes data manipulation and missing value rectificationsConflict resolution function helps in case the same VO isused by multiple service instances to resolve the conflictsAlso VO access management function controls access forVOs in case access right information has been defined bythe VO owner whereas identification management modulemaintains identification information about VOs so that eachVO can be uniquely identified in the system

344 Social Relationship Discovery and Composition Toidentify associations among web objects within a socialrelationship graph an algorithm is elaborated briefly In thefollowing algorithm the microservices that are in executionare retrieved first represented as M120583 next all the CVOsassociated with each of those microservices are recoveredin Mc and further the corresponding VO model Mvis iterated In the next step executing the query statementroutine returns the results denoted as The process offinding the relationships is carried out through lines (6)ndash(19)in multiple nested iterations as shown in the pseudocode ofAlgorithm 1 listing

Algorithm 2 facilitates the composition of objects basedon social association types This algorithm takes as input theset of object social relationships denoted by Z and registryentries of the objects that are currently available in thesystem represented as Re After the object model denoted

12 Wireless Communications and Mobile Computing

Require (C) (R119890)(1)Output S (social relationship graph of objects)(2) M120583 larr Load Microservices in model(3) M119888 larr Load CVOs in model(4) MV larr Load VOs in model(5) larr executeQueryStatement (M120583 M119888 MV 119876)(6) for All 120583 in 120583 do (iterate Microservice instance being used)(7) for All 119874 isin 120583 do (check CVO and VOs used by the Services)(8) if O119894 == output of C119877 in a relationship set R119888 then(9) add C119877 to119871(10) else(11) if O119894 == output of V119877 in relationship set RV then(12) add V119877 to119871(13) N119894 larr tag (Assign relationship tag to each object entry)(14) else(15) add O119894 to119880(16) end if(17) end if(18) end for(19) end for

Algorithm 1 Social relationship discovery

Require (C) (R119890) (Z)(1)Output C (Composite Service)(2) Mlarr List all objects available (Microservices CVOs VOs) in model(3) larr executeQueryStatement (M 119876)(4) Zlarr executeQueryStatement (M 1198761015840)(5) for All 120590119894 isin do(6) for All 120582119894 isin 120590 do(7) if 120582119894 == any 119911 in Z then(8) add 120582119894 toLm(9) storeLm(10) end if(11) end for(12) for All 120603i isin Lm do(13) if 120603i == any 120603i inLm then(14) 120597 larr ranking (Assign rank to each service)(15) add 120603i toLR(16) storeLR(17) end if(18) end for(19) for All 120590119895 isin LR do(20) if 120590119895(R120597) gt 120581 then(21) add 120590119895 to Wf(22) Pqlarr assign to queue(23) Sort Pq(24) Formulate Wf(25) end if(26) end for

Algorithm 2 Composition of objects based on social relationship

as M is loaded the first step is to compose objects basedon their relationship types This way the SPARQL queriesare executed the first query is denoted as 119876 to retrievethe available service templates and the second query isrepresented as 1198761015840 to extract the relationships associated with

the services From line (5) to (11) first the social relationshipis searched among objects and then the found relative objectsare composed in groups The design philosophy employedover here is to assign a ranking to each selected groupbased on the relationship type that helps in a more efficient

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 6: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

6 Wireless Communications and Mobile Computing

SIBOR

SVOR

STGOR

GSTOR

(i) Sibling Object Relationship (SIBOR)(ii) Service Object Relationship (SVOR)

(iii) Stranger Object Relationship (STGOR)

(v) Parental Object Relationship (POR) [3](vi) Colocation Object Relationship (CLOR) [3]

(vii) Ownership Object Relationship (OOR) [3](iv) Guest Object Relationship (GSTOR)

CVO

VO

MicroservicecomposedIn

relatedTo

hasRelationship

hasRelationship

VO instancehasInstance

Data item

Data stream

acquires

retrieves

Microservice instance

CVO instance

hasInstance

hasInstance

POR

CLOR

OOR

Relationship concepts

Figure 2 Ontological model representing web objectsrsquo relationships

among objects from the same manufacturer having similarfeatures but different behaviors Similarly GSTOR is suitablein scenarios where objects use relationships for privilegedservices Imagine a person as a guest speaker in a conferencewith his smart devices where he can connect to the networkeasily and his personal devices are recognized as a guest(with GSTOR) in the venue network to avail free serviceslike high-speed Internet special notifications and othersStranger Object Relation (STGOR) is used in scenarios whereobjects are on the go and to get some information they haveto compromise with a limited trust level For instance in apublic transit system one mobile node on the move wantsto use crowdsourced information from another mobile nodewhich is not fully trusted Also SVOR is useful in servicecomposition specific scenarios where object mashups areformed to facilitate service requirement and it is also usefulin a particular orchestration of objects

To model information about microservices social webobjects and their relationships a semantic ontological modelhas been developed as depicted in Figure 2 Conceptual-ization of objects and their social relationships in semanticstructures are highly beneficial to infer new connectionsamong a network of objects with the help of reasoningtechniques The ontology facilitates the representation ofobjects as well as what theymeasure in terms of observationstheir processing and functions Web objectsrsquo relationshipontology contains the concepts that define each object interms of a class The data properties are used to representobject values and the object properties are defined to identifythe link between two objects in the ontology Major conceptsin the ontology are microservices CVOs VOs and theirsocial relationships Further microservices have an indi-vidual instance that uniquely defines a microservice objectand associated data with it Similarly CVOs and VOs arealso instantiated and contain data properties to retain theirvalues With the increasing number of objects a semanticontology model is used to perform reasoning function thathelps identify new connections Further to analyze the socialrelationship among objects (such as VOs and CVOs) theirproperties are provided in Table 1

33 Social Relationship Model for Web Objects At each levelof service life cycle objects form a social relationship witheach other to accomplish a service task Codifying the rela-tionship among web objects can provide many benefits suchas efficient information discovery from related objects andbetter composition and reuse To perceive social interactionbetweenweb objects we assume every service is based on oneormoremicroservices and other objects including CVOs andVOs At VO level VOs create several relationships with eachother based on the RWO they represent CVOs associatedwith microservices are incorporated in relationships as well

Object-to-object associations are categorized as eithervertical associations (interobject relations) or horizontalassociations (intraobject relations) as shown in Figure 3The relationships that flow from the bottom to the top inWoO based architecture are known as interobject relations(ie from VO to CVO or vice versa) On the other handrelationships are known as intraobject relations if they aregenerated within objects at each level such as between oneVO and another or within one CVO to a relative CVO Thenewly defined relationships among objects are maintained atdifferent levels which enables information discovery moreefficiently It is considered that not only will the relationshipsbe maintained when two objects (ie VOs) are used in thesame CVO or service but also they will be maintained ifobjects are used in different CVOs or services

As depicted in Figure 3 VO1 and VO2 bind in theSIBOR relationship considering the fact that they belongto the same family of CVO1 Similarly VO4 VO5 andVO6 are combined in a CWOR as they are used in thesame service However all of them do not have a commonfamily relation that makes their trustworthiness restrictiveto some level as compared to SIBOR Moreover thoughVO7 and VO8 are not used together in a service setupstill they form a STGOR relationship This relationship alsohelps codify those VOs that have similarity in premisesduring a certain point in time regularly but they had nevercombined in any service scenario before For example if aperson visits a subway regularly but stays very shortly in suchscene the userrsquos smartphone VO and subway station point

Wireless Communications and Mobile Computing 7

Table 1 Social relationship attributes

Social object relationships types AttributespropertiesSibling object relation (SIBOR) O119909 has relationship with O119910 rarr SIBOR if objectsrsquo ownership is defined as == SameFamily

Service object relationship (SVOR) O119909 has relationship with O119910 rarr SVOR if objectsrsquo serviceStatus is defined as ==SameServiceComposition

Stranger object relation (STGOR) O119909 has relationship with O119910 rarr STGOR if objectsrsquo authentication is defined as ==Anonymous

Guest object relationship (GSTOR) O119909 has relationship with O119910 rarr GSTOR if objectsrsquo ownership is defined as =SameFamilyampamp == GuestFriend

Parental object relationship (POR) O119909 has relationship with O119910 rarr POR if objectsrsquo creation is defined as == SameBatch ==SameProduction

Colocation object relationship (CLOR) O119909 has relationship with O119910 rarr CLOR if objectsrsquo proximity is defined as == Neighborhood location is defined as == SameLocation

Ownership object relationship (OOR) O119909 has relationship with O119910 rarr OOR if objectsrsquo proprietorship is defined as == SameOwner

VO2VO1 VO4VO3 VO6

CVO 1

Service A Service B Service C Service D

CVO 4CVO 3CVO 2

RWO RWORWORWORWO

Service E

Horizontal intraobject (intra object relation)

Vert

ical

asso

ciat

ion

(Inte

robj

ect r

elatio

n)

CVO 5

VO5

RWO

VO7

RWO

Service F

CVO 6

VO8

RWO

SIBOR

PORCLOR

Application 1 Application 2

SIBOR

Application 3

STGOR

CWOR

CLOR

Figure 3 Hierarchical social relationships of web objects

VO or subway security camera VO may establish STGORThis may help reuse VOs in service scenarios where onlyfor short duration a VO object is required At CVO levelCVO2 forms two different relationships which increasesthe level of connectivity of the CVO CVO2 first shares aCLOR with CVO1 and CVO3 CVO4 and CVO5 togetherSecondly CVO2 is combined in a SIBOR with CVO3 andbecomes in the same service family Further in the selecteduse case scenario described in Section 4 several other socialinteractions have also been elaborated

34 Social Web Objects Architecture SIoT envisages a systemwhere the social framework will bring smart devices andpeople to interact with each other By incorporating webtechnologies like SOA based microservices IoT services canbe rendered on top of the social framework The proposedsocial web objects architecture (as shown in Figure 4) hasbeen decomposed into three levels service level object

virtualization level and aggregated object virtualization levelAt the service level to support social relationships withinweb objects severalmicroservices have been designed whichare discussed further in the following section Moreoverthe data management function in the proposed design helpseach layer to interconnect with semantic databases TheSPARQL endpoints have been defined at the service and theobject virtualization levels that expose interfaces to retrievestore and modify RDF graphs Several interfaces allow theknowledge engineer domain expert and the developer tocreate service templates and VOs as well as update the RWKmodel user profile and policies

341 Service Level Functional Components The service levelfunctions handle operations from the request inception tothe execution of services This level is supported by somecore functions common to be used in each service life cycleThese include the management function to handle service

8 Wireless Communications and Mobile Computing

Microservices communication hub Servicetemplate

RWK model(RDF concepts ampfacts)

Application A Application B Application C

VO DB

VO template

VO registory

CVO DB

CVO template

CVO registory

Serviceregistory

ServiceDB

User profile RDFOWL

Serv

ice le

vel

Aggr

egat

ed o

bj v

irtua

lizat

ion

level

Obj

ect v

irtua

lizat

ion

level

VO management amp optimization engine

VO generator

VO ownership management

VO container

Service Interface

CVO Level Interface

VO level interface

DatabaseDatabase

Developer

Installer

RWK

Service DB

CVO DB

VO DB

Knowledge engineer

API APIAPIAPI

User

RWK situation mgt

Composition engine

Service management

Discovery amp lookup

Service execution environment

CVO reuse management

CVO generatorand composer

system knowledge

engineAP

I

Domainexpertknowledge engineer

API

API

API

Semantic RWK s

Service lookup

Request evaluatorService

registration s

Sem

antic

Dat

a m

gt

User situation management

User profilemgt

Service reuse tracker s

Semantic match makerService life

status mgt

Integration validator

Composition maker

CVO registration

CVO hypothesis analyzer

CVO coordinator

Event processor

Semantic context collector

Service template mgt

Service binding s

CVO template mgt

Selection analyzer

Similarity checker

CVO discovery

Link mgt s Relationship lookup s

Rel dependability s

Relation observer s

Service logs mgt s

Situation discovery classification projection services

CVO life cyclemanagement

VO availability validator

Conflict resolution

VO registration VO access mgt

VO coordinator

VO identity mgtVO template mgt

VO metadata mgt

VO data synthesizer

VO discovery VO energy efficiency tracking

Sensor and actuators

Gateway

CVOconfiguration amp management

Workflow mgts

Group mgts

Figure 4 Social web objects functional architecture

Wireless Communications and Mobile Computing 9

requests and initiate service provisioning processes theservice discovery function to select the available services thecomposition engine to enable service mashups and the Real-World Knowledge (RWK) and situation management func-tion to acquire RWK and continuously maintain it Besidesthese core functions several microservices have been usedto provide the plug-and-play feature in the proposed designthat is in case of service failure it is replaced with anotherone These services include the Request Evaluator microser-vice which interprets a service request and matches a requestquery to the service template The registration microserviceregisters newly added service objects to the registry Whena new template is instantiated objects are put in serviceand to know the existence of available service instances theyare recorded in the service registry The lookup microserviceis defined to search for the required service objects usingthe semantic representation The representations availablein RDFOWL format are queried from the registry basedon the request parameters Service life cycle managementkeeps track of the states of service objects during their lifecycle whereas RWKmanagement microservice is a semanticdata processing service which processes facts about userpreferences profile and situational information

To realize service provisioning it is always not possible tosatisfy the service requirement with a single service functionService composition and harmonization features are requiredto fulfill a demanding service request Service composition isnot a single operation many microservices are used to com-pose the individual features One of the major componentsof the composition is the Workflow Management (WFM)microservice which is responsible for decomposing the ser-vice requirement if no single service is available to satisfythe task WFM microservice identifies the service objectsusing input and output interfaces In this concern it usesthe matchmaking microservice to identify the approximatematches that can serve the required service functionalityHere service objects are semantically represented in the formof ontologies The semantic ontology alignment algorithm isused tomatch the service up to a certain threshold level that isdefined by the matchmaking microservice The reuse trackermicroservice is used to identify the current service instanceusage by the application it incorporates a coordinationmechanism before instantiating any new instance and thishelps in service reuse by many clients Binding microserviceenables tying of services selected by WFM this functionsynchronizes input and output of services in a workflowto produce a single service output based on the generatedcomposition plan

Furthermore user characterization is another importantelement to support the IoT services bymatching user require-ments more closely The User Profile Manager microservicehandles many facts related to the human user These includeuser profile preference context and policies Semantic Con-text Collector microservice organizes the services requestedby the user and the context in which these services wererequested This helps in identifying user interest with respectto the service context User context or situation helps inservice selection more efficiently if a user requests againwith a similar service requirement Some microservices have

been designed to handle user situation information thesemicroservices include situation discovery classification andrecognition functions Situation discovery is used to processsensor data that is provided by CVOs to prompt a situationwhereas machine learning algorithms are applied to removethe false values and data normalization is performed in caseinappropriate triggers in the data exist Situation classificationincorporates the reasoning methods and rules to generatea relationship over detected events and refine the missingknowledge between the events Situation projection analyzesthe events data with the help of machine learning methodsand provides an output in the form of predicted facts thatare related to the situation being detected Moreover allthe microservices coordinate using a communication hub toshare information with each other

Aflowof service inception to service execution in the pro-posed architecture is depicted in Figure 5 where service man-agement is responsible for initiating the above-mentionedfunctionalities and instantiating the microservices This pro-cess further results in the generation of CVOVO mashupgraphs to be handled by CVO management (discussed inSection 342) Situational information has also been used toimprove request analysis and service provisioning whereasVO management (discussed in Section 343) acquires andaggregates data from sensors and other RWOs

Social RelationshipManagementMicroservicesTo support thesocial relationships among web objects at each layer of theproposed system relationship management microservicesare defined which support the codification of relationshipsamong web objects (VOs and CVOs) and their managementThese microservices are defined as follows Group manage-ment microservice identifies the grouping of objects intospecific sets based on the type and interaction of objects itbuilds a social graph of the object relationships Link man-agement microservice incorporates mechanisms to maintainrelationships among different objects and it includes severalother subfunctions The first subfunction is object selectionwhich involves choosing candidate objects that are likelyto form a particular association The second subfunctionis matchmaking service which provides exact relationshipmatch based on the type of objects The third subfunctionis the association life cycle manager which maintains therelationship status between objects it checkswhether they arein active relation or not It keeps track of relationship validityand also the duration of relationships Relationship observermicroservice enables the object activities to be observedand it also handles the mutual sharing which defines whatinformation an object is allowed to share or use of anotherobject based on the relationship among them Relationshipdependability recognizer microservice identifies maintainsand continuously improves the level of reliability amongobjects If objects A and B are frequently interacting andalways perform a task together that leads to successfulexecution of an application to serve the requirements thenthey are more likely to form a reliable relationship with eachother The consistency of the relationship allows objects toshare their information with fewer constraints as comparedto unpredictable association among objects Relationship

10 Wireless Communications and Mobile Computing

Application domain

Service manager

Composite VO mgt

ServiceCVOVO registry DB

VO management

SituationRWK management

User profile

Evaluate RequestDiscover microservicesSelect service template

Composition mgt

Req CVO entries

Microservice container

CVO registrationCVO ontology lookupReuse approximation

Service request

Resp CVOs

VO instantiate req

Req user situation parameters

Resp user situation parameters

Req VO entriesResp VOs

Req user modelResp user model

SelectVOs

Microservice notificationstatus

Instantiatemicroservice

Req CVOcreation

VO notificationCVO notificationMicroservice deployment

Service resp

VO RegistrationVO ontology discovery

VO metadata mgt Update preferences

Update events

Situation projection

Update user model

Req serviceService resp

Situation detection

Classified situation

Figure 5 Request initiation and service execution flow in the proposed architecture

lookup microservice incorporates the discovery algorithm(as given in listing of Algorithm 1) to discover the socialrelationships and maintains the list of all objects and theirpotential association rating The rating defines the opportu-nity for objects to form a relationship with each other

Moreover the operation flow of social microservices hasbeen illustrated in Figure 6 where VOmanagement retrievesthe social relationship among objects this is queried usinglink management which uses a lookup service Associationsare maintained in a social relationship graph using semanticontology and queried using the relation observer serviceThesocial graph is also updated and maintained continuouslywith respect to changing links among objects on the basisof which VOs are selected

342 Functional Components in Aggregated Object Virtual-ization Level Aggregated object virtualization (AOV) levelinvolves all the necessary functions to instantiate manageand continuously monitor CVOs Besides it includes theinterface required by the service level to interact with CVOcomponents Service level provides the mashup graphs ofCVOs and VOs that are required to fulfill a service requestAggregation level also supports some core functions theseare categorized as CVO configuration and management todecompose requests from service level and manage CVOinstances CVO generator to instantiate CVOs compositionfunction to form CVO and VO mashups reuse management

to select existing CVOs that approximately match servicerequirement and system knowledge engine to grow knowl-edge for the optimal use of CVO resources Further otheraggregation level functionalities are as follows registrationfunction records the CVO entry into the semantic CVOregistry in the form of RDFJSON format CVO includesontologies that specify conditions to be applied on theVO data Also at this level templates are created by adomain expert or knowledge engineer which consist offunctionalities associated with each CVO type Templatemanagement module provides an interface to include tem-plates to the CVO template repository and also supportsthe modification mechanism CVOs are discovered usingtheir semantic annotation via the discovery function CVOselection analyzer function provides estimated selection ofa CVO for reuse if there is no single CVO that can exactlyprovide the required service This is supported by similar-ity checking mechanism to analyze the level of similaritybefore recommending for reuse At aggregation level anotherimportant function is event processing event streams gen-erated by object virtualization level are highly valuable toinfer situational awareness and building RWK that is usedby high-level functions Event processing module facilitatesprocessing of events and provides generated facts as outputEvent processing is supported by CVO hypothesis analyzerthat incorporates several hypotheses which are trained overdata to build system level knowledge Aggregation level also

Wireless Communications and Mobile Computing 11

VO mgt Social relationship manager

Social link mgt

Relationship lookup MS

Group mgt

Relation observer

Social relation graph

Object selectionQuery generation

Req lookup

Social rel queryLookup resp

Modified social graph

Update dependencies

graph result

Update change inassociation

Generate update queryUpdate triples

Req relation graph

MatchmakingValidate association

Infer relation

Organize group

Add member

Select registered VOs

Execute query

Relation graph resp

Retrieve social object relation

Update VO

Social graph update

Inferred relationships

AckUpdate Group

Update VO

Social rel search

Figure 6 Sequence of operation required to establish a social relationship among objects

provides composition function which provides the basis formerging multiple VOs to generate single service feature andvalidation function to validate the compositions of multipleVOs Moreover the coordinator helps in resolving conflictsin case of simultaneous access of single CVO by multipleservices together

343 Functional Components in Object Virtualization LevelAlthough IoT middleware virtualizes sensors and actuatorsin some form of virtual entities however in WoO everyliving or nonliving thing can be represented in the virtualworld VOs are supported by an information model [1415] which includes the representation of RWO that canbe ICT or non-ICT In the proposed architecture objectvirtualization level includes functions to create maintainand coordinate VOs such as VO generator VOmanagementand optimization engine VO registration function providesan interface to register VOs with the help of VO ownershipmanagement function where the VO ownership is main-tained Template management function handles templatesor loads updated ones as provided by the domain expertMetadata management maintains data associated with VOsas VO is a digital representative of real-world entities thereis a high need to store metadata information to recognizethe class of sensed data Use of metadata provides the realvalue of the data in the form of the context stored withinit Furthermore VO data synthesizer service handles the

discrepancies if found in the data corresponding to VO thisincludes data manipulation and missing value rectificationsConflict resolution function helps in case the same VO isused by multiple service instances to resolve the conflictsAlso VO access management function controls access forVOs in case access right information has been defined bythe VO owner whereas identification management modulemaintains identification information about VOs so that eachVO can be uniquely identified in the system

344 Social Relationship Discovery and Composition Toidentify associations among web objects within a socialrelationship graph an algorithm is elaborated briefly In thefollowing algorithm the microservices that are in executionare retrieved first represented as M120583 next all the CVOsassociated with each of those microservices are recoveredin Mc and further the corresponding VO model Mvis iterated In the next step executing the query statementroutine returns the results denoted as The process offinding the relationships is carried out through lines (6)ndash(19)in multiple nested iterations as shown in the pseudocode ofAlgorithm 1 listing

Algorithm 2 facilitates the composition of objects basedon social association types This algorithm takes as input theset of object social relationships denoted by Z and registryentries of the objects that are currently available in thesystem represented as Re After the object model denoted

12 Wireless Communications and Mobile Computing

Require (C) (R119890)(1)Output S (social relationship graph of objects)(2) M120583 larr Load Microservices in model(3) M119888 larr Load CVOs in model(4) MV larr Load VOs in model(5) larr executeQueryStatement (M120583 M119888 MV 119876)(6) for All 120583 in 120583 do (iterate Microservice instance being used)(7) for All 119874 isin 120583 do (check CVO and VOs used by the Services)(8) if O119894 == output of C119877 in a relationship set R119888 then(9) add C119877 to119871(10) else(11) if O119894 == output of V119877 in relationship set RV then(12) add V119877 to119871(13) N119894 larr tag (Assign relationship tag to each object entry)(14) else(15) add O119894 to119880(16) end if(17) end if(18) end for(19) end for

Algorithm 1 Social relationship discovery

Require (C) (R119890) (Z)(1)Output C (Composite Service)(2) Mlarr List all objects available (Microservices CVOs VOs) in model(3) larr executeQueryStatement (M 119876)(4) Zlarr executeQueryStatement (M 1198761015840)(5) for All 120590119894 isin do(6) for All 120582119894 isin 120590 do(7) if 120582119894 == any 119911 in Z then(8) add 120582119894 toLm(9) storeLm(10) end if(11) end for(12) for All 120603i isin Lm do(13) if 120603i == any 120603i inLm then(14) 120597 larr ranking (Assign rank to each service)(15) add 120603i toLR(16) storeLR(17) end if(18) end for(19) for All 120590119895 isin LR do(20) if 120590119895(R120597) gt 120581 then(21) add 120590119895 to Wf(22) Pqlarr assign to queue(23) Sort Pq(24) Formulate Wf(25) end if(26) end for

Algorithm 2 Composition of objects based on social relationship

as M is loaded the first step is to compose objects basedon their relationship types This way the SPARQL queriesare executed the first query is denoted as 119876 to retrievethe available service templates and the second query isrepresented as 1198761015840 to extract the relationships associated with

the services From line (5) to (11) first the social relationshipis searched among objects and then the found relative objectsare composed in groups The design philosophy employedover here is to assign a ranking to each selected groupbased on the relationship type that helps in a more efficient

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 7: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

Wireless Communications and Mobile Computing 7

Table 1 Social relationship attributes

Social object relationships types AttributespropertiesSibling object relation (SIBOR) O119909 has relationship with O119910 rarr SIBOR if objectsrsquo ownership is defined as == SameFamily

Service object relationship (SVOR) O119909 has relationship with O119910 rarr SVOR if objectsrsquo serviceStatus is defined as ==SameServiceComposition

Stranger object relation (STGOR) O119909 has relationship with O119910 rarr STGOR if objectsrsquo authentication is defined as ==Anonymous

Guest object relationship (GSTOR) O119909 has relationship with O119910 rarr GSTOR if objectsrsquo ownership is defined as =SameFamilyampamp == GuestFriend

Parental object relationship (POR) O119909 has relationship with O119910 rarr POR if objectsrsquo creation is defined as == SameBatch ==SameProduction

Colocation object relationship (CLOR) O119909 has relationship with O119910 rarr CLOR if objectsrsquo proximity is defined as == Neighborhood location is defined as == SameLocation

Ownership object relationship (OOR) O119909 has relationship with O119910 rarr OOR if objectsrsquo proprietorship is defined as == SameOwner

VO2VO1 VO4VO3 VO6

CVO 1

Service A Service B Service C Service D

CVO 4CVO 3CVO 2

RWO RWORWORWORWO

Service E

Horizontal intraobject (intra object relation)

Vert

ical

asso

ciat

ion

(Inte

robj

ect r

elatio

n)

CVO 5

VO5

RWO

VO7

RWO

Service F

CVO 6

VO8

RWO

SIBOR

PORCLOR

Application 1 Application 2

SIBOR

Application 3

STGOR

CWOR

CLOR

Figure 3 Hierarchical social relationships of web objects

VO or subway security camera VO may establish STGORThis may help reuse VOs in service scenarios where onlyfor short duration a VO object is required At CVO levelCVO2 forms two different relationships which increasesthe level of connectivity of the CVO CVO2 first shares aCLOR with CVO1 and CVO3 CVO4 and CVO5 togetherSecondly CVO2 is combined in a SIBOR with CVO3 andbecomes in the same service family Further in the selecteduse case scenario described in Section 4 several other socialinteractions have also been elaborated

34 Social Web Objects Architecture SIoT envisages a systemwhere the social framework will bring smart devices andpeople to interact with each other By incorporating webtechnologies like SOA based microservices IoT services canbe rendered on top of the social framework The proposedsocial web objects architecture (as shown in Figure 4) hasbeen decomposed into three levels service level object

virtualization level and aggregated object virtualization levelAt the service level to support social relationships withinweb objects severalmicroservices have been designed whichare discussed further in the following section Moreoverthe data management function in the proposed design helpseach layer to interconnect with semantic databases TheSPARQL endpoints have been defined at the service and theobject virtualization levels that expose interfaces to retrievestore and modify RDF graphs Several interfaces allow theknowledge engineer domain expert and the developer tocreate service templates and VOs as well as update the RWKmodel user profile and policies

341 Service Level Functional Components The service levelfunctions handle operations from the request inception tothe execution of services This level is supported by somecore functions common to be used in each service life cycleThese include the management function to handle service

8 Wireless Communications and Mobile Computing

Microservices communication hub Servicetemplate

RWK model(RDF concepts ampfacts)

Application A Application B Application C

VO DB

VO template

VO registory

CVO DB

CVO template

CVO registory

Serviceregistory

ServiceDB

User profile RDFOWL

Serv

ice le

vel

Aggr

egat

ed o

bj v

irtua

lizat

ion

level

Obj

ect v

irtua

lizat

ion

level

VO management amp optimization engine

VO generator

VO ownership management

VO container

Service Interface

CVO Level Interface

VO level interface

DatabaseDatabase

Developer

Installer

RWK

Service DB

CVO DB

VO DB

Knowledge engineer

API APIAPIAPI

User

RWK situation mgt

Composition engine

Service management

Discovery amp lookup

Service execution environment

CVO reuse management

CVO generatorand composer

system knowledge

engineAP

I

Domainexpertknowledge engineer

API

API

API

Semantic RWK s

Service lookup

Request evaluatorService

registration s

Sem

antic

Dat

a m

gt

User situation management

User profilemgt

Service reuse tracker s

Semantic match makerService life

status mgt

Integration validator

Composition maker

CVO registration

CVO hypothesis analyzer

CVO coordinator

Event processor

Semantic context collector

Service template mgt

Service binding s

CVO template mgt

Selection analyzer

Similarity checker

CVO discovery

Link mgt s Relationship lookup s

Rel dependability s

Relation observer s

Service logs mgt s

Situation discovery classification projection services

CVO life cyclemanagement

VO availability validator

Conflict resolution

VO registration VO access mgt

VO coordinator

VO identity mgtVO template mgt

VO metadata mgt

VO data synthesizer

VO discovery VO energy efficiency tracking

Sensor and actuators

Gateway

CVOconfiguration amp management

Workflow mgts

Group mgts

Figure 4 Social web objects functional architecture

Wireless Communications and Mobile Computing 9

requests and initiate service provisioning processes theservice discovery function to select the available services thecomposition engine to enable service mashups and the Real-World Knowledge (RWK) and situation management func-tion to acquire RWK and continuously maintain it Besidesthese core functions several microservices have been usedto provide the plug-and-play feature in the proposed designthat is in case of service failure it is replaced with anotherone These services include the Request Evaluator microser-vice which interprets a service request and matches a requestquery to the service template The registration microserviceregisters newly added service objects to the registry Whena new template is instantiated objects are put in serviceand to know the existence of available service instances theyare recorded in the service registry The lookup microserviceis defined to search for the required service objects usingthe semantic representation The representations availablein RDFOWL format are queried from the registry basedon the request parameters Service life cycle managementkeeps track of the states of service objects during their lifecycle whereas RWKmanagement microservice is a semanticdata processing service which processes facts about userpreferences profile and situational information

To realize service provisioning it is always not possible tosatisfy the service requirement with a single service functionService composition and harmonization features are requiredto fulfill a demanding service request Service composition isnot a single operation many microservices are used to com-pose the individual features One of the major componentsof the composition is the Workflow Management (WFM)microservice which is responsible for decomposing the ser-vice requirement if no single service is available to satisfythe task WFM microservice identifies the service objectsusing input and output interfaces In this concern it usesthe matchmaking microservice to identify the approximatematches that can serve the required service functionalityHere service objects are semantically represented in the formof ontologies The semantic ontology alignment algorithm isused tomatch the service up to a certain threshold level that isdefined by the matchmaking microservice The reuse trackermicroservice is used to identify the current service instanceusage by the application it incorporates a coordinationmechanism before instantiating any new instance and thishelps in service reuse by many clients Binding microserviceenables tying of services selected by WFM this functionsynchronizes input and output of services in a workflowto produce a single service output based on the generatedcomposition plan

Furthermore user characterization is another importantelement to support the IoT services bymatching user require-ments more closely The User Profile Manager microservicehandles many facts related to the human user These includeuser profile preference context and policies Semantic Con-text Collector microservice organizes the services requestedby the user and the context in which these services wererequested This helps in identifying user interest with respectto the service context User context or situation helps inservice selection more efficiently if a user requests againwith a similar service requirement Some microservices have

been designed to handle user situation information thesemicroservices include situation discovery classification andrecognition functions Situation discovery is used to processsensor data that is provided by CVOs to prompt a situationwhereas machine learning algorithms are applied to removethe false values and data normalization is performed in caseinappropriate triggers in the data exist Situation classificationincorporates the reasoning methods and rules to generatea relationship over detected events and refine the missingknowledge between the events Situation projection analyzesthe events data with the help of machine learning methodsand provides an output in the form of predicted facts thatare related to the situation being detected Moreover allthe microservices coordinate using a communication hub toshare information with each other

Aflowof service inception to service execution in the pro-posed architecture is depicted in Figure 5 where service man-agement is responsible for initiating the above-mentionedfunctionalities and instantiating the microservices This pro-cess further results in the generation of CVOVO mashupgraphs to be handled by CVO management (discussed inSection 342) Situational information has also been used toimprove request analysis and service provisioning whereasVO management (discussed in Section 343) acquires andaggregates data from sensors and other RWOs

Social RelationshipManagementMicroservicesTo support thesocial relationships among web objects at each layer of theproposed system relationship management microservicesare defined which support the codification of relationshipsamong web objects (VOs and CVOs) and their managementThese microservices are defined as follows Group manage-ment microservice identifies the grouping of objects intospecific sets based on the type and interaction of objects itbuilds a social graph of the object relationships Link man-agement microservice incorporates mechanisms to maintainrelationships among different objects and it includes severalother subfunctions The first subfunction is object selectionwhich involves choosing candidate objects that are likelyto form a particular association The second subfunctionis matchmaking service which provides exact relationshipmatch based on the type of objects The third subfunctionis the association life cycle manager which maintains therelationship status between objects it checkswhether they arein active relation or not It keeps track of relationship validityand also the duration of relationships Relationship observermicroservice enables the object activities to be observedand it also handles the mutual sharing which defines whatinformation an object is allowed to share or use of anotherobject based on the relationship among them Relationshipdependability recognizer microservice identifies maintainsand continuously improves the level of reliability amongobjects If objects A and B are frequently interacting andalways perform a task together that leads to successfulexecution of an application to serve the requirements thenthey are more likely to form a reliable relationship with eachother The consistency of the relationship allows objects toshare their information with fewer constraints as comparedto unpredictable association among objects Relationship

10 Wireless Communications and Mobile Computing

Application domain

Service manager

Composite VO mgt

ServiceCVOVO registry DB

VO management

SituationRWK management

User profile

Evaluate RequestDiscover microservicesSelect service template

Composition mgt

Req CVO entries

Microservice container

CVO registrationCVO ontology lookupReuse approximation

Service request

Resp CVOs

VO instantiate req

Req user situation parameters

Resp user situation parameters

Req VO entriesResp VOs

Req user modelResp user model

SelectVOs

Microservice notificationstatus

Instantiatemicroservice

Req CVOcreation

VO notificationCVO notificationMicroservice deployment

Service resp

VO RegistrationVO ontology discovery

VO metadata mgt Update preferences

Update events

Situation projection

Update user model

Req serviceService resp

Situation detection

Classified situation

Figure 5 Request initiation and service execution flow in the proposed architecture

lookup microservice incorporates the discovery algorithm(as given in listing of Algorithm 1) to discover the socialrelationships and maintains the list of all objects and theirpotential association rating The rating defines the opportu-nity for objects to form a relationship with each other

Moreover the operation flow of social microservices hasbeen illustrated in Figure 6 where VOmanagement retrievesthe social relationship among objects this is queried usinglink management which uses a lookup service Associationsare maintained in a social relationship graph using semanticontology and queried using the relation observer serviceThesocial graph is also updated and maintained continuouslywith respect to changing links among objects on the basisof which VOs are selected

342 Functional Components in Aggregated Object Virtual-ization Level Aggregated object virtualization (AOV) levelinvolves all the necessary functions to instantiate manageand continuously monitor CVOs Besides it includes theinterface required by the service level to interact with CVOcomponents Service level provides the mashup graphs ofCVOs and VOs that are required to fulfill a service requestAggregation level also supports some core functions theseare categorized as CVO configuration and management todecompose requests from service level and manage CVOinstances CVO generator to instantiate CVOs compositionfunction to form CVO and VO mashups reuse management

to select existing CVOs that approximately match servicerequirement and system knowledge engine to grow knowl-edge for the optimal use of CVO resources Further otheraggregation level functionalities are as follows registrationfunction records the CVO entry into the semantic CVOregistry in the form of RDFJSON format CVO includesontologies that specify conditions to be applied on theVO data Also at this level templates are created by adomain expert or knowledge engineer which consist offunctionalities associated with each CVO type Templatemanagement module provides an interface to include tem-plates to the CVO template repository and also supportsthe modification mechanism CVOs are discovered usingtheir semantic annotation via the discovery function CVOselection analyzer function provides estimated selection ofa CVO for reuse if there is no single CVO that can exactlyprovide the required service This is supported by similar-ity checking mechanism to analyze the level of similaritybefore recommending for reuse At aggregation level anotherimportant function is event processing event streams gen-erated by object virtualization level are highly valuable toinfer situational awareness and building RWK that is usedby high-level functions Event processing module facilitatesprocessing of events and provides generated facts as outputEvent processing is supported by CVO hypothesis analyzerthat incorporates several hypotheses which are trained overdata to build system level knowledge Aggregation level also

Wireless Communications and Mobile Computing 11

VO mgt Social relationship manager

Social link mgt

Relationship lookup MS

Group mgt

Relation observer

Social relation graph

Object selectionQuery generation

Req lookup

Social rel queryLookup resp

Modified social graph

Update dependencies

graph result

Update change inassociation

Generate update queryUpdate triples

Req relation graph

MatchmakingValidate association

Infer relation

Organize group

Add member

Select registered VOs

Execute query

Relation graph resp

Retrieve social object relation

Update VO

Social graph update

Inferred relationships

AckUpdate Group

Update VO

Social rel search

Figure 6 Sequence of operation required to establish a social relationship among objects

provides composition function which provides the basis formerging multiple VOs to generate single service feature andvalidation function to validate the compositions of multipleVOs Moreover the coordinator helps in resolving conflictsin case of simultaneous access of single CVO by multipleservices together

343 Functional Components in Object Virtualization LevelAlthough IoT middleware virtualizes sensors and actuatorsin some form of virtual entities however in WoO everyliving or nonliving thing can be represented in the virtualworld VOs are supported by an information model [1415] which includes the representation of RWO that canbe ICT or non-ICT In the proposed architecture objectvirtualization level includes functions to create maintainand coordinate VOs such as VO generator VOmanagementand optimization engine VO registration function providesan interface to register VOs with the help of VO ownershipmanagement function where the VO ownership is main-tained Template management function handles templatesor loads updated ones as provided by the domain expertMetadata management maintains data associated with VOsas VO is a digital representative of real-world entities thereis a high need to store metadata information to recognizethe class of sensed data Use of metadata provides the realvalue of the data in the form of the context stored withinit Furthermore VO data synthesizer service handles the

discrepancies if found in the data corresponding to VO thisincludes data manipulation and missing value rectificationsConflict resolution function helps in case the same VO isused by multiple service instances to resolve the conflictsAlso VO access management function controls access forVOs in case access right information has been defined bythe VO owner whereas identification management modulemaintains identification information about VOs so that eachVO can be uniquely identified in the system

344 Social Relationship Discovery and Composition Toidentify associations among web objects within a socialrelationship graph an algorithm is elaborated briefly In thefollowing algorithm the microservices that are in executionare retrieved first represented as M120583 next all the CVOsassociated with each of those microservices are recoveredin Mc and further the corresponding VO model Mvis iterated In the next step executing the query statementroutine returns the results denoted as The process offinding the relationships is carried out through lines (6)ndash(19)in multiple nested iterations as shown in the pseudocode ofAlgorithm 1 listing

Algorithm 2 facilitates the composition of objects basedon social association types This algorithm takes as input theset of object social relationships denoted by Z and registryentries of the objects that are currently available in thesystem represented as Re After the object model denoted

12 Wireless Communications and Mobile Computing

Require (C) (R119890)(1)Output S (social relationship graph of objects)(2) M120583 larr Load Microservices in model(3) M119888 larr Load CVOs in model(4) MV larr Load VOs in model(5) larr executeQueryStatement (M120583 M119888 MV 119876)(6) for All 120583 in 120583 do (iterate Microservice instance being used)(7) for All 119874 isin 120583 do (check CVO and VOs used by the Services)(8) if O119894 == output of C119877 in a relationship set R119888 then(9) add C119877 to119871(10) else(11) if O119894 == output of V119877 in relationship set RV then(12) add V119877 to119871(13) N119894 larr tag (Assign relationship tag to each object entry)(14) else(15) add O119894 to119880(16) end if(17) end if(18) end for(19) end for

Algorithm 1 Social relationship discovery

Require (C) (R119890) (Z)(1)Output C (Composite Service)(2) Mlarr List all objects available (Microservices CVOs VOs) in model(3) larr executeQueryStatement (M 119876)(4) Zlarr executeQueryStatement (M 1198761015840)(5) for All 120590119894 isin do(6) for All 120582119894 isin 120590 do(7) if 120582119894 == any 119911 in Z then(8) add 120582119894 toLm(9) storeLm(10) end if(11) end for(12) for All 120603i isin Lm do(13) if 120603i == any 120603i inLm then(14) 120597 larr ranking (Assign rank to each service)(15) add 120603i toLR(16) storeLR(17) end if(18) end for(19) for All 120590119895 isin LR do(20) if 120590119895(R120597) gt 120581 then(21) add 120590119895 to Wf(22) Pqlarr assign to queue(23) Sort Pq(24) Formulate Wf(25) end if(26) end for

Algorithm 2 Composition of objects based on social relationship

as M is loaded the first step is to compose objects basedon their relationship types This way the SPARQL queriesare executed the first query is denoted as 119876 to retrievethe available service templates and the second query isrepresented as 1198761015840 to extract the relationships associated with

the services From line (5) to (11) first the social relationshipis searched among objects and then the found relative objectsare composed in groups The design philosophy employedover here is to assign a ranking to each selected groupbased on the relationship type that helps in a more efficient

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 8: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

8 Wireless Communications and Mobile Computing

Microservices communication hub Servicetemplate

RWK model(RDF concepts ampfacts)

Application A Application B Application C

VO DB

VO template

VO registory

CVO DB

CVO template

CVO registory

Serviceregistory

ServiceDB

User profile RDFOWL

Serv

ice le

vel

Aggr

egat

ed o

bj v

irtua

lizat

ion

level

Obj

ect v

irtua

lizat

ion

level

VO management amp optimization engine

VO generator

VO ownership management

VO container

Service Interface

CVO Level Interface

VO level interface

DatabaseDatabase

Developer

Installer

RWK

Service DB

CVO DB

VO DB

Knowledge engineer

API APIAPIAPI

User

RWK situation mgt

Composition engine

Service management

Discovery amp lookup

Service execution environment

CVO reuse management

CVO generatorand composer

system knowledge

engineAP

I

Domainexpertknowledge engineer

API

API

API

Semantic RWK s

Service lookup

Request evaluatorService

registration s

Sem

antic

Dat

a m

gt

User situation management

User profilemgt

Service reuse tracker s

Semantic match makerService life

status mgt

Integration validator

Composition maker

CVO registration

CVO hypothesis analyzer

CVO coordinator

Event processor

Semantic context collector

Service template mgt

Service binding s

CVO template mgt

Selection analyzer

Similarity checker

CVO discovery

Link mgt s Relationship lookup s

Rel dependability s

Relation observer s

Service logs mgt s

Situation discovery classification projection services

CVO life cyclemanagement

VO availability validator

Conflict resolution

VO registration VO access mgt

VO coordinator

VO identity mgtVO template mgt

VO metadata mgt

VO data synthesizer

VO discovery VO energy efficiency tracking

Sensor and actuators

Gateway

CVOconfiguration amp management

Workflow mgts

Group mgts

Figure 4 Social web objects functional architecture

Wireless Communications and Mobile Computing 9

requests and initiate service provisioning processes theservice discovery function to select the available services thecomposition engine to enable service mashups and the Real-World Knowledge (RWK) and situation management func-tion to acquire RWK and continuously maintain it Besidesthese core functions several microservices have been usedto provide the plug-and-play feature in the proposed designthat is in case of service failure it is replaced with anotherone These services include the Request Evaluator microser-vice which interprets a service request and matches a requestquery to the service template The registration microserviceregisters newly added service objects to the registry Whena new template is instantiated objects are put in serviceand to know the existence of available service instances theyare recorded in the service registry The lookup microserviceis defined to search for the required service objects usingthe semantic representation The representations availablein RDFOWL format are queried from the registry basedon the request parameters Service life cycle managementkeeps track of the states of service objects during their lifecycle whereas RWKmanagement microservice is a semanticdata processing service which processes facts about userpreferences profile and situational information

To realize service provisioning it is always not possible tosatisfy the service requirement with a single service functionService composition and harmonization features are requiredto fulfill a demanding service request Service composition isnot a single operation many microservices are used to com-pose the individual features One of the major componentsof the composition is the Workflow Management (WFM)microservice which is responsible for decomposing the ser-vice requirement if no single service is available to satisfythe task WFM microservice identifies the service objectsusing input and output interfaces In this concern it usesthe matchmaking microservice to identify the approximatematches that can serve the required service functionalityHere service objects are semantically represented in the formof ontologies The semantic ontology alignment algorithm isused tomatch the service up to a certain threshold level that isdefined by the matchmaking microservice The reuse trackermicroservice is used to identify the current service instanceusage by the application it incorporates a coordinationmechanism before instantiating any new instance and thishelps in service reuse by many clients Binding microserviceenables tying of services selected by WFM this functionsynchronizes input and output of services in a workflowto produce a single service output based on the generatedcomposition plan

Furthermore user characterization is another importantelement to support the IoT services bymatching user require-ments more closely The User Profile Manager microservicehandles many facts related to the human user These includeuser profile preference context and policies Semantic Con-text Collector microservice organizes the services requestedby the user and the context in which these services wererequested This helps in identifying user interest with respectto the service context User context or situation helps inservice selection more efficiently if a user requests againwith a similar service requirement Some microservices have

been designed to handle user situation information thesemicroservices include situation discovery classification andrecognition functions Situation discovery is used to processsensor data that is provided by CVOs to prompt a situationwhereas machine learning algorithms are applied to removethe false values and data normalization is performed in caseinappropriate triggers in the data exist Situation classificationincorporates the reasoning methods and rules to generatea relationship over detected events and refine the missingknowledge between the events Situation projection analyzesthe events data with the help of machine learning methodsand provides an output in the form of predicted facts thatare related to the situation being detected Moreover allthe microservices coordinate using a communication hub toshare information with each other

Aflowof service inception to service execution in the pro-posed architecture is depicted in Figure 5 where service man-agement is responsible for initiating the above-mentionedfunctionalities and instantiating the microservices This pro-cess further results in the generation of CVOVO mashupgraphs to be handled by CVO management (discussed inSection 342) Situational information has also been used toimprove request analysis and service provisioning whereasVO management (discussed in Section 343) acquires andaggregates data from sensors and other RWOs

Social RelationshipManagementMicroservicesTo support thesocial relationships among web objects at each layer of theproposed system relationship management microservicesare defined which support the codification of relationshipsamong web objects (VOs and CVOs) and their managementThese microservices are defined as follows Group manage-ment microservice identifies the grouping of objects intospecific sets based on the type and interaction of objects itbuilds a social graph of the object relationships Link man-agement microservice incorporates mechanisms to maintainrelationships among different objects and it includes severalother subfunctions The first subfunction is object selectionwhich involves choosing candidate objects that are likelyto form a particular association The second subfunctionis matchmaking service which provides exact relationshipmatch based on the type of objects The third subfunctionis the association life cycle manager which maintains therelationship status between objects it checkswhether they arein active relation or not It keeps track of relationship validityand also the duration of relationships Relationship observermicroservice enables the object activities to be observedand it also handles the mutual sharing which defines whatinformation an object is allowed to share or use of anotherobject based on the relationship among them Relationshipdependability recognizer microservice identifies maintainsand continuously improves the level of reliability amongobjects If objects A and B are frequently interacting andalways perform a task together that leads to successfulexecution of an application to serve the requirements thenthey are more likely to form a reliable relationship with eachother The consistency of the relationship allows objects toshare their information with fewer constraints as comparedto unpredictable association among objects Relationship

10 Wireless Communications and Mobile Computing

Application domain

Service manager

Composite VO mgt

ServiceCVOVO registry DB

VO management

SituationRWK management

User profile

Evaluate RequestDiscover microservicesSelect service template

Composition mgt

Req CVO entries

Microservice container

CVO registrationCVO ontology lookupReuse approximation

Service request

Resp CVOs

VO instantiate req

Req user situation parameters

Resp user situation parameters

Req VO entriesResp VOs

Req user modelResp user model

SelectVOs

Microservice notificationstatus

Instantiatemicroservice

Req CVOcreation

VO notificationCVO notificationMicroservice deployment

Service resp

VO RegistrationVO ontology discovery

VO metadata mgt Update preferences

Update events

Situation projection

Update user model

Req serviceService resp

Situation detection

Classified situation

Figure 5 Request initiation and service execution flow in the proposed architecture

lookup microservice incorporates the discovery algorithm(as given in listing of Algorithm 1) to discover the socialrelationships and maintains the list of all objects and theirpotential association rating The rating defines the opportu-nity for objects to form a relationship with each other

Moreover the operation flow of social microservices hasbeen illustrated in Figure 6 where VOmanagement retrievesthe social relationship among objects this is queried usinglink management which uses a lookup service Associationsare maintained in a social relationship graph using semanticontology and queried using the relation observer serviceThesocial graph is also updated and maintained continuouslywith respect to changing links among objects on the basisof which VOs are selected

342 Functional Components in Aggregated Object Virtual-ization Level Aggregated object virtualization (AOV) levelinvolves all the necessary functions to instantiate manageand continuously monitor CVOs Besides it includes theinterface required by the service level to interact with CVOcomponents Service level provides the mashup graphs ofCVOs and VOs that are required to fulfill a service requestAggregation level also supports some core functions theseare categorized as CVO configuration and management todecompose requests from service level and manage CVOinstances CVO generator to instantiate CVOs compositionfunction to form CVO and VO mashups reuse management

to select existing CVOs that approximately match servicerequirement and system knowledge engine to grow knowl-edge for the optimal use of CVO resources Further otheraggregation level functionalities are as follows registrationfunction records the CVO entry into the semantic CVOregistry in the form of RDFJSON format CVO includesontologies that specify conditions to be applied on theVO data Also at this level templates are created by adomain expert or knowledge engineer which consist offunctionalities associated with each CVO type Templatemanagement module provides an interface to include tem-plates to the CVO template repository and also supportsthe modification mechanism CVOs are discovered usingtheir semantic annotation via the discovery function CVOselection analyzer function provides estimated selection ofa CVO for reuse if there is no single CVO that can exactlyprovide the required service This is supported by similar-ity checking mechanism to analyze the level of similaritybefore recommending for reuse At aggregation level anotherimportant function is event processing event streams gen-erated by object virtualization level are highly valuable toinfer situational awareness and building RWK that is usedby high-level functions Event processing module facilitatesprocessing of events and provides generated facts as outputEvent processing is supported by CVO hypothesis analyzerthat incorporates several hypotheses which are trained overdata to build system level knowledge Aggregation level also

Wireless Communications and Mobile Computing 11

VO mgt Social relationship manager

Social link mgt

Relationship lookup MS

Group mgt

Relation observer

Social relation graph

Object selectionQuery generation

Req lookup

Social rel queryLookup resp

Modified social graph

Update dependencies

graph result

Update change inassociation

Generate update queryUpdate triples

Req relation graph

MatchmakingValidate association

Infer relation

Organize group

Add member

Select registered VOs

Execute query

Relation graph resp

Retrieve social object relation

Update VO

Social graph update

Inferred relationships

AckUpdate Group

Update VO

Social rel search

Figure 6 Sequence of operation required to establish a social relationship among objects

provides composition function which provides the basis formerging multiple VOs to generate single service feature andvalidation function to validate the compositions of multipleVOs Moreover the coordinator helps in resolving conflictsin case of simultaneous access of single CVO by multipleservices together

343 Functional Components in Object Virtualization LevelAlthough IoT middleware virtualizes sensors and actuatorsin some form of virtual entities however in WoO everyliving or nonliving thing can be represented in the virtualworld VOs are supported by an information model [1415] which includes the representation of RWO that canbe ICT or non-ICT In the proposed architecture objectvirtualization level includes functions to create maintainand coordinate VOs such as VO generator VOmanagementand optimization engine VO registration function providesan interface to register VOs with the help of VO ownershipmanagement function where the VO ownership is main-tained Template management function handles templatesor loads updated ones as provided by the domain expertMetadata management maintains data associated with VOsas VO is a digital representative of real-world entities thereis a high need to store metadata information to recognizethe class of sensed data Use of metadata provides the realvalue of the data in the form of the context stored withinit Furthermore VO data synthesizer service handles the

discrepancies if found in the data corresponding to VO thisincludes data manipulation and missing value rectificationsConflict resolution function helps in case the same VO isused by multiple service instances to resolve the conflictsAlso VO access management function controls access forVOs in case access right information has been defined bythe VO owner whereas identification management modulemaintains identification information about VOs so that eachVO can be uniquely identified in the system

344 Social Relationship Discovery and Composition Toidentify associations among web objects within a socialrelationship graph an algorithm is elaborated briefly In thefollowing algorithm the microservices that are in executionare retrieved first represented as M120583 next all the CVOsassociated with each of those microservices are recoveredin Mc and further the corresponding VO model Mvis iterated In the next step executing the query statementroutine returns the results denoted as The process offinding the relationships is carried out through lines (6)ndash(19)in multiple nested iterations as shown in the pseudocode ofAlgorithm 1 listing

Algorithm 2 facilitates the composition of objects basedon social association types This algorithm takes as input theset of object social relationships denoted by Z and registryentries of the objects that are currently available in thesystem represented as Re After the object model denoted

12 Wireless Communications and Mobile Computing

Require (C) (R119890)(1)Output S (social relationship graph of objects)(2) M120583 larr Load Microservices in model(3) M119888 larr Load CVOs in model(4) MV larr Load VOs in model(5) larr executeQueryStatement (M120583 M119888 MV 119876)(6) for All 120583 in 120583 do (iterate Microservice instance being used)(7) for All 119874 isin 120583 do (check CVO and VOs used by the Services)(8) if O119894 == output of C119877 in a relationship set R119888 then(9) add C119877 to119871(10) else(11) if O119894 == output of V119877 in relationship set RV then(12) add V119877 to119871(13) N119894 larr tag (Assign relationship tag to each object entry)(14) else(15) add O119894 to119880(16) end if(17) end if(18) end for(19) end for

Algorithm 1 Social relationship discovery

Require (C) (R119890) (Z)(1)Output C (Composite Service)(2) Mlarr List all objects available (Microservices CVOs VOs) in model(3) larr executeQueryStatement (M 119876)(4) Zlarr executeQueryStatement (M 1198761015840)(5) for All 120590119894 isin do(6) for All 120582119894 isin 120590 do(7) if 120582119894 == any 119911 in Z then(8) add 120582119894 toLm(9) storeLm(10) end if(11) end for(12) for All 120603i isin Lm do(13) if 120603i == any 120603i inLm then(14) 120597 larr ranking (Assign rank to each service)(15) add 120603i toLR(16) storeLR(17) end if(18) end for(19) for All 120590119895 isin LR do(20) if 120590119895(R120597) gt 120581 then(21) add 120590119895 to Wf(22) Pqlarr assign to queue(23) Sort Pq(24) Formulate Wf(25) end if(26) end for

Algorithm 2 Composition of objects based on social relationship

as M is loaded the first step is to compose objects basedon their relationship types This way the SPARQL queriesare executed the first query is denoted as 119876 to retrievethe available service templates and the second query isrepresented as 1198761015840 to extract the relationships associated with

the services From line (5) to (11) first the social relationshipis searched among objects and then the found relative objectsare composed in groups The design philosophy employedover here is to assign a ranking to each selected groupbased on the relationship type that helps in a more efficient

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 9: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

Wireless Communications and Mobile Computing 9

requests and initiate service provisioning processes theservice discovery function to select the available services thecomposition engine to enable service mashups and the Real-World Knowledge (RWK) and situation management func-tion to acquire RWK and continuously maintain it Besidesthese core functions several microservices have been usedto provide the plug-and-play feature in the proposed designthat is in case of service failure it is replaced with anotherone These services include the Request Evaluator microser-vice which interprets a service request and matches a requestquery to the service template The registration microserviceregisters newly added service objects to the registry Whena new template is instantiated objects are put in serviceand to know the existence of available service instances theyare recorded in the service registry The lookup microserviceis defined to search for the required service objects usingthe semantic representation The representations availablein RDFOWL format are queried from the registry basedon the request parameters Service life cycle managementkeeps track of the states of service objects during their lifecycle whereas RWKmanagement microservice is a semanticdata processing service which processes facts about userpreferences profile and situational information

To realize service provisioning it is always not possible tosatisfy the service requirement with a single service functionService composition and harmonization features are requiredto fulfill a demanding service request Service composition isnot a single operation many microservices are used to com-pose the individual features One of the major componentsof the composition is the Workflow Management (WFM)microservice which is responsible for decomposing the ser-vice requirement if no single service is available to satisfythe task WFM microservice identifies the service objectsusing input and output interfaces In this concern it usesthe matchmaking microservice to identify the approximatematches that can serve the required service functionalityHere service objects are semantically represented in the formof ontologies The semantic ontology alignment algorithm isused tomatch the service up to a certain threshold level that isdefined by the matchmaking microservice The reuse trackermicroservice is used to identify the current service instanceusage by the application it incorporates a coordinationmechanism before instantiating any new instance and thishelps in service reuse by many clients Binding microserviceenables tying of services selected by WFM this functionsynchronizes input and output of services in a workflowto produce a single service output based on the generatedcomposition plan

Furthermore user characterization is another importantelement to support the IoT services bymatching user require-ments more closely The User Profile Manager microservicehandles many facts related to the human user These includeuser profile preference context and policies Semantic Con-text Collector microservice organizes the services requestedby the user and the context in which these services wererequested This helps in identifying user interest with respectto the service context User context or situation helps inservice selection more efficiently if a user requests againwith a similar service requirement Some microservices have

been designed to handle user situation information thesemicroservices include situation discovery classification andrecognition functions Situation discovery is used to processsensor data that is provided by CVOs to prompt a situationwhereas machine learning algorithms are applied to removethe false values and data normalization is performed in caseinappropriate triggers in the data exist Situation classificationincorporates the reasoning methods and rules to generatea relationship over detected events and refine the missingknowledge between the events Situation projection analyzesthe events data with the help of machine learning methodsand provides an output in the form of predicted facts thatare related to the situation being detected Moreover allthe microservices coordinate using a communication hub toshare information with each other

Aflowof service inception to service execution in the pro-posed architecture is depicted in Figure 5 where service man-agement is responsible for initiating the above-mentionedfunctionalities and instantiating the microservices This pro-cess further results in the generation of CVOVO mashupgraphs to be handled by CVO management (discussed inSection 342) Situational information has also been used toimprove request analysis and service provisioning whereasVO management (discussed in Section 343) acquires andaggregates data from sensors and other RWOs

Social RelationshipManagementMicroservicesTo support thesocial relationships among web objects at each layer of theproposed system relationship management microservicesare defined which support the codification of relationshipsamong web objects (VOs and CVOs) and their managementThese microservices are defined as follows Group manage-ment microservice identifies the grouping of objects intospecific sets based on the type and interaction of objects itbuilds a social graph of the object relationships Link man-agement microservice incorporates mechanisms to maintainrelationships among different objects and it includes severalother subfunctions The first subfunction is object selectionwhich involves choosing candidate objects that are likelyto form a particular association The second subfunctionis matchmaking service which provides exact relationshipmatch based on the type of objects The third subfunctionis the association life cycle manager which maintains therelationship status between objects it checkswhether they arein active relation or not It keeps track of relationship validityand also the duration of relationships Relationship observermicroservice enables the object activities to be observedand it also handles the mutual sharing which defines whatinformation an object is allowed to share or use of anotherobject based on the relationship among them Relationshipdependability recognizer microservice identifies maintainsand continuously improves the level of reliability amongobjects If objects A and B are frequently interacting andalways perform a task together that leads to successfulexecution of an application to serve the requirements thenthey are more likely to form a reliable relationship with eachother The consistency of the relationship allows objects toshare their information with fewer constraints as comparedto unpredictable association among objects Relationship

10 Wireless Communications and Mobile Computing

Application domain

Service manager

Composite VO mgt

ServiceCVOVO registry DB

VO management

SituationRWK management

User profile

Evaluate RequestDiscover microservicesSelect service template

Composition mgt

Req CVO entries

Microservice container

CVO registrationCVO ontology lookupReuse approximation

Service request

Resp CVOs

VO instantiate req

Req user situation parameters

Resp user situation parameters

Req VO entriesResp VOs

Req user modelResp user model

SelectVOs

Microservice notificationstatus

Instantiatemicroservice

Req CVOcreation

VO notificationCVO notificationMicroservice deployment

Service resp

VO RegistrationVO ontology discovery

VO metadata mgt Update preferences

Update events

Situation projection

Update user model

Req serviceService resp

Situation detection

Classified situation

Figure 5 Request initiation and service execution flow in the proposed architecture

lookup microservice incorporates the discovery algorithm(as given in listing of Algorithm 1) to discover the socialrelationships and maintains the list of all objects and theirpotential association rating The rating defines the opportu-nity for objects to form a relationship with each other

Moreover the operation flow of social microservices hasbeen illustrated in Figure 6 where VOmanagement retrievesthe social relationship among objects this is queried usinglink management which uses a lookup service Associationsare maintained in a social relationship graph using semanticontology and queried using the relation observer serviceThesocial graph is also updated and maintained continuouslywith respect to changing links among objects on the basisof which VOs are selected

342 Functional Components in Aggregated Object Virtual-ization Level Aggregated object virtualization (AOV) levelinvolves all the necessary functions to instantiate manageand continuously monitor CVOs Besides it includes theinterface required by the service level to interact with CVOcomponents Service level provides the mashup graphs ofCVOs and VOs that are required to fulfill a service requestAggregation level also supports some core functions theseare categorized as CVO configuration and management todecompose requests from service level and manage CVOinstances CVO generator to instantiate CVOs compositionfunction to form CVO and VO mashups reuse management

to select existing CVOs that approximately match servicerequirement and system knowledge engine to grow knowl-edge for the optimal use of CVO resources Further otheraggregation level functionalities are as follows registrationfunction records the CVO entry into the semantic CVOregistry in the form of RDFJSON format CVO includesontologies that specify conditions to be applied on theVO data Also at this level templates are created by adomain expert or knowledge engineer which consist offunctionalities associated with each CVO type Templatemanagement module provides an interface to include tem-plates to the CVO template repository and also supportsthe modification mechanism CVOs are discovered usingtheir semantic annotation via the discovery function CVOselection analyzer function provides estimated selection ofa CVO for reuse if there is no single CVO that can exactlyprovide the required service This is supported by similar-ity checking mechanism to analyze the level of similaritybefore recommending for reuse At aggregation level anotherimportant function is event processing event streams gen-erated by object virtualization level are highly valuable toinfer situational awareness and building RWK that is usedby high-level functions Event processing module facilitatesprocessing of events and provides generated facts as outputEvent processing is supported by CVO hypothesis analyzerthat incorporates several hypotheses which are trained overdata to build system level knowledge Aggregation level also

Wireless Communications and Mobile Computing 11

VO mgt Social relationship manager

Social link mgt

Relationship lookup MS

Group mgt

Relation observer

Social relation graph

Object selectionQuery generation

Req lookup

Social rel queryLookup resp

Modified social graph

Update dependencies

graph result

Update change inassociation

Generate update queryUpdate triples

Req relation graph

MatchmakingValidate association

Infer relation

Organize group

Add member

Select registered VOs

Execute query

Relation graph resp

Retrieve social object relation

Update VO

Social graph update

Inferred relationships

AckUpdate Group

Update VO

Social rel search

Figure 6 Sequence of operation required to establish a social relationship among objects

provides composition function which provides the basis formerging multiple VOs to generate single service feature andvalidation function to validate the compositions of multipleVOs Moreover the coordinator helps in resolving conflictsin case of simultaneous access of single CVO by multipleservices together

343 Functional Components in Object Virtualization LevelAlthough IoT middleware virtualizes sensors and actuatorsin some form of virtual entities however in WoO everyliving or nonliving thing can be represented in the virtualworld VOs are supported by an information model [1415] which includes the representation of RWO that canbe ICT or non-ICT In the proposed architecture objectvirtualization level includes functions to create maintainand coordinate VOs such as VO generator VOmanagementand optimization engine VO registration function providesan interface to register VOs with the help of VO ownershipmanagement function where the VO ownership is main-tained Template management function handles templatesor loads updated ones as provided by the domain expertMetadata management maintains data associated with VOsas VO is a digital representative of real-world entities thereis a high need to store metadata information to recognizethe class of sensed data Use of metadata provides the realvalue of the data in the form of the context stored withinit Furthermore VO data synthesizer service handles the

discrepancies if found in the data corresponding to VO thisincludes data manipulation and missing value rectificationsConflict resolution function helps in case the same VO isused by multiple service instances to resolve the conflictsAlso VO access management function controls access forVOs in case access right information has been defined bythe VO owner whereas identification management modulemaintains identification information about VOs so that eachVO can be uniquely identified in the system

344 Social Relationship Discovery and Composition Toidentify associations among web objects within a socialrelationship graph an algorithm is elaborated briefly In thefollowing algorithm the microservices that are in executionare retrieved first represented as M120583 next all the CVOsassociated with each of those microservices are recoveredin Mc and further the corresponding VO model Mvis iterated In the next step executing the query statementroutine returns the results denoted as The process offinding the relationships is carried out through lines (6)ndash(19)in multiple nested iterations as shown in the pseudocode ofAlgorithm 1 listing

Algorithm 2 facilitates the composition of objects basedon social association types This algorithm takes as input theset of object social relationships denoted by Z and registryentries of the objects that are currently available in thesystem represented as Re After the object model denoted

12 Wireless Communications and Mobile Computing

Require (C) (R119890)(1)Output S (social relationship graph of objects)(2) M120583 larr Load Microservices in model(3) M119888 larr Load CVOs in model(4) MV larr Load VOs in model(5) larr executeQueryStatement (M120583 M119888 MV 119876)(6) for All 120583 in 120583 do (iterate Microservice instance being used)(7) for All 119874 isin 120583 do (check CVO and VOs used by the Services)(8) if O119894 == output of C119877 in a relationship set R119888 then(9) add C119877 to119871(10) else(11) if O119894 == output of V119877 in relationship set RV then(12) add V119877 to119871(13) N119894 larr tag (Assign relationship tag to each object entry)(14) else(15) add O119894 to119880(16) end if(17) end if(18) end for(19) end for

Algorithm 1 Social relationship discovery

Require (C) (R119890) (Z)(1)Output C (Composite Service)(2) Mlarr List all objects available (Microservices CVOs VOs) in model(3) larr executeQueryStatement (M 119876)(4) Zlarr executeQueryStatement (M 1198761015840)(5) for All 120590119894 isin do(6) for All 120582119894 isin 120590 do(7) if 120582119894 == any 119911 in Z then(8) add 120582119894 toLm(9) storeLm(10) end if(11) end for(12) for All 120603i isin Lm do(13) if 120603i == any 120603i inLm then(14) 120597 larr ranking (Assign rank to each service)(15) add 120603i toLR(16) storeLR(17) end if(18) end for(19) for All 120590119895 isin LR do(20) if 120590119895(R120597) gt 120581 then(21) add 120590119895 to Wf(22) Pqlarr assign to queue(23) Sort Pq(24) Formulate Wf(25) end if(26) end for

Algorithm 2 Composition of objects based on social relationship

as M is loaded the first step is to compose objects basedon their relationship types This way the SPARQL queriesare executed the first query is denoted as 119876 to retrievethe available service templates and the second query isrepresented as 1198761015840 to extract the relationships associated with

the services From line (5) to (11) first the social relationshipis searched among objects and then the found relative objectsare composed in groups The design philosophy employedover here is to assign a ranking to each selected groupbased on the relationship type that helps in a more efficient

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 10: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

10 Wireless Communications and Mobile Computing

Application domain

Service manager

Composite VO mgt

ServiceCVOVO registry DB

VO management

SituationRWK management

User profile

Evaluate RequestDiscover microservicesSelect service template

Composition mgt

Req CVO entries

Microservice container

CVO registrationCVO ontology lookupReuse approximation

Service request

Resp CVOs

VO instantiate req

Req user situation parameters

Resp user situation parameters

Req VO entriesResp VOs

Req user modelResp user model

SelectVOs

Microservice notificationstatus

Instantiatemicroservice

Req CVOcreation

VO notificationCVO notificationMicroservice deployment

Service resp

VO RegistrationVO ontology discovery

VO metadata mgt Update preferences

Update events

Situation projection

Update user model

Req serviceService resp

Situation detection

Classified situation

Figure 5 Request initiation and service execution flow in the proposed architecture

lookup microservice incorporates the discovery algorithm(as given in listing of Algorithm 1) to discover the socialrelationships and maintains the list of all objects and theirpotential association rating The rating defines the opportu-nity for objects to form a relationship with each other

Moreover the operation flow of social microservices hasbeen illustrated in Figure 6 where VOmanagement retrievesthe social relationship among objects this is queried usinglink management which uses a lookup service Associationsare maintained in a social relationship graph using semanticontology and queried using the relation observer serviceThesocial graph is also updated and maintained continuouslywith respect to changing links among objects on the basisof which VOs are selected

342 Functional Components in Aggregated Object Virtual-ization Level Aggregated object virtualization (AOV) levelinvolves all the necessary functions to instantiate manageand continuously monitor CVOs Besides it includes theinterface required by the service level to interact with CVOcomponents Service level provides the mashup graphs ofCVOs and VOs that are required to fulfill a service requestAggregation level also supports some core functions theseare categorized as CVO configuration and management todecompose requests from service level and manage CVOinstances CVO generator to instantiate CVOs compositionfunction to form CVO and VO mashups reuse management

to select existing CVOs that approximately match servicerequirement and system knowledge engine to grow knowl-edge for the optimal use of CVO resources Further otheraggregation level functionalities are as follows registrationfunction records the CVO entry into the semantic CVOregistry in the form of RDFJSON format CVO includesontologies that specify conditions to be applied on theVO data Also at this level templates are created by adomain expert or knowledge engineer which consist offunctionalities associated with each CVO type Templatemanagement module provides an interface to include tem-plates to the CVO template repository and also supportsthe modification mechanism CVOs are discovered usingtheir semantic annotation via the discovery function CVOselection analyzer function provides estimated selection ofa CVO for reuse if there is no single CVO that can exactlyprovide the required service This is supported by similar-ity checking mechanism to analyze the level of similaritybefore recommending for reuse At aggregation level anotherimportant function is event processing event streams gen-erated by object virtualization level are highly valuable toinfer situational awareness and building RWK that is usedby high-level functions Event processing module facilitatesprocessing of events and provides generated facts as outputEvent processing is supported by CVO hypothesis analyzerthat incorporates several hypotheses which are trained overdata to build system level knowledge Aggregation level also

Wireless Communications and Mobile Computing 11

VO mgt Social relationship manager

Social link mgt

Relationship lookup MS

Group mgt

Relation observer

Social relation graph

Object selectionQuery generation

Req lookup

Social rel queryLookup resp

Modified social graph

Update dependencies

graph result

Update change inassociation

Generate update queryUpdate triples

Req relation graph

MatchmakingValidate association

Infer relation

Organize group

Add member

Select registered VOs

Execute query

Relation graph resp

Retrieve social object relation

Update VO

Social graph update

Inferred relationships

AckUpdate Group

Update VO

Social rel search

Figure 6 Sequence of operation required to establish a social relationship among objects

provides composition function which provides the basis formerging multiple VOs to generate single service feature andvalidation function to validate the compositions of multipleVOs Moreover the coordinator helps in resolving conflictsin case of simultaneous access of single CVO by multipleservices together

343 Functional Components in Object Virtualization LevelAlthough IoT middleware virtualizes sensors and actuatorsin some form of virtual entities however in WoO everyliving or nonliving thing can be represented in the virtualworld VOs are supported by an information model [1415] which includes the representation of RWO that canbe ICT or non-ICT In the proposed architecture objectvirtualization level includes functions to create maintainand coordinate VOs such as VO generator VOmanagementand optimization engine VO registration function providesan interface to register VOs with the help of VO ownershipmanagement function where the VO ownership is main-tained Template management function handles templatesor loads updated ones as provided by the domain expertMetadata management maintains data associated with VOsas VO is a digital representative of real-world entities thereis a high need to store metadata information to recognizethe class of sensed data Use of metadata provides the realvalue of the data in the form of the context stored withinit Furthermore VO data synthesizer service handles the

discrepancies if found in the data corresponding to VO thisincludes data manipulation and missing value rectificationsConflict resolution function helps in case the same VO isused by multiple service instances to resolve the conflictsAlso VO access management function controls access forVOs in case access right information has been defined bythe VO owner whereas identification management modulemaintains identification information about VOs so that eachVO can be uniquely identified in the system

344 Social Relationship Discovery and Composition Toidentify associations among web objects within a socialrelationship graph an algorithm is elaborated briefly In thefollowing algorithm the microservices that are in executionare retrieved first represented as M120583 next all the CVOsassociated with each of those microservices are recoveredin Mc and further the corresponding VO model Mvis iterated In the next step executing the query statementroutine returns the results denoted as The process offinding the relationships is carried out through lines (6)ndash(19)in multiple nested iterations as shown in the pseudocode ofAlgorithm 1 listing

Algorithm 2 facilitates the composition of objects basedon social association types This algorithm takes as input theset of object social relationships denoted by Z and registryentries of the objects that are currently available in thesystem represented as Re After the object model denoted

12 Wireless Communications and Mobile Computing

Require (C) (R119890)(1)Output S (social relationship graph of objects)(2) M120583 larr Load Microservices in model(3) M119888 larr Load CVOs in model(4) MV larr Load VOs in model(5) larr executeQueryStatement (M120583 M119888 MV 119876)(6) for All 120583 in 120583 do (iterate Microservice instance being used)(7) for All 119874 isin 120583 do (check CVO and VOs used by the Services)(8) if O119894 == output of C119877 in a relationship set R119888 then(9) add C119877 to119871(10) else(11) if O119894 == output of V119877 in relationship set RV then(12) add V119877 to119871(13) N119894 larr tag (Assign relationship tag to each object entry)(14) else(15) add O119894 to119880(16) end if(17) end if(18) end for(19) end for

Algorithm 1 Social relationship discovery

Require (C) (R119890) (Z)(1)Output C (Composite Service)(2) Mlarr List all objects available (Microservices CVOs VOs) in model(3) larr executeQueryStatement (M 119876)(4) Zlarr executeQueryStatement (M 1198761015840)(5) for All 120590119894 isin do(6) for All 120582119894 isin 120590 do(7) if 120582119894 == any 119911 in Z then(8) add 120582119894 toLm(9) storeLm(10) end if(11) end for(12) for All 120603i isin Lm do(13) if 120603i == any 120603i inLm then(14) 120597 larr ranking (Assign rank to each service)(15) add 120603i toLR(16) storeLR(17) end if(18) end for(19) for All 120590119895 isin LR do(20) if 120590119895(R120597) gt 120581 then(21) add 120590119895 to Wf(22) Pqlarr assign to queue(23) Sort Pq(24) Formulate Wf(25) end if(26) end for

Algorithm 2 Composition of objects based on social relationship

as M is loaded the first step is to compose objects basedon their relationship types This way the SPARQL queriesare executed the first query is denoted as 119876 to retrievethe available service templates and the second query isrepresented as 1198761015840 to extract the relationships associated with

the services From line (5) to (11) first the social relationshipis searched among objects and then the found relative objectsare composed in groups The design philosophy employedover here is to assign a ranking to each selected groupbased on the relationship type that helps in a more efficient

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 11: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

Wireless Communications and Mobile Computing 11

VO mgt Social relationship manager

Social link mgt

Relationship lookup MS

Group mgt

Relation observer

Social relation graph

Object selectionQuery generation

Req lookup

Social rel queryLookup resp

Modified social graph

Update dependencies

graph result

Update change inassociation

Generate update queryUpdate triples

Req relation graph

MatchmakingValidate association

Infer relation

Organize group

Add member

Select registered VOs

Execute query

Relation graph resp

Retrieve social object relation

Update VO

Social graph update

Inferred relationships

AckUpdate Group

Update VO

Social rel search

Figure 6 Sequence of operation required to establish a social relationship among objects

provides composition function which provides the basis formerging multiple VOs to generate single service feature andvalidation function to validate the compositions of multipleVOs Moreover the coordinator helps in resolving conflictsin case of simultaneous access of single CVO by multipleservices together

343 Functional Components in Object Virtualization LevelAlthough IoT middleware virtualizes sensors and actuatorsin some form of virtual entities however in WoO everyliving or nonliving thing can be represented in the virtualworld VOs are supported by an information model [1415] which includes the representation of RWO that canbe ICT or non-ICT In the proposed architecture objectvirtualization level includes functions to create maintainand coordinate VOs such as VO generator VOmanagementand optimization engine VO registration function providesan interface to register VOs with the help of VO ownershipmanagement function where the VO ownership is main-tained Template management function handles templatesor loads updated ones as provided by the domain expertMetadata management maintains data associated with VOsas VO is a digital representative of real-world entities thereis a high need to store metadata information to recognizethe class of sensed data Use of metadata provides the realvalue of the data in the form of the context stored withinit Furthermore VO data synthesizer service handles the

discrepancies if found in the data corresponding to VO thisincludes data manipulation and missing value rectificationsConflict resolution function helps in case the same VO isused by multiple service instances to resolve the conflictsAlso VO access management function controls access forVOs in case access right information has been defined bythe VO owner whereas identification management modulemaintains identification information about VOs so that eachVO can be uniquely identified in the system

344 Social Relationship Discovery and Composition Toidentify associations among web objects within a socialrelationship graph an algorithm is elaborated briefly In thefollowing algorithm the microservices that are in executionare retrieved first represented as M120583 next all the CVOsassociated with each of those microservices are recoveredin Mc and further the corresponding VO model Mvis iterated In the next step executing the query statementroutine returns the results denoted as The process offinding the relationships is carried out through lines (6)ndash(19)in multiple nested iterations as shown in the pseudocode ofAlgorithm 1 listing

Algorithm 2 facilitates the composition of objects basedon social association types This algorithm takes as input theset of object social relationships denoted by Z and registryentries of the objects that are currently available in thesystem represented as Re After the object model denoted

12 Wireless Communications and Mobile Computing

Require (C) (R119890)(1)Output S (social relationship graph of objects)(2) M120583 larr Load Microservices in model(3) M119888 larr Load CVOs in model(4) MV larr Load VOs in model(5) larr executeQueryStatement (M120583 M119888 MV 119876)(6) for All 120583 in 120583 do (iterate Microservice instance being used)(7) for All 119874 isin 120583 do (check CVO and VOs used by the Services)(8) if O119894 == output of C119877 in a relationship set R119888 then(9) add C119877 to119871(10) else(11) if O119894 == output of V119877 in relationship set RV then(12) add V119877 to119871(13) N119894 larr tag (Assign relationship tag to each object entry)(14) else(15) add O119894 to119880(16) end if(17) end if(18) end for(19) end for

Algorithm 1 Social relationship discovery

Require (C) (R119890) (Z)(1)Output C (Composite Service)(2) Mlarr List all objects available (Microservices CVOs VOs) in model(3) larr executeQueryStatement (M 119876)(4) Zlarr executeQueryStatement (M 1198761015840)(5) for All 120590119894 isin do(6) for All 120582119894 isin 120590 do(7) if 120582119894 == any 119911 in Z then(8) add 120582119894 toLm(9) storeLm(10) end if(11) end for(12) for All 120603i isin Lm do(13) if 120603i == any 120603i inLm then(14) 120597 larr ranking (Assign rank to each service)(15) add 120603i toLR(16) storeLR(17) end if(18) end for(19) for All 120590119895 isin LR do(20) if 120590119895(R120597) gt 120581 then(21) add 120590119895 to Wf(22) Pqlarr assign to queue(23) Sort Pq(24) Formulate Wf(25) end if(26) end for

Algorithm 2 Composition of objects based on social relationship

as M is loaded the first step is to compose objects basedon their relationship types This way the SPARQL queriesare executed the first query is denoted as 119876 to retrievethe available service templates and the second query isrepresented as 1198761015840 to extract the relationships associated with

the services From line (5) to (11) first the social relationshipis searched among objects and then the found relative objectsare composed in groups The design philosophy employedover here is to assign a ranking to each selected groupbased on the relationship type that helps in a more efficient

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 12: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

12 Wireless Communications and Mobile Computing

Require (C) (R119890)(1)Output S (social relationship graph of objects)(2) M120583 larr Load Microservices in model(3) M119888 larr Load CVOs in model(4) MV larr Load VOs in model(5) larr executeQueryStatement (M120583 M119888 MV 119876)(6) for All 120583 in 120583 do (iterate Microservice instance being used)(7) for All 119874 isin 120583 do (check CVO and VOs used by the Services)(8) if O119894 == output of C119877 in a relationship set R119888 then(9) add C119877 to119871(10) else(11) if O119894 == output of V119877 in relationship set RV then(12) add V119877 to119871(13) N119894 larr tag (Assign relationship tag to each object entry)(14) else(15) add O119894 to119880(16) end if(17) end if(18) end for(19) end for

Algorithm 1 Social relationship discovery

Require (C) (R119890) (Z)(1)Output C (Composite Service)(2) Mlarr List all objects available (Microservices CVOs VOs) in model(3) larr executeQueryStatement (M 119876)(4) Zlarr executeQueryStatement (M 1198761015840)(5) for All 120590119894 isin do(6) for All 120582119894 isin 120590 do(7) if 120582119894 == any 119911 in Z then(8) add 120582119894 toLm(9) storeLm(10) end if(11) end for(12) for All 120603i isin Lm do(13) if 120603i == any 120603i inLm then(14) 120597 larr ranking (Assign rank to each service)(15) add 120603i toLR(16) storeLR(17) end if(18) end for(19) for All 120590119895 isin LR do(20) if 120590119895(R120597) gt 120581 then(21) add 120590119895 to Wf(22) Pqlarr assign to queue(23) Sort Pq(24) Formulate Wf(25) end if(26) end for

Algorithm 2 Composition of objects based on social relationship

as M is loaded the first step is to compose objects basedon their relationship types This way the SPARQL queriesare executed the first query is denoted as 119876 to retrievethe available service templates and the second query isrepresented as 1198761015840 to extract the relationships associated with

the services From line (5) to (11) first the social relationshipis searched among objects and then the found relative objectsare composed in groups The design philosophy employedover here is to assign a ranking to each selected groupbased on the relationship type that helps in a more efficient

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 13: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

Wireless Communications and Mobile Computing 13

Light sensor

Humiditysensor

Temperaturesensor

Camera

Magnetic sensor

Gateway

Smoke sensor

Web of objectsplatform

Social media

Social agent

Real-worldenvironment

Users

Microservices

Composite VOs

Virtual objects

Figure 7 Use case scenario

composition of service objects (from line (12) to (18))The lastpart of Algorithm 2 will continue to iterate to compose theobject composition workflow by checking first the assignedrelationship ranking with the defined threshold and then theselected composition workflow graphs are sorted and storedin queues for service execution

4 Use Case and Prototype Implementation

In this section first to realize IoT service provisioning basedon social web objects a use case about IoT enabled museumenvironment has been presented and then the details on theprototype implementation are furnished

41 Use Case Scenario This use case is based on a userexperience in a public museum where the IoT environmentis already set up with the WoO platform incorporating webobjects that use social relationship model and a social agentwhich obtains the userrsquos profile and his friendship detailsfrom social media (as shown in Figure 7) The user entersthe premises of the museum and his smartphone is promptedwith a beacon signal to recommend service app installationwhere he accepts the request The phone app incorporates amicroservicewhich establishes a social relationship (GSTOR)with museum visit service objects The system monitors theinteraction of the user in the museum environment theinstalled camera network and motion detectors detect theuser presence and this feed is collected by the museumvisit service The user shares his current location with thesystem which is used by the location navigator service toassist him in moving around the museum by providing thedirection to the locations where different museum items aresituated It is worth noticing that the VOs for museum visitservice and location navigator service are bound in CLORrelationship due to the same location points The user shareshis social network profile which is used to acquire the list

of friends and choices for things the user is interested inThis information is acquired by the recommendation servicewhich suggests the best things to do with respect to the userrsquosinterests making his visit most enjoyable Recommendationservice suggests facilities available in the museum such asplaces a user should visit cafeteria food menu and pricesfor the day This service also shares with the user the pastexperiences of his friends at themuseum to help him getmostout of his visit Moreover personalization service providesspecial features such as adjusting contents on displays oroptimizing the luminosity to support users with disabilitiesTo enable these service features objects exploit the SVORrelationship Also the fire management service maintains thestatus of all VOs that can detect an unusual fire situation inthe museum The temperature VOs acquire readings fromtemperature sensors and smoke detector VOs get a feedfrom smoke detection sensors These VOs form a CLORrelationship with each other in the common proximity Firesituation monitoring CVO acquires VOs data One or moreCVOs aremanaged by the firemanagement service In case ofa fire breakout the firemanagement service executes with thedata from the fire detection CVOs and the temperature andsmoke detector VOs Meanwhile services incorporate high-level functionality to react on the data provided by virtualentities in the system It is important to notice that sharing ofinformation based on social relationships has become easy inthe proposed use case That is because the user informationand device information are communicated with social linksof web objects and are utilized by the services

42 Proof-of-Concept Details To evaluate the proposeddesign a proof of concept has been furnished which realizesservices based on web objects as considered in the above usecase These objects include for instance fire situation mon-itoring CVO to handle emergency fire breakout situationslocation navigator CVO to find the shortest path to the user

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 14: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

14 Wireless Communications and Mobile Computing

CVO ontology

VO ontology

Sparql

RWK baseMySQL DB

Ontology modeling

Http REST

Gateway

User Data MgtService

Service Management function

Social Relationship manager

Social application server

Situation management function

Virtual object manager

Preferences predictor

Ontology management server

Query manager

Sparql endpoints

Reasoning engine

Ontology management function

SNS feed

User profile

User preferences

Sensors actuators

Figure 8 Prototype implementation components

intended destinations and user profile reader CVO whichacquires user personal information from the social mediaprofile Several other CVOs have been developed that acquirediverse data and metadata from VOs where each represents adifferent RWO These VOs include a user VO smartphoneVO camera VO wristband VO motion detector VO andothers that are associated with the chosen environment(such as CO2 sensor VO humidity VO temperature VOand light VO) Each VO has several instances for exampletemperature sensor instances are represented as temperature-Sesor0001 and temperatureSesor0002 Further VO data iscollected and analyzed by CVOs with the rules incorporatedin the ontologies CVOs composed inmicroservices help ana-lyze different situations and initiate inference over data usinginference engines Considering the system requirement sev-eral aspects have been evaluated including identification ofweb objects for effective IoT service provisioning finding thesocial relationships among web objects efficient discovery ofweb objects based on these relationships and compositionand harmonization of web objects

43 Prototype Implementation Details To analyze the fea-sibility of the proposed architecture a prototype on thediscussed use case has been implemented Figure 8 illus-trates the components of the prototype which constitutesocial application server (SAS) ontology management server(OMS) and databases to hold VO and CVO graphs that aresupported with SPARQL endpoints The gateway connectingsensors and actuators has been incorporated in the imple-mentation Additionally user data management services are

implemented to get user profile and preferences history alongwith social network data

The application server comprises five major compo-nents social relationship manager (SRM) service manage-ment function (SMF) situationcontext management func-tion (CMF) preference predictor and virtual object man-ager (VOM) The SMF is an entry point for the servicerequest it interprets and evaluates the service request Itis also responsible for matching the service request withthe available template SMF communicates with VOM tocheck the VO or CVO availability A compiled list of VOsis provided to SMF which generates object mashups tosatisfy the service request The execution of VO mashupgraph is done using microservices The second functionVOM maintains instances of CVOs and associated VOs andcoordinates with OMS to use available ontologies in thesystem It records the association of services and VOs andenables the reuse of VOs by more than one service it alsoresolves conflicts using conflict resolution mechanism VOMis implemented using RESTful web services Further SRMis implemented to maintain object relationships in the formof RDF concepts represented in ontologies It also involvesseveral microservices each implemented for a specific taskFor example group management microservice is developedto group objects that have similar characteristics Similarlyother tasks are distributed in different microservices forexample link management microservice is used to iden-tify the dependency among objects Relationship observermicroservice is implemented to monitor the objects whenthey change their state at runtime whereas to search a web

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 15: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

Wireless Communications and Mobile Computing 15

Figure 9 Ontological model of social web objects

object relationship the lookup microservice is used TheCMF function has been developed to process the situationalinformation and it selects the most suitable VOs based onthe context The situational information contains the currentlocation of the user location of the RWOs and the area underobservation CMF helps form a VO configuration specific tothe user current situation Additionally to incorporate thereal-world facts about the user and the situation RWK basehas been developed which is updated continuously This alsohelps in adapting services according to the current situationVOs provided data is accumulated in RWK model and thereasoning engine is used to infer new facts based on theexisting data The last function of social application serveris the preference predictor which provides predictions byusing machine learning methods To implement the learningfunction Weka Library [42] has been used For the objectiveof demonstration user preference patterns are collected fromthe social data and user preference history is used to predictthe future patterns

On the other hand OMS deals with the semantic repre-sentation of VOs The first functional component of OMS isthe ontology management service which is used to handleVO and CVO ontologies and provides an interface to use VOgraphs Further to manage ontologies in the developed sys-tem we have usedApache Jena framework [43] and tomodel

VO and CVO ontologies Protege [44] has been used Modelsgenerated in Protege are utilized by ontology managementservice and stored in OWL format in semantic data storesTo take full advantage of ontology-based implementation areasoning engine has also been used to get extra facts relatedto the modeled concepts Reasoning engine helps to growRWK facts stored inVOandCVOontologies For the proof ofconcept the prototype has usedApache Jena inference enginealong with Jena provided reasoner For the deployment ofpersistent storage of the RDF data Jena TDB has been usedin our prototype which is the Jena native high-performancetriple store with API support [43] Query manager is anotherimportant component of OMSwhich provides an interface toquery CVO and VO ontologies saved in RDFXML formatusing SPARQL Also web services are implemented for theexecution of SPARQLqueries such as extracting andupdatingRDF triples in the database Other than SPARQL queryprocessing semantic matching of existing concepts is alsoperformed

Moreover to achieve interoperable relationships amongweb objects a semantic ontology model has been developedas shown in Figure 9Themodel constitutes the VO andCVOontologies and their relationships Several CVOs have beeninstantiated for example the location navigator fire situationmonitor emergency notification and many others that are

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 16: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

16 Wireless Communications and Mobile Computing

Figure 10 CVOs and VOs used in the ontology

Figure 11 Smartphone VO used in the ontology

based on the composition of numerous VOs This develop-ment has been supported by OMS and semantic web toolssuch as Jena Using OMS CRUD operations are performedlike create update and delete on CVOs and VOs usingSPARQL In the developed semantic relationships two CVOinstances namely ldquoFireSitMon0001rdquo and ldquoPathFinder0001rdquohave been used in the code snippet provided in Figure 10for fire situation monitoring and location navigation respec-tively We can see the data properties and object propertiesassociated with each object to maintain the relationshipwith other objects in the system Further to understand theVO representation a smartphone VO ldquoSmartPhone0001rdquo isshown in Figure 11 with the defined properties A list of VOsused in our prototype has been given in OWL description asshown in Figure 12

In the test bed environment the sensor to the gatewayconnectivity is enabled using ZigBee and BLE Anothersource of information that has been incorporated to provideuser-centric service capability is SNS feed which consists ofTwitter and Facebook data collected using social media APIsOn the other hand user profile and preferences are updatedusing data management service and this information is usedto grow RWK base

To test the prototype an android application has beendeveloped After the user logs in to the app for WoO based

assisted services the app starts the configuration of servicesaccording to the user profile A list of services is presentedon the userrsquos screen from which the user can select anyserviceThese services includemuseum visit service locationnavigator service recommendation service and emergencynotificationThe selected service starts collecting informationwith the interaction of the user or when the devices startpushing values about any change in the observed envi-ronment Based on these observed parameters alerts aregenerated by the app for example the museum visit servicegenerates alerts about the available facilities in the museumand the environmental conditions including the indoor andoutdoor temperatures On the other hand the location nav-igator service helps the user to navigate around the museumby showing directions to several visitor attractionsMoreoverthe emergency notification service triggers alerts when atemporary fire is created to mimic an unusual situation suchas fire breakout The resulting fire increases the temperaturereading which is detected by the temperature sensor Thischange in reading is forwarded through the gateway andanalyzed by the fire situation monitor CVO which checks itsthreshold value and generates an emergency notification onthe userrsquos app screen Also the recommendation service isused to generate suggestions about the museum events andthe places to visit

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 17: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

Wireless Communications and Mobile Computing 17

Figure 12 List of VOs used in the ontology

00173

574

1028

1280

1550

295450

576 621 705

200400600800

10001200140016001800

0 200 400 600 800 1000

Without Social RelationshipWith Social Relationship

Tim

e (m

s)

Number of Virtual Objects

Figure 13 VO discovery time with the increasing number of virtualobjects

44 Performance Evaluation The proposed architecture hasbeen analyzed from two different perspectives system scala-bility and resource consumption The results with respect tothe experiments and the performance criterion are discussedin this section The first experiment involves the analysisof the time required to discover the virtual objects in theproposed system with or without social relationship criterionas shown in Figure 13 As it is apparent from the resultsinitially to form a social graph VO discovery process incursdelay due to the communication for establishing socialrelationship links However direct lookup for VOs in theregistry at the start of the discovery process comparativelyrequires less time but as the number of VOs increases thedelay rises Traversing the social links to discover objects asthe number of virtual objects grows considerably reduces thetotal lookups in the registry database

The second experiment provides an analysis of the exe-cution time required for the CVOs as shown in Figure 14To test this in a real environment an android application

1260 1350 1590 18122286

30003800

53006000

6500

01000200030004000500060007000

200 400 600 800 1000

With social interactionWithout social interaction

Tim

e (m

s)

Number of virtual objects

Figure 14 Service execution time with the increasing number ofvirtual objects

has been developed The app allows access to the parametersfrom the available VOs When the app requires retrievingobservations it iterates throughVOs in the repository using aquery interfaceThis requires high CPUutilizationwithmoreexecution time required to retrieve the sensor values againsteach app generated request This is due to the fact that thedecision for the selection of VOs has been done at runtimeit requires more time to select the VO graphs execute themand get the relevant data from theVOsHowever when objectinteraction is based on the social relationship it requiresless time for the retrieval as friends in the social networkshare the data on other friendsrsquo requests which results in lesscomputation as compared with the previous scheme

Moreover Figure 15 depicts the time to discover VOsin four different types of services These services are themuseum visit service the location navigator service theemergency notification service and the recommendationservice The discovery time varies from one service toanother depending on the number of VOs used Howeveras compared with the impact of social connections it can be

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 18: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

18 Wireless Communications and Mobile Computing

853

386

798

320488

218

989

496

0

200

400

600

800

1000

1200

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

VO d

iscov

ery

time (

ms)

Figure 15 VO discovery time for four different services with orwithout social relationship utilization

4517

1967

3956

16152019

953

4976

2198

0

1000

2000

3000

4000

5000

6000

Without social relationships With social relationships

Service 1Service 2

Service 3Service 4

Task

com

plet

ion

time (

ms)

Figure 16 Task completion time required for each service with orwithout social relationship exploitation

realized that the services can considerably reduce the timeof object discovery and execution by using the relationshipmodel This is due to the fact that with social associationamong web objects a service does not have to query theregistry for all VOs and rather VOs in the same social graphare utilized Also VOs collected observations are shared tosave the service time for probing each VO To view thisFigure 16 shows the overall time required for services toexecute their tasks An important factor to notice here is thatthe overall task completion time is also affected when sociallinks are used to collect observations from VOs that are usedin the service execution

5 Conclusion

The Internet of Things is bringing the next technologicalrevolution by connecting billions of objects on the earth andproviding intelligent IoT services However it also carries twomost important challenges the first one is the complexity ofhandling a huge number of heterogeneous objects and thesecond one is how to deal with the monolithic approachesfor providing services over existing IoT infrastructure Toaddress these challenges we have proposed an integrateddesign based on the principles of SIoT where the complexity

has been handled using socially connected web objectsto overcome the monolithic approaches microservices thatcan compose new service features independently have beenadopted In the proposed design a social relationship modelhas been presented which enables the efficient discovery ofweb objects and reduces the complexity of service provision-ing process with the algorithms to discover and compose webobjects A semantic ontology model has also been developedto realize the interoperable social interaction among hetero-geneous objects Finally a prototype implementation basedon a use case scenario has been demonstrated to evaluate thesystem with respect to the performance issues experimentalresults pertaining to the VO discovery and service executiontime have been rendered

Details of Notations Used in Algorithms

C Service object ontologies based onsemantic representation where C is areplacement for M120583 which representsmicroservices M119888 which represents CVOand MV are VO ontologies

119871 Collection or list of all relationships thatare retrieved from service objects

119880 List of the objects that do not have arelationship or are not associated

S Social relationship graph of objectsU Correlation union of templates120583 All service objects returned in response to

the query request All objects returned in response to the

query request120583 The single instance iterated from the

collection of microservices119872 Data model based on the specified

ontology where M119904 represents servicedata model M119888 represents context datamodel and user profile model isrepresented as M119906

119876 SPARQL query to retrieve the availableservice templates for user rating

1198761015840 SPARQL query to retrieve the relationshipassociated with services

R119890 Registry entries of service objectsC119877 Relationship associated with CVOV119877 Relationship associated with VOR119888 All possible relationships that can be

associated with CVORV All possible relationships that can be

associated with VOO119894 Iterator object instance for iterating the list

of CVO and VO objectsZ Set of objectsrsquo social relationships120590119894 Iteration item of the list of service objects120582119894 An instance of iteration items in the list of

service objectsLm List of all matched service items120603119894 An instance of iteration items in the list of

matched service items

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 19: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

Wireless Communications and Mobile Computing 19

LR List of all matched ranking120597 Ranking value assigned to a service object120590119895 Iterator item for the ranking list120581 Threshold to rank a service objectWf Workflow for the composition of service

objectsPq Priority queue to store ranked object

instancesR120597 Assigned relationship ranking

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Acknowledgments

This work was supported by Korea Institute for Advance-ment of Technology (KIAT) funded by the Ministry ofTrade Industry and Energy (MOTIE Korea) (N040800001Development of Web Objects Enabled EmoSpaces ServiceTechnology)

References

[1] MNitti V Pilloni G Colistra and L Atzori ldquoThe virtual objectas a major element of the internet of things a surveyrdquo IEEECommunications Surveys amp Tutorials vol 18 no 2 pp 1228ndash1240 2016

[2] J SurowieckiTheWisdom of Crowds Anchor Books 2005[3] L Atzori A Iera GMorabito andMNitti ldquoThe social internet

of things (SIoT)mdashwhen social networks meet the internet ofthings concept architecture and network characterizationrdquoComputer Networks vol 56 no 16 pp 3594ndash3608 2012

[4] A M Ortiz D Hussein S Park S N Han and N Crespi ldquoThecluster between internet of things and social networks Reviewand research challengesrdquo IEEE Internet of Things Journal vol 1no 3 pp 206ndash215 2014

[5] L Atzori D Carboni and A Iera ldquoSmart things in thesocial loop Paradigms technologies and potentialsrdquo Ad HocNetworks vol 18 pp 121ndash132 2014

[6] L Atzori I Antonio and GMorabito ldquoMaking things socializein the Internet -Does it help our livesrdquo inKaleidoscope 2011TheFully Networked Human-Innovations for Future Networks andServices (K-2011) Proceedings of ITU IEEE 2011

[7] L Atzori A Iera and G Morabito ldquoSIoT giving a socialstructure to the internet of thingsrdquo IEEE CommunicationsLetters vol 15 no 11 pp 1193ndash1195 2011

[8] A M Vegni and V Loscrı ldquoA survey on vehicular socialnetworksrdquo IEEE Communications Surveys amp Tutorials vol 17no 4 article no A3 pp 2397ndash2419 2015

[9] L Krause Microservices Patterns and Applications DesigningFine-Grained Services by Applying Patterns 2015

[10] A Krylovskiy M Jahn and E Patti ldquoDesigning a smart cityinternet of things platform with microservice architecturerdquoin Proceedings of the 3rd International Conference on FutureInternet of Things and Cloud (FiCloud rsquo15) pp 25ndash30 RomeItaly August 2015

[11] B Butzin F Golatowski and D Timmermann ldquoMicroservicesapproach for the internet of thingsrdquo in Proceedings of the 21st

IEEE International Conference on Emerging Technologies andFactory Automation ETFA 2016 Germany September 2016

[12] N Dragoni I Lanese S T Larsen M Mazzara R Mustafinand L Safina ldquoMicroservices How To Make Your ApplicationScalerdquo Computing Research Repository 2017

[13] ldquoMicroservices Guide Pages - Martin Fowlerrdquo 2017 httpsmartinfowlercomarticlesmicroserviceshtml

[14] ldquoWeb of Objects ITEA 3 sdot Project sdot 10028 D21 State-of-the-Art Relevant to the Web of Objectsrdquo 2017 httpsitea3orgprojectweb-of-objectshtml

[15] ldquoY4452 Functional framework of web of objectsrdquo 2017httpwwwituintrecT-REC-Y4452-201609-P

[16] L E Holmquist F Mattern B Schiele P Alahuhta M Beigl5and H-W Gellersen ldquoSmart-its friends a technique for usersto easily establish connections between smart artefactsrdquo inUbicomp 2001 Ubiquitous Computing pp 116ndash122 SpringerBerlin Germany 2001

[17] D Guinard M Fischer and V Trifa ldquoSharing using socialnetworks in a composable Web of Thingsrdquo in Proceedings ofthe 8th IEEE International Conference on Pervasive ComputingandCommunicationsWorkshops PERCOMWorkshops 2010 pp702ndash707 Germany April 2010

[18] M Kranz L Roalter and F Michahelles ldquoThings that twittersocial networks and the internet of thingsrsquo What can theInternet of Things do for the Citizen (CIoT)rdquo in Proceedingsof the 8th International Conference on Pervasive Computing(Pervasive 2010) 2010

[19] R Girau S Martis and L Atzori ldquoLysis A platform for iotdistributed applications over socially connected objectsrdquo IEEEInternet of Things Journal vol 4 no 1 pp 40ndash51 2017

[20] A Pintus D Carboni and A Piras ldquoParaimpu A platformfor a social Web of Thingsrdquo in Proceedings of the 21st AnnualConference onWorldWideWebWWWrsquo12 pp 401ndash404 FranceApril 2012

[21] I Farris R Girau L Militano et al ldquoSocial Virtual Objects inthe EdgeCloudrdquo IEEECloudComputing vol 2 no 6 pp 20ndash282015

[22] R Girau M Nitti and L Atzori ldquoImplementation of anexperimental platform for the social internet of thingsrdquo inProceedings of the 7th International Conference on InnovativeMobile and Internet Services in Ubiquitous Computing IMIS2013 pp 500ndash505 July 2013

[23] MA Jarwar R A AbbasiMMushtaq et al ldquoCommuniMentsA framework for detecting community based sentiments foreventsrdquo International Journal on Semantic Web and InformationSystems vol 13 no 2 pp 87ndash108 2017

[24] S Newman ldquoBuilding microservices designing fine-grainedsystemsrdquo 2015

[25] ldquoThe Single Responsibility Principle - Programmer 97-thingsrdquo2017 httpprogrammer97thingsoreillycomwikiindexphpThe Single Responsibility Principle

[26] F Viktor ldquoTheDevOps 20 Toolkit Automating the ContinuousDeployment Pipeline with Containerized Microservicesrdquo 2016

[27] ldquoiCore Internet Connected Objects for Reconfigurable Ecosys-tems European FP7 Projectrdquo 2017 httpcordiseuropaeuprojectrcn100873 enhtml

[28] D Namiot and M Sneps-Sneppe ldquoOn microservices Architec-turerdquo International Journal of Open Information Technologiesvol 2 no 9 2014

[29] D Bonino M T D Alizo A Alapetite et al ldquoALMANACinternet of things for smart citiesrdquo in Proceedings of the 3rd

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 20: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

20 Wireless Communications and Mobile Computing

International Conference on Future Internet of Things and Cloud(FiCloud rsquo15) pp 309ndash316 IEEE Rome Italy August 2015

[30] ldquoDeveloping Microservices for PaaS with Spring and CloudFoundryrdquo 2017 httpswwwinfoqcompresentationsmicro-services-pass-spring-cloud-foundry

[31] ldquoMicroservices in action Part 2 Containers and microservicesmdash a perfect pairrdquo 2017 httpswwwibmcomdeveloperworkscloudlibrarycl-bluemix-microservices-in-action-part-2-trsindexhtml

[32] J E Kim X Fan and D Mosse ldquoEmpowering End Users forSocial Internet of Thingsrdquo in Proceedings of the Second Interna-tional Conference on Internet-of-Things Design and Implementa-tion - IoTDI rsquo17 pp 71ndash82 Pittsburgh Pa USA April 2017

[33] Z U Shamszaman S S Ara I Chong and Y K JeongldquoWeb-of-Objects (WoO)-based context aware emergency firemanagement systems for the Internet of Thingsrdquo Sensors vol14 no 2 pp 2944ndash2966 2014

[34] S Ali M G Kibria and I Chong ldquoWoO enabled IoT serviceprovisioning based on learning user preferences and situationrdquoin Proceedings of the 2017 International Conference on Infor-mation Networking (ICOIN) pp 474ndash476 Da Nang VietnamJanuary 2017

[35] M A Jarwar S Ali M G Kibria S Kumar and I ChongldquoExploiting interoperable microservices in web objects enabledInternet of Thingsrdquo in Proceedings of the Ninth InternationalConference on Ubiquitous and Future Networks (ICUFN) pp49ndash54 Milan Italy July 2017

[36] M Kibria S Ali M Jarwar S Kumar and I Chong ldquoLogis-tic Model to Support Service Modularity for the Promotionof Reusability in a Web Objects-Enabled IoT EnvironmentrdquoSensors vol 17 no 10 p 2180 2017

[37] M Kibria S Fattah K Jeong I Chong and Y Jeong ldquoA User-Centric KnowledgeCreationModel in aWeb ofObject-EnabledInternet of Things Environmentrdquo Sensors vol 15 no 9 pp24054ndash24086 2015

[38] M A Jarwar and Ilyoung Chong ldquoExploiting IoT servicesby integrating emotion recognition in Web of Objectsrdquo inProceedings of the 2017 International Conference on InformationNetworking (ICOIN) pp 54ndash56 Da Nang Vietnam January2017

[39] S Ali H-S Kim and I Chong ldquoImplementation model ofWoO based smart assisted living IoT servicerdquo in Proceedings ofthe International Conference on Information and Communica-tion Technology Convergence ICTC 2016 pp 816ndash818 October2016

[40] S Kumar M G Kibria S Ali M A Jarwar and I ChongldquoSmart spaces recommending service provisioning in WoOplatformrdquo in Proceedings of the International Conference onInformation and Communications (ICIC) pp 311ndash313 HanoiVietnam June 2017

[41] K M Alam M Saini and A El Saddik ldquoToward socialinternet of vehicles concept architecture and applicationsrdquoIEEE Access vol 3 pp 343ndash357 2015

[42] ldquoWeka 3 - Data Mining with Open Source Machine LearningSoftware in Javardquo 2017 httpswwwcswaikatoacnzmlweka

[43] ldquoJena Apache ampampquotA free and open source Javaframework for building Semantic Web and Linked Dataapplicationsampquotrdquo 2017 httpjenaapacheorg

[44] Protege ldquoA free open-source ontology editor and frame-work for building intelligent systemsrdquo 2017 httpsprotegestanfordedu

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom

Page 21: A Model of Socially Connected Web Objects for IoT Applicationsdownloads.hindawi.com/journals/wcmc/2018/6309509.pdf · A Model of Socially Connected Web Objects for IoT Applications

International Journal of

AerospaceEngineeringHindawiwwwhindawicom Volume 2018

RoboticsJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Active and Passive Electronic Components

VLSI Design

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Shock and Vibration

Hindawiwwwhindawicom Volume 2018

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawiwwwhindawicom

Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Control Scienceand Engineering

Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Journal ofEngineeringVolume 2018

SensorsJournal of

Hindawiwwwhindawicom Volume 2018

International Journal of

RotatingMachinery

Hindawiwwwhindawicom Volume 2018

Modelling ampSimulationin EngineeringHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Navigation and Observation

International Journal of

Hindawi

wwwhindawicom Volume 2018

Advances in

Multimedia

Submit your manuscripts atwwwhindawicom