Cloud-based Mobile Web Service Discovery Framework with ...

5 downloads 1219 Views 398KB Size Report
mobile devices to host and migrate web services. It supports hosting and service migration on mobile devices. However, they used SOAP messages and the ...
2014 8th Malaysian Software Engineering Conference (MySEC)

Cloud-based Mobile Web Service Discovery Framework with Semantic Matchmaking Approach Nor Azizah Saadon, Radziah Mohamad Department of Software Engineering, Faculty of Computing Universiti Teknologi Malaysia 81310 UTM Skudai, Johor, Malaysia. {azizahsaadon, radziahm}@utm.my The Mobile web service (MWS) discovery is commonly recognized as a resource-intensive process, which contradicts the resource limitation of mobile devices. As such, cloud computing is a candidate to bridge the gap between resource-constrained environment and resourceintensive MWS discovery, in which, is known as mobile cloud computing (MCC) environment. Nowadays, cloud computing has been widely recognized as an effective reuse paradigm and the computing infrastructure for the next generation. Cloud computing provides virtual infrastructure, such as servers, storage, network, platform services, and software applications, over the Internet provided by cloud providers at low cost [3][4]. It serves better opportunities for mobile devices to efficiently perform discovery process of MWS, while substantially reducing their resource consumption. From another perspective, the semantic approaches offer better discovery results by successfully retrieving the most relevant web services for service requester. MWS discovery is the process of locating service provider as a mobile provider that can match a service request specified by a mobile client [5]. As the available web services have been rising dramatically, semantic-based matchmaking is a promising approach to perform matching for discovering MWS. MWS discovery for mobile environment presents a significant challenge in the mobile domain. The proliferation of high-end mobile devices with different specifications, the increasing numbers of similar web services, and lack of an enriched service description are the issues which have remained an open research questions [6]. Furthermore, mobile devices cannot support the semantic web services discovery as it requires a heavyweight matchmaking process due to semantic reasoning. Thus, an efficient mechanism for MWS discovery is required to expand the ability of discovering web services over mobile devices. Hence, this paper proposed a cloud-based MWS discovery framework with semantic matchmaking approach in mobile computing environment. The framework was aimed at exploiting the limitation of the mobile devices. Taking advantage of the cloud, the process of discovery with

Abstract—The discovery process has become an important task in the web service life cycle as the number of Mobile Web Services (MWS) has increased nowadays. However, discovering relevant MWS that can match a service request with the service offered has remained a major hindrance. The challenges are concerning the web service discovery with the limitation of mobile devices related to performance. On the other hand, cloud computing with its unlimited computing resource is a promising approach to bootstrap the MWS discovery. It provides virtualized computing resources as a service and can build bridges between mobile devices as a computing interface, and the core infrastructure with virtualized computing resources. This paper proposed CMDis, an enhancement of cloud-based MWS discovery framework, with semantic-based matchmaking approach. In our work, semantic lightweight web service descriptions were used with a REST-based architecture. Accordingly, a preliminary prototype was developed on android-based to evaluate the applicability of the framework. Keywords—mobile device; discovery; framework; mobile computing; cloud; web service

I. INTRODUCTION High-end mobile devices are recognized as resourceconstraint devices with limited capability and exist in almost every part of the environment. Besides, the area of mobile computing has become important as the development in mobile device technologies and the demand of service personalization have increased. On the other hand, ServiceOriented Computing (SOC) has become an important part of services computing discipline whereby the methodology can reduce the complexity in Distributed Embedded Real-Time System (DERTS) [1]. According to the latest Mobile Factbook released by Portio Research [2], in the beginning of 2013, the worldwide mobile subscribers generated nearly 6.5 billion subscribers and it will increase 7.3 percent by the end of 2016. This report shows that the emergence of mobile devices and the improvement of the new paradigm of wireless technologies have directed to a significant demand for retrieving web services, which contributes towards Mobile Internet.

978-1-4799-5439-1/14/$31.00 ©2014 IEEE

