Mining software components from object-oriented apis

Image credit: Unsplash

Abstract

Object-oriented Application Programing Interfaces (APIs) support software reuse by providing pre-implemented functionalities. Due to the huge number of included classes, reusing and understanding large APIs is a complex task. Otherwise, software components are admitted to be more reusable and understandable entities than object-oriented ones. Thus, in this paper, we propose an approach for reengineering object- oriented APIs into component-based ones. We mine components as a group of classes based on the frequency they are used together and their ability to form a quality-centric component. To validate our approach, we experimented on 100 Java applications that used Android APIs.

Publication
In 14th International Conference on Software Reuse
Zakarea Alshara
Zakarea Alshara
Associate Professor of Software Engineering

My research interests include Software Engineering, Software Security, AI, and Cloud Computing.