Evaluating scenario-based SPL requirements approaches: the case for modularity, stability and expressiveness | Requirements Engineering Skip to main content
Log in

Evaluating scenario-based SPL requirements approaches: the case for modularity, stability and expressiveness

  • Requirements Engineering in Software Product Lines
  • Published:
Requirements Engineering Aims and scope Submit manuscript

Abstract

Software product lines (SPL) provide support for productivity gains through systematic reuse. Among the various quality attributes supporting these goals, modularity, stability and expressiveness of feature specifications, their composition and configuration knowledge emerge as strategic values in modern software development paradigms. This paper presents a metric-based evaluation aiming at assessing how well the chosen qualities are supported by scenario-based SPL requirements approaches. The selected approaches for this study span from type of notation (textual or graphical based), style to support variability (annotation or composition based), and specification expressiveness. They are compared using the metrics developed in a set of releases from an exemplar case study. Our major findings indicate that composition-based approaches have greater potential to support modularity and stability, and that quantification mechanisms simplify and increase expressiveness of configuration knowledge and composition specifications.

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

Access this article

Subscribe and save

Springer+ Basic
¥17,985 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price includes VAT (Japan)

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17

Similar content being viewed by others

Notes

  1. http://cserg0.site.uottawa.ca/cma2013re/, or http://cserg0.site.uottawa.ca/cma2013models/.

  2. http://www.cs.colostate.edu/remodd/v1/sites/default/files/cms_case_study.pdf.

  3. http://www.cs.colostate.edu/remodd/v1/.

  4. An editable feature model and statistics are available at http://www.splot-research.org/.

  5. Use scenarios describe a single path of logic, whereas use cases typically describe several paths (usually the basic flow plus alternate paths).

  6. http://people.irisa.fr/Edward-Mauricio.Alferez_Salinas/REJ/REJ-Data.htm.

  7. An early version of VML4RE [2] had some language constructs that simplify matching specific fragments (i.e., join points) in the scenarios reducing the verbosity of the composition model. For example, pointcut designators such as “equal,” “startsBy,” “finishesWith,” “contains” and quantifiers such as “*”, “?”

  8. http://www.cs.mcgill.ca/~joerg/SEL/AOM_Bellairs_2012.html.