113

Furthermore, the resource-intensive task of computation in discovering web services are shifting onto cloud as the limitation of the device capability is considered.

heavyweight processes, such as reasoning, classification of web services, semantic matchmaking, and ranking, are applied onto cloud. The organization of this paper is structured as follows. Section two discusses the related research. Section three describes the background of MWS discovery mechanism. Section four describes the methodology that was used for the proposed framework. The proposed framework; CMDis, and the description of the framework components are discussed in Section five. Section six presents the preliminary prototype implementation. Lastly, the conclusion and future work are discussed in Section seven.

III. MOBILE WEB SERVICE DISCOVERY MECHANISM Basically, MWS discovery mechanism is the process of user searching the relevant MWS and invoking over a mobile device. Fig. 1 illustrates the architecture of MWS discovery, whereby the mobile broker receives the web service descriptions and later, published by a mobile service provider. Then, based on the published web service descriptions in the mobile broker, the services are discovered by the mobile client. The main characteristics of MWS architecture vary from the traditional web services, especially in its mobility. Furthermore, in mobile environment, a mobile device has equal participants as it can be a mobile client, a mobile broker, and even a mobile provider [9]. Meanwhile, as for the traditional web service architecture, the descriptions are published into a centralized repository, such as Universal Description, Discovery, and Integration (UDDI). However, there are challenges in web services to perform in mobile computing environment with limited capability compared to the traditional web service architecture. The traditional web services do not meet the important parts of mobile computing environment, and hence, it is not straightforward to host web service on mobile device. In addition, there are issues in mobile computing environment regarding the constraints of web services, which require considerations, such as device capabilities, mobility, and security.

II. RELATED WORK Many research efforts have been made to overcome the drawback of MWS discovery. However, most of them are still at an early stage, lack of comprehensive understanding as far as user context is concerned, and have the constraints of mobile computing environment. The research work in [7] proposed MWS discovery and mediation framework, namely MWSMF (Mobile Web Service Mediation Framework) in mobile P2P network. MWSMF is addressed by the QoS issues in term of security and scalability. However, the research has a drawback, which requires additional cost for compressing and decompressing the SOAP messages. The research work in [8] proposed an agent-based framework, with semantic-based web services discovery. However, the mobile device in this research only supports mobile client role. Kim and Lee [9] proposed a lightweight framework for mobile devices to host and migrate web services. It supports hosting and service migration on mobile devices. However, they used SOAP messages and the issues of the overhead message still remain. MobiEureka [10] addressed the aspect of device capability with device-aware discovery mechanism. This work integrated the device capability into MWS discovery by extending the current WSDL web service description with added device profile information. Recently, the research work in [11] proposed a framework for MWS discovery. This work has been similar to our approach, but they uses the WSDL web service description with SOAP-based architecture for syntactic matching. In contrast, we focused on hREST [12] with REST-based [13] architecture for semantic matching. To the best of our knowledge, all the previous works for discovering web services in mobile computing environment are still at an early stage. In contrast to the work described above, the framework presented in this paper focused on semantic-based matchmaking and ranking with context information provided from the service requester.

Fig. 1. A generic MWS architecture.

114

Mobile Client

Service Requester

User

Mobile Provider

User Query Interface (HTTP/XMPP)

request

publish Service Repository

list of result

provide context info

NFP/Domain Ontology submit

Service Provider

Provider

crawl

Mobile Client

Mobile Provider

Mobile Broker Ranked Web Services

Query Processor (REST)

Reasoner (Pellet)

Service Reader and Parser (Jena)

Context Manager Service Matchmaking

Service Classification Classi• ed Repository

Relevant Web Services

Service Ranking

Cloud

D i s c o v e r y P r o c e s s

Fig. 2. An overview of cloud-based mobile web service discovery framework (CMDis)

IV.

In the third stage, the important concepts of web service discovery were collected from enterprise web service and mobile computing domains, and additional concepts of nonfunctional properties were introduced in the discovery process. Finally, the framework was developed in the construction stage, inspired from the basic architecture of MWS discovery for mobile computing, as shown in Fig. 1.

