skip to main content
10.1145/2047862.2047869acmconferencesArticle/Chapter ViewAbstractPublication PagesgpceConference Proceedingsconference-collections
research-article

Investigating the safe evolution of software product lines

Published: 22 October 2011 Publication History

Abstract

The adoption of a product line strategy can bring significant productivity and time to market improvements. However, evolving a product line is risky because it might impact many products and their users. So when evolving a product line to introduce new features or to improve its design, it is important to make sure that the behavior of existing products is not affected. In fact, to preserve the behavior of existing products one usually has to analyze different artifacts, like feature models, configuration knowledge and the product line core assets. To better understand this process, in this paper we discover and analyze concrete product line evolution scenarios and, based on the results of this study, we describe a number of safe evolution templates that developers can use when working with product lines. For each template, we show examples of their use in existing product lines. We evaluate the templates by also analyzing the evolution history of two different product lines and demonstrating that they can express the corresponding modifications and then help to avoid the mistakes that we identified during our analysis.

References

[1]
V. Alves, R. Gheyi, T. Massoni, U. Kulesza, P. Borba, and C. J. P. de Lucena. Refactoring product lines. In GPCE 2006, Portland, Oregon, USA, pages 201--210. ACM, 2006.
[2]
V. Alves, P. Matos, L. Cole, A. Vasconcelos, P. Borba, and G. Ramalho. Extracting and evolving code in product lines with aspect-oriented programming. Transactions on Aspect-Oriented Software Development, 4: 117--142, 2007.
[3]
V. Alves, F. Calheiros, V. Nepomuceno, A. Menezes, S. Soares, and P. Borba. Flip: Managing software product line extraction and reaction with aspects. In SPLC, page 354, 2008.
[4]
P. Borba. An introduction to software product line refactoring. In GTTSE'09 Summer School, Braga, Portugal, 2009.
[5]
P. Borba, L. Teixeira, and R. Gheyi. A theory of software product line refinement. In ICTAC'10, pages 15--43, Berlin, Heidelberg, 2010. Springer-Verlag.
[6]
A. Cavalcanti, P. Borba, A. Sampaio, and M. Cornelio. Algebraic reasoning for object-oriented programming. Science of Computer Programming, Jan. 2004.
[7]
P. Clements and L. Northrop. Software Product Lines: Practices and Patterns. Addison-Wesley, 2001.
[8]
L. Cole and P. Borba. Deriving refactorings for AspectJ. In AOSD'05, pages 123--134. ACM Press, 2005.
[9]
M. Critchlow, K. Dodd, J. Chou, and A. van der Hoek. Refactoring product line architectures. In 1st International Workshop on Refactoring: Achievements, Challenges, and Effects, pages 23--26, 2003.
[10]
K. Czarnecki and U. Eisenecker. Generative programming: methods, tools, and applications. Addison-Wesley, 2000.
[11]
K. Czarnecki and K. Pietroszek. Verifying feature-based model templates against well-formedness OCL constraints. In GPCE 2006, pages 211--220, 2006.
[12]
F. Ferreira, L. Neves, M. Silva, and P. Borba. Target: a model based product line testing tool. In Tools Session of CBSoft 2010, Salvador, Brazil, 2010.
[13]
E. Figueiredo, N. Cacho, C. Sant'Anna, M. Monteiro, U. Kulesza, A. Garcia, S. Soares, F. C. Ferrari, S. S. Khan, F. C. Filho, and F. Dantas. Evolving software product lines with aspects: an empirical study on design stability. In ICSE, pages 261--270. ACM, 2008.
[14]
M. Fowler. Refactoring: Improving the Design of Existing Code. Addison-Wesley, Aug. 1999.
[15]
K. Kang, S. Cohen, J. Hess, W. Novak, and A. S. Peterson. Feature-oriented domain analysis (FODA) feasibility study. Technical Report Carnegie Mellon University/SEI-90-TR-21, SEI, Carnegie Mellon University, 1990.
[16]
C. Kastner, S. Apel, and D. Batory. A case study implementing features using AspectJ. In SPLC, pages 223--232, 2007.
[17]
R. Kolb, D. Muthig, T. Patzke, and K. Yamauchi. A case study in refactoring a legacy component for reuse in a product line. In 21st ICSM, pages 369--378. IEEE Computer Society, 2005.
[18]
C. Krueger. Easing the transition to software mass customization. In 4th International Workshop on Software Product-Family Engineering, volume 2290 of LNCS, pages 282--293. Springer-Verlag, 2002.
[19]
J. Liu, D. Batory, and C. Lengauer. Feature oriented refactoring of legacy applications. In ICSE'06, pages 112--121. ACM, 2006.
[20]
S. Owre, J. Rushby, and N. Shankar. Pvs: A prototype verification system. In 11th International Conference on Automated Deduction, pages 748--752. Springer-Verlag, 1992. ISBN 3-540-55602-8.
[21]
K. Pohl, G. B�ckle, and F. van der Linden. Software Product Line Engineering: Foundations, Principles and Techniques. Springer, 2005.
[22]
D. B. Roberts. Practical Analysis for Refactoring. PhD thesis, University of Illinois, 1999.
[23]
T. Th�m, D. S. Batory, and C. K�stner. Reasoning about edits to feature models. In ICSE, pages 254--264. IEEE, 2009. ISBN 978-1-4244-3452-7.
[24]
S. Trujillo, D. Batory, and O. Diaz. Feature refactoring a multi-representation program into a product line. In GPCE'06, pages 191--200. ACM, 2006.
[25]
F. van der Linden, K. Schmid, and E. Rommes. Software Product Lines in Action: the Best Industrial Practice in Product Line Engineering. Springer, 2007.

