Fraunhofer-Gesellschaft

Publica

Hier finden Sie wissenschaftliche Publikationen aus den Fraunhofer-Instituten.

Towards seamless analysis of software interoperability: Automatic identification of conceptual constraints in API documentation

 
: Abukwaik, Hadil; Abujayyab, Mohammed; Rombach, H. Dieter

:

Tekinerdogan, Bedir (Ed.):
Software architecture. 10th European conference, ECSA 2016 : Copenhagen, Denmark, November 28 - December 2, 2016; Proceedings
Cham: Springer International Publishing, 2016 (Lecture Notes in Computer Science 9839)
ISBN: 978-3-319-48991-9 (Print)
ISBN: 978-3-319-48992-6 (Online)
S.67-83
European Conference on Software Architecture (ECSA) <10, 2016, Copenhagen>
Englisch
Konferenzbeitrag
Fraunhofer IESE ()
empirical study; machine learning

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% 70.4% precision and 70.2% 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% 81.9% precision and 82.0% 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.

: http://publica.fraunhofer.de/dokumente/N-432282.html