Skip to main content

Feature Interaction and Dependencies: Modeling Features for Reengineering a Legacy Product Line

  • Conference paper
  • First Online:
Book cover Software Product Lines (SPLC 2002)

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

Included in the following conference series:

Abstract

Reengineering a legacy product line has been addressed very little by current product line research activities. This paper introduces a method to investigate feature dependencies and interactions, which restricts the variants that can be derived from the legacy product line assets. Reorganizing the product line assets with respect to new requirements requires more knowledge than what is easily provided by the classical feature-modeling approaches. Hence, adding all the feature dependencies and interactions into the feature tree results in unreadable and unmanageable feature models that fail to achieve their original goals.

We therefore propose two complementary views to represent the feature model. One view shows the hierarchical refinement of features similar to common feature-modeling approaches in a feature tree. The second view describes what kind of dependencies and interactions there are between various features.

We show two examples of feature dependencies and interactions in the context of an engine-control software product line, and we demonstrate how our approach helps to define correct product configurations from product line variants.

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

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Reuse-driven software processes guidebook. Technical Report Version 02.00.05, Software Productivity Consortium, November 1993.

    Google Scholar 

  2. M. Ardis and D. Weiss. Defining families: The commonality analysis. In International Conference on Software Engineering ICSE1997, pages 649–650. IEEE, 1997.

    Google Scholar 

  3. D. Batory, L. Goglianese, and M. Goodwin. Creating reference architectures: An example for avonics. In Proceedings of the Symposium of Software Reuse, pages 27–37. ACM, 1995.

    Google Scholar 

  4. J. Bayer, O. Flege, P. Knauber, R. Laqua, D. Methig, K. Schmid, T. Widen, and J. De-Baud. PuLSE: A methodology to develop software product lines. In Symposium on Software Reusability (SSR’99), pages 122–131, 1999.

    Google Scholar 

  5. Paul Clements, Rick Kazman, and Mark Klein. Evaluating Software Architectures: Methods and Case Studies. SEI Series in Software Engineering. Addison-Wesley, Reading, MA, 2001.

    Google Scholar 

  6. Paul Clements and Linda Northrop. Software Product Lines: Practices and Patterns. SEI Series in Software Engineering. Addison-Wesley, Reading, MA, 2001.

    Google Scholar 

  7. S. Cohen, J. Stanley, W. Peterson, and R. Krut. Application of feature-oriented domain analysis to the army movement control domain. Technical Report CMU/SEI-91-TR-028, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA, June 1992.

    Google Scholar 

  8. K. Czarnecki and U. Eisenecker. Generative Programming — Methods Tools and Applications. Addison-Wesley, Reading, MA, 2000.

    Google Scholar 

  9. James C. Dager. Cummin’s experience in developing a software product line architecture for real-time embedded diesel engine controls. In Patrick Donohoe, editor, Software Product Lines: Experience and Research Directions, pages 23–45. Kluwer Academic Publishers, Boston, 2000.

    Google Scholar 

  10. Alan Michael Davis. Software requirements: Analysis & specification. Prentice-Hall, Englewood Cliffs, NJ, 1990.

    Google Scholar 

  11. S. Easterbrook and B. Nuseibeh. Using viewpoints for inconsistency management. BCS/IEE Software Engineering Journal, pages 31–43, January 1996.

    Google Scholar 

  12. A. Finkelstein, J. Kramer, B. Nuseibeh, L. Finkelstein, and M. Goedicke. Viewpoints: A framework for integrating multiple perspectives in system development. International Journal of Software Engineering and Knowledge Engineering, pages 31–58, March 1992.

    Google Scholar 

  13. J. Gerhardt, H. Hönninger, and H. Bischof. A new approach to functional and software structure for engine management systems — BOSCH ME7. In SAE International Congress and Exposition, Session: Electronic Engine Controls, Detroit, MI, (February, 1998), pages 1–12, Warrendale, PA, 1998. Society of Automotive Engineers (SAE).

    Google Scholar 

  14. Jurgen Gerhardt. ME-motronic engine management. In Gasoline-engine management, pages 306–359. Robert Bosch GmbH, Stuttgart, Germany, 1999.

    Google Scholar 

  15. M. Griss, J. Favaro, and Md’Alessandro. Integrating feature modeling with the RSEB. In Proceedings of Fifth International Conference on Software Reuse, pages 76–85. IEEE, 1998.

    Google Scholar 

  16. A. Hein, J. MacGregor, and S. Thiel. Configuring software product line features. In Workshop on Feature Interaction in Composed Systems 15th European Conference on Object-Oriented Programming (ECOOP 2001), Budapest, Hungary (June 18–22, 2001), 2001.

    Google Scholar 

  17. A. Hein, M. Schlick, and R. Vinga-Martins. Applying feature models in industrial setting. In P. Donohoe, editor, Software Product Lines — Experience and Research Directions, pages 47–70. Kluwer Academic Publishers, Boston, 2000.

    Google Scholar 

  18. A. Hunter and B. Nuseibeh. Managing inconsistent specifications: Reasoning analysis and action. ACM Transactions on Software Engineering and Methodology, pages 335–367, October 1998.

    Google Scholar 

  19. K. Kang, S. Cohen, J. Hess, W. Novak, and S Peterson. Feature-oriented domain analysis (FODA) feasibility study. Technical Report CMU/SEI-90-TR-021, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA, 1990.

    Google Scholar 

  20. B. Keepance and M. Mannion. Using patterns to model variability in product families. IEEE Software, pages 102–108, July/August 1999.

    Google Scholar 

  21. M. Klein, R. Kazman, L. Bass, J. Carriere, M. Barbacci, and H. Lipson. Attribute-based architecture styles. In Patrick Donohoe, editor, Software Architecture, volume 140 of International Federation for Information Processing, pages 225–243. Kluwer Academic Publishers, Boston, 1999.

    Google Scholar 

  22. J. Kuusela and J. Savolainen. Requirements engineering for product lines. In International Conference on Software Engineering (ICSE2000), pages 61–69, 2000.

    Google Scholar 

  23. K. Lee, K. Kang, W. Chae, and B. Choi. Feature-based appraoch to object-oriented engineering of applications for reuse. Software Practise and Experience, pages 1025–1046, 30 2000.

    Article  Google Scholar 

  24. Louise Lorentsen, Antti-Pekka Tuovinen, and Jianli Xu. Experiences in modelling feature interactions with coloured petri nets. In Tibor Gyimothy, editor, Proceedings of Seventh Symposium on Programming Languages and Software Tools SPLST 2001, pages 221–230. University of Szeged, 2001.

    Google Scholar 

  25. Louise Lorentsen, Antti-Pekka Tuovinen, and Jianli Xu. Modelling feature interaction patterns in nokia mobile phones using coloured petri nets and Design/CPN. In Proceedings of Third Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools, CPN’01, Aarhus, Denmark, August 29–3, 2001.

    Google Scholar 

  26. N. Nuseibeh, J. Kramer, and A. Finkelstein. A framework for expressing the relationships between multiple views in requirement specification. IEEE Transactions on Software Engineering, pages 760–773, October 1994.

    Google Scholar 

  27. Michael Schlick and Andreas Hein. Knowledge engineering in software product lines. In European Conference on Artificial Intelligence (ECAI2000), Workshop on Knowledge-Based Systems for Model-Based Engineering, Berlin, Germany (August 22nd, 2000), 2000.

    Google Scholar 

  28. STARS. Organization domain modeling (ODM) guidebook, version 2.0. Technical Report STARS-VC-A025/001/00, Software Technology for Adaptable, Reliable Systems (STARS), June 1996.

    Google Scholar 

  29. Steffen Thiel, Stefan Ferber, Thomas Fischer, Andreas Hein, and Michael Schlick. A case study in applying a product line approach for car periphery supervision systems. In In-Vehicle Software 2001, SAE 2001 World Congress, March 5–8, 2001, Cobo Center, Detroit, Michigan, volume SP-1587, pages 43–55, Warrendale, PA, 2001. Society of Automotive Engineers (SAE).

    Google Scholar 

  30. A. D. Vici, N. Argentieri, A. Mansour, M. d’Alessandro, and J. Favaro. FODAcom: An experience with domain analysis in the italian telecom industry. In Proceedings of the Fifth International Conference on Software Reuse, pages 166–175, Los Alamitos, CA, 1998. IEEE Computer Society Press.

    Google Scholar 

  31. Jens Weber and Karlheinz Topp. Information technology — a challenge for automotive electronics. In Embedded Software Session (PC34), SAE 2001 World Congress, March 5–8, 2001, Cobo Center, Detroit, Michigan, number 2001-01-0029, Warrendale, PA, 2001. Society of Automotive Engineers (SAE).

    Google Scholar 

  32. D. Weiss and R. Lai. Software Product-Line Engineering — A Family-Based Software Development Process. Addison-Wesley, Reading, MA, 1999.

    Google Scholar 

  33. P. Zave. Feature interactions and formal specification in telecommunications. IEEE Computer, pages 20–29, August 1993.

    Google Scholar 

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

Ferber, S., Haag, J., Savolainen, J. (2002). Feature Interaction and Dependencies: Modeling Features for Reengineering a Legacy Product Line. 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_15

Download citation

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

  • 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