Cited By

View all
  • (2024)A Meta-Study of Software-Change IntentionsACM Computing Surveys10.1145/3661484Online publication date: 25-Apr-2024
  • (2023)Modular Soundness Checking of Feature Model Evolution PlansTheoretical Aspects of Computing – ICTAC 202310.1007/978-3-031-47963-2_25(417-437)Online publication date: 4-Dec-2023
  • (2021)The life cycle of features in highly-configurable software systems evolving in space and timeProceedings of the 20th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences10.1145/3486609.3487195(2-15)Online publication date: 17-Oct-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
GPCE '11: Proceedings of the 10th ACM international conference on Generative programming and component engineering
October 2011
194 pages
ISBN:9781450306898
DOI:10.1145/2047862
  • cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 47, Issue 3
    GCPE '11
    March 2012
    179 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/2189751
    Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 October 2011

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. product line safe evolution
  2. refinement
  3. software product lines

Qualifiers

  • Research-article

Conference

GPCE '11
Sponsor:
GPCE '11: Generative Programming and Component Engineering
October 22 - 23, 2011
Oregon, Portland, USA

Acceptance Rates

Overall Acceptance Rate 56 of 180 submissions, 31%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)4
  • Downloads (Last 6 weeks)2
Reflects downloads up to 19 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)A Meta-Study of Software-Change IntentionsACM Computing Surveys10.1145/3661484Online publication date: 25-Apr-2024
  • (2023)Modular Soundness Checking of Feature Model Evolution PlansTheoretical Aspects of Computing – ICTAC 202310.1007/978-3-031-47963-2_25(417-437)Online publication date: 4-Dec-2023
  • (2021)The life cycle of features in highly-configurable software systems evolving in space and timeProceedings of the 20th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences10.1145/3486609.3487195(2-15)Online publication date: 17-Oct-2021
  • (2021)A Formal Framework of Software Product Line AnalysesACM Transactions on Software Engineering and Methodology10.1145/344238930:3(1-37)Online publication date: 23-Apr-2021
  • (2021)Evolution in dynamic software product linesJournal of Software: Evolution and Process10.1002/smr.229333:2Online publication date: 14-Feb-2021
  • (2020)Anomaly analyses for feature-model evolutionACM SIGPLAN Notices10.1145/3393934.327812353:9(188-201)Online publication date: 7-Apr-2020
  • (2020)Consistency-preserving evolution planning on feature modelsProceedings of the 24th ACM Conference on Systems and Software Product Line: Volume A - Volume A10.1145/3382025.3414964(1-12)Online publication date: 19-Oct-2020
  • (2019)Harmonized temporal feature modeling to uniformly perform, track, analyze, and replay software product line evolutionProceedings of the 18th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences10.1145/3357765.3359515(115-128)Online publication date: 21-Oct-2019
  • (2018)Anomaly analyses for feature-model evolutionProceedings of the 17th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences10.1145/3278122.3278123(188-201)Online publication date: 5-Nov-2018
  • (2018)Identifying the intensity of variability changes in software product line evolutionProceedings of the 22nd International Systems and Software Product Line Conference - Volume 110.1145/3233027.3233032(54-64)Online publication date: 10-Sep-2018
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media