METHODOLOGY

The method to develop the proposed framework consisted of four stages. In the first stage of collecting the domain concepts, several studies [7]–[11] were selected from the literature to collect the discovery requirements and their related concepts. Care had been given to represent almost all the basic web service discovery concepts in the framework, as described in [11], as the input for the proposed framework. On the other hand, the mobile computing constraints for web service discovery were considered. In addition, the modelling needs for nonfunctional requirements for mobile computing were also considered. The second stage was to define a list of requirements that the framework should fulfil. The requirements are as follow: • Service discovery mechanisms should ensure that discovered services are available (active) and compatible with the device capabilities. • Service discovery should incorporate context information of mobile devices for ranking and selecting MWS. • The discovery of semantic web services is heavyweight matchmaking. Therefore, efficient discovery mechanism is required as the resourceintensive task is offloaded to resource-rich environment. • The current service descriptions are not suitable for mobile devices because of the expressiveness of the service description. Therefore, lightweight service descriptions are required for mobile computing.

V. CMDIS: CLOUD-BASED MOBILE WEB SERVICE DISCOVERY FRAMEWORK Based on the constraints and the limitations of the existing MWS discovery mechanisms in smartphones, a cloud-based framework was proposed for MWS discovery for mobile computing environments, namely Cloud-based Mobile Web Service Discovery (CMDis) framework. The keyword-based discovery process for discovering MWS in semantic description was used in this framework. The discovery mechanism using Natural Language Processing (NLP) techniques in order to match between a mobile service requester and the service offered was also implemented. Fig. 2 illustrates the important CMDis components to establish effective MWS discovery in mobile computing environments. The framework comprised of three main parts, which were mobile client encompasses the components on user request side or known as a service requester. The mobile provider part contained the components on service provider side and the mobile broker contained the components that run the process of discovery on the cloud. There were seven essential components in the CMDis framework: user query

115

interface, query processor, service reader and parser, service classification, service matchmaking, service ranking, and context manager.

own web service description reader and is able to parse a description by extracting the relevant elements from the description. In our approach, we used the hREST web service descriptions with the extension of microWSMO, which is a semantic description in the REST-based fashion. Service Reader component extracts element from the semantic descriptions and the ontologies. Based on an example of the hREST web service, the service reader must be able to extract the elements, such as service names, input, output, and non-functional properties. Service Parser component parses the web service description before extracting words from the description. Different parsers are available for different languages, such as the parser for WSMO [17] and WSML [18] is WSMO4J, while Sesame and Jena can be used as a parser for OWL-S [19], hREST [12], and WSMO-Lite [20].

A. User Query Interface User Query Interface is a mobile user interface, which enables mobile client as a user to submit MWS requests that express users’ goal. The users’ goal is described in a natural language as a keyword to represent service request and not in a formal service description language. This is due to the limitation of input capabilities in mobile devices. This component listens for Hypertext Transfer Protocol (HTTP) or Extensible Messaging and Presence Protocol (XMPP) connection for REST-based web services and parses the service request further in Query Processor component to extract keywords and meaningful information. B. Query Processor Query Processor performs processing operations using NLP techniques on the service request. Service request by mobile client must be processed to extract keywords into meaningful words from a user query written in plain text. These keywords are used to match the web service description in the repository and to perform keyword-based matching process. In our work, we used the hREST [12] web service description as a semantic web service as the design followed the RESTful philosophy [14]. Query Processor includes several steps of NLP techniques [15] for processing the operations. Firstly, word segmentation known as tokenization is performed to split a string of written text of service request into its component word. Tokenization is a process of breaking concatenated text up into words, phrases or useful meaning of words called tokens. Then, the list of tokens becomes input for further processing, such as the parsing process. The parsing process is based on white spaces to produce a vector of tokens. Secondly, in order to find useful meaning of words, Part-of-Speech (POS) tagging is performed to tag tokens as a noun, verb or adjective. We used Stanford Part-of-Speech Tagger to process the tokens. Thirdly, the transformation of all tokens from the uppercase characters into lowercase is performed. Fourthly, the word stemming is performed, as all tokens are transformed to their root words using Porter stemmer. Fifthly, Word Sense Disambiguation (WSD) establishes the tokens from previous process by extracting relevant sense. Many words represent multiple meanings. For example, bank can be used to represent financial institute or river shore. Therefore, WSD helps in finding the correct context. The variant of the SSI algorithm [16] used for finding the senses is described as follows: selectedSense(word) = arg

