Automated Service Selection Using Natural Language Processing

  • Muneera BanoEmail author
  • Alessio Ferrari
  • Didar Zowghi
  • Vincenzo Gervasi
  • Stefania Gnesi
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 558)


With the huge number of services that are available online, requirements analysts face an overload of choice when they have to select the most suitable service that satisfies a set of customer requirements. Both service descriptions and requirements are often expressed in natural language (NL), and natural language processing (NLP) tools that can match requirements and service descriptions, while filtering out irrelevant options, might alleviate the problem of choice overload faced by analysts. In this paper, we propose a NLP approach based on Knowledge Graphs that automates the process of service selection by ranking the service descriptions depending on their NL similarity with the requirements. To evaluate the approach, we have performed an experiment with 28 customer requirements and 91 service descriptions, previously ranked by a human assessor. We selected the top-15 services, which were ranked with the proposed approach, and found 53% similar results with respect to top-15 services of the manual ranking. The same task, performed with the traditional cosine similarity ranking, produces only 13% similar results. The outcomes of our experiment are promising, and new insights have also emerged for further improvement of the proposed technique.


Service selection Requirements engineering Knowledge graphs Natural language processing 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Adam, S., Riegel, N., Doerr, J.: Deriving software services from business processes of representative customer organizations. In: SOCCER 2008, pp. 38–45. IEEE (2008)Google Scholar
  2. 2.
    Arsanjani, A., Ghosh, S., Allam, A., Abdollah, T., Ganapathy, S., Holley, K.: Soma: A method for developing service-oriented solutions. IBM Systems Journal 47(3), 377–396 (2008)CrossRefGoogle Scholar
  3. 3.
    Bano, M.: Aligning services and requirements with user feedback. In: RE 2014, pp. 473–478 (2014)Google Scholar
  4. 4.
    Bano, M., Zowghi, D.: Users’ voice and service selection: an empirical study. In: EmpiRE 2014, pp. 76–79 (2014)Google Scholar
  5. 5.
    Bano, M., Zowghi, D., Ikram, N., Niazi, M.: What makes service oriented requirements engineering challenging? A qualitative study. IET Software 8(4), 154–160 (2014)CrossRefGoogle Scholar
  6. 6.
    Casamayor, A., Godoy, D., Campo, M.: Identification of non-functional requirements in textual specifications: A semi-supervised learning approach. IST 52, 436–445 (2010)Google Scholar
  7. 7.
    Cleland-Huang, J., Gotel, O.C.Z., Huffman Hayes, J., Mäder, P., Zisman, A.: Software traceability: trends and future directions. In: FSE 2014, pp. 55–69. ACM (2014)Google Scholar
  8. 8.
    och Dag, J.N., Gervasi, V., Brinkkemper, S., Regnell, B.: A linguistic-engineering approach to large-scale requirements management. IEEE Software 22, 32–39 (2005)CrossRefGoogle Scholar
  9. 9.
    Ferrari, A., Lipari, G., Gnesi, S., Spagnolo, G.O.: Pragmatic ambiguity detection in natural language requirements. In: AIRE 2014, pp. 1–8, August 2014Google Scholar
  10. 10.
    Ferrari, A., Gnesi, S.: Using collective intelligence to detect pragmatic ambiguities. In: RE 2012, pp. 191–200. IEEE (2012)Google Scholar
  11. 11.
    Gervasi, V., Zowghi, D: Supporting traceability through affinity mining. In: RE 2014, pp. 143–152. IEEE (2014)Google Scholar
  12. 12.
    Huergo, R.S., Pires, P.F., Delicato, F.C., Costa, B., Cavalcante, E., Batista, T.: A systematic survey of service identification methods. SOCA 8(3), 199–219 (2014)CrossRefGoogle Scholar
  13. 13.
    Jamshidi, P., Khoshnevis, S., Teimourzadegan, R., Nikravesh, A., Shams, F.: Toward automatic transformation of enterprise business model to service model. In: PESOS 2009, pp. 70–74. IEEE Computer Society (2009)Google Scholar
  14. 14.
    Kontogogos, A., Avgeriou, P.: An overview of software engineering approaches to service oriented architectures in various fields. In: WETICE 2009, pp. 254–259. IEEE (2009)Google Scholar
  15. 15.
    Manning, C.D., Raghavan, P., Schütze, H.: Introduction to Information Retrieval, Volume 1. Cambridge University Press (2008)Google Scholar
  16. 16.
    Papazoglou, M.P., Traverso, P., Dustdar, S., Leymann, F.: Service-oriented computing: a research roadmap. IJCIS 17(02), 223–255 (2008)Google Scholar
  17. 17.
    Salton, G., Wong, A., Yang, C.-S.: A vector space model for automatic indexing. Communications of the ACM 18(11), 613–620 (1975)CrossRefzbMATHGoogle Scholar
  18. 18.
    Settle, R.B., Golden, L.L.: Consumer perceptions: Overchoice in the market place. Advances in Consumer Research 1, 29–37 (1975)Google Scholar
  19. 19.
    Tan, P.-N., Steinbach, M., Kumar, V.: Introduction to Data Mining. Addison-Wesley (2005)Google Scholar
  20. 20.
    Turney, P.D., Pantel, P.: From frequency to meaning: Vector space models of semantics. J. Artif. Intell. Res. 37, 141–188 (2010)MathSciNetzbMATHGoogle Scholar
  21. 21.
    Wirsing, M., Hölzl, M.: Rigorous Software Engineering for Service-oriented Systems: Results of the SENSORIA Project on Software Engineering for Service-oriented Computing, vol. 6582. pringer, Heidelberg (2011) Google Scholar
  22. 22.
    Zachos, K., Maiden, N.A.M.D., Howells-Morris, R.: Discovering web services to improve requirements specifications: does it help? In: Rolland, C. (ed.) REFSQ 2008. LNCS, vol. 5025, pp. 168–182. Springer, Heidelberg (2008) CrossRefGoogle Scholar
  23. 23.
    Zadeh, A.T., Mukhtar, M., Sahran, S., Khabbazi, M.R.: A systematic input selection for service identification in smes. Journal of Applied Sciences 12(12), 1232–1244 (2012)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2015

Authors and Affiliations

  • Muneera Bano
    • 1
    Email author
  • Alessio Ferrari
    • 2
  • Didar Zowghi
    • 1
  • Vincenzo Gervasi
    • 3
  • Stefania Gnesi
    • 2
  1. 1.University of Technology SydneyUltimoAustralia
  2. 2.CNR-ISTIPisaItaly
  3. 3.Dipartimento di InformaticaUniversità di PisaPisaItaly

Personalised recommendations