Abstract
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.
All authors have contributed equally to this chapter.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
References
Abowd, G.D.: Beyond weiser: from ubiquitous to collective computing. IEEE Comput. 49(1), 17–23 (2016). http://dx.doi.org/10.1109/MC.2016.22
Alexander, I.: Gore, sore, or what? IEEE Softw. 28(1), 8–10 (2011). http://dx.doi.org/10.1109/MS.2011.7
Alexander, I.F., Maiden, N.: Scenarios, Stories, Use Cases: Through the Systems Development Life-Cycle. Wiley, New York (2005)
Alexander, I.F., Stevens, R.: Writing Better Requirements. Pearson Education, Harlow (2002)
Altran: Reveal tm. http://intelligent-systems.altran.com/fr/technologies/systems-engineering/revealtm.html
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). http://doi.acm.org/10.1145/568760.568894
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). https://doi.org/10.1109/TDSC.2004.2
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). http://dx.doi.org/10.1109/MS.2015.158
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). http://ieeexplore.ieee.org/xpl/mostRecentIssue.jsp?punumber=6887463
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). http://oro.open.ac.uk/45253/
Berander, P., Andrews, A.: Requirements prioritization. In: Aurum, A., Wohlin, C. (eds.) Engineering and Managing Software Requirements, pp. 69–94. Springer, Berlin (2005)
Besnard, P., Hunter, A.: Elements of Argumentation. The MIT Press, Cambridge (2008)
Boehm, B.W.: Verifying and validating software requirements and design specifications. IEEE Softw. 1(1), 75–88 (1984). http://dx.doi.org/10.1109/MS.1984.233702
Boehm, B.W.: A spiral model of software development and enhancement. IEEE Comput. 21(5), 61–72 (1988). http://dx.doi.org/10.1109/2.59
Boehm, B.W., Grünbacher, P., Briggs, R.O.: Developing groupware for requirements negotiation: lessons learned. IEEE Softw. 18(3), 46–55 (2001). http://dx.doi.org/10.1109/52.922725
Bosch, J.: Speed, data, and ecosystems: the future of software engineering. IEEE Softw. 33(1), 82–88 (2016). http://dx.doi.org/10.1109/MS.2016.14
Bradner, S.: Key words for use in RFCs to indicate requirement levels (1997). http://www.ietf.org/rfc/rfc2119.txt
Breaux, T., Antón, A.: Analyzing regulatory rules for privacy and security requirements. IEEE Trans. Softw. Eng. 34(1), 5–20 (2008). https://doi.org/10.1109/TSE.2007.70746
Brooks, F.P. Jr.: No silver bullet essence and accidents of software engineering. Computer 20(4), 10–19 (1987). http://dx.doi.org/10.1109/MC.1987.1663532
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)
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)
Clarke, E.M., Wing, J.M.: Formal methods: state of the art and future directions. ACM Comput. Surv. 28(4), 626–643 (1996)
Cleland-Huang, J., Gotel, O., Zisman, A. (eds.): Software and Systems Traceability. Springer, London (2012). http://dx.doi.org/10.1007/978-1-4471-2239-5
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). http://doi.acm.org/10.1145/2593882.2593891
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)
Dalpiaz, F., Franch, X., Horkoff, J.: istar 2.0 language guide. CoRR abs/1605.07767 (2016). http://arxiv.org/abs/1605.07767
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). http://dx.doi.org/10.1109/RE.2006.17
Denning, P.J.: Software quality. Commun. ACM 59(9), 23–25 (2016). http://doi.acm.org/10.1145/2971327
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)
Dieste, O., Juzgado, N.J.: Systematic review and aggregation of empirical studies on elicitation techniques. IEEE Trans. Softw. Eng. 37(2), 283–304 (2011). http://dx.doi.org/10.1109/TSE.2010.33
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). http://dx.doi.org/10.1016/0004-3702(94)00041-X; http://www.sciencedirect.com/science/article/pii/000437029400041X
Easterbrook, S.: What is requirements engineering? (2004). http://www.cs.toronto.edu/~sme/papers/2004/FoRE-chapter01-v7.pdf
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). https://doi.org/10.1109/RE.2016.21
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). http://dx.doi.org/10.1109/ICSE.2009.5070513
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). https://doi.org/10.1109/ISRE.1995.512555
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). https://doi.org/10.1109/SEAMS.2015.12
Furtado, F., Zisman, A.: Trace++: a traceability approach for agile software engineering. In: Proceedings of the 24th International Requirements Engineering Conference, RE (2016)
Glinz, M.: On non-functional requirements. In: Proceedings of the 15th IEEE International Requirements Engineering Conference, RE, pp. 21–26 (2007). https://doi.org/10.1109/RE.2007.45
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). https://www.ucalgary.ca/mnayebi/files/mnayebi/the-vision-requirements-engineering-in-society.pdf
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). http://doi.ieeecomputersociety.org/10.1109/TSE.2007.70754
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)
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). http://doi.acm.org/10.1145/2950290.2994160
Hosseini, M., Shahri, A., Phalp, K., Ali, R.: Four reference models for transparency requirements in information systems. Requir. Eng. 23, 1–25 (2017)
IEEE Computer Society. Software Engineering Standards Committee and IEEE-SA Standards Board: IEEE recommended practice for software requirements specifications. Technical report, IEEE (1998)
ISO/IEC 9126: Software engineering – product quality – part 1: quality model. Technical report, ISO (2001)
ISO/IEC 25022: Systems and software engineering – systems and software quality requirements and evaluation (square) – measurement of quality in use. Technical report, ISO (2016)
Jackson, M.: Software Requirements & Specifications: A Lexicon of Practice, Principles and Prejudices. ACM Press/Addison-Wesley, New York (1995)
Jackson, M.: Problem Frames: Analyzing and Structuring Software Development Problems. Addison-Wesley Longman, Boston (2001)
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). http://dx.doi.org/10.1007/978-3-540-89762-0_1
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). http://doi.acm.org/10.1145/225014.225016
Jureta, I., Borgida, A., Ernst, N.A., Mylopoulos, J.: The requirements problem for adaptive systems. ACM Trans. Manag. Inf. Syst. 5(3), 17 (2014). http://doi.acm.org/10.1145/2629376
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). http://dx.doi.org/10.1109/RE.2010.38
Karlsson, J., Ryan, K.: A cost-value approach for prioritizing requirements. IEEE Softw. 14(5), 67–74 (1997). http://dx.doi.org/10.1109/52.605933
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)
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). http://dx.doi.org/10.1109/FOSE.2007.19
Laplante, P.A.: Requirements Engineering for Software and Systems. CRC Press, Boca Raton (2013)
Larson, E.: Interoperability of us and nato allied air forces: supporting data and case studies. Technical report 1603, RAND Corporation (2003)
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). http://dl.acm.org/citation.cfm?id=2486866
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). https://doi.org/10.1109/32.317428
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). https://doi.org/10.1109/SYSTEMS.2009.4815806
Limoncelli, T.A.: Automation should be like iron man, not ultron. ACM Queue 13(8), 50 (2015). http://doi.acm.org/10.1145/2838344.2841313
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)
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)
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). https://doi.org/10.1109/ISRE.1993.324825
Lutz, R.R.: Software engineering for space exploration. IEEE Comput. 44(10), 41–46 (2011). https://doi.org/10.1109/MC.2011.264
Maiden, N.A.M.: So, what is requirements work? IEEE Softw. 30(2), 14–15 (2013). http://dx.doi.org/10.1109/MS.2013.35
Maiden, N.A.M., Rugg, G.: ACRE: selecting methods for requirements acquisition. Softw. Eng. J. 11(3), 183–192 (1996). http://dx.doi.org/10.1049/sej.1996.0024
Maiden, N.A.M., Gizikis, A., Robertson, S.: Provoking creativity: imagine what your requirements could be like. IEEE Softw. 21(5), 68–75 (2004). http://dx.doi.org/10.1109/MS.2004.1331305
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). http://doi.acm.org/10.1145/1134512
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)
Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems - Specification. Springer, Berlin (1992)
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)
Martins, L.E.G., Gorschek, T.: Requirements engineering for safety-critical systems: overview and challenges. IEEE Softw. 34(4), 49–57 (2017). https://doi.org/10.1109/MS.2017.94
Maruyama, H.: Machine learning as a programming paradigm and its implications to requirements engineering. In: Asia-Pacific Requirements Engineering Symposium, APRES (2016)
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). http://dx.doi.org/10.1109/RE.2009.9
Mirakhorli, M., Cleland-Huang, J.: Tracing non-functional requirements. In: Software and Systems Traceability, pp. 299–320. Springer, Berlin (2012). http://dx.doi.org/10.1007/978-1-4471-2239-5_14
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). http://dx.doi.org/10.1109/TSE.2005.76
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)
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). http://dx.doi.org/10.1007/s10515-008-0032-x
Niu, N., Easterbrook, S.M.: So, you think you know others’ goals? A repertory grid study. IEEE Softw. 24(2), 53–61 (2007). http://dx.doi.org/10.1109/MS.2007.52
Nuseibeh, B.: Weaving together requirements and architectures. IEEE Comput. 34(3), 115–117 (2001). http://dx.doi.org/10.1109/2.910904
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). http://doi.acm.org/10.1145/336512.336523
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). http://dx.doi.org/10.1109/ICSE.2013.6606609
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)
Parnas, D.L., Madey, J.: Functional documents for computer systems. Sci. Comput. Program. 25(1), 41–61 (1995). http://dx.doi.org/10.1016/0167-6423(95)96871-J
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)
Ramesh, B., Cao, L., Baskerville, R.: Agile requirements engineering practices and challenges: an empirical study. Inf. Syst. J. 20(5), 449–480 (2010). http://dx.doi.org/10.1111/j.1365-2575.2007.00259.x
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). http://dx.doi.org/10.1007/978-3-319-16101-3_22
Robertson, S., Robertson, J.: Mastering the Requirements Process. ACM Press/Addison-Wesley, New York (1999)
Robertson, S., Robertson, J.: Mastering the Requirements Process: Getting Requirements Right. Addison-Wesley, Boston (2012)
Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual. Pearson Higher Education, London (2004)
Rushby, J.: Security requirements specifications: how and what? In: Requirements Engineering for Information Security (SREIS), Indianapolis (2001)
Russo, D., Ciancarini, P.: A proposal for an antifragile software manifesto. Proc. Comput. Sci. 83, 982–987 (2016)
Salifu, M., Yu, Y., Nuseibeh, B.: Specifying monitoring and switching problems in context. In: 15th IEEE International Requirements Engineering Conference (RE 2007) (2007). http://oro.open.ac.uk/10264/
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). https://doi.org/10.1109/RE.2010.21
SECUR-ED, C.: Deliverable d22.1: Interoperability concept. fp7 SECUR-ED EU project (2012). http://www.secur-ed.eu/?page_id=33
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). http://doi.acm.org/10.1145/1988008.1988018
Sommerville, I., Sawyer, P.: Requirements Engineering: A Good Practice Guide, 1st edn. Wiley, New York (1997)
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). http://doi.acm.org/10.1145/1753235.1753263
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)
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). http://doi.acm.org/10.1145/1453101.1453133
van Lamsweerde, A.: Requirements Engineering: From System Goals to UML Models to Software Specifications. Wiley, Hoboken (2009)
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). http://dx.doi.org/10.1109/ISRE.1995.512561
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). http://oro.open.ac.uk/48014/
Wakefield, J.: Microsoft chatbot is taught to swear on twitter. Visited on 30 Mar 2017
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). http://dx.doi.org/10.1007/s00766-010-0101-0
Wiegers, K., Beatty, J.: Software Requirements. Pearson Education, Harlow (2013)
Withall, S.: Software Requirement Patterns, 1st edn. Microsoft Press, Redmond (2007)
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). http://dx.doi.org/10.1109/ISRE.1997.566873
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). http://dx.doi.org/10.1016/j.jss.2015.04.065
Zave, P.: Classification of research efforts in requirements engineering. ACM Comput. Surv. 29(4), 315–321 (1997). http://doi.acm.org/10.1145/267580.267581
Zave, P., Jackson, M.: Four dark corners of requirements engineering. ACM Trans. Softw. Eng. Methodol. 6(1), 1–30 (1997). http://doi.acm.org/10.1145/237432.237434
Zowghi, D., Coulin, C.: Requirements Elicitation: A Survey of Techniques, Approaches, and Tools, pp. 19–46. Springer, Berlin (2005)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this chapter
Cite this chapter
Bennaceur, A., Tun, T.T., Yu, Y., Nuseibeh, B. (2019). Requirements Engineering. In: Cha, S., Taylor, R., Kang, K. (eds) Handbook of Software Engineering. Springer, Cham. https://doi.org/10.1007/978-3-030-00262-6_2
Download citation
DOI: https://doi.org/10.1007/978-3-030-00262-6_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-00261-9
Online ISBN: 978-3-030-00262-6
eBook Packages: Computer ScienceComputer Science (R0)