Experimentation in software engineering
IEEE Transactions on Software Engineering
Object Oriented Reengineering Patterns
Object Oriented Reengineering Patterns
A comprehensive product line scoping approach and its validation
Proceedings of the 24th International Conference on Software Engineering
Architectural Mismatch: Why Reuse Is So Hard
IEEE Software
Architectural Mismatch: Why Reuse Is So Hard
IEEE Software
Easing the Transition to Software Mass Customization
PFE '01 Revised Papers from the 4th International Workshop on Software Product-Family Engineering
Using Clustering Algorithms in Legacy Systems Remodularization
WCRE '97 Proceedings of the Fourth Working Conference on Reverse Engineering (WCRE '97)
Feature-Driven Program Understanding Using Concept Analysis of Execution Traces
IWPC '01 Proceedings of the 9th International Workshop on Program Comprehension
Experiences with Software Product Family Evolution
IWPSE '03 Proceedings of the 6th International Workshop on Principles of Software Evolution
Asset Recovery and Their Incorporation into Product Lines
WCRE '05 Proceedings of the 12th Working Conference on Reverse Engineering
Assessing merge potential of existing engine control systems into a product line
Proceedings of the 2006 international workshop on Software engineering for automotive systems
Experiences with Product Line Development of Embedded Systems at Testo AG
SPLC '06 Proceedings of the 10th International on Software Product Line Conference
Defining a strategy to introduce a software product line using existing embedded systems
EMSOFT '06 Proceedings of the 6th ACM & IEEE International conference on Embedded software
Software Evolution
Introducing Architecture-Centric Reuse into a Small Development Organization
ICSR '08 Proceedings of the 10th international conference on Software Reuse: High Confidence Software Reuse in Large Systems
Variant Comparison - A Technique for Visualizing Software Variants
WCRE '08 Proceedings of the 2008 15th Working Conference on Reverse Engineering
An evaluation of code similarity identification for the grow-and-prune model
Journal of Software Maintenance and Evolution: Research and Practice - Special Issue on the 12th Conference on Software Maintenance and Reengineering (CSMR 2008)
SAVE: Software Architecture Visualization and Evaluation
CSMR '09 Proceedings of the 2009 European Conference on Software Maintenance and Reengineering
A Data Mining Approach for Detecting Higher-Level Clones in Software
IEEE Transactions on Software Engineering
Visualizing and analyzing software variability with bar diagrams and occurrence matrices
SPLC'10 Proceedings of the 14th international conference on Software product lines: going beyond
Analyzing the Source Code of Multiple Software Variants for Reuse Potential
WCRE '11 Proceedings of the 2011 18th Working Conference on Reverse Engineering
Measuring similarity of large software systems based on source code correspondence
PROFES'05 Proceedings of the 6th international conference on Product Focused Software Process Improvement
Hi-index | 0.00 |
Software reuse approaches, such as software product lines, can help to achieve considerable effort and cost savings in product development for sets of software systems with a significant overlap in functionality. However, in the practice many organizations at first develop a number of similar software products without explicitly planning for strategic reuse. In consequence, subsequent attempts to introduce reuse require a significant restructuring of the existing products. The restructuring is difficult because the precise information about the distribution of commonality and variability in the source code of the variants is often not available. The ongoing PhD thesis presented in this paper contributes to easing the task of extractive software reuse adoption: it proposes a reverse engineering approach for extracting the variability information from the source code of similar software products and outlines a method that guides the organization towards optimal use of this information in the process of planning and introducing software reuse.