Abstract
Service-Oriented Computing promotes building applications by consuming and reusing Web Services. However, the selection of adequate Web Services given a client application is still a major challenge. The effort of assessing and adapting candidate services could be overwhelming due to the “impedance” of Web Service interfaces expected by clients versus the actual interfaces of retrieved Web Services. In this work, we present a novel structural-semantic approach to help developers in the retrieval and selection of services from a service registry. The approach is based on a comprehensive structural scheme for service Interface Compatibility analysis, and WordNet as the semantic support to assess identifiers of operations and parameters. We also empirically analyze, compare and contrast the performance of three service selection methods: a pure structural approach, a pure semantic approach, and the structural-semantic (hybrid) approach proposed in this work. The experimental analysis was performed with two data-sets of real-world Web Services and a service discovery support already published in the literature. Results show that our hybrid service selection approach improved effectiveness in terms of retrievability of Web Services compared to the other approaches.
Similar content being viewed by others
Notes
Web Service Description Language - http://www.w3.org/TR/wsdl
Ontology Web Language for Services
Web Service Modeling Ontology
References
Agichtein, E., Brill, E., Dumais, S., & Ragno, R (2006). Learning user interaction models for predicting web search result preferences. In 29th Annual ACM SIGIR International Conference on Research and Development in Information Retrieval (pp. 3–10): ACM Press.
Al-Masri, E., & Mahmoud, Q. H (2007). Qos-based discovery and ranking of web services. In 16th International Conference on Computer Communications and Networks, ICCCN’07 (pp. 529–534): IEEE Computer Society Press.
Al-Sharawneh, J., Williams, M., Wang, X., & Goldbaum, D (2011). Mitigating risk in web-based social network service selection: follow the leader. In International Conference on Internet and Web Applications and Services. The International Academy: Research and Industry Association (IARIA).
Anabalon, D., Garriga, M., Flores, A., Cechich, A., & Zunino, A (2015). Test reduction for easing web service integration. In Proceedings of the Argentinean Symposium on Software Engineering (pp. 115–129): SADIO.
Benslimane, D., Dudstar, S., & Sheth, A (2008). Service mashups: The new generation of web applications. IEEE Internet Computing, 12(5), 13–15.
Bouchiha, D., Malki, M., Alghamdi, A., & Alnafjan, K (2012). Semantic web service engineering: Annotation based approach. Computing and Informatics, 31(6), 1575–1595.
Butler, S., Wermelinger, M., Yu, Y., & Sharp, H (2011). Mining java class naming conventions. In IEEE International Conference on Software Maintenance (ICSM) (pp. 93–102): IEEE.
Cabral, L., Domingue, J., Motta, E., Payne, T., & Hakimpour, F (2004). Approaches to semantic web services: an overview and comparisons. In Bussler, C, Davies, J, Fensel, D., Fensel, D., & Studer, R. (Eds.) The Semantic Web: Research and Applications, volume 3053 of Lecture Notes in Computer Science (pp. 225–239). Berlin: Springer.
Cao, B., Liu, J., Tang, M., Zheng, Z., & Wang, G (2013). Mashup service recommendation based on user interest and social network. In IEEE 20th International Conference on Web Services (ICWS) (pp. 99–106): IEEE.
Chen, W., & Paik, I. (2013). Improving efficiency of service discovery using linked data-based service publication. Information Systems Frontiers, 15(4), 613–625.
Choi, C. R., & Jeong, H. Y. (2014). A broker-based quality evaluation system for service selection according to the qos preferences of users. Information Sciences, 277, 553–566.
Cong, Z., Fernandez, A., Billhardt, H., & Lujak, M. (2015). Service discovery acceleration with hierarchical clustering. Information Systems Frontiers, 17(4), 799–808.
Crasso, M., Mateos, C., Zunino, A., & Campo, M (2014). EasySOC: Making web service outsourcing easier. Information Sciences, 259, 452–473.
Crasso, M., Zunino, A., & Campo, M. (2008). Easy web service discovery: A query-by-example approach. Science of Computer Programming, 71(2), 144–164.
Crasso, M., Zunino, A., & Campo, M. (2011a). Combining query-by-example and query expansion for simplifying web service discovery. Information Systems Frontiers, 13(3), 407–428.
Crasso, M., Zunino, A., & Campo, M. (2011b). A survey of approaches to web service discovery in service-oriented architectures. Journal of Database Management (JDM), 22(1), 102–132.
Curbera, F., Duftler, M., Khalaf, R., Nagy, W., Mukhi, N., & Weerawarana, S. (2002). Unraveling the web services web: an introduction to soap, wsdl, and uddi. IEEE Internet computing, 6(2), 86–93.
De Renzis, A., Garriga, M., Flores, A., Zunino, A., & Cechich, A (2014). Semantic-structural assessment scheme for integrability in service-oriented applications. In Latin-american Symposium of Enterprise Computing, held during CLEI’2014.
Delamaro, M., Maidonado, J., & Mathur, A. (2001). Interface mutation: an approach for integration testing. IEEE Transactions on Software Engineering, 27(3), 228–247.
Dong, X., Halevy, A., Madhavan, J., Nemes, E., & Zhang, J (2004). Similarity search for web services. In Proceedings of the International Conference on Very Large Data Bases VLDB (pp. 372–383): VLDB Endowment.
Elish, M. O., & Offutt, J (2002). The adherence of open source java programmers to standard coding practices. In 6th International Conference on Software Engineering and Applications IASTED (pp. 374.200–374.207).
Erl, T., Kamarkar, A., Walmsley, P., Haas, H., Yalcinalp, U., Liu, C., Orchard, D., Tost, A., & Pasley, J. (2008). Web service contract design & versioning for SOA, 1st edn Vol. 1: Prentice Hall.
Falleri, J.-R., Huchard, M., Lafourcade, M., Nebut, C., Prince, V., & Dao, M (2010). Automatic extraction of a wordnet-like identifier network from software. In International Conference on Program Comprehension (ICPC) (pp. 4–13): IEEE.
Fielding, R. (2000). Architectural Styles and the Design of Network-based Software Architectures. USA: PhD thesis, University of California.
Flores, A., Cechich, A., Zunino, A., & Polo, M (2010). Testing-based selection method for integrability on service-oriented applications. In 5th International Conference on Software Engineering Advances ICSEA’10 (pp. 373–379). Nice: IEEE Computer Society Press.
Flores, A., & Polo, M (2012). Testing-based process for component substitutability. Software Testing, Verification and Reliability, 22(8), 529–561.
Fowler, M (1999). Refactoring: improving the design of existing code. Pearson Education India.
Fragoso, O., Santaolaya, R., & Solis, I. (2006). Using case-based reasoning for improving precision and recall in web services selection. International Journal of Web and Grid Services, 2(3), 306–330.
Funika, W., Godowski, P., Pęgiel, P., & Król, D. (2012). Semantic-oriented performance monitoring of distributed applications. Computing and Informatics, 31(2), 427–446.
Garriga, M., Flores, A., Cechich, A., & Zunino, A. (2011). Testing-based process for service-oriented applications. In 30th IEEE International Conference of the Chilean Computer Science Society (SCCC) (pp. 64–73).
Garriga, M., Flores, A., Cechich, A., & Zunino, A. (2015). Web services composition mechanisms: a review. IETE Technical Review, 32(5), 376–383.
Garriga, M., Flores, A., Mateos, C., Zunino, A., & Cechich, A. (2013). Service selection based on a practical interface assessment scheme. International Journal of Web and Grid Services, 9(4), 369–393.
Garriga, M., Mateos, C., Flores, A., Cechich, A., & Zunino, A (2016). {RESTFul} service composition at a glance: a survey. Journal of Network and Computer Applications, 60, 32–53.
George, B., Fleurquin, R., & Sadou, S (2008). A component selection framework for COTS libraries. Lecture Notes In Computer Sciences, 5282, 286–301.
Guizzardi, G. (2005). Ontological foundations for structural conceptual models, 1st Ed. The Netherlands: Universal Press. ISBN 90-75176-81-3.
Gupta, S., Malik, S., Pollock, L., & Vijay-Shanker, K (2013). Part-of-speech tagging of program identifiers for improved text-based software engineering tools. In International Conference on Program Comprehension (ICPC) (pp. 3–12): IEEE.
Heß, A., Johnston, E., & Kushmerick, N. (2004). Assam: A tool for semi-automatically annotating semantic web services. In The Semantic Web–ISWC 2004 (pp. 320–334): Springer.
Hummel, O., Janjic, W., & Atkinson, C (2008). Code conjurer: Pulling reusable software out of thin air. IEEE Software, 45–52.
Jiang, L., Liu, T., & Liu, D (2015). Objective and subjective qos factors supported web service search method based on extended wsdl. In International Conference on Geoinformatics (pp. 1–4): IEEE.
Kessel, M., & Atkinson, C. (2016). Ranking software components for reuse based on non-functional properties. Information Systems Frontiers, 18(5), 825–853.
Kil, H., Oh, S. -C., & Lee, D. (2006). On the topological landscape of web services matchmaking. VLDB Workshop on Semantic Matchmaking and Resource Retrieval (CEUR), 178, 19–34.
Kirk, RE. (1982). Experimental design: Wiley Online Library.
Kokash, N (2006). A comparison of web service interface similarity measures. Amsterdam: IOS Press.
Kolb, P (2009). Experiments on the difference between semantic similarity and relatedness. In Proceedings of the 17th Nordic Conference on Computational Linguistics - NODALIDA’09.
Kuhn, H. W. (1955). The hungarian method for the assignment problem. Naval Research Logistic Quarterly, 2, 83–97.
Kung-Kiu, L., & Zheng, W (2007). Software component models. IEEE Transactions on Software Engineering, 10, 709–724.
Lacheheub, MN, & Maamri, R (2016). Towards a construction of an intelligent business process based on cloud services and driven by degree of similarity and qos. Information Systems Frontiers, 18(6), 1085–1102.
Lalanne, F., Cavalli, A., & Maag, S (2012). Quality of experience as a selection criterion for web services (pp. 519–526): IEEE.
Lanthaler, M., & Gutl, C (2011). A semantic description language for RESTful data services to combat semaphobia. In Proceedings of the 5th International Conference on Digital Ecosystems and Technologies Conference (DEST) (pp. 47–53): IEEE.
Li, K., Verma, K., Mulye, R., Rabbani, R., Miller, J. A., & Sheth, A (2006). Designing semantic web processes: The wsdl-s approach. In Semantic Web Services, Processes and Applications (pp. 161–193): Springer.
Malik, Z., & Bouguettaya, A. (2009). Rateweb: Reputation assessment for trust establishment among web services. The VLDB Journal – The International Journal on Very Large Data Bases, 18(4), 885–911.
Martin, D., Burstein, M., McDermott, D., McIlraith, S., Paolucci, M., Sycara, K., McGuiness, D., Sirin, E., & Srinivasan, N. (2007). Bringing semantics to web services with owl-s. World Wide Web, 10, 243–277.
Mateos, C., Crasso, M., Zunino, A., & Coscia, J. (2013). Revising wsdl documents: Why and how, part 2. IEEE Internet Computing, 17(5), 46–53.
Mateos, C., Crasso, M., Zunino, A., & Ordiales, J. L (2011). Detecting WSDL bad practices in code–first web services. International Journal of Web and Grid Services, 7(4), 357–387.
Mateos, C., Crasso, M., Zunino, A., & Ordiales Coscia, J. L. (2015a). A stitch in time saves nine: Early improving code-first web services discoverability. International Journal of Cooperative Information Systems, 24(02).
Mateos, C., Rodriguez, J. M., & Zunino, A. (2015b). A tool to improve code-first web services discoverability through text mining techniques. Software: Practice and Experience, 45(7), 925–948.
McCool, R (2005). Rethinking the semantic web. IEEE Internet Computing, 9(6), 86–87.
Michel, J., Shen, Y., Aiden, A., Veres, A., Gray, M., Pickett, J., Hoiberg, D., Clancy, D., Norvig, P., & Orwant, J. (2011). Quantitative analysis of culture using millions of digitized books. Science, 331 (6014), 176–182.
Miller, G., Beckwith, R., Fellbaum, C., Gross, D., & Miller, K (1990). Introduction to wordnet: an on-line lexical database. International Journal of Lexicography, 3(4), 235–244.
Noy, N. F. (2004). Semantic integration: a survey of ontology-based approaches. SIGMOD Rec., 33(4), 65–70.
Orne, MT. (2009). Artifacts in Behavioral Research, chapter Demand characteristics and the concept of quasi-controls: Oxford University Press.
Oskooei, M. A., & Daud, S. M (2014). Quality of service (qos) model for web service selection. In International Conference on Computer, Communications, and Control Technology (I4CT) (pp. 266–270): IEEE.
Own, H., & Yahyaoui, H. (2015). Rough set based classification of real world web services. Information Systems Frontiers, 17(6), 1301–1311.
Papazoglou, M., Traverso, P., Dustdar, S., & Leymann, F (2007). Service-oriented computing: State of the art and research challenges. IEEE Computer, 40(11), 38–45.
Pasley, J (2006). Avoid XML schema wildcards for web service interfaces. IEEE Internet Computing, 10(3), 72–79.
Pelleg, D., Rokhlenko, O., Szpektor, I., Agichtein, E., & Guy, I. (2016). When the crowd is not enough: Improving user experience with social media through automatic quality analysis. In Proceedings of the 19th ACM Conference on Computer-Supported Cooperative Work & Social Computing, CSCW ’16 (pp. 1080–1090). New York: ACM.
Peltz, C (2003). Web services orchestration and choreography. IEEE Computer, 36(10), 46–52.
Pirró, G. (2009). A semantic similarity metric combining features and intrinsic information content. Data & Knowledge Engineering, 68(11), 1289–1308.
Plebani, P., & Pernici, B. (2009). Urbe: Web service retrieval based on similarity evaluation. IEEE Transactions on Knowledge and Data Engineering, 21(11), 1629–1642.
Rajaraman, A., & Ullman, J. (2011). Mining of massive datasets, chapter data mining: Cambridge University Press.
Rambold, M., Kasinger, H., Lautenbacher, F., & Bauer, B (2009). Towards autonomic service discovery a survey and comparison. In IEEE International Conference on Services Computing, SCC (pp. 192–201): IEEE.
Rodriguez, J. M., Crasso, M., Mateos, C., & Zunino, A. (2013). Best practices for describing, consuming, and discovering web services: A comprehensive toolset. Software: Practice and Experience, 43(6), 613–639.
Rodriguez, J. M., Crasso, M., Zunino, A., & Campo, M. (2010). Improving web service descriptions for effective service discovery. Science of Computer Programming, 75(11), 1001– 1021.
Roman, D., Keller, U., Lausen, H., De Bruijn, J., Lara, R., Stollberg, M., Polleres, A., Feier, C., Bussler, C., & Fensel, D. (2005). Web service modeling ontology. Applied ontology, 1(1), 77– 106.
Salton, G., Wong, A., & Yang, C.-S (1975). A vector space model for automatic indexing. Communications of the ACM, 18(11), 613–620.
Sheng, Q. Z., Qiao, X., Vasilakos, A. V., Szabo, C., Bourne, S., & Xu, X (2014). Web services composition: A decade’s overview. Information Sciences, 280, 218–238.
Shvaiko, P., & Euzenat, J. (2013). Ontology matching: State of the art and future challenges. IEEE Transactions on Knowledge and Data Engineering, 25(1), 158–176.
Sivashanmugam, K., Verma, K., Sheth, A. P., & Miller, J. A. (2003). Adding semantics to web services standards.
Stroulia, E., & Wang, Y (2005). Structural and semantic matching for assessing web-services similarity. International Journal of Cooperative Information Systems, 14, 407–437.
Tibermacine, O., Tibermacine, C., & Cherif, F. (2013). Wssim: A tool for the measurement of web service interface similarity. In Proceedings of the french-speaking Conference on Software Architectures (CAL’13). Toulouse.
Tversky, A. (1977). Features of similarity. Psychological review, 84(4), 327.
Weerawarana, S., Curbera, F., Leymann, F., Storey, T., & Ferguson, D. (2005). Web Services Platform Architecture: SOAP, WSDL, WS-policy, WS-addressing, WS-BPEL, WS-Reliable Messaging, and More: Prentice Hall PTR.
Willett, P. (2006). The porter stemming algorithm: then and now. Program: electronic library and information systems, 40(3), 219–223.
Wu, J., & Wu, Z (2005). Similarity-based web service matchmaking. In IEEE International Conference on Services Computing, (Vol. 1 pp. 287–294): IEEE Computer Society Press.
Zimmerman, O., Tomlinson, M., & Peuser, S. (2005). Perspectives on web services – applying SOAP, WSDL and UDDI to real-world projects: Springer.
Acknowledgments
This work is supported by grants ANPCyT PICT 2012-0045 and UNCo–Reuse (04-F001). We would like to thank to the anonymous reviewers that contributed to improve the quality of this work with their helpful comments. Also, to Ph.D. Giuseppe Pirró who gently provided the articles and the JWSL library that depict and implement the semantic similarity metric, respectively. Finally, we thank to student Marcos Trotti for the implementation of the query mutator.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Garriga, M., Renzis, A.D., Lizarralde, I. et al. A structural-semantic web service selection approach to improve retrievability of web services. Inf Syst Front 20, 1319–1344 (2018). https://doi.org/10.1007/s10796-016-9731-1
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10796-016-9731-1