Software reuse is the practice of using artifacts from existing systems to build new ones. It has been shown effective for improving quality and maintainability and for reducing cost and development time. Human factors have been identified as significant barriers to a wider adoption of reuse practices in industry. In this paper we consider a tool-supported approach for systematic reuse of object-oriented programs (written in Java) based on polymorphism-inspired mechanisms. The suggested tool gets as input implementations of multiple products, and produces a visual representation of the similarities and variabilities between their classes in terms of exhibits behaviors, as well as presents possible reuse options. We discuss the suitability of this approach for educational and training settings, and specifically for supporting reuse decisions of novice developers.
|Number of pages||10|
|Journal||CEUR Workshop Proceedings|
|State||Published - 2017|
|Event||5th Symposium on Conceptual Modeling Education and the 2nd International iStar Teaching Workshop, SCME-iStarT 2017 - Valencia, Spain|
Duration: 6 Nov 2017 → 9 Nov 2017
Bibliographical noteFunding Information:
Acknowledgment. The authors thank Jonathan Liberman for his help in the implementation of the VarMeR tool. We also thank Alex Kogan and Asaf Mor for their assistance in the initial steps of the development. The first author was supported by the Israel Science Foundation under grant agreement 817/15.
- Decision Support
- Software Product Line Engineering
- Software reuse
- Variability Analysis
- Variability Mechanisms
ASJC Scopus subject areas
- Computer Science (all)