Coloração Automática de Variabilidades em Linhas de Produtos de Software

encia Prevayler. Abstract. This paper details an algorithm that automatically annotates blocks of code associated to variabilities in software product lines. The proposed algo- rithm is based on a tool to implement variabilities called CIDE (Colored IDE). CIDE enhances standard IDE with the ability to associate colors to lines of code in charge of implementing variabilities. Furthermore, the tool supports the generation of projections of a system in which the code annotated with a gi- ven color is not showed. Using the proposed algorithm, we have automatically extracted four variabilities from the Prevayler persistence framework .

[1]  Roberto Erick Lopez-Herrejon,et al.  Evaluating Support for Features in Advanced Modularization Technologies , 2005, ECOOP.

[2]  Charles W. Krueger,et al.  Easing the Transition to Software Mass Customization , 2001, PFE.

[3]  Brian W. Kernighan,et al.  The C Programming Language , 1978 .

[4]  Marco Tulio Valente,et al.  Object-oriented transformations for extracting aspects , 2009, Inf. Softw. Technol..

[5]  Jan Bosch,et al.  On the notion of variability in software product lines , 2001, Proceedings Working IEEE/IFIP Conference on Software Architecture.

[6]  Hans-Arno Jacobsen,et al.  Horizontal decomposition of Prevayler , 2005, CASCON.

[7]  David Lorge Parnas,et al.  On the Design and Development of Program Families , 2001, IEEE Transactions on Software Engineering.

[8]  Paul Clements,et al.  Software product lines - practices and patterns , 2001, SEI series in software engineering.

[9]  Mark Harman,et al.  Tool-Supported Refactoring of Existing Object-Oriented Code into Aspects , 2006, IEEE Transactions on Software Engineering.

[10]  Henry Spencer,et al.  #ifdef Considered Harmful, or Portability Experience with C News , 1992, USENIX Summer.

[11]  Don S. Batory,et al.  Feature-oriented programming and the AHEAD tool suite , 2004, Proceedings. 26th International Conference on Software Engineering.

[12]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[13]  Wolfgang De Meuter,et al.  Can we refactor conditional compilation into aspects? , 2009, AOSD '09.

[14]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[15]  Martin P. Robillard,et al.  Separating features in source code: an exploratory study , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[16]  Sven Apel,et al.  Granularity in software product lines , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[17]  Jia Liu,et al.  Feature oriented refactoring of legacy applications , 2006, ICSE.

[18]  Sven Apel,et al.  A Case Study Implementing Features Using AspectJ , 2007, 11th International Software Product Line Conference (SPLC 2007).

[19]  Sven Apel,et al.  Visualizing Software Product Line Variabilities in Source Code , 2008, SPLC.