Skip to main content
Log in

Deep learning-based open API recommendation for Mashup development

  • Research Paper
  • Published:
Science China Information Sciences Aims and scope Submit manuscript

Abstract

Mashup developers often need to find open application programming interfaces (APIs) for their composition application development. Although most enterprises and service organizations have encapsulated their businesses or resources online as open APIs, finding the right high-quality open APIs is not an easy task from a library with several open APIs. To solve this problem, this paper proposes a deep learning-based open API recommendation (DLOAR) approach. First, the hierarchical density-based spatial clustering of applications with a noise topic model is constructed to build topic models for Mashup clusters. Second, developers’ requirement keywords are extracted by the TextRank algorithm, and the language model is built. Third, a neural network-based three-level similarity calculation is performed to find the most relevant open APIs. Finally, we complement the relevant information of open APIs in the recommended list to help developers make better choices. We evaluate the DLOAR approach on a real dataset and compare it with commonly used open API recommendation approaches: term frequency-inverse document frequency, latent dirichlet allocation, Word2Vec, and Sentence-BERT. The results show that the DLOAR approach has better performance than the other approaches in terms of precision, recall, F1-measure, mean average precision, and mean reciprocal rank.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Xia B, Fan Y, Tan W, et al. Category-aware API clustering and distributed recommendation for automatic Mashup creation. IEEE Trans Serv Comput, 2015, 8: 674–687

    Article  Google Scholar 

  2. Kong X L, Han W N, Liao L, et al. An analysis of correctness for API recommendation: are the unmatched results useless? Sci China Inf Sci, 2020, 63: 190103

    Article  Google Scholar 

  3. Bianchini D, de Antonellis V, Pernici B, et al. Ontology-based methodology for e-service discovery. Inf Syst, 2006, 31: 361–380

    Article  Google Scholar 

  4. Pop C B, Chifu V R, Salomie I, et al. Semantic web service clustering for efficient discovery using an ant-based method. In: Intelligent Distributed Computing. Berlin: Springer, 2010. 23–33

    Google Scholar 

  5. Dasgupta S, Bhat S, Lee Y. Taxonomic clustering and query matching for efficient service discovery. In: Proceedings of IEEE International Conference on Web Services, 2011. 363–370

  6. Meng S, Dou W, Zhang X, et al. KASR: a keyword-aware service recommendation method on mapreduce for big data applications. IEEE Trans Parallel Distrib Syst, 2014, 25: 3221–3231

    Article  Google Scholar 

  7. Cao B, Liu J, Tang M, et al. Mashup service recommendation based on usage history and service network. Int J Web Serv Res, 2011, 10: 82–101

    Article  Google Scholar 

  8. Chan W K, Cheng H, Lo D. Searching connected API subgraph via text phrases. In: Proceedings of the 20th International Symposium on the Foundations of Software Engineering, 2012. 1–11

  9. Elgazzar K, Hassan A E, Martin P. Clustering WSDL documents to bootstrap the discovery of web services. In: Proceedings of IEEE International Conference on Web Services, 2010. 147–154

  10. Li C, Zhang R, Huai J, et al. A novel approach for API recommendation in Mashup development. In: Proceedings of IEEE International Conference on Web Services, 2014. 289–296

  11. Chen L, Wang Y, Yu Q, et al. WT-LDA: user tagging augmented LDA for web service clustering. In: Proceedings of International Conference on Service-Oriented Computing, 2013. 162–176

  12. Cao B, Liu X, Li B, et al. Mashup service clustering based on an integration of service content and network via exploiting a two-level topic model. In: Proceedings of IEEE International Conference on Web Services, 2016. 212–219

  13. Samanta P, Liu X. Recommending services for new Mashups through service factors and top-K neighbors. In: Proceedings of IEEE International Conference on Web Services, 2017. 381–388

  14. Tian G, Wang J, He K, et al. Integrating implicit feedbacks for time-aware web service recommendations. Inf Syst Front, 2017, 19: 75–89

    Article  Google Scholar 

  15. Xie F, Wang J, Xiong R, et al. An integrated service recommendation approach for service-based system development. Expert Syst Appl, 2019, 123: 178–194

    Article  Google Scholar 

  16. Cao B, Liu J, Wen Y, et al. QoS-aware service recommendation based on relational topic model and factorization machines for IoT Mashup applications. J Parallel Distrib Comput, 2019, 132: 177–189

    Article  Google Scholar 

  17. Cao B, Liu X, Rahman M M, et al. Integrated content and network-based service clustering and web APIs recommendation for Mashup development. IEEE Trans Serv Comput, 2020, 13: 99–113

    Article  Google Scholar 

  18. Liu Y, Ott M, Goyal N, et al. RoBERTa: a robustly optimized BERT pretraining approach. 2019. ArXiv:1907.11692

  19. Campello R J G B, Moulavi D, Sander J. Density-based clustering based on hierarchical density estimates. In: Proceedings of Pacific-Asia Conference on Knowledge Discovery and Data Mining, 2013. 160–172

  20. Cao B, Liu X Q, Liu J, et al. Domain-aware Mashup service clustering based on LDA topic model from multiple data sources. Inf Softw Tech, 2017, 90: 40–54

    Article  Google Scholar 

  21. Huang Q, Xia X, Xing Z, et al. API method recommendation without worrying about the Task-API knowledge gap. In: Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering, 2018. 293–304

  22. Liu L, Lecue F, Mehandjiev N. Semantic content-based recommendation of software services using context. ACM Trans Web, 2013, 7: 1–20

    Article  Google Scholar 

  23. Pan W, Chai C. Structure-aware Mashup service clustering for cloud-based Internet of Things using genetic algorithm based clustering algorithm. Future Generation Comput Syst, 2018, 87: 267–277

    Article  Google Scholar 

  24. Li H, Li K, An J, et al. An efficient manifold regularized sparse non-negative matrix factorization model for large-scale recommender systems on GPUs. Inf Sci, 2019, 496: 464–484

    Article  Google Scholar 

  25. Mclnnes L, Healy J, Melville J. UMAP: uniform manifold approximation and projection for dimension reduction. 2018. ArXiv:1802.03426

  26. Wang H C, Hsiao W C, Chang S H. Automatic paper writing based on a RNN and the TextRank algorithm. Appl Soft Comput, 2020, 97: 106767

    Article  Google Scholar 

  27. Mikolov T, Sutskever I, Chen K, et al. Distributed representations of words and phrases and their compositionality. In: Proceedings of Conference on Neural Information Processing Systems, 2013. 3111–3119

  28. Guo W, Zeng Q, Duan H, et al. Process-extraction-based text similarity measure for emergency response plans. Expert Syst Appl, 2021, 183: 115301

    Article  Google Scholar 

  29. Reimers N, Gurevych I. Sentence-BERT: sentence embeddings using siamese BERT-networks. In: Proceedings of Conference on Empirical Methods in Natural Language Processing, 2019. 3982–3992

  30. Fujii Y, Kitaoka N, Nakagawa S. Automatic extraction of cue phrases for important sentences in lecture speech and automatic lecture speech summarization. In: Proceedings of the 8th Annual Conference of the International Speech Communication Association, 2007. 2801–2804

  31. Zhong H, Xie T, Zhang L, et al. MAPO: mining and recommending API usage patterns. In: Proceedings of the 23rd European Conference on ECOOP 2009 — Object-Oriented Programming, 2009. 318–343

  32. Li H, Liu J, Cao B, et al. Topic-adaptive web API recommendation method via integrating multidimensional information. J Softw, 2018, 29: 3374–3387

    Google Scholar 

  33. Danglot B, Vera-Perez O, Yu Z, et al. A snowballing literature study on test amplification. J Syst Softw, 2019, 157: 110398

    Article  Google Scholar 

  34. Ehek R, Sojka P. Software framework for topic modelling with large corpora. In: Proceedings of Workshop on New Challenges for NLP Frameworks, 2004. 46–50

  35. Cao B Q, Xiao Q X, Zhang X P, et al. An API service recommendation method via combining self-organization map-based functionality clustering and deep factorization machine-based quality prediction. Chinese J Comput, 2019, 42: 1367–1383

    Google Scholar 

  36. Jiang B, Liu P, Wang Y, et al. HyOASAM: a hybrid open API selection approach for Mashup development. Math Problem Eng, 2020, 2020: 1–16

    Google Scholar 

  37. Fu W, Menzies T, Shen X. Tuning for software analytics: is it really necessary? Inf Softw Tech, 2016, 76: 135–146

    Article  Google Scholar 

  38. Nair V, Menzies T, Siegmund N, et al. Using bad learners to find good configurations. In: Proceedings of the 11th Joint Meeting on Foundations of Software Engineering (ESEC/FSE 2017), 2017. 257–267

  39. Tantithamthavorn C, McIntosh S, Hassan A E, et al. Automated parameter optimization of classification techniques for defect prediction models. In: Proceedings of the 38th International Conference on Software Engineering, 2016. 321–332

  40. Thung F, Oentaryo R J, Lo D, et al. WebAPIRec: recommending web APIs to software projects via personalized ranking. IEEE Trans Emerg Top Comput Intell, 2017, 1: 145–156

    Article  Google Scholar 

  41. Rahman M M, Roy C K, Lo D. RACK: automatic API recommendation using crowdsourced knowledge. In: Processing of the 23rd International Conference on Software Analysis, Evolution, and Reengineering, 2016. 349–359

  42. Wen M, Wu R, Cheung S C. Locus: locating bugs from software changes. In: Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering, 2016. 262–273

Download references

Acknowledgements

This work was supported by National Science Foundation of Zhejiang Province (Grant Nos. LY21F020011, LY20F020027, LY19F020003), Key Research and Development Program of Zhejiang Province (Grant No. 2021C01162), and National Natural Science Foundation of China (Grant No. 61672459). We would like to thank all the participants who have provided their valuable answers and comments in the user study.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Bo Jiang.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Wang, Y., Chen, J., Huang, Q. et al. Deep learning-based open API recommendation for Mashup development. Sci. China Inf. Sci. 66, 172102 (2023). https://doi.org/10.1007/s11432-021-3531-0

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s11432-021-3531-0

Keywords

Navigation