- Authors: Nikolaos Nikolaidis, Elvira-Maria Arvanitou, Christina Volioti, Theodore Maikantis, Apostolos Ampatzoglou, Daniel Feitosa, Alexander Chatzigeorgiou, Phillipe Krief
- Location: The Journal of Systems & Software
Service-Oriented Architectures (SOA) have become a standard for developing software applications, including but not limited to cloud-based ones and enterprise systems. When using SOA, software engineers organize the desired functionality into self-contained and independent services that are invoked through end-points (with API calls). The use of this emerging technology has changed drastically the way that software reuse is performed, in the sense that a “service” is a “code chunk” that is reusable (preferably in a black-box manner), but in many (especially “in-house”) cases, white-box reuse is also meaningful. To confront the reuse challenges opened-up by the rise of SOA, in the SmartCLIDE project1 we have developed a framework (a methodology and a platform) to aid software engineers in systematic and more efficient (in terms of time, quality, defects, and process) reuse of services, when developing SOA-based cloud applications. In this work, we:
- (a) present the SmartCLIDE methodology and the Eclipse Open SmartCLIDE platform; and
- (b) evaluate the usefulness of the framework, in terms of relevance, usability, and obtained benefits.
The results of the study have confirmed the relevance and rigor of the framework, unveiled some limitations, and pointed to interesting future work directions, but also provided some actionable implications for researchers and practitioners.
Keywords: reuse; service-based development; cloud development; platform