A Model of Socially Connected Web Objects for IoT...
Transcript of A Model of Socially Connected Web Objects for IoT...
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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