skip to main content
10.1145/3001867.3001872acmconferencesArticle/Chapter ViewAbstractPublication PagesfosdConference Proceedingsconference-collections
research-article

Higher-order delta modeling for software product line evolution

Published: 30 October 2016 Publication History

Abstract

In software product lines (SPL), i.e., a family of similar software systems sharing common and variable artifacts, modeling evolution and reasoning about it is challenging, as not only a single system, but rather a set of system variants as well as their interdependencies change. An integrated modeling formalism for variability and evolution is required to allow the capturing of evolution operations that are applied to SPL artifacts, and to facilitate the impact analysis of evolution on the artifact level. Delta modeling is a flexible transformational variability modeling approach, where the variability and commonality between variants are explicitly documented and analyzable by means of transformations modeled as deltas. In this paper, we lift the notion of delta modeling to capture both, variability and evolution, by deltas. We evolve a delta model specifying a set of variants by applying higher-order deltas. A higher-order delta encapsulates evolution operations, i.e., additions, removals, or modifications of deltas, and transforms a delta model in its new version. In this way, we capture the complete evolution history of delta-oriented SPLs by higher-order delta models. By analyzing each higher-order delta application, we are further able to reason about the impact and, thus, the changes to the specified set of variants. We prototypically implement our formalism and show its applicability using a system from the automation engineering domain.

References

[1]
V. Alves, P. Matos, Jr., L. Cole, A. Vasconcelos, P. Borba, and G. Ramalho. Extracting and Evolving Code in Product Lines with Aspect-oriented Programming. In A. Rashid and M. Aksit, editors, Transactions on Aspect-Oriented Software Development IV, pages 117–142. Springer, 2007.
[2]
S. Apel, T. Leich, M. Rosenmüller, and G. Saake. Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution. In RAM-SE’05-ECOOP’05, 2005.
[3]
J. Bayer, O. Flege, P. Knauber, R. Laqua, D. Muthig, K. Schmid, T. Widen, and J.-M. DeBaud. PuLSE: A Methodology to Develop Software Product Lines. In Proc. Symposium on Software Reusability, pages 122–131. ACM, 1999.
[4]
P. Borba, L. Teixeira, and R. Gheyi. A Theory of Software Product Line Refinement. Electr. Notes in Theo. Comp. Sci., 455:2–30, 2012.
[5]
J. Bosch. Design and Use of Software Architectures: Adopting and Evolving a Product-Line Approach. Pearson, 2000.
[6]
J. Bosch. Maturity and Evolution in Software Product Lines: Approaches, Artefacts and Organization, pages 257– 271. Springer, 2002.
[7]
G. Botterweck and A. Pleuss. Evolution of Software Product Lines, pages 265–295. Springer, 2014.
[8]
G. Botterweck, A. Pleuss, D. Dhungana, A. Polzer, and S. Kowalewski. EvoFM: Feature-Driven Planning of Product-Line Evolution. In PLEASE’10, pages 24–31. ACM, 2010.
[9]
D. Clarke, M. Helvensteijn, and I. Schaefer. Abstract Delta Modelling. Math. Struct. Comp. Sci., 25(3):482–527, 2015.
[10]
K. Czarnecki and M. Antkiewicz. Mapping Features to Models: A Template Approach Based on Superimposed Variants. In GPCE’05, pages 422–437. Springer, 2005.
[11]
D. Dhungana, P. Grünbacher, R. Rabiser, and T. Neumayer. Structuring the Modeling Space and Supporting Evolution in Software Product Line Engineering. J. Sys. and Soft., 83(7): 1108–1122, 2010.
[12]
E. Figueiredo, N. Cacho, C. Sant’Anna, M. Monteiro, U. Kulesza, A. Garcia, S. Soares, F. Ferrari, S. Khan, F. Castor Filho, et al. Evolving Software Product Lines with Aspects. In ICSE’08, pages 261–270. IEEE, 2008.
[13]
H. Gomaa. Designing Software Product Lines with UML 2.0: From Use Cases to Pattern-Based Software Architectures. In M. Morisio, editor, Reuse of Off-the-Shelf Components, volume 4039 of LNCS, pages 440–440. Springer, 2006.
[14]
A. Haber, H. Rendel, B. Rumpe, and I. Schaefer. Evolving Delta-Oriented Software Product Line Architectures. In Monterey Workshop, pages 183–208. Springer, 2012.
[15]
O. Haugen, B. Møller-Pedersen, J. Oldevik, G. K. Olsen, and A. Svendsen. Adding Standardized Variability to Domain Specific Languages. In SPLC’08, pages 139–148, 2008.
[16]
C. Klein, C. Prehofer, and B. Rumpe. Feature Specification and Refinement with State Transition Diagrams. In FITND’97, pages 284–297. IOS Press, 1997.
[17]
M. Kowal, C. Legat, D. Lorefice, C. Prehofer, I. Schaefer, and B. Vogel-Heuser. Delta Modeling for Variant-rich and Evolving Manufacturing Systems. In MoSEMInA’14, MoSEMInA’14, pages 32–41. ACM, 2014.
[18]
C. Krueger. Eliminating the Adoption Barrier. IEEE Software, 19(4):29 –31, 2002.
[19]
G. Lima, J. Santos, U. Kulesza, D. Alencar, and S. V. Fialho. A Delta Oriented Approach to the Evolution and Reconciliation of Enterprise Software Products Lines. In ICEIS’13, pages 255–263, 2013.
[20]
S. Lity, T. Morbach, T. Thüm, and I. Schaefer. Applying Incremental Model Slicing to Product-Line Regression Testing. In ICSR’16, pages 3–19. Springer, 2016.
[21]
M. Lochau, S. Lity, R. Lachmann, I. Schaefer, and U. Goltz. Delta-oriented Model-based Integration Testing of Largescale Systems. J. Sys. and Soft., 91:63–84, 2014.
[22]
T. Mens, A. Serebrenik, and A. Cleve, editors. Evolving Software Systems. Springer, 2014.
[23]
L. Neves, P. Borba, V. Alves, L. Turnes, L. Teixeira, D. Sena, and U. Kulesza. Safe Evolution Templates for Software Product Lines. J. Sys. and Soft., 106:42 – 58, 2015.
[24]
M. Nieke, C. Seidl, and S. Schuster. Guaranteeing Configuration Validity in Evolving Software Product Lines. In Va-MoS’16, VaMoS ’16, pages 73–80. ACM, 2016.
[25]
J. Oldevik and O. Haugen. Higher-Order Transformations for Product Lines. In SPLC’07, pages 243–254, Sept 2007.
[26]
C. Pietsch, T. Kehrer, U. Kelter, D. Reuling, and M. Ohrndorf. SiPL – A Delta-Based Modeling Framework for Software Product Line Engineering. In ASE’15, pages 852–857, 2015.
[27]
K. Pohl, G. Böckle, and F. J. v. d. Linden. Software Product Line Engineering: Foundations, Principles and Techniques. Springer, 2005.
[28]
C. Prehofer. Plug-and-Play Composition of Features and Feature Interactions with Statechart Diagrams. Softw. & Sys. Modeling, 3:221–234, 2004.
[29]
R. Salay, M. Famelis, J. Rubin, A. Di Sandro, and M. Chechik. Lifting Model Transformations to Product Lines. In ICSE’14, pages 117–128. ACM, 2014.
[30]
I. Schaefer. Variability Modelling for Model-Driven Development of Software Product Lines. In VaMoS’10, VaMoS’10, pages 85–92, 2010.
[31]
I. Schaefer and F. Damiani. Pure Delta-Oriented Programming. In FOSD’10, pages 49–56. ACM, 2010.
[32]
I. Schaefer, L. Bettini, V. Bono, F. Damiani, and N. Tanzarella. Delta-Oriented Programming of Software Product Lines. In SPLC’10, SPLC’10, pages 77–91, 2010.
[33]
I. Schaefer, R. Rabiser, D. Clarke, L. Bettini, D. Benavides, G. Botterweck, A. Pathak, S. Trujillo, and K. Villela. Software Diversity: State of the Art and Perspectives. Int. J. Softw. Tools Technol. Transf., 14(5):477–495, 2012.
[34]
K. Schmid and M. Verlage. The Economic Impact of Product Line Adoption and Evolution. IEEE Software, 19(4):50, 2002.
[35]
C. Seidl, I. Schaefer, and U. Aßmann. Capturing Variability in Space and Time with Hyper Feature Models. In VaMoS’13, pages 6:1–6:8. ACM, 2013.
[36]
C. Seidl, I. Schaefer, and U. Aßmann. Integrated Management of Variability in Space and Time in Software Families. In SPLC’14, SPLC’14, pages 22–31. ACM, 2014.
[37]
M. Svahnberg and J. Bosch. Evolution in Software Product Lines: Two Cases. J. Softw. Maint., 11(6):391–422, 1999.
[38]
M. Tisi, F. Jouault, P. Fraternali, S. Ceri, and J. Bézivin. On the Use of Higher-Order Model Transformations, pages 18– 33. Springer, 2009.
[39]
B. Vogel-Heuser, C. Legat, J. Folmer, and S. Feldmann. Researching Evolution in Industrial Plant Automation: Scenarios and Documentation of the Pick and Place Unit. Technical Report TUM-AIS-TR-01-14-02, TU München, 2014.

Cited By

View all
  • (2021)Evolving Delta-Oriented Product Lines: A Case Study on Feature Interaction, Safe and Partially Safe EvolutionProceedings of the XXXV Brazilian Symposium on Software Engineering10.1145/3474624.3474645(95-104)Online publication date: 27-Sep-2021
  • (2020)Risk-based compatibility analysis in automotive systems engineeringProceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings10.1145/3417990.3421263(1-10)Online publication date: 16-Oct-2020
  • (2020)Anomaly analyses for feature-model evolutionACM SIGPLAN Notices10.1145/3393934.327812353:9(188-201)Online publication date: 7-Apr-2020
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
FOSD 2016: Proceedings of the 7th International Workshop on Feature-Oriented Software Development
October 2016
84 pages
ISBN:9781450346474
DOI:10.1145/3001867
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

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 30 October 2016

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Delta Modeling
  2. Software Evolution
  3. Software Product Lines

Qualifiers

  • Research-article

Funding Sources

Conference

SPLASH '16
Sponsor:

Acceptance Rates

Overall Acceptance Rate 17 of 28 submissions, 61%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)40
  • Downloads (Last 6 weeks)3
Reflects downloads up to 17 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2021)Evolving Delta-Oriented Product Lines: A Case Study on Feature Interaction, Safe and Partially Safe EvolutionProceedings of the XXXV Brazilian Symposium on Software Engineering10.1145/3474624.3474645(95-104)Online publication date: 27-Sep-2021
  • (2020)Risk-based compatibility analysis in automotive systems engineeringProceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings10.1145/3417990.3421263(1-10)Online publication date: 16-Oct-2020
  • (2020)Anomaly analyses for feature-model evolutionACM SIGPLAN Notices10.1145/3393934.327812353:9(188-201)Online publication date: 7-Apr-2020
  • (2019)Formal Foundations for Analyzing and Refactoring Delta-Oriented Model-Based Software Product LinesProceedings of the 23rd International Systems and Software Product Line Conference - Volume A10.1145/3336294.3336299(207-217)Online publication date: 9-Sep-2019
  • (2019)Towards Efficient Analysis of Variation in Time and SpaceProceedings of the 23rd International Systems and Software Product Line Conference - Volume B10.1145/3307630.3342414(57-64)Online publication date: 9-Sep-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)CIAhelperProceedings of the 22nd International Systems and Software Product Line Conference - Volume 110.1145/3233027.3233036(31-42)Online publication date: 10-Sep-2018
  • (2018)175% Modeling for Product-Line Evolution of Domain ArtifactsProceedings of the 12th International Workshop on Variability Modelling of Software-Intensive Systems10.1145/3168365.3168369(27-34)Online publication date: 7-Feb-2018
  • (2018)Taming Multi-Variability of Software Product Line TransformationsFundamental Approaches to Software Engineering10.1007/978-3-319-89363-1_19(337-355)Online publication date: 4-Apr-2018
  • (2017)Transformations of software product linesProceedings of the ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems10.1109/MODELS.2017.22(101-111)Online publication date: 17-Sep-2017

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media