Skip to main content

An Integrated Requirements Engineering Framework for Agile Software Product Lines

  • Conference paper
  • First Online:
Book cover Software Technologies (ICSOFT 2018)

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 1077))

Included in the following conference series:

Abstract

Requirements engineering (RE) techniques play a determinant role within Agile Product Lines development methods; these notably allow to establish the relevance to adopt or not the product line approach for software-intensive systems production. This paper proposes an integrated goal and feature-based meta-model for agile software product lines development. The main objective is to permit the sepecification of the requirements that precisely capture stakeholder’s needs and intentions as well as the management of product line variabilities. Adopting practices from requirements engineering, especially goal and feature models, helps designing the domain and application engineering tiers of an agile product line. Such an approach allows a holistic perspective integrating human, organizational and agile aspects to better understand product lines dynamic business environments. It helps bridging the gap be-tween product lines structures and requirements models, and proposes an integrated framework to all actors involved in the product line architecture. In this paper we show how our proposed metamodel can be applied to the requirements engineering stage of an agile product line development mainly for feature-oriented agile product lines such as our own methodology called AgiFPL.

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 EPUB and 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

References

  1. da Silva, I.F., da Mota Silveira Neto, P.A., O’Leary, P., de Almeida, E.S., de Lemos Meira, S.R.: Agile software product lines: a systematic mapping study. Softw.: Pract. Exp. 41(8), 899–920 (2011)

    Google Scholar 

  2. Clements, P.C., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley, Boston (2001)

    Google Scholar 

  3. Díaz, J., Pérez, J., Alarcón, P.P., Garbajosa, J.: Agile product line engineering - a systematic literature review. Softw.: Pract. Exp. 41(8), 921–941 (2011)

    Google Scholar 

  4. Asadi, M., Ramsin, R.: MDA-based methodologies: an analytical survey. In: Schieferdecker, I., Hartman, A. (eds.) ECMDA-FA 2008. LNCS, vol. 5095, pp. 419–431. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-69100-6_30

    Chapter  Google Scholar 

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

    Book  Google Scholar 

  6. Coplien, J., Hoffman, D., Weiss, D.: Commonality and variability in software engineering. IEEE Softw. 15(6), 37–45 (1998)

    Article  Google Scholar 

  7. Alves, V., Niu, N., Alves, C.F., Valença, G.: Requirements engineering for software product lines: a systematic literature review. Inf. Softw. Technol. 52(8), 806–820 (2010)

    Article  Google Scholar 

  8. Haidar, H., Kolp, M., Wautelet, Y.: Formalizing agile software product lines with a RE metamodel. In: 13th International Conference on Software Technologies, ICSOFT 2018, pp. 90–101. SciTePress, Porto (2018)

    Google Scholar 

  9. O’Regan, G.: Z formal specification language. In: O’Regan, G. (ed.) Mathematics in Computing: An Accessible Guide to Historical, Foundational and Application Contexts, pp. 109–122. Springer, London (2013). https://doi.org/10.1007/978-1-4471-4534-9_6

    Chapter  MATH  Google Scholar 

  10. Haidar, H., Kolp, M., Wautelet, Y.: Agile product line engineering: the AgiFPL method. In: 12th International Conference on Software Technologies, ICSOFT 2017, pp. 275–285. SciTePress, Madrid (2017)

    Google Scholar 

  11. Borba, C., Silva, C.: A comparison of goal-oriented approaches to model software product lines variability. In: Heuser, C.A., Pernul, G. (eds.) ER 2009. LNCS, vol. 5833, pp. 244–253. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04947-7_30

    Chapter  Google Scholar 

  12. Tian, K., Cooper, K.: Agile and software product line methods: are they so different. In: 1st International Workshop on Agile Product Line Engineering (2006)

    Google Scholar 

  13. Carbon, R., Lindvall, M., Muthig, D., Costa, P.: Integrating product line engineering and agile methods: flexible design up-front vs. incremental design. In: 1st International Workshop on Agile Product Line Engineering (2006)

    Google Scholar 

  14. Boehm, B.W.: Get ready for agile methods, with care. IEEE Comput. 35(1), 64–69 (2002)

    Article  Google Scholar 

  15. Navarrete, F., Botella, P., Franch, X.: How agile COTS selection methods are (and can be). In: Proceedings of the 31st EUROMICRO Conference on Software Engineering and Advanced Applications, Porto, Portugal, pp. 160–167. IEEE Computer Society (2005)

    Google Scholar 

  16. Noor, M.A., Rabiser, R., Grünbacher, P.: Agile product line planning: a collaborative approach and a case study. J. Syst. Softw. 81(6), 868–882 (2008)

    Article  Google Scholar 

  17. Schön, E.-M., Thomaschewski, J., Escalona, M.J.: Agile requirements engineering: a systematic literature review. Comput. Stand. Interfaces 49, 79–91 (2017)

    Article  Google Scholar 

  18. Highsmith, J., Cockburn, A.: Agile software development: the business of innovation. Computer 34(9), 120–122 (2001)

    Article  Google Scholar 

  19. Apel, S., Batory, D., Kästner, C., Saake, G.: Feature-Oriented Software Product Lines: Concepts and Implementation. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-37521-7

    Book  Google Scholar 

  20. Northrop, L., Clement, P.C.: A framework for software product line practice, version 5.0. https://resources.sei.cmu.edu/library/asset-view.cfm?assetID=495357. Accessed 23 Nov 2018

  21. Irshad, M., Petersen, K., Poulding, S.: A systematic literature review of software requirements reuse approaches. Inf. Softw. Technol. 93(C), 223–245 (2018)

    Article  Google Scholar 

  22. Cohn, M.: User Stories Applied: For Agile Software Development. Addison Wesley Longman Publishing Co., Boston (2004)

    Google Scholar 

  23. Wautelet, Y., Heng, S., Hintea, D., Kolp, M., Poelmans, S.: Bridging user story sets with the use case model. In: Link, S., Trujillo, Juan C. (eds.) ER 2016. LNCS, vol. 9975, pp. 127–138. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-47717-6_11

    Chapter  Google Scholar 

  24. van der Linden, F.J., Schmid, K., Rommes, E.: Software Product Lines in Action: The Best Industrial Practice in Product Line Engineering. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-71437-8

    Book  Google Scholar 

  25. Rubin, K.S.: Essential Scrum: A Practical Guide to the Most Popular Agile Process. Addison-Wesley Professional (2012)

    Google Scholar 

  26. Wautelet, Y., Heng, S., Kolp, M., Mirbel, I.: Unifying and extending user story models. In: Jarke, M., Mylopoulos, J., Quix, C., Rolland, C., Manolopoulos, Y., Mouratidis, H., Horkoff, J. (eds.) CAiSE 2014. LNCS, vol. 8484, pp. 211–225. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-07881-6_15

    Chapter  Google Scholar 

  27. Broy, M.: Domain modeling and domain engineering: key tasks in requirements engineering. In: Münch, J., Schmid, K. (eds.) Perspectives on the Future of Software Engineering. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-37395-4_2

    Chapter  MATH  Google Scholar 

  28. Klünder, J., Hohl, P., Schneider, K.: Becoming agile while preserving software product lines: an agile transformation model for large companies. In: Proceedings of the 2018 International Conference on Software and System Process, Gothenburg, Sweden, pp. 1–10. ACM (2018)

    Google Scholar 

  29. Babar, M.A., Ihme, T., Pikkarainen, M.: An industrial case of exploiting product line architectures in agile software development. In: Proceedings of the 13th International Software Product Line Conference, San Francisco, California, USA, pp. 171–179. Carnegie Mellon University (2009)

    Google Scholar 

  30. Ghanam, Y., Park, S., Maurer, F.: A test-driven approach to establishing & managing agile product lines. In: Proceedings of the 5th Software Product Line Testing Workshop (SPLiT 2008) in Conjunction with SPLC 2008, Limerick, Ireland (2008)

    Google Scholar 

  31. O’Leary, P., McCaffery, F., Thiel, S., Richardson, I.: An agile process model for product derivation in software product line engineering. J. Softw. Maint. Res. Pract. 24(5), 561–571 (2012)

    Article  Google Scholar 

  32. Díaz, J., Pérez, J., Garbajosa, J.: Agile product-line architecting in practice: a case study in smart grids. Inf. Softw. Technol. 56(7), 727–748 (2014)

    Article  Google Scholar 

  33. Schwaber, K., Beedle, M.: Agile Software Development with Scrum. Prentice Hall PTR, Upper Saddle River (2002)

    MATH  Google Scholar 

  34. dos Santos Jr., A.F., Lucena Jr., V.F.: SCRUMPL - software product line engineering with scrum. In: Proceedings of ENASE 2010 - Conference on Evaluation of Novel Approaches to Software Engineering, Setubal, Portugal, pp. 239–244. SciTePress (2010)

    Google Scholar 

  35. Kuhrmann, M., Tiessler, M.: Crafting a Method Engineering Metamodel – Approach, Methods, Results. TU München, Garching (2014)

    Google Scholar 

  36. Engels, G., Sauer, S.: A meta-method for defining software engineering methods. In: Engels, G., Lewerentz, C., Schäfer, W., Schürr, A., Westfechtel, B. (eds.) Graph Transformations and Model-Driven Engineering. Lecture Notes in Computer Science, vol. 5765, pp. 411–440. Springer, Berlin, Heidelberg (2010). https://doi.org/10.1007/978-3-642-17322-6_18

    Chapter  Google Scholar 

  37. OMG: Unified Modeling Language (OMG UML) - version 2.5.1. Technical report (2017)

    Google Scholar 

  38. Yu, E., Giorgini, P., Maiden, N., Mylopoulos, J. (eds.): Social Modeling for Requirements Engineering. MIT, Cambridge (2011)

    Google Scholar 

  39. Mouratidis, H., Kolp, M., Faulkner, S., Giorgini, P.: A secure architectural description language for agent systems. In: Proceedings of the 4th International Joint Conference on Autonomous Agents and Multiagent Systems, pp. 578–585. ACM, The Netherlands (2005)

    Google Scholar 

  40. Asadi, M., Gröner, G., Mohabbati, B., Gasevic, D.: Goal-oriented modeling and verification of feature-oriented product lines. Softw. Syst. Model. 15(1), 257–279 (2014)

    Article  Google Scholar 

  41. Dalpiaz, F., Franch, X., Horkoff, J.J.C.: iStar 2.0 Language Guide (v3) 2016. https://arxiv.org/pdf/1605.07767v3.pdf. Accessed 14 Oct 2018

  42. Jaqueira, A., Lucena, M., Alencar, F.M.R., Castro, J., Aranha, E.: Using i* models to enrich user stories. In: Proceedings of the 6th International i* Workshop 2013, Valencia, Spain, pp. 55–60. CEUR-WS.org (2013)

    Google Scholar 

  43. Haidar, H., Kolp, M., Wautelet, Y.: Goal-oriented requirement engineering for agile software product lines: an overview. LouRIM Working Paper Series, February 2017. http://hdl.handle.net/2078.1/185846

  44. Leffingwell, D.: Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise. Addison-Wesley Professional, Boston (2011)

    Google Scholar 

  45. Wautelet, Y., Heng, S., Kiv, S., Kolp, M.: User-story driven development of multi-agent systems: a process fragment for agile methods. Comput. Lang. Syst. Struct. 50, 159–176 (2017)

    Google Scholar 

  46. Kolp, M., Do, T., Faulkner, S.: Introspecting agent-oriented design patterns. In: Chang, S.K. (ed.) Handbook of Software Engineering and Knowledge Engineering: Recent Advances: Recent Advances, vol. 3, pp. 151–177. World Scientific Publishing (2005)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hassan Haidar .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Haidar, H., Kolp, M., Wautelet, Y. (2019). An Integrated Requirements Engineering Framework for Agile Software Product Lines. In: van Sinderen, M., Maciaszek, L. (eds) Software Technologies. ICSOFT 2018. Communications in Computer and Information Science, vol 1077. Springer, Cham. https://doi.org/10.1007/978-3-030-29157-0_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-29157-0_6

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-29156-3

  • Online ISBN: 978-3-030-29157-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics