Towards Seamless Analysis of Software Interoperability: Automatic Identification of Conceptual Constraints in API Documentation

  • Hadil Abukwaik
  • Mohammed Abujayyab
  • Dieter Rombach
Conference paper

DOI: 10.1007/978-3-319-48992-6_5

Part of the Lecture Notes in Computer Science book series (LNCS, volume 9839)
Cite this paper as:
Abukwaik H., Abujayyab M., Rombach D. (2016) Towards Seamless Analysis of Software Interoperability: Automatic Identification of Conceptual Constraints in API Documentation. In: Tekinerdogan B., Zdun U., Babar A. (eds) Software Architecture. ECSA 2016. Lecture Notes in Computer Science, vol 9839. Springer, Cham

Abstract

Building successful and meaningful interoperation with external software APIs requires satisfying their conceptual interoperability constraints. These constraints, which we call the COINs, include structure, dynamic, and quality specifications that if missed they lead to costly implications of unexpected mismatches and running-late projects. However, for software architects and analysts, manual analysis of unstructured text in API documents to identify conceptual interoperability constraints is a tedious and time-consuming task that requires knowledge about constraint types. In this paper, we present our empirically-based research in addressing the aforementioned issues by utilizing machine learning techniques. We started with a multiple-case study through which we contributed a ground truth dataset. Then, we built a model for this dataset and tested its robustness through experiments using different machine learning text-classification algorithms. The results show that our model enables achieving \(70.4\,\%\) precision and \(70.2\,\%\) recall in identifying seven classes of constraints (i.e., Syntax, Semantic, Structure, Dynamic, Context, Quality, and Not-COIN). This achievement increases to \(81.9\,\%\) precision and \(82.0\,\%\) recall when identifying two classes (i.e., COIN, Not-COIN). Finally, we implemented a tool prototype to demonstrate the value of our findings for architects in a practical context.

Keywords

Interoperability analysis Conceptual constraints Black-box interoperation API documentation Empirical study Machine learning 

Copyright information

© Springer International Publishing AG 2016

Authors and Affiliations

  • Hadil Abukwaik
    • 1
  • Mohammed Abujayyab
    • 1
  • Dieter Rombach
    • 1
  1. 1.University of KaiserslauternKaiserslauternGermany

Personalised recommendations