D. Service Classification The Service Classification component is to categorize the similar functionalities of web service to related categories based on the web service descriptions. Several steps in the classification process are similar to the process of Query Processor component, which include several steps of NLP techniques for processing the operations. However, this process refers to the web service descriptions in order to process the NLP technique. Then, the Bayesian Network classification algorithm was used to classify similar web services and to store to the repository in cloud. E. Service Matchmaking A basic step towards semantic discovery in mobile environments is established in the Service Matchmaking component, whereby the Degree-of-Match (DoM) between the concepts are calculated in a defined ontology. A multilevel matching approach is used to measure the DoM between two ontological concepts. Functional properties, such as input and output, are used for the matching process. In addition, non-functional properties are also used for the next level matching. DoM for functional properties and nonfunctional properties are aggregated with its weight for total DoM in order to list out the appropriate web services that matches the service request. The details of this matchmaking process can be referred to our previous work [21]. F. Context Manager The Context Manager component is to process the context information extracted from the mobile client to be used in the Service Ranking component for further process. Context information consists of device profile and environment context, which are used for ranking purpose. The details of the context properties model can be found in our previous work [21]. The compatibility of the discovered web services is established by the device profile information in the MWS discovery process. With this information, the discovered web services can be used properly with the current device status. Furthermore, the environment context information is also important as the mobile client may be on the move and the environment context may change

max ∑ sim(s , sc )

s j ∈sense(word ) sc ∈I i

j

i

(1) C. Service Reader and Parser There are several different web service descriptions that exist in semantic and non-semantic. Each language has its

116

frequently. With this information, the discovered web services can be used properly with the current environment context.

where, wi = weight for each properties in UG and SO VI.

G. Service Ranking The functionality of Service Ranking is to rank the discovered web services with the extra context information provided: device profile and environment context. The inputs of relevant web services and context information are used in the Service Ranking component to calculate the context information. Then, a list of ranked web services will return to the service requester for a selection process.

A preliminary prototype system was implemented to test the applicability of the proposed framework, CMDis. The prototype was established on Amazon EC2 cloud service. The mobile client side as a service requester was referred to the User Query Interface. This component displays mobile user query interface for searching the appropriate web services and lists out the result through the mobile interface. Fig. 3 shows the mobile interface for CMDis framework. The mobile client was deployed on emulator Nexus S smartphone with rooted Android 4.4.2 platform. The mobile broker side in cloud was deployed on Amazon EC2 and it implemented most of the discovery components and handled the web service discovery processing, including service ranking. On Amazon EC2, a number of instances of type ‘t1.medium’ with an EC2 preconfigured (AMI) of ‘Windows Server’ were used to host the cloud portion of the prototype.

TABLE I. CONTEXT PROFILE ID

Context feature

1

Operating system

2

Browser

3

Screen resolution

4

Memory

5

Audio

6

Video

7

Longitude

8

Latitude

9

Bandwidth data

During the ranking process, the features from the mobile client device for device profile and environment context are collected. Table I shows the context profile with the ID number to represent each feature. For each discovered relevant MWS, whereby [MWS = mws1,mws2,mws3,…,mwsi)] and context, [C = C1,C2,C3,…,Cj)], a ranking calculation determines which mwsi is more precise based on context information. With context features information (same as the ID from Table 1), the following context matrix (equation 2), whereby each row represents an MWS (mwsi) while each column represents each context features, is constructed. ⎡ ⎢ ⎢ SO = ⎢ ⎢ ⎢ ⎣

