Skip to main content

Evolutionary Introduction of Software Product Lines

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2379))

Abstract

Software product lines have proved to be a successful and efficient means for managing the development of software in industry. The significant benefits over traditional software architectures have the potential to convince software companies to adopt the product line approach for their existing products. In that case, the question arises how to best convert the existing products into a software product line. For several reasons, an evolutionary approach is desirable. But so far, there is little guidance on the evolutionary introduction of software product lines.

In this paper, we propose a lightweight iterative process supporting the incremental introduction of product line concepts for existing software products. Starting with the analysis of the legacy code, we assess what parts of the software can be restructured for product line needs at reasonable costs. For the analysis of the products, we use feature analysis, a reengineering technique tailored to the specific needs of the initiation of software product lines.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bosch, J.: Design & Use of Software Architectures. Addison-Wesley and ACM Press (2000)

    Google Scholar 

  2. Clements, P., Northrop, L.: Software Product Lines—Practices and Patterns. SEI Series in Software Engineering. Addison-Wesley (2001)

    Google Scholar 

  3. Northrop, L.M.: A Framework for Software Product Line Practice. Available at http://www.sei.cmu.edu/plp/framework.html(2001)

  4. Bergey, J., O’Brien, L., Smith, D.: Options Analysis for Reengineering (OAR): A Method for Mining Legacy Assets. Technical Report CMU/SEI-2001-TN-013, SEI, Carnegie Mellon University (2001)

    Google Scholar 

  5. Bayer, J., Flege, O., Knauber, P., Laqua, R., Muthig, D., Schmid, K., Widen, T., DeBaud, J.M.: PuLSE: A Methodology to Develop Software Product Lines. In: Proceedings of the Fifth ACM SIGSOFT Symposium on Software Reusability (SSR’99), Los Angeles, CA, USA ACM Press (1999) 122–131

    Google Scholar 

  6. Eisenbarth, T., Simon, D.: Guiding Feature Asset Mining for Software Product Line Development. In: Proceedings of the International Workshop on Product Line Engineering: The Early Steps: Planning, Modeling, and Managing, Erfurt, Germany, Fraunhofer IESE (2001) 1–4

    Google Scholar 

  7. Kazman, R., Bass, L., Abowd, G., Webb, M.: SAAM: A Method for Analyzing the Properties of Software Architectures. In: Proceedings of the 16th International Conference on Software Engineering, Sorrento, Italy, IEEE Computer Society Press (1994) 81–90

    Chapter  Google Scholar 

  8. Kazman, R., Klein, M., Barbacci, M., Longstaff, T., Lipson, H., Carriere, S.J.: The Architecture Tradeoff Analysis Method. In: Proceedings of the 4th International Conference on Engineering of Complex Computer Systems, Monterey, CA, USA, IEEE Computer Society Press (1998) 68–78

    Google Scholar 

  9. Chen, K., Rajlich, V.: Case Study of Feature Location Using Dependence Graph. In: Proceedings of the 8th International Workshop on Program Comprehension, Limerick, Ireland, IEEE Computer Society Press (2000) 241–249

    Chapter  Google Scholar 

  10. Wilde, N., Buckellew, M., Page, H., Rajlich, V.: A Case Study of Feature Location in Unstructured Legacy Fortran Code. In: Proceedings of the 5th European Conference on Software Maintenance and Reengineering, Lisbon, Portugal, IEEE Computer Society Press (2001) 68–75

    Chapter  Google Scholar 

  11. Wilde, N., Scully, M.C.: Software Reconnaissance: Mapping Program Features to Code. Journal of Software Maintenance: Research and Practice 7 (1995) 49–62

    Article  Google Scholar 

  12. Wilde, N.: RECON. Available at http://www.cs.uwf.edu/~recon/ (2001)

  13. Eisenbarth, T., Koschke, R., Simon, D.: Derivation of Feature-Component Maps by Means of Concept Analysis. In: Proceedings of the 5th European Conference on Software Maintenance and Reengineering, Lisbon, Portugal, IEEE Computer Society Press (2001) 176–179

    Chapter  Google Scholar 

  14. Eisenbarth, T., Koschke, R., Simon, D.: Feature-Driven Program Understanding Using Concept Analysis of Execution Traces. In: Proceedings of the 9th International Workshop on Program Comprehension, Toronto, Canada, IEEE Computer Society Press (2001) 300–309

    Chapter  Google Scholar 

  15. Eisenbarth, T., Koschke, R., Simon, D.: Aiding Program Comprehension by Static and Dynamic Feature Analysis. In: Proceedings of the International Conference on Software Maintenance, Florence, Italy, IEEE Computer Society Press (2001) 602–611

    Google Scholar 

  16. Wong, W.E., Gokhale, S.S., Hogan, J.R.: Quantifying the Closeness between Program Components and Features. The Journal of Systems and Software 54 (2000) 87–98

    Article  Google Scholar 

  17. The XFIG drawing tool, Version 3.2.3d. Available at http://www.xfig.org/ (2001)

  18. Bergey, J.K., Northrop, L.M., Smith, D.B.: Enterprise Framework for the Disciplined Evolution of Legacy Systems. Technical Report CMU/SEI-97-TR-007, SEI, Carnegie Mellon University, Pittsburgh, PA, USA (1997)

    Google Scholar 

  19. Bergey, J., O’Brien, L., Smith, D.: Mining Existing Software Assets for Software Product Lines. Technical Report CMU/SEI-2000-TN-008, SEI, Carnegie Mellon University (2000)

    Google Scholar 

  20. Bayer, J., Girard, J.F., Würthner, M., DeBaud, J.M., Apel, M.: Transitioning Legacy Assets to a Product Line Architecture. In: Proceedings of the Seventh European Software Engineering Conference (ESEC’99). Lecture Notes in Computer Science 1687, Toulouse, France, Springer (1999) 446–463

    Google Scholar 

  21. The New Bauhaus Stuttgart. Available at http://www.bauhaus-stuttgart.de/ (2002)

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Simon, D., Eisenbarth, T. (2002). Evolutionary Introduction of Software Product Lines. In: Chastek, G.J. (eds) Software Product Lines. SPLC 2002. Lecture Notes in Computer Science, vol 2379. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45652-X_17

Download citation

  • DOI: https://doi.org/10.1007/3-540-45652-X_17

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-43985-1

  • Online ISBN: 978-3-540-45652-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics