Requirements Engineering

  • Amel BennaceurEmail author
  • Thein Than Tun
  • Yijun Yu
  • Bashar Nuseibeh


Requirements engineering (RE) aims to ensure that systems meet the needs of their stakeholders including users, sponsors, and customers. Often considered as one of the earliest activities in software engineering, it has developed into a set of activities that touch almost every step of the software development process. In this chapter, we reflect on how the need for RE was first recognised and how its foundational concepts were developed. We present the seminal papers on four main activities of the RE process, namely, (1) elicitation, (2) modelling and analysis, (3) assurance, and (4) management and evolution. We also discuss some current research challenges in the area, including security requirements engineering as well as RE for mobile and ubiquitous computing. Finally, we identify some open challenges and research gaps that require further exploration.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abowd, G.D.: Beyond weiser: from ubiquitous to collective computing. IEEE Comput. 49(1), 17–23 (2016). CrossRefGoogle Scholar
  2. 2.
    Alexander, I.: Gore, sore, or what? IEEE Softw. 28(1), 8–10 (2011). CrossRefGoogle Scholar
  3. 3.
    Alexander, I.F., Maiden, N.: Scenarios, Stories, Use Cases: Through the Systems Development Life-Cycle. Wiley, New York (2005)Google Scholar
  4. 4.
    Alexander, I.F., Stevens, R.: Writing Better Requirements. Pearson Education, Harlow (2002)Google Scholar
  5. 5.
  6. 6.
    Alves, C.F., Finkelstein, A.: Challenges in COTS decision-making: a goal-driven requirements engineering perspective. In: Proceedings of the 14th International Conference on Software Engineering and Knowledge Engineering, SEKE 2002, Ischia, 15–19 July 2002, pp. 789–794 (2002).
  7. 7.
    Avizienis, A., Laprie, J.C., Randell, B., Landwehr, C.: Basic concepts and taxonomy of dependable and secure computing. IEEE Trans. Dependable Secur. Comput. 1(1), 11–33 (2004). CrossRefGoogle Scholar
  8. 8.
    Becker, C., Betz, S., Chitchyan, R., Duboc, L., Easterbrook, S.M., Penzenstadler, B., Seyff, N., Venters, C.C.: Requirements: the key to sustainability. IEEE Softw. 33(1), 56–65 (2016). CrossRefGoogle Scholar
  9. 9.
    Bencomo, N., Cleland-Huang, J., Guo, J., Harrison, R. (eds.): IEEE 1st International Workshop on Artificial Intelligence for Requirements Engineering, AIRE 2014, 26 Aug 2014, Karlskrona. IEEE Computer Society, Washington (2014). Google Scholar
  10. 10.
    Bennaceur, A., Nuseibeh, B.: The many facets of mediation: a requirements-driven approach for trading-off mediation solutions. In: Mistrík, I., Ali, N., Grundy, J., Kazman, R., Schmerl, B. (eds.) Managing Trade-offs in Adaptable Software Architectures. Elsevier, New York (2016). Google Scholar
  11. 11.
    Berander, P., Andrews, A.: Requirements prioritization. In: Aurum, A., Wohlin, C. (eds.) Engineering and Managing Software Requirements, pp. 69–94. Springer, Berlin (2005)CrossRefGoogle Scholar
  12. 12.
    Besnard, P., Hunter, A.: Elements of Argumentation. The MIT Press, Cambridge (2008)CrossRefGoogle Scholar
  13. 13.
    Boehm, B.W.: Verifying and validating software requirements and design specifications. IEEE Softw. 1(1), 75–88 (1984). CrossRefGoogle Scholar
  14. 14.
    Boehm, B.W.: A spiral model of software development and enhancement. IEEE Comput. 21(5), 61–72 (1988). CrossRefGoogle Scholar
  15. 15.
    Boehm, B.W., Grünbacher, P., Briggs, R.O.: Developing groupware for requirements negotiation: lessons learned. IEEE Softw. 18(3), 46–55 (2001). CrossRefGoogle Scholar
  16. 16.
    Bosch, J.: Speed, data, and ecosystems: the future of software engineering. IEEE Softw. 33(1), 82–88 (2016). CrossRefGoogle Scholar
  17. 17.
    Bradner, S.: Key words for use in RFCs to indicate requirement levels (1997).
  18. 18.
    Breaux, T., Antón, A.: Analyzing regulatory rules for privacy and security requirements. IEEE Trans. Softw. Eng. 34(1), 5–20 (2008). CrossRefGoogle Scholar
  19. 19.
    Brooks, F.P. Jr.: No silver bullet essence and accidents of software engineering. Computer 20(4), 10–19 (1987). MathSciNetCrossRefGoogle Scholar
  20. 20.
    Cheng, B.H.C., Atlee, J.M.: Research directions in requirements engineering. In: Proceedings of the Workshop on the Future of Software Engineering, FOSE, pp. 285–303 (2007)Google Scholar
  21. 21.
    Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J., Andersson, J., Becker, B., Bencomo, N., Brun, Y., Cukic, B., Serugendo, G.D.M., Dustdar, S., Finkelstein, A., Gacek, C., Geihs, K., Grassi, V., Karsai, G., Kienle, H.M., Kramer, J., Litoiu, M., Malek, S., Mirandola, R., Müller, H.A., Park, S., Shaw, M., Tichy, M., Tivoli, M., Weyns, D., Whittle, J.: Software engineering for self-adaptive systems: a research roadmap. In: Software Engineering for Self-Adaptive Systems [Outcome of a Dagstuhl Seminar], pp. 1–26 (2009)Google Scholar
  22. 22.
    Clarke, E.M., Wing, J.M.: Formal methods: state of the art and future directions. ACM Comput. Surv. 28(4), 626–643 (1996)CrossRefGoogle Scholar
  23. 23.
    Cleland-Huang, J., Gotel, O., Zisman, A. (eds.): Software and Systems Traceability. Springer, London (2012). Google Scholar
  24. 24.
    Cleland-Huang, J., Gotel, O., Hayes, J.H., Mäder, P., Zisman, A.: Software traceability: trends and future directions. In: Proceedings of the Future of Software Engineering, FOSE@ICSE, pp. 55–69 (2014).
  25. 25.
    Crook, R., Ince, D.C., Lin, L., Nuseibeh, B.: Security requirements engineering: when anti-requirements hit the fan. In: 10th Anniversary IEEE Joint International Conference on Requirements Engineering (RE 2002), Essen, 9–13 Sept 2002, pp. 203–205. IEEE Computer Society, Washington (2002)Google Scholar
  26. 26.
    Dalpiaz, F., Franch, X., Horkoff, J.: istar 2.0 language guide. CoRR abs/1605.07767 (2016).
  27. 27.
    Davis, A.M., Tubío, Ó.D., Hickey, A.M., Juzgado, N.J., Moreno, A.M.: Effectiveness of requirements elicitation techniques: empirical results derived from a systematic review. In: Proceedings of the 14th IEEE International Conference on Requirements Engineering, RE, pp. 176–185 (2006).
  28. 28.
    Denning, P.J.: Software quality. Commun. ACM 59(9), 23–25 (2016). CrossRefGoogle Scholar
  29. 29.
    Dey, A.K., Abowd, G.D., Salber, D.: A conceptual framework and a toolkit for supporting the rapid prototyping of context-aware applications. Hum.-Comput. Interact. 16(2), 97–166 (2001)CrossRefGoogle Scholar
  30. 30.
    Dieste, O., Juzgado, N.J.: Systematic review and aggregation of empirical studies on elicitation techniques. IEEE Trans. Softw. Eng. 37(2), 283–304 (2011). Scholar
  31. 31.
    Dung, P.M.: On the acceptability of arguments and its fundamental role in nonmonotonic reasoning, logic programming and n-person games. Artif. Intell. 77(2), 321–357 (1995).; MathSciNetzbMATHCrossRefGoogle Scholar
  32. 32.
    Easterbrook, S.: What is requirements engineering? (2004).
  33. 33.
    Ebert, C., Duarte, C.H.C.: Requirements engineering for the digital transformation: industry panel. In: 2016 IEEE 24th International Requirements Engineering Conference (RE), pp. 4–5 (2016).
  34. 34.
    Epifani, I., Ghezzi, C., Mirandola, R., Tamburrelli, G.: Model evolution by run-time parameter adaptation. In: Proceedings of the 31st International Conference on Software Engineering, ICSE ‘09, pp. 111–121. IEEE Computer Society, Washington (2009). Scholar
  35. 35.
    Fickas, S., Feather, M.S.: Requirements monitoring in dynamic environments. In: Proceedings of the Second IEEE International Symposium on Requirements Engineering, 1995, pp. 140–147 (1995). Google Scholar
  36. 36.
    Filieri, A., Maggio, M., Angelopoulos, K., D’Ippolito, N., Gerostathopoulos, I., Hempel, A.B., Hoffmann, H., Jamshidi, P., Kalyvianaki, E., Klein, C., Krikava, F., Misailovic, S., Papadopoulos, A.V., Ray, S., Sharifloo, A.M., Shevtsov, S., Ujma, M., Vogel, T.: Software engineering meets control theory. In: 2015 IEEE/ACM 10th International Symposium on Software Engineering for Adaptive and Self-managing Systems, pp. 71–82 (2015).
  37. 37.
    Furtado, F., Zisman, A.: Trace++: a traceability approach for agile software engineering. In: Proceedings of the 24th International Requirements Engineering Conference, RE (2016)Google Scholar
  38. 38.
    Glinz, M.: On non-functional requirements. In: Proceedings of the 15th IEEE International Requirements Engineering Conference, RE, pp. 21–26 (2007).
  39. 39.
    Guenther Ruhe, M.N., Ebert, C.: The vision: requirements engineering in society. In: Proceedings of the 25th International Requirements Engineering Conference - Silver Jubilee Track, RE (2017).
  40. 40.
    Haley, C.B., Laney, R.C., Moffett, J.D., Nuseibeh, B.: Security requirements engineering: a framework for representation and analysis. IEEE Trans. Softw. Eng. 34(1), 133–153 (2008). CrossRefGoogle Scholar
  41. 41.
    Heitmeyer, C.L., Labaw, B., Jeffords, R.: A benchmark for comparing different approaches for specifying and verifying real-time systems. In: Proceedings of the 10th International Workshop on Real-Time Operating Systems and Software (1993)Google Scholar
  42. 42.
    Herbsleb, J.D.: Building a socio-technical theory of coordination: why and how (outstanding research award). In: Proceedings of the 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, FSE 2016, Seattle, 13–18 Nov 2016, pp. 2–10 (2016).
  43. 43.
    Hosseini, M., Shahri, A., Phalp, K., Ali, R.: Four reference models for transparency requirements in information systems. Requir. Eng. 23, 1–25 (2017)Google Scholar
  44. 44.
    IEEE Computer Society. Software Engineering Standards Committee and IEEE-SA Standards Board: IEEE recommended practice for software requirements specifications. Technical report, IEEE (1998)Google Scholar
  45. 45.
    ISO/IEC 9126: Software engineering – product quality – part 1: quality model. Technical report, ISO (2001)Google Scholar
  46. 46.
    ISO/IEC 25022: Systems and software engineering – systems and software quality requirements and evaluation (square) – measurement of quality in use. Technical report, ISO (2016)Google Scholar
  47. 47.
    Jackson, M.: Software Requirements & Specifications: A Lexicon of Practice, Principles and Prejudices. ACM Press/Addison-Wesley, New York (1995)Google Scholar
  48. 48.
    Jackson, M.: Problem Frames: Analyzing and Structuring Software Development Problems. Addison-Wesley Longman, Boston (2001)Google Scholar
  49. 49.
    Jackson, M.: The name and nature of software engineering. In: Advances in Software Engineering: Lipari Summer School 2007. Revised Tutorial Lectures in Advances in Software Engineering, pp. 1–38. Springer, Berlin (2007).
  50. 50.
    Jackson, M., Zave, P.: Deriving specifications from requirements: an example. In: Proceedings of the 17th International Conference on Software Engineering, ICSE ‘95, pp. 15–24. ACM, New York (1995).
  51. 51.
    Jureta, I., Borgida, A., Ernst, N.A., Mylopoulos, J.: The requirements problem for adaptive systems. ACM Trans. Manag. Inf. Syst. 5(3), 17 (2014). CrossRefGoogle Scholar
  52. 52.
    Kang, E., Jackson, D.: Dependability arguments with trusted bases. In: Proceedings of the 18th IEEE International Requirements Engineering Conference, RE ‘10, pp. 262–271. IEEE Computer Society, Washington (2010).
  53. 53.
    Karlsson, J., Ryan, K.: A cost-value approach for prioritizing requirements. IEEE Softw. 14(5), 67–74 (1997). CrossRefGoogle Scholar
  54. 54.
    Kelly, T., Weaver, R.: The goal structuring notation–a safety argument notation. In: Proceedings of the Dependable Systems and Networks 2004 Workshop on Assurance Cases (2004)Google Scholar
  55. 55.
    Kramer, J., Magee, J.: Self-managed systems: an architectural challenge. In: Proceedings of the Future of Software Engineering track, FOSE@ICSE, pp. 259–268 (2007). Scholar
  56. 56.
    Laplante, P.A.: Requirements Engineering for Software and Systems. CRC Press, Boca Raton (2013)CrossRefGoogle Scholar
  57. 57.
    Larson, E.: Interoperability of us and nato allied air forces: supporting data and case studies. Technical report 1603, RAND Corporation (2003)Google Scholar
  58. 58.
    Letier, E., Heaven, W.: Requirements modelling by synthesis of deontic input-output automata. In: 35th International Conference on Software Engineering, ICSE ‘13, San Francisco, 18–26 May 2013, pp. 592–601 (2013).
  59. 59.
    Leveson, N.G., Heimdahl, M.P.E., Hildreth, H., Reese, J.D.: Requirements specification for process-control systems. IEEE Trans. Softw. Eng. 20(9), 684–707 (1994). CrossRefGoogle Scholar
  60. 60.
    Lewis, G.A., Morris, E., Place, P., Simanta, S., Smith, D.B.: Requirements engineering for systems of systems. In: 2009 3rd Annual IEEE Systems Conference, pp. 247–252 (2009).
  61. 61.
    Limoncelli, T.A.: Automation should be like iron man, not ultron. ACM Queue 13(8), 50 (2015). Google Scholar
  62. 62.
    Lin, L., Nuseibeh, B., Ince, D.C., Jackson, M.: Using abuse frames to bound the scope of security problems. In: 12th IEEE International Conference on Requirements Engineering (RE 2004), Kyoto, 6–10 Sept 2004, pp. 354–355 (2004)Google Scholar
  63. 63.
    Liu, L., Yu, E.S.K., Mylopoulos, J.: Security and privacy requirements analysis within a social setting. In: 11th IEEE International Conference on Requirements Engineering (RE 2003), 8–12 Sept 2003, Monterey Bay, pp. 151–161 (2003)Google Scholar
  64. 64.
    Lutz, R.R.: Analyzing software requirements errors in safety-critical, embedded systems. In: Proceedings of IEEE International Symposium on Requirements Engineering, RE, pp. 126–133 (1993).
  65. 65.
    Lutz, R.R.: Software engineering for space exploration. IEEE Comput. 44(10), 41–46 (2011). CrossRefGoogle Scholar
  66. 66.
    Maiden, N.A.M.: So, what is requirements work? IEEE Softw. 30(2), 14–15 (2013). CrossRefGoogle Scholar
  67. 67.
    Maiden, N.A.M., Rugg, G.: ACRE: selecting methods for requirements acquisition. Softw. Eng. J. 11(3), 183–192 (1996). Scholar
  68. 68.
    Maiden, N.A.M., Gizikis, A., Robertson, S.: Provoking creativity: imagine what your requirements could be like. IEEE Softw. 21(5), 68–75 (2004). CrossRefGoogle Scholar
  69. 69.
    Maiden, N.A.M., Robertson, S., Robertson, J.: Creative requirements: invention and its role in requirements engineering. In: Proceedings of the 28th International Conference on Software Engineering, ICSE, pp. 1073–1074 (2006).
  70. 70.
    Mancini, C., Rogers, Y., Bandara, A.K., Coe, T., Jedrzejczyk, L., Joinson, A.N., Price, B.A., Thomas, K., Nuseibeh, B.: Contravision: exploring users’ reactions to futuristic technology. In: Proceedings of the 28th International Conference on Human Factors in Computing Systems, CHI 2010, Atlanta, 10–15 April 2010, pp. 153–162 (2010)Google Scholar
  71. 71.
    Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems - Specification. Springer, Berlin (1992)zbMATHCrossRefGoogle Scholar
  72. 72.
    Marca, D., Harandi: Problem set for the fourth international workshop on software specification and design. In: Proceedings of the 4th International Workshop on Software Specification and Design (1987)Google Scholar
  73. 73.
    Martins, L.E.G., Gorschek, T.: Requirements engineering for safety-critical systems: overview and challenges. IEEE Softw. 34(4), 49–57 (2017). CrossRefGoogle Scholar
  74. 74.
    Maruyama, H.: Machine learning as a programming paradigm and its implications to requirements engineering. In: Asia-Pacific Requirements Engineering Symposium, APRES (2016)Google Scholar
  75. 75.
    Mavin, A., Wilkinson, P., Harwood, A., Novak, M.: Easy approach to requirements syntax (EARS). In: Proceedings of the 17th IEEE International Requirements Engineering Conference, RE, pp. 317–322 (2009).
  76. 76.
    Mirakhorli, M., Cleland-Huang, J.: Tracing non-functional requirements. In: Software and Systems Traceability, pp. 299–320. Springer, Berlin (2012). Google Scholar
  77. 77.
    Moon, M., Yeom, K., Chae, H.S.: An approach to developing domain requirements as a core asset based on commonality and variability analysis in a product line. IEEE Trans. Softw. Eng. 31(7), 551–569 (2005). Scholar
  78. 78.
    Nhlabatsi, A., Nuseibeh, B., Yu, Y.: Security requirements engineering for evolving software systems: a survey. Int. J. Secur. Softw. Eng. 1(1), 54–73 (2010)CrossRefGoogle Scholar
  79. 79.
    Nitto, E.D., Ghezzi, C., Metzger, A., Papazoglou, M.P., Pohl, K.: A journey to highly dynamic, self-adaptive service-based applications. Autom. Softw. Eng. 15(3–4), 313–341 (2008). CrossRefGoogle Scholar
  80. 80.
    Niu, N., Easterbrook, S.M.: So, you think you know others’ goals? A repertory grid study. IEEE Softw. 24(2), 53–61 (2007). CrossRefGoogle Scholar
  81. 81.
    Nuseibeh, B.: Weaving together requirements and architectures. IEEE Comput. 34(3), 115–117 (2001). CrossRefGoogle Scholar
  82. 82.
    Nuseibeh, B., Easterbrook, S.M.: Requirements engineering: a roadmap. In: Proceedings of the Future of Software Engineering Track at the 22nd International Conference on Software Engineering, Future of Software Engineering Track, FOSE, pp. 35–46 (2000).
  83. 83.
    Omoronyia, I., Cavallaro, L., Salehie, M., Pasquale, L., Nuseibeh, B.: Engineering adaptive privacy: on the role of privacy awareness requirements. In: 35th International Conference on Software Engineering, ICSE ‘13, San Francisco, 18–26 May 2013, pp. 632–641 (2013). Scholar
  84. 84.
    Paolucci, M., Kawamura, T., Payne, T.R., Sycara, K.P.: Semantic matching of web services capabilities. In: Proceedings of the International Semantic Web Conference, ISWC, pp. 333–347 (2002)zbMATHCrossRefGoogle Scholar
  85. 85.
    Parnas, D.L., Madey, J.: Functional documents for computer systems. Sci. Comput. Program. 25(1), 41–61 (1995). CrossRefGoogle Scholar
  86. 86.
    Pohl, K., Assenova, P., Dömges, R., Johannesson, P., Maiden, N., Plihon, V., Schmitt, J.R., Spanoudakis, G.: Applying ai techniques to requirements engineering: the nature prototype. In: Proceedings of the ICSE-Workshop on Research Issues in the Intersection Between Software Engineering and Artificial Intelligence (1994)Google Scholar
  87. 87.
    Ramesh, B., Cao, L., Baskerville, R.: Agile requirements engineering practices and challenges: an empirical study. Inf. Syst. J. 20(5), 449–480 (2010). CrossRefGoogle Scholar
  88. 88.
    Riegel, N., Dörr, J.: A systematic literature review of requirements prioritization criteria. In: Proceedings of the 21st International Working Conference on Requirements Engineering: Foundation for Software Quality, REFSQ, pp. 300–317 (2015). Google Scholar
  89. 89.
    Robertson, S., Robertson, J.: Mastering the Requirements Process. ACM Press/Addison-Wesley, New York (1999)Google Scholar
  90. 90.
    Robertson, S., Robertson, J.: Mastering the Requirements Process: Getting Requirements Right. Addison-Wesley, Boston (2012)Google Scholar
  91. 91.
    Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual. Pearson Higher Education, London (2004)Google Scholar
  92. 92.
    Rushby, J.: Security requirements specifications: how and what? In: Requirements Engineering for Information Security (SREIS), Indianapolis (2001)Google Scholar
  93. 93.
    Russo, D., Ciancarini, P.: A proposal for an antifragile software manifesto. Proc. Comput. Sci. 83, 982–987 (2016)CrossRefGoogle Scholar
  94. 94.
    Salifu, M., Yu, Y., Nuseibeh, B.: Specifying monitoring and switching problems in context. In: 15th IEEE International Requirements Engineering Conference (RE 2007) (2007).
  95. 95.
    Sawyer, P., Bencomo, N., Whittle, J., Letier, E., Finkelstein, A.: Requirements-aware systems: a research agenda for re for self-adaptive systems. In: 2010 18th IEEE International Requirements Engineering Conference, pp. 95–103 (2010).
  96. 96.
    SECUR-ED, C.: Deliverable d22.1: Interoperability concept. fp7 SECUR-ED EU project (2012).
  97. 97.
    Silva Souza, V.E., Lapouchnian, A., Robinson, W.N., Mylopoulos, J.: Awareness requirements for adaptive systems. In: Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS ‘11, pp. 60–69. ACM, New York (2011).
  98. 98.
    Sommerville, I., Sawyer, P.: Requirements Engineering: A Good Practice Guide, 1st edn. Wiley, New York (1997)zbMATHGoogle Scholar
  99. 99.
    Tun, T.T., Boucher, Q., Classen, A., Hubaux, A., Heymans, P.: Relating requirements and feature configurations: a systematic approach. In: Proceedings of the 13th International Conference on Software Product Lines, SPLC, pp. 201–210 (2009). Scholar
  100. 100.
    van Lamsweerde, A.: Elaborating security requirements by construction of intentional anti-models. In: Finkelstein, A., Estublier, J., Rosenblum, D.S. (eds.) 26th International Conference on Software Engineering (ICSE 2004), Edinburgh, 23–28 May 2004, pp. 148–157. IEEE Computer Society, Washington (2004)Google Scholar
  101. 101.
    van Lamsweerde, A.: Requirements engineering: from craft to discipline. In: Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of Software Engineering, 2008, Atlanta, 9–14 Nov 2008, pp. 238–249 (2008).
  102. 102.
    van Lamsweerde, A.: Requirements Engineering: From System Goals to UML Models to Software Specifications. Wiley, Hoboken (2009)Google Scholar
  103. 103.
    van Lamsweerde, A., Darimont, R., Massonet, P.: Goal-directed elaboration of requirements for a meeting scheduler: problems and lessons learnt. In: Proceedings of the 2nd IEEE International Symposium on Requirements Engineering, RE, pp. 194–203 (1995). Scholar
  104. 104.
    Viana, T., Bandara, A., Zisman, A.: Towards a framework for managing inconsistencies in systems of systems. In: Proceedings of the Colloquium on Software-intensive Systems-of-Systems at 10th European Conference on Software Architecture (2016). Scholar
  105. 105.
    Wakefield, J.: Microsoft chatbot is taught to swear on twitter. Visited on 30 Mar 2017Google Scholar
  106. 106.
    Whittle, J., Sawyer, P., Bencomo, N., Cheng, B.H.C., Bruel, J.M.: Relax: a language to address uncertainty in self-adaptive systems requirement. Requir. Eng. 15(2), 177–196 (2010). CrossRefGoogle Scholar
  107. 107.
    Wiegers, K., Beatty, J.: Software Requirements. Pearson Education, Harlow (2013)Google Scholar
  108. 108.
    Withall, S.: Software Requirement Patterns, 1st edn. Microsoft Press, Redmond (2007)Google Scholar
  109. 109.
    Yu, E.S.K.: Towards modeling and reasoning support for early-phase requirements engineering. In: 3rd IEEE International Symposium on Requirements Engineering (RE’97), Annapolis, 5–8 Jan 1997, pp. 226–235. IEEE Computer Society, Washington (1997). Scholar
  110. 110.
    Yu, Y., Franqueira, V.N.L., Tun, T.T., Wieringa, R., Nuseibeh, B.: Automated analysis of security requirements through risk-based argumentation. J. Syst. Softw. 106, 102–116 (2015). CrossRefGoogle Scholar
  111. 111.
    Zave, P.: Classification of research efforts in requirements engineering. ACM Comput. Surv. 29(4), 315–321 (1997). CrossRefGoogle Scholar
  112. 112.
    Zave, P., Jackson, M.: Four dark corners of requirements engineering. ACM Trans. Softw. Eng. Methodol. 6(1), 1–30 (1997). CrossRefGoogle Scholar
  113. 113.
    Zowghi, D., Coulin, C.: Requirements Elicitation: A Survey of Techniques, Approaches, and Tools, pp. 19–46. Springer, Berlin (2005)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  • Amel Bennaceur
    • 1
    Email author
  • Thein Than Tun
    • 1
  • Yijun Yu
    • 1
  • Bashar Nuseibeh
    • 1
    • 2
  1. 1.The Open UniversityMilton KeynesUK
  2. 2.Lero The Irish Software Research CentreLimerickIreland

Personalised recommendations