Skip to main content

Model Composition in Product Lines and Feature Interaction Detection Using Critical Pair Analysis

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4735))

Abstract

Software product lines (SPL) are an established technology for developing families of systems. In particular, they focus on modeling commonality and variability, that is, they are based on identifying features common to all members of the family and variable features that appear only in some members. Model-based development methods for product lines advocate the construction of SPL requirements, analysis and design models for features. This paper describes an approach for maintaining feature separation during modeling using a UML composition language based on graph transformations. This allows models of features to be reused more easily. The language can be used to compose the SPL models for a given set of features. Furthermore, critical pair analysis is used to detect dependencies and conflicts between features during analysis and design modeling. The approach is supported by a tool that allows automated composition of UML models of features and detection of some kinds of feature interactions.

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   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.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. Weiss, D.M., Lai, C.T.R.: Software Product-Line Engineering: A Family-Based Software Development Process. Addison-Wesley, Reading (1999)

    Google Scholar 

  2. Parnas, D.: Designing Software for Ease of Extension and Contraction. IEEE Transactions on Software Engineering SE-5(2), 128–138 (1979)

    Article  Google Scholar 

  3. Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley, Reading (2001)

    Google Scholar 

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

    Google Scholar 

  5. Gomaa, H.: A Software Modeling Odyssey: Designing Evolutionary Architecture-Centric Real-Time Systems and Product Lines. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 1–15. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  6. Gomaa, H.: Designing Software Product Lines With UML: From Use Cases to Pattern-Based Software Architectures. Addison-Wesley, Reading (2005)

    Google Scholar 

  7. Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, Heidelberg (2005)

    MATH  Google Scholar 

  8. Taentzer, G.: AGG: A Graph Transformation Environment for Modeling and Validation of Software. In: Pfaltz, J.L., Nagl, M., Böhlen, B. (eds.) AGTIVE 2003. LNCS, vol. 3062, pp. 446–453. Springer, Heidelberg (2004)

    Google Scholar 

  9. Heckel, R., Küster, J.M., Taentzer, G.: Confluence of Typed Attributed Graph Transformation Systems. In: Corradini, A., Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2002. LNCS, vol. 2505, pp. 161–176. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  10. Gomaa, H., Saleh, M.: Feature Driven Dynamic Customization of Software Product Lines. In: Morisio, M. (ed.) ICSR 2006. LNCS, vol. 4039, pp. 58–72. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  11. Gomaa, H., Kerschberg, L., Sugumaran, V., Bosch, C., Tavakoli, I., O’Hara, L.: A Knowledge-Based Software Engineering Environment for Reusable Software Requirements and Architectures. Automated Software Engineering 3(3-4), 285–307 (1996)

    Article  Google Scholar 

  12. Gomaa, H., Shin, M.E.: Automated Software Product Line Engineering and Product Derivation. In: HICSS. 40th Annual Hawaii International Conference on System Sciences, Waikoloa, HI, p. 285 (2007)

    Google Scholar 

  13. Gomaa, H., Shin, M.E.: A Multiple-View Meta-Modeling Approach for Variability Management in Software Product Lines. In: Bosch, J., Krueger, C. (eds.) ICOIN 2004 and ICSR 2004. LNCS, vol. 3107, pp. 274–285. Springer, Heidelberg (2004)

    Google Scholar 

  14. Rozenberg, G.: A Handbook of Graph Grammars and Computing by Graph Transformation: Application Languages and Tools. World Scientific Publishing Company, Singapore (1997)

    Google Scholar 

  15. Nickel, U., Niere, J., Zuendorf, A.: The FUJABA Environment. In: International Conference on Software Engineering, Limerick, Ireland, pp. 742–745 (2000)

    Google Scholar 

  16. Agrawal, A.: Graph Rewriting And Transformation (GReAT): A Solution For The Model Integrated Computing (MIC) Bottleneck. In: ASE 2003. 18th IEEE International Conference on Automated Software Engineering, Montréal, Quebec, Canada, pp. 364–368. IEEE Computer Society Press, Los Alamitos (2003)

    Google Scholar 

  17. OMG: MOFTM Query / Views / Transformations Specification (2005)

    Google Scholar 

  18. Csertan, G., Huszerl, G., Majzik, I., Pap, Z., Pataricza, A., Varro, D.: VIATRA - visual automated transformations for formal verification and validation of UML models. In: Automated Software Engineering, 2002 (ASE), Edinburgh, UK, p. 267 (2002)

    Google Scholar 

  19. Philippow, I., Riebisch, M., Boellert, K.: The Hyper/UML approach for feature based software design. In: The 4th AOSD Modeling with UML Workshop, San Francisco, CA, USA (2003)

    Google Scholar 

  20. Ossher, H., Tarr, P.L.: Hyper/J: Multi-Dimensional Separation of Concerns for Java. In: International Conference on Software Engineering (ICSE), Limerick, Ireland, pp. 737–737 (2000)

    Google Scholar 

  21. Whittle, J., Moreira, A., Araújo, J., Jayaraman, P., Elkhodary, A., Rabbi, R.: An Expressive Aspect Composition Language for UML State Diagrams. In: MODELS. International Conference on Model Driven Engineering Languages and Systems, Nashville, TN (2007)

    Google Scholar 

  22. Ziadi, T., Jézéquel, J.-M.: Software Product Line Engineering with the UML: Deriving Products. In: Käköla, T., Duenas, J.C. (eds.) Software Product Lines, pp. 557–588. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  23. Czarnecki, K., Antkiewicz, M.: Mapping Features to Models: A Template Approach Based on Superimposed Variants. In: Glück, R., Lowry, M. (eds.) GPCE 2005. LNCS, vol. 3676, pp. 422–437. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  24. Cottenier, T., van den Berg, A., Elrad, T.: Motorola WEAVR: Model Weaving in a Large Industrial Context. In: Aspect-Oriented Software Development, Vancouver, Canada (2007)

    Google Scholar 

  25. Song, E., Reddy, R., France, R.B., Ray, I., Georg, G., Alexander, R.: Verifiable Composition of Access Control and Application Features. In: SACMAT. ACM Symposium on Access Control Models and Technologies, Stockholm, Sweden, pp. 120–129 (2005)

    Google Scholar 

  26. Klein, J., Helouet, L., Jézéquel, J.: Semantic-Based Weaving of Scenarios. In: Aspect-Oriented Software Development (AOSD), Vancouver, Canada, pp. 27–38 (2006)

    Google Scholar 

  27. Jacobson, I., Ng, P.-W.: Aspect Oriented Software Development with Use Cases. Addison Wesley, Reading (2004)

    Google Scholar 

  28. Clarke, S., Baniassad, E.: Aspect-Oriented Analysis and Design: The Theme Approach. Addison Wesley, Reading (2005)

    Google Scholar 

  29. Batory, D., Sarvela, J.N., Rauschmayer, A.: Scaling step-wise refinement. In: ICSE. 25th International Conference on Software Engineering, Portland, OR, pp. 187–197 (2003)

    Google Scholar 

  30. Egyed, A.: Instant consistency checking for the UML. In: International Conference on Software Engineering, pp. 381–390 (2006)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Gregor Engels Bill Opdyke Douglas C. Schmidt Frank Weil

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Jayaraman, P., Whittle, J., Elkhodary, A.M., Gomaa, H. (2007). Model Composition in Product Lines and Feature Interaction Detection Using Critical Pair Analysis. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds) Model Driven Engineering Languages and Systems. MODELS 2007. Lecture Notes in Computer Science, vol 4735. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75209-7_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-75209-7_11

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-75208-0

  • Online ISBN: 978-3-540-75209-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics