Supporting Consistency Checking between Features and Software Product Line Use Scenarios

  • Mauricio Alférez
  • Roberto E. Lopez-Herrejon
  • Ana Moreira
  • Vasco Amaral
  • Alexander Egyed
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6727)

Abstract

A key aspect for effective variability modeling of Software Product Lines (SPL) is to harmonize the need to achieve separation of concerns with the need to satisfy consistency of requirements and constraints. Techniques for variability modeling such as feature models used together with use scenarios help to achieve separation of stakeholders’ concerns but ensuring their joint consistency is largely unsupported. Therefore, inconsistent assumptions about system’s expected use scenarios and the way in which they vary according to the presence or absence of features reduce the models usefulness and possibly renders invalid SPL systems. In this paper we propose an approach to check consistency –the verification of semantic relationships among the models– between features and use scenarios that realize them. The novelty of this approach is that it is specially tailored for the SPL domain and considers complex composition situations where the customization of use scenarios for specific products depends on the presence or absence of sets of features. We illustrate our approach and supporting tools using variant constructs that specify how the inclusion of sets of variable features (that refer to uncommon requirements between products of a SPL) adapt use scenarios related to other features.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Int. confs. on theory and applications of satisfiability testing, http://www.satisfiability.org/
  2. 2.
    Alférez, M.: Variability consistency checking for requirements tool, http://citi.di.fct.unl.pt/prototype/prototype.php?id=116
  3. 3.
    Alférez, M., Kulesza, U., Sousa, A., Santos, J., Moreira, A., Araújo, J., Amaral, V.: A model-driven approach for software product lines requirements engineering. In: SEKE, pp. 779–784 (2008)Google Scholar
  4. 4.
    Alférez, M., Santos, J., Moreira, A., Garcia, A., Kulesza, U., Araújo, J., Amaral, V.: Multi-view composition language for software product line requirements. In: van den Brand, M., Gašević, D., Gray, J. (eds.) SLE 2009. LNCS, vol. 5969, pp. 103–122. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  5. 5.
  6. 6.
    Benavides, D., Segura, S., Cortés, A.R.: Automated analysis of feature models 20 years later: A literature review. Inf. Syst. 35(6), 615–636 (2010)CrossRefGoogle Scholar
  7. 7.
    Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley, Boston (2002)Google Scholar
  8. 8.
    Czarnecki, K., Eisenecker, U.W.: Generative programming: methods, tools, and applications. ACM Press/Addison-Wesley Publishing Co., New York (2000)Google Scholar
  9. 9.
    Czarnecki, K., Pietroszek, K.: Verifying feature-based model templates against well-formedness ocl constraints. In: Proc. of the GPCE 2006, Portland, Oregon, USA, pp. 211–220. ACM, New York (2006)Google Scholar
  10. 10.
    Egyed, A.: Fixing inconsistencies in UML design models. In: Proc. of the 29th Int. Conf. on Software Engineering, ICSE 2007, pp. 292–301. IEEE Computer Society, Washington, DC, USA (2007)Google Scholar
  11. 11.
    Gomaa, H.: Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures. Addison Wesley Longman Publishing Co., Inc., Redwood City (2004)Google Scholar
  12. 12.
    Harhurin, A., Hartmann, J.: Towards consistent specifications of product families. In: Cuellar, J., Sere, K. (eds.) FM 2008. LNCS, vol. 5014, pp. 390–405. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  13. 13.
    Heidenreich, F., Kopcsek, J., Wende, C.: Featuremapper: mapping features to models. In: Companion of the 30th Int. Conf. on Software Engineering, ICSE Companion 2008, Leipzig, Germany, pp. 943–944. ACM, New York (2008)Google Scholar
  14. 14.
    Jacobson, I.: Object-Oriented Software Engineering: A Use Case Driven Approach. Addison Wesley Longman Publishing Co., Inc., Redwood City (2004)Google Scholar
  15. 15.
    Jacobson, I., Ng, P.-W.: Aspect-Oriented Software Development with Use Cases (Addison-Wesley Object Technology Series). Addison-Wesley Professional, Reading (2004)Google Scholar
  16. 16.
    Kruchten, P.: The Rational Unified Process: An Introduction, 3rd edn. Addison-Wesley Longman Publishing Co., Inc., Boston (2003)Google Scholar
  17. 17.
    Lopez-Herrejon, R.E., Egyed, A.: Detecting inconsistencies in multi-view models with variability. In: Kühne, T., Selic, B., Gervais, M.-P., Terrier, F. (eds.) ECMFA 2010. LNCS, vol. 6138, pp. 217–232. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  18. 18.
    Morganho, H., Gomes, e.a.: Requirement specifications for industrial case studies. Deliverable D5.2, Ample Project (2008), www.ample-project.net
  19. 19.
    Pohl, K., Böckle, G., Linden, F.J.v.d.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer-Verlag New York, Inc., Secaucus (2005)CrossRefMATHGoogle Scholar
  20. 20.
    Zschaler, S., Sánchez, P., Santos, J., Alférez, M., Rashid, A., Fuentes, L., Moreira, A., Araújo, J., Kulesza, U.: VML* – A family of languages for variability management in software product lines. In: van den Brand, M., Gašević, D., Gray, J. (eds.) SLE 2009. LNCS, vol. 5969, pp. 82–102. Springer, Heidelberg (2010)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Mauricio Alférez
    • 1
  • Roberto E. Lopez-Herrejon
    • 2
  • Ana Moreira
    • 1
  • Vasco Amaral
    • 1
  • Alexander Egyed
    • 2
  1. 1.CITI/Departamento de Informática, Faculdade de Ciências e TecnologiaUniversidade Nova de LisboaCaparicaPortugal
  2. 2.Institute for Systems Engineering and AutomationJohannes Kepler UniversityLinzAustria

Personalised recommendations