Software Product Line Refactoring Templates

Laís Neves, Leopoldo Teixeira, Demóstenes Sena, Vander Alves, Uirá Kulesza and Paulo Borba

Abstract for SPLC'2011

The adoption of product line strategy can bring significant productivity and time to market improvements. To obtain these benefits with reduced upfront investment, one alternative is to derive a product line from an existing product and evolve it by implementing new features. However, manually performing this task can be tedious because it usually involves the analysis of many artifacts, like feature models and configuration knowledge, which reduces productivity and increases the risk of introducing bugs in the product line. In this paper we propose and describe a set of refactoring templates that developers can use when evolving a product line. We evaluate the templates by analyzing the refactorings performed in two different product lines and demonstrating that they can express these modifications and avoid refactoring mistakes identified in this analysis. Also we present an initial idea of how we can automate our templates in a context of a development tool to provide better support to developers.

Refactoring Templates for SPLC'2011

  • Template 1 - Split Asset

TemplateSplitAsset.png

  • Template 2 - Refactor Asset

TemplateRefactorAsset.png

  • Template 3 - Add New Optional Feature

TemplateAddOptionalFeature.png

  • Template 4 - Add New Mandatory Feature

TemplateAddNewMandatory.png

  • Template 5 - Replace Feature Expression

TemplateChangeFeatureExpression.png

  • Template 6 - Add New Alternative Feature

  • Template 7 - Add New OR Feature

  • Template 8 - Delete Asset

-- LaisNeves - 01 Mar 2011

Edit | Attach | Print version | History: r26 | r5 < r4 < r3 < r2 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r3 - 2011-03-10 - LaisNeves
 
This site is powered by the TWiki collaboration platformCopyright © 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback

mersin escort bayan adana escort bayan izmit escort ankara escort bursa escort