References

  1. Alexander IF, Maiden N (eds) (2004) Scenarios, stories, use cases: through the systems development life-cycle. Wiley, Chichester

    Google Scholar 

  2. Alférez M, Kulesza U, Weston N, Araújo J, Amaral V, Moreira A, Rashid A, Jaeger MC (2008) A metamodel for aspectual requirements modelling and composition. Tech. Report D 1.3 Ample-project

  3. Alférez M, Santos J, Moreira A, Garcia A, Kulesza U, Araújo J, Amaral V (2010) Multi-view composition language for software product line requirements. In: SLE’09: Revised selected papers, Denver, CO, USA, pp. 103–122. doi:10.1007/978-3-642-12107-4_8

  4. Bachmann F, Bass L (2001) Managing variability in software architectures. In: SIGSOFT Software Engineering Notes, vol 26. New York, NY, USA, pp 126–132. doi:10.1145/375212.375274

  5. Bergmans L, Aksit M (2001) Composing crosscutting concerns using composition filters. Commun ACM 44(10):51–57. doi:10.1145/383845.383857

    Google Scholar 

  6. Bertolino A, Gnesi S (2003) Use case-based testing of product lines. In: ESEC/FSE’03, Helsinki, Finland, pp. 355–358. doi:10.1145/940071.940120

  7. Bonifácio R, Borba P (2009) Modeling scenario variability as crosscutting mechanisms. In: AOSD’09, Charlottesville, Virginia, USA, pp 125–136. doi:10.1145/1509239.1509258

  8. Bonifácio R, Borba P, Soares S (2008) On the benefits of variability management as crosscutting. In: Early Aspects Workshop at AOSD. Brussels, Belgium

  9. Chitchyan R et al. (2009) Semantic vs. syntactic compositions in aspect-oriented requirements engineering: an empirical study. In: KJ Sullivan (ed) AOSD’09, Charlottesville, Virginia, USA, pp 149–160. doi:10.1145/1509239.1509260

  10. Clements P, Northrop LM (2001) Software product lines: practices and patterns professional. Addison-Wesley, Boston

    Google Scholar 

  11. Czarnecki K, Antkiewicz M (2005) Mapping features to models: a template approach based on superimposed variants. In: GPCE’05, Tallinn, Estonia, pp 422–437. doi:10.1007/11561347_28

  12. Czarnecki K, Eisenecker U (2000) Generative programming: methods, tools, and applications. ACM Press/Addison-Wesley Publishing Co. New York

  13. Eaddy M, Aho A, Murphy GC (2007) Identifying, assigning, and quantifying crosscutting concerns. In: ACoM’07 held with ICSE’07, Minneapolis, MN, USA, p 2. doi:10.1109/ACOM.2007.4

  14. Eriksson M, Borstler J, Borg K (2005) The pluss approach, domain modeling with features, use cases and use case realizations. In: SPLC’05, Rennes, France, pp 33–44. doi:10.1007/11554844_5

  15. Eriksson M, Börstler J, Borg K (2009) Managing requirements specifications for product lines: an approach and industry case study. J Syst Softw 82(3):435–447. doi:10.1016/j.jss.2008.07.046

  16. Figueiredo E et al (2008) Evolving software product lines with aspects: an empirical study on design stability. In: ICSE’08, Leipzig, Germany, pp 261–270. doi:10.1145/1368088.1368124

  17. Figueiredo E et al. (2008) On the maintainability of aspect-oriented software: a concern-oriented measurement framework. In: CSMR’08, Athens, Greece, pp 183–192. doi:10.1109/CSMR.2008.4493313

  18. Gomaa H (2004) Designing software product lines with UML: from use cases to pattern-based software architectures. Addison Wesley Longman Publishing Co., Inc., Redwood City

  19. Kästner C, Apel S, Kuhlemann M (2008) Granularity in software product lines. In: ICSE’08, Leipzig, Germany, pp 311–320. doi:10.1145/1368088.1368131

  20. Katz S, Mezini M, Kienzle J (eds) (2010) Transactions on aspect-oriented software development VII: a Common case study for aspect-oriented modeling. Lecture notes in computer science, vol 6210. Springer

  21. Kienzle J, Guelfi N, Mustafiz S (2010) Crisis management systems: a case study for aspect-oriented modeling. T. Aspect-Oriented Software Development 7:1–22

  22. Kovacević J, Alférez M, Kulesza U, Moreira A, Araújo J, Amaral V, Alves V, Rashid A, Chitchyan R (2007) Survey of the state-of-the-art in requirements engineering for software product line and model-driven requirements engineering. Tech. Report D 1.1, Ample-project

  23. Kulesza U, Sant’Anna C, Garcia A, Coelho R, von Staa A, de Lucena CJP (2006) Quantifying the effects of aspect-oriented programming: a maintenance study. In: ICSM’06, Philadelphia, PA, USA, pp 223–233. doi:10.1109/ICSM.2006.48

  24. Lippert M, Lopes CV (2000) A study on exception detection and handling using aspect-oriented programming. In: ICSE’00, Limerick, Ireland, pp 418–427. doi:10.1145/337180.337229

  25. Mustafiz JKNGS (2009) Crisis management systems: a case study for aspect-oriented modeling. Tech. Report, School of Computer Science, McGill University, Montreal. http://www.cs.mcgill.ca/joerg/taosd/TAOSD/TAOSD.html

  26. Pohl K, Böckle G, Linden FJvd (2005) Software product line engineering: foundations, principles and techniques. Springer, New York, Inc., Secaucus, NJ

  27. Sampaio A, et al. (2007) A comparative study of aspect-oriented requirements engineering approaches. In: First international symposium on empirical software engineering and measurement, 2007. ESEM’07, Madrid, Spain, pp 166–175. doi:10.1109/ESEM.2007.15

  28. Sugumaran V, Park S, Kang KC (2006) Introduction. Commun ACM 49(12):28–32

    Article  Google Scholar 

  29. Zschaler S, Sánchez P, Santos J, Alférez M, Rashid A, Fuentes L, Moreira A, Araújo J, Kulesza U (2009) VML*: a family of languages for variability management in software product lines. In: SLE’09: Revised selected papers, Denver, CO, USA. doi:10.1007/978-3-642-12107-4_7

Download references

Acknowledgments

This work was partially supported by the Centro de Informática e Tecnologias de Informação (CITI) - Portugal, the European Project AMPLE - contract IST-33710, the grant SFRH/BD/46194/2008 of Fundação para a Ciência e a Tecnologia - Portugal, and the National Institute of Science and Technology for Software Engineering (INES) - CNPq under grants 573964/2008-4 and CNPQ 560256/2010-8.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mauricio Alférez.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Alférez, M., Bonifácio, R., Teixeira, L. et al. Evaluating scenario-based SPL requirements approaches: the case for modularity, stability and expressiveness. Requirements Eng 19, 355–376 (2014). https://doi.org/10.1007/s00766-013-0184-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00766-013-0184-5

Keywords

Navigation