Visualizing code variabilities for supporting reuse decisions

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

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.

Original languageEnglish
Title of host publication5th Symposium on Conceptual Modeling Education and the 2nd International iStar Teaching Workshop, SCME-iStarT 2017
Pages25-34
Number of pages10
Volume1954
StatePublished - 2017
Event5th Symposium on Conceptual Modeling Education and the 2nd International iStar Teaching Workshop, SCME-iStarT 2017 - Valencia, Spain
Duration: 6 Nov 20179 Nov 2017

Publication series

NameCEUR Workshop Proceedings
PublisherCEUR-WS
ISSN (Print)1613-0073

Conference

Conference5th Symposium on Conceptual Modeling Education and the 2nd International iStar Teaching Workshop, SCME-iStarT 2017
Country/TerritorySpain
CityValencia
Period6/11/179/11/17

Bibliographical note

Funding 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.

Keywords

  • Decision Support
  • Education
  • Polymorphism
  • Software Product Line Engineering
  • Software reuse
  • Variability Analysis
  • Variability Mechanisms

ASJC Scopus subject areas

  • Computer Science (all)

Fingerprint

Dive into the research topics of 'Visualizing code variabilities for supporting reuse decisions'. Together they form a unique fingerprint.

Cite this