mws1,1

mws1,2

mws2,1

.

mws3,1

.

mws4,1

.

PROTOTYPE IMPLEMENTATION

Fig. 3. User Query Interface

Experiments were conducted with hREST-TC1 test collection [22] and it consisted of 895 services and 24 ontologies were used to semantically annotate the inputs and outputs parameters of the web services. The services were from different domains; communication, food, economy, medical, travel, and education. CMDis was implemented in an android-base with Java and Pellet 2.0. The experiment validation of the CMDis framework demonstrated the ability of discovering MWS with high precision and recall. The ability of ranking shortlisted a list of appropriate web services that matched with the service request and capabilities of the mobile device. In addition, the ranking was also referred to the current status of environment context for mobile client. The advantage of our work is CMDis shifts resource-intensive processes to the cloud whereby before this the process was on mobile devices. Currently, the prototype is still an ongoing process, whereby the discovering of MWS still needs improvement to exploit the limitations of mobile devices.

mws1,3 mws1, j ⎤ ⎥ ⎥ . . ⎥ . . ⎥ . mwsi, j ⎥ ⎦

(2) The rank of each MWS (mwsi) is then, represented by the following formula in equation 3. The function of f computes the relationship between the service request and the relevant web service descriptions, and f(x,y) gives a value in [0…1] to define how value x is related to y. RankC = ∑ wi * f (mwsij , C j ) i=1

(3)

117

VII. CONCLUSION

[6]

Mobile devices have become the most significant interface for mobile computing environment because of their mobility and the accessibility of the devices. The increasing number of mobile clients in accessing information anywhere and anytime from mobile devices has directed to the growing demand for searching MWS in mobile computing. The MWS discovery is an important role in the entire web service cycle and the process of MWS discovery poses a new challenge due to the limitations of mobile devices. This paper presented the CMDis framework, a cloud-based MWS discovery framework based on semantic annotation for mobile environment. A preliminary prototype was developed on android-based to evaluate the proposed framework. The initial result of our prototype demonstrated two aspects: the first was how the framework handled the diversity of mobile device capabilities, and the second was how the framework provided reliable and appropriate MWS to mobile client. Our ongoing research would be able to enhance the prototype framework to achieve better accuracy and precision in web service discovering with the enhancement of QoWS properties and context properties as NFP preferences.

[7]

[8] [9] [10] [11] [12]

[13] [14]

[15]

ACKNOWLEDGMENTS We would like to thank the Malaysian Ministry of Education (MOE) for sponsoring the research through the Research University Grant (RUG) with vote number 05H83, Fundamental Research Grant Scheme (FRGS) with vote number 4F165 and Universiti Teknologi Malaysia for providing the facilities and supporting the research. In addition, we would like to extend our gratitude to the lab members in the EReTSEL Lab of Faculty of Computing, Universiti Teknologi Malaysia for their invaluable ideas and support throughout this study.

[16]

[17] [18] [19]

[20]

REFERENCES [21] [1]

[2]

[3]

[4] [5]

M. W. Aziz, R. Mohamad, D. N. A. Jawawi, and R. Mamat, “Service based meta-model for the development of distributed embedded real-time systems,” Real-Time Syst., vol. 49, no. 5, pp. 563–579, Feb. 2013. “Portio Research Mobile Factbook 2013,” 2013. http://www.portioresearch.com/media/3986/Portio%20Research %20Mobile%20Factbook%202013.pdf [Accessed online: 1-June-2014]. M. R. Rahimi, J. Ren, C. H. Liu, A. V. Vasilakos, and N. Venkatasubramanian, “Mobile Cloud Computing: A Survey, State of Art and Future Directions,” Mob. Networks Appl., vol. 19, no. 2, pp. 133–143, Nov. 2013. H. Dinh and C. Lee, “A Survey of Mobile Cloud Computing: Architecture, Applications, and Approaches,” Wirel. Commun. Mob. Comput., pp. 1–38, 2011. S. Srirama, M. Jarke, and W. Prinz, “Mobile web service discovery in peer to peer networks,” arXiv Prepr. arXiv1007.3631, 2010.

