Open Access. Powered by Scholars. Published by Universities.®

Software Engineering Commons

Open Access. Powered by Scholars. Published by Universities.®

Rochester Institute of Technology

Reusability

Articles 1 - 2 of 2

Full-Text Articles in Software Engineering

An Exploratory Study On How Software Reuse Is Discussed In Stack Overflow, Mohamed Wiem Mkaouer, Eman Abdullah Alomar, Jiaqian Liu, Ali Ouni, Christian D. Newman, Diego Barinas May 2020

An Exploratory Study On How Software Reuse Is Discussed In Stack Overflow, Mohamed Wiem Mkaouer, Eman Abdullah Alomar, Jiaqian Liu, Ali Ouni, Christian D. Newman, Diego Barinas

Articles

Software reuse is an important and crucial quality attribute in modern software engineering, where almost all software projects, open source or commercial, no matter small or ultra-large, source code reuse in one way or another. Although software reuse has experienced an increased adoption throughout the years with the exponentially growing number of available third-party libraries, frameworks and APIs, little knowledge exists to investigate what aspects of code reuse developers discuss. In this study, we look into bridging this gap by examining Stack Overflow to understand the challenges developers encounter when trying to reuse code. Using the Stack Overflow tags “code-reuse” …


How Do Developers Refactor Code To Improve Code Reusability?, Eman Abdullah Alomar, Philip T. Rodriguez, Jordan Bowman, Tianjia Wang, Benjamin Adepoju, Kevin Lopez, Christian D. Newman, Ali Ouni, Mohamed Wiem Mkaouer May 2020

How Do Developers Refactor Code To Improve Code Reusability?, Eman Abdullah Alomar, Philip T. Rodriguez, Jordan Bowman, Tianjia Wang, Benjamin Adepoju, Kevin Lopez, Christian D. Newman, Ali Ouni, Mohamed Wiem Mkaouer

Articles

. Refactoring is the de-facto practice to optimize software health. While there has been several studies proposing refactoring strategies to optimize software design through applying design patterns and removing design defects, little is known about how developers actually refactor their code to improve its reuse. Therefore, we extract, from 1,828 open source projects, a set of refactorings which were intended to improve the software reusability. We analyze the impact of reusability refactorings on state-of-the-art reusability metrics, and we compare the distribution of reusability refactoring types, with the distribution of the remaining mainstream refactorings. Overall, we found that the distribution of …