Abstract
Service-Oriented Computing (SOC) has been widely used for building distributed and enterprise-wide software applications. One major problem in this kind of applications is their growth; as size and complexity of applications increase, the probability of duplicity of code increases, among other refactoring issues. This paper proposes an unsupervised learning approach to assist software developers in detecting refactoring opportunities in service-oriented applications. The approach gathers non-refactored Web Service Description Language (WSDL) documents and applies clustering and visualization techniques to deliver a list of refactoring suggestions to start working on the refactoring process. We evaluated our approach using two real-life case-studies by using internal validity criteria for the clustering quality.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Crasso, M., Zunino, A., Campo, M.: Awsc: an approach to web service classification based on machine learning techniques. Revista Iberoamericana de Inteligencia Artificial 12(37), 25–36 (2008)
Dong, X., Halevy, A., Madhavan, J., Nemes, E., Zhang, J.: Similarity search for web services. In: 30th International Conference on Very large data bases, pp. 372–383. VLDB Endowment (2004)
Elgazzar, K., Hassan, A.E., Martin, P.: Clustering wsdl documents to bootstrap the discovery of web services. In: IEEE International Conference on Web Services, pp. 147–154. IEEE (2010)
Erickson, J., Siau, K.: Web services, service-oriented computing, and service-oriented architecture: Separating hype from reality. Principle Advancements in Database Management Technologies: New Applications and Frameworks, p. 176 (2009)
Fisher, D.H.: Knowledge acquisition via incremental conceptual clustering. Mach. Learn. 2(2), 139–172 (1987)
Fokaefs, M., Mikhaiel, R., Tsantalis, N., Stroulia, E., Lau, A.: An empirical study on web service evolution. In: IEEE International Conference on Web Services, pp. 49–56. IEEE (2011)
Hop, W., de Ridder, S., Frasincar, F., Hogenboom, F.: Using hierarchical edge bundles to visualize complex ontologies in glow. In: Proceedings of the 27th Annual ACM Symposium on Applied Computing, pp. 304–311. ACM (2012)
Kaufman, L., Rousseeuw, P.J.: Finding Groups in Data: An Introduction to Cluster Analysis, vol. 344. Wiley, Hoboken (2009)
Kuhn, A., Ducasse, S., Gírba, T.: Semantic clustering: identifying topics in source code. Inf. Softw. Technol. 49(3), 230–243 (2007)
Kumara, B.T., Yaguchi, Y., Paik, I., Chen, W.: Clustering and spherical visualization of web services. In: IEEE International Conference on Services Computation, pp. 89–96. IEEE (2013)
Liu, W., Wong, W.: Web service clustering using text mining techniques. Int. J. Agent-Oriented Softw. Eng. 3(1), 6–26 (2009)
Ma, J., Zhang, Y., He, J.: Efficiently finding web services using a clustering semantic approach. In: International Workshop on Context Enabled Source and Service Selection, Integration and Adaptation, p. 5. ACM (2008)
MacQueen, J., et al.: Some methods for classification and analysis of multivariate observations. In: 5th Berkeley Symposium on Mathematical Statistics and Probability, California, USA, vol. 1, pp. 281–297 (1967)
Mateos, C., Crasso, M., Zunino, A., Coscia, J.L.O.: Detecting wsdl bad practices in code-first web services. Int. J. Web Grid Serv. 7(4), 357–387 (2011)
Nieweglowski, L.: clv: cluster validation techniques. R package version 0.3-2. http://cran.r-project.org/web/packages/clv
Pelleg, D., Moore, A.W., et al.: X-means: extending k-means with efficient estimation of the number of clusters. In: ICML, pp. 727–734 (2000)
Rodriguez, J.M., Crasso, M., Mateos, C., Zunino, A., Campo, M.: Bottom-up and top-down cobol system migration to web services. IEEE Internet Comput. 17(2), 44–51 (2013)
Sabou, M., Pan, J.: Towards semantically enhanced web service repositories. Web Semant. Sci. Serv. Agents WWW 5(2), 142–150 (2007)
Teyseyre, A.R., Campo, M.R.: An overview of 3d software visualization. IEEE Trans. Vis. Comput. Graph. 15(1), 87–105 (2009)
Webster, D., Townend, P., Xu, J.: Interface refactoring in performance-constrained web services. In: 2012 IEEE 15th International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing (ISORC), pp. 111–118. IEEE (2012)
Acknowledgments
We acknowledge the financial support provided by ANPCyT through grant PICT 2014-1387.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this paper
Cite this paper
Rodríguez, G., Soria, Á., Teyseyre, A., Berdun, L., Campo, M. (2016). Unsupervised Learning for Detecting Refactoring Opportunities in Service-Oriented Applications. In: Hartmann, S., Ma, H. (eds) Database and Expert Systems Applications. DEXA 2016. Lecture Notes in Computer Science(), vol 9828. Springer, Cham. https://doi.org/10.1007/978-3-319-44406-2_27
Download citation
DOI: https://doi.org/10.1007/978-3-319-44406-2_27
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-44405-5
Online ISBN: 978-3-319-44406-2
eBook Packages: Computer ScienceComputer Science (R0)