[22]

R. Niazi and Q. H. Mahmoud, “An Ontology-Based Framework for Discovering Mobile Services,” in 2009 Seventh Annual Communication Networks and Services Research Conference, 2009, pp. 178–184. S. Srirama, E. Vainikko, V. or, and M. Jarke, “Scalable Mobile Web Services Mediation Framework,” in 2010 Fifth International Conference on Internet and Web Applications and Services, 2010, pp. 315–320. M. Adacal and A. B. Bener, “Mobile Web services: a new agentbased framework,” IEEE Internet Comput., vol. 10, no. 3, pp. 58–65, May 2006. Y. S. Kim and K. H. Lee, “A lightweight framework for mobile web services,” Comput. Sci. Dev., vol. 24, no. 4, pp. 199–209, 2009. E. Al-Masri and Q. H. Mahmoud, “MobiEureka: an approach for enhancing the discovery of mobile web services,” Pers. Ubiquitous Comput., vol. 14, no. 7, pp. 609–620, Dec. 2009. K. Elgazzar, H. S. Hassanein, and P. Martin, “DaaS: Cloud-based mobile Web service discovery,” Pervasive Mob. Comput., Nov. 2013. J. Kopecký, K. Gomadam, and T. Vitvar, “hRESTS: An HTML Microformat for Describing RESTful Web Services,” 2008 IEEE/WIC/ACM Int. Conf. Web Intell. Intell. Agent Technol., pp. 619–625, Dec. 2008. E. Wilde and C. Pautasso, REST: From Research to Practice. New York, NY: Springer New York, 2011. C. Pautasso and F. Leymann, “RESTful Web Services vs . ‘ Big ’ Web Services : Making the Right Architectural Decision Categories and Subject Descriptors,” Technology, pp. 805–814, 2008. Perea-Ortega, José M., M. A. García-Cumbreras, and L. A. Ureña-López, “Applying NLP techniques for query reformulation to information retrieval with geographical references,” Emerg. Trends Knowl. Discov. Data Mining, Springer Berlin Heidelb., pp. 57–69, 2013. R. Navigli and P. Velardi, “Structural semantic interconnections: a knowledge-based approach to word sense disambiguation.,” IEEE Trans. Pattern Anal. Mach. Intell., vol. 27, no. 7, pp. 1075– 86, Jul. 2005. D. Roman and B. König-ries, D2v1 . 3 . Web Service Modeling Ontology ( WSMO ), no. April 2005. 2006, pp. 1–38. J. D. Bruijn, H. Lausen, A. Polleres, and D. Fensel, The web service modeling language WSML: An overview. 2006. D. Martin, M. Burstein, J. Hobbs, O. Lassila, D. McDermott, S. McIlraith, S. Narayanan, M. Paolucci, B. Parsia, T. Payne, E. Sirin, N. Srinivasan, and K. Sycara, “OWL-S: Semantic Markup for Web Services.” [Online]. Available: http://www.w3.org/Submission/OWL-S/. [Accessed online: 19Dec-2013]. J. Kopecký and T. Vitvar, “WSMO-Lite: Lowering the Semantic Web Services Barrier with Modular and Light-Weight Annotations,” 2008 IEEE Int. Conf. Semant. Comput., pp. 238– 244, Aug. 2008. N. A. Saadon and R. Mohamad, “WSMO-lite based web service discovery algorithm for mobile environment,” Int. J. Adv. Soft Comput. its Appl., vol. 5, no. SPECIALISSUE.3, pp. 75–90, 2014.

http://projects.semwebcentral.org/projects/hrests-tc/ [Accessed online: 1-June-2014].

118

Suggest Documents