[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/3510466.3511271acmotherconferencesArticle/Chapter ViewAbstractPublication PagesvamosConference Proceedingsconference-collections
research-article

Experiences with Constructing and Evolving aSoftware Product Line with Delta-Oriented Programming

Published: 23 February 2022 Publication History

Abstract

A Software Product Line (SPL) captures families of closely related software variants. The configuration options of an SPL are represented by features. Typically, SPLs are developed in a feature-centric manner and, thus, require different development methods and technologies from developing software products individually. For developers of single systems, this means a shift in paradigm and technology. Especially with invasive variability realization mechanisms, such as Delta-Oriented Programming (DOP), centering development around configurable features realized via source code transformation is commonly expected to pose an obstacle, but concrete experience reports are lacking. In this paper, we investigate how DOP and cutting-edge SPL development tools are picked up by non-expert developers. To this end, we report on our experiences from a student capstone SPL development project. Our results show that participants find easy access to SPL development concepts and tools. Based on our observations and the participants’ practices, we define guidelines for developers using DOP.

References

[1]
Don Batory. 2005. Feature Models, Grammars, and Propositional Formulas. In Proc. Int’l Systems and Software Product Line Conf. (SPLC). Springer, 7–20.
[2]
Benjamin Behringer and Moritz Fey. 2016. Implementing Delta-Oriented SPLs Using PEoPL: An Example Scenario and Case Study. In Proc. Int’l Workshop on Feature-Oriented Software Development (FOSD). ACM, 28–38. https://doi.org/10.1145/3001867.3001871
[3]
David Benavides and José A. Galindo. 2014. Variability Management in an Unaware Software Product Line Company: An Experience Report. In Proc. Int’l Workshop on Variability Modelling of Software-Intensive Systems (VaMoS). ACM, Article 5, 6 pages. https://doi.org/10.1145/2556624.2556633
[4]
Ross Buhrdorf, Dale Churchett, and Charles W. Krueger. 2004. Salion’s Experience with a Reactive Software Product Line Approach. In Proc. Int’l Workshop on Software Product-Family Engineering (PFE). Springer, 317–322.
[5]
Leomar Camargo, Luisa Fantin, Gabriel Lobão, Thiago Figueiredo, Rodrigo Bonifacio, Karine Gomes, and Leopoldo Teixeira. 2021. Evolving Delta-Oriented Product Lines: A Case Study on Feature Interaction, Safe and Partially Safe Evolution. In Brazilian Symposium on Software Engineering. 95–104.
[6]
Dave Clarke, Radu Muschevici, José Proença, Ina Schaefer, and Rudolf Schlatte. 2010. Variability modelling in the ABS language. In Proc. Int’l Symposium on Formal Methods for Components and Objects (FMCO). Springer, 204–224.
[7]
James C. Dager. 2000. Cummins’s Experience in Developing a Software Product Line Architecture for Real-time Embedded Diesel Engine Controls. In Proc. Int’l Systems and Software Product Line Conf. (SPLC). Springer, 23–45. https://doi.org/10.1007/978-1-4615-4339-8_2
[8]
Ferruccio Damiani and Michael Lienhardt. 2016. Refactoring Delta-Oriented Product Lines to achieve Monotonicity. In Proc. Int’l Workshop on Formal Methods and Analysis in Software Product Line Engineering (FMSPLE). 2–16. https://doi.org/10.4204/EPTCS.206.2
[9]
Michiel Helvensteijn, Radu Muschevici, and Peter Y. H. Wong. 2012. Delta Modeling in Practice: A Fredhopper Case Study. In Proc. Int’l Workshop on Variability Modelling of Software-Intensive Systems (VaMoS). ACM, 139–148. https://doi.org/10.1145/2110147.2110163
[10]
Kyo C. Kang, Sholom G. Cohen, James A. Hess, William E. Novak, and A. Spencer Peterson. 1990. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-21. Software Engineering Institute.
[11]
Timo Kehrer, Udo Kelter, Manuel Ohrndorf, and Tim Sollbach. 2012. Understanding Model Evolution Through Semantically Lifting Model Differences With SiLift. In Proc. Int’l Conf. on Software Maintenance (ICSM). IEEE, 638–641.
[12]
Charles W. Krueger, Dale Churchett, and Ross Buhrdorf. 2008. HomeAway’s Transition to Software Product Line Practice: Engineering and Business Results in 60 Days. In Proc. Int’l Systems and Software Product Line Conf. (SPLC). 297–306. https://doi.org/10.1109/SPLC.2008.36
[13]
Hyesun Lee, Hyunsik Choi, Kyo C. Kang, Dohyung Kim, and Zino Lee. 2009. Experience Report on Using a Domain Model-Based Extractive Approach to Software Product Line Asset Development. In Proc. Int’l Conf. on Software Reuse (ICSR). Springer, 137–149.
[14]
Sasche Lity, Remo Lachmann, Malte Lochau, and Ina Schaefer. 2012. Delta-oriented Software Product Line Test Models - The Body Comfort System Case Study. Technical Report. TU Braunschweig, Germany. Available at https://www.isf.cs.tu-bs.de/cms/team/lity/bcs_tubs_tech_rep_V1_4.pdf.
[15]
Michael Nieke, Gil Engel, and Christoph Seidl. 2017. DarwinSPL: An Integrated Tool Suite for Modeling Evolving Context-aware Software Product Lines. In Proc. Int’l Workshop on Variability Modelling of Software-Intensive Systems (VaMoS). ACM, 92–99.
[16]
Michael Nieke, Gabriela Sampaio, Thomas Thüm, Christoph Seidl, Leopoldo Teixeira, and Ina Schaefer. 2021. Guiding the Evolution of Product-Line Configurations. Software and System Modeling (SoSyM)(2021). https://doi.org/10.1007/s10270-021-00906-w
[17]
Ulf Pettersson and Stan Jarzabek. 2005. Industrial Experience with Building a Web Portal Product Line Using a Lightweight, Reactive Approach. In Proc. Europ. Software Engineering Conf./Foundations of Software Engineering (ESEC/FSE). ACM, 326–335. https://doi.org/10.1145/1081706.1081758
[18]
Ina Schaefer, Lorenzo Bettini, Viviana Bono, Ferruccio Damiani, and Nico Tanzarella. 2010. Delta-Oriented Programming of Software Product Lines. In Proc. Int’l Systems and Software Product Line Conf. (SPLC). Springer, 77–91.
[19]
Ina Schaefer, Rick Rabiser, Dave Clarke, Lorenzo Bettini, David Benavides, Goetz Botterweck, Animesh Pathak, Salvador Trujillo, and Karina Villela. 2012. Software Diversity: State of the Art and Perspectives. Int’l J. Software Tools for Technology Transfer (STTT) 14 (2012), 477–495. Issue 5.
[20]
Sven Schuster, Christoph Seidl, and Ina Schaefer. 2018. Detecting and Describing Variability-Aware Design Patterns in Feature-Oriented Software Product Lines. In Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2018, Funchal, Madeira - Portugal, January 22-24, 2018, Slimane Hammoudi, Luís Ferreira Pires, and Bran Selic (Eds.). SciTePress, 731–742. https://doi.org/10.5220/0006749307310742
[21]
Christoph Seidl, Sven Schuster, and Ina Schaefer. 2015. Generative Software Product Line Development Using Variability-Aware Design Patterns. ACM, New York, NY, USA, 151–160. https://doi.org/10.1145/2814204.2814212
[22]
Christoph Seidl, Sven Schuster, and Ina Schaefer. 2017. Generative software product line development using variability-aware design patterns. Comput. Lang. Syst. Struct. 48 (2017), 89–111. https://doi.org/10.1016/j.cl.2016.08.006
[23]
Andreas Svendsen, Xiaorui Zhang, Roy Lind-Tviberg, Franck Fleurey, Øystein Haugen, Birger Møller-Pedersen, and Gøran K. Olsen. 2010. Developing a Software Product Line for Train Control: A Case Study of CVL. In Proc. Int’l Systems and Software Product Line Conf. (SPLC). Springer, 106–120.
[24]
Weishan Zhang and Stan Jarzabek. 2005. Reuse without Compromising Performance: Industrial Experience from RPG Software Product Line for Mobile Devices. In Proc. Int’l Systems and Software Product Line Conf. (SPLC). Springer, 57–69.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
VaMoS '22: Proceedings of the 16th International Working Conference on Variability Modelling of Software-Intensive Systems
February 2022
114 pages
ISBN:9781450396042
DOI:10.1145/3510466
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 the author(s) 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].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 February 2022

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Case Study
  2. Delta Oriented Programming
  3. Evolution
  4. Experience Report
  5. Guidelines
  6. Observations
  7. Software Product Line

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Funding Sources

  • Independent Research Fund Denmark

Conference

VaMoS '22

Acceptance Rates

Overall Acceptance Rate 66 of 147 submissions, 45%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 75
    Total Downloads
  • Downloads (Last 12 months)18
  • Downloads (Last 6 weeks)6
Reflects downloads up to 13 Dec 2024

Other Metrics

Citations

Cited By

View all

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media