Requirements Elicitation: A Survey of Techniques, Approaches, and Tools

  • Didar Zowghi
  • Chad Coulin

Abstract

Requirements elicitation is the process of seeking, uncovering, acquiring, and elaborating requirements for computer based systems. It is generally understood that requirements are elicited rather than just captured or collected. This implies there are discovery, emergence, and development elements in the elicitation process. Requirements elicitation is a complex process involving many activities with a variety of available techniques, approaches, and tools for performing them. The relative strengths and weaknesses of these determine when each is appropriate depending on the context and situation. The objectives of this chapter are to present a comprehensive survey of important aspects of the techniques, approaches, and tools for requirements elicitation, and examine the current issues, trends, and challenges faced by researchers and practitioners in this field.

Keywords

Requirements Elicitation Techniques Approaches Tools Issues Challenges Trends Survey 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Agarwal R, Tanniru, MR (1990) Knowledge acquisition using structured interviewing: An empirical investigation. Journal of Management Information Systems, 7(1): 123–140Google Scholar
  2. 2.
    Akao Y (1995) Quality function deployment: Integrating customer requirements into product design. Productivity press: Cambridge, MAGoogle Scholar
  3. 3.
    Alexander IF, Stevens R (2002) Writing better requirements. Addison Wesley, Great BritainGoogle Scholar
  4. 4.
    Ball LJ, Ormerod TC (2000) Putting ethnography to work: The case for a cognitive ethnography of design. International Journal of Human—Computer Studies, 53(1): 147–168Google Scholar
  5. 5.
    Beck K, Cunningham W (1989) A laboratory for teaching object-oriented thinking. In: Proceedings of the conference on object-oriented programming systems languages and applications, October 1–6, New Orleans, LA, pp. 1–6Google Scholar
  6. 6.
    Beyer HR, Holtzblatt K (1995) Apprenticing with the customer. Communications of the ACM, 38(5): 45–52CrossRefGoogle Scholar
  7. 7.
    Bostrum RP (1989) Successful application of communication techniques to improve the systems development process. Information and Management, 16(5): 279–295Google Scholar
  8. 8.
    Bubenko JA, Jr., Wangler B (1993) Objectives driven capture of business rules and of information systems requirements. In: Proceedings of the international conference on systems, man and cybernetics, October 17–20, Le Touquet, France, pp. 670–677Google Scholar
  9. 9.
    Carlshamre P, Karlsson J (1996) A usability-oriented approach to requirements engineering. In: Proceedings of the 2nd International conference on Requirements Engineer-ing, April 15–18, Colorado Springs, CO, pp. 145–152Google Scholar
  10. 10.
    Checkland P, Scholes J (1990) Soft systems methodology in action. John Wiley & Sons: New York, NYGoogle Scholar
  11. 11.
    Christel MG, Kang KC (1992) Issues in requirements elicitation. Carnegie Mellon University Technical report, CMU/SEI-92-TR-012Google Scholar
  12. 12.
    Cockburn A (2001) Writing effective use cases. Addison Wesley: Reading, MAGoogle Scholar
  13. 13.
    Constantine L, Lockwood LAD (1999) Software for use: A practical guide to the models and methods of usage-centered design. Addison Wesley: Reading, MAGoogle Scholar
  14. 14.
    Coulin C, Zowghi D (2004) Requirements elicitation for complex systems: Theory and practice. In: Requirements Engineering for Socio-Technical Systems, Mate JL, Silva A (Eds.), Idea Group: USAGoogle Scholar
  15. 15.
    CREWS, http://sunsite.informatik.rwth-aachen.de/CREWS/, Accessed 15 November 2004Google Scholar
  16. 16.
    Dardenne A, van Lamsweerde A, Fickas S (1993) Goal-directed requirements acquisition. Science of Computer Programming, 20(1–2): 3–50Google Scholar
  17. 17.
    Davis AM (1994) Software requirements: Analysis and specification. Prentice Hall: New JerseyGoogle Scholar
  18. 18.
    Davis AM (2004) Just enough requirements management: Where marketing and development meet. Dorset House: New YorkGoogle Scholar
  19. 19.
    DeMarco T, Plauger PJ (1979) Structured analysis and system specification. Prentice Hall, New York, NYGoogle Scholar
  20. 20.
    Feblowitz M, Greenspan S, Reubenstein H, Walford R (1996) ACME/PRIME: Requirements acquisition for process-driven systems. In: Proceedings of the 8th International workshop on software specification and design, March 22–23, Paderborn, Germany, pp. 36–45Google Scholar
  21. 21.
    Foddy W (1994) Constructing questions for interviews and questionnaires. Cambridge University Press, CambridgeGoogle Scholar
  22. 22.
    Gause DC, Weinberg GM (1989) Exploring requirements: Quality before design. Dorset House, New YorkGoogle Scholar
  23. 23.
    Goguen JA, Linde C (1993) Techniques for requirements elicitation. In: Proceedings of the IEEE International symposium on Requirements Engineering, January 4–6, San Diego, CA, pp. 152–164Google Scholar
  24. 24.
    Goldin L, Berry DM (1994) AbstFinder: A prototype natural language text abstraction finder for use in requirements elicitation. Automated Software Engineering 4(4): 375–412Google Scholar
  25. 25.
    Gottesdiener E (2002) Requirements by collaboration. Addison Wesley: Boston, MAGoogle Scholar
  26. 26.
    Haumer P, Pohl K, Weidenhaupt K (1998) Requirements elicitation and validation with real world scenes. IEEE transactions on Software Engineering, 24(12): 1036–1054CrossRefGoogle Scholar
  27. 27.
    Herela D, Greenberg S (1998) Using a groupware space for distributed requirements engineering. In: Proceedings of the 7th workshop on enabling technologies: Infrastructure for collaborative enterprises, June 17–19, Stanford, CA, pp. 57–62Google Scholar
  28. 28.
    Hickey AM, Davis AM (2002) The role of requirements elicitation techniques in achieving software quality. In: Proceedings of the 8th International workshop of requirements engineering: Foundation for software quality, September 9–10, Essen, GermanyGoogle Scholar
  29. 29.
    Hickey AM, Davis AM (2003) Elicitation technique selection: How do experts do it? In: Proceedings of the 11th IEEE International requirements engineering conference, Sep-tember 8–12, Monterey Bay, CA, pp. 169–178Google Scholar
  30. 30.
    Hinkle D (1965) The change of personal constructs from the viewpoint of a theory of implications. Doctoral Dissertation, Ohio State University, USAGoogle Scholar
  31. 31.
    Hofmann HF, Lehner F, (2001) Requirements engineering as a success factor in software projects. IEEE Software, 18(4): 58–66CrossRefGoogle Scholar
  32. 32.
    Holtzblatt K, Beyer HR (1995) Requirements gathering: The human factor. Communications of ACM, 38(5): 30–32CrossRefGoogle Scholar
  33. 33.
    IEEE (1998) IEEE Std 830-1998 Software Requirements Specification, The Institute of Electrical and Electronics Engineers, Inc. 345 East 47th Street, New York, NY 10017-2394, USAGoogle Scholar
  34. 34.
    Jackson M (1995) The world and the machine. In: Proceedings of the 17th IEEE International conference on software engineering, April 24–28, Seattle, WA, pp. 283–292Google Scholar
  35. 35.
    Jackson M (2000) Problem frames: Analyzing and structuring software development problems. Addison Wesley: Boston, MAGoogle Scholar
  36. 36.
    Jones C (1996) Applied software measurement: Assuring productivity and quality. McGraw-Hill: New YorkGoogle Scholar
  37. 37.
    Kaufman LD, Thebaut S, Interrante MF (1989) System modeling for scenario-based requirements engineering. SERC Technical Report, SERC-TR-33-FGoogle Scholar
  38. 38.
    Kelly G (1955) The psychology of personal constructs, Norton, New YorkGoogle Scholar
  39. 39.
    Kotonya G, Sommerville I (1998) Requirements engineering: Processes and techniques, John Wiley & Sons, Great BritainGoogle Scholar
  40. 40.
    Krueger RA (1994) Focus groups: A practical guide for applied research, Sage, Thousand Oaks, CAGoogle Scholar
  41. 41.
    Loucopoulos P, Karakostas V (1995) Systems requirements engineering, McGraw-Hill: LondonGoogle Scholar
  42. 42.
    Macaulay LA (1993) Requirements as a cooperative activity. In: Proceedings of the IEEE Symposium on Requirements Engineering, January 4–6, San Diego, CA, pp. 174–181Google Scholar
  43. 43.
    Maiden N, Gizikis A, Robertson S, (2004) Provoking creativity: Imagine what your requirements could be like. IEEE Software, 21(5): 68–75CrossRefGoogle Scholar
  44. 44.
    Martin RC (2003) Agile software development: Principles, patterns and practices, Prentice Hall: Upper Saddle RiverGoogle Scholar
  45. 45.
    McGraw KL, Harbison-Briggs K (1989) Knowledge acquisition: Principles and guidelines, Prentice Hall: New JerseyGoogle Scholar
  46. 46.
    Nielsen J, Clemmensen T, Yssing C (2002) Getting access to what goes on in people’s heads: Reflections on the think-aloud technique. In: Proceedings of the 2nd Nordic Con-ference on Human-Computer Interaction, October 19–23, Aarhus, Denmark, pp. 101–110Google Scholar
  47. 47.
    Nuseibeh B, Finkelstein A, Kramer J (1996) Method engineering for multi-perspective software development. Information and Software Technology Journal, 38(4): 267–274Google Scholar
  48. 48.
    Nuseibeh B, Easterbrook S (2000) Requirements engineering: A roadmap. In: Proceedings of the conference on the future of software engineering, June 4–11, Limerick, Ireland, pp. 35–46Google Scholar
  49. 49.
    OPEN Process Framework, http://www.donald-firesmith.com/, Accessed 15 November 2004Google Scholar
  50. 50.
    Osborn AF (1979) Applied imagination. Charles Scribner’s Sons: New YorkGoogle Scholar
  51. 51.
    Potts C, Takahashi K, Anton AI (1994) Inquiry-based requirements analysis. IEEE Software, 11(2): 21–32CrossRefGoogle Scholar
  52. 52.
    Reubenstein H, Waters R (1991) The requirements apprentice: Automated assistance for requirements acquisition. IEEE Transactions on Software Engineering, 17(3): 226–240CrossRefGoogle Scholar
  53. 53.
    Richardson J, Ormerod TC, Shepherd A (1998) The role of task analysis in capturing requirements for interface design. Interacting with Computers, 9(4): 367–384CrossRefGoogle Scholar
  54. 54.
    Robertson S, Robertson J (1999) Mastering the requirements process, Addison Wesley: Great BritainGoogle Scholar
  55. 55.
    Rolland C, Souveyet C, Ben Achour C (1998) Guiding goal modeling using scenarios. IEEE Transactions on Software Engineering, 24(12): 1055–1071CrossRefGoogle Scholar
  56. 56.
    Scenario Plus, http://www.scenarioplus.org.uk/, Accessed 15 November 2004Google Scholar
  57. 57.
    Siddiqi J, Shekaran C (1996) Requirements engineering: The emerging wisdom. IEEE Software, 13(2): 15–19CrossRefGoogle Scholar
  58. 58.
    Sommerville I, Sawyer P (1997) Requirements engineering: A good practice guide, John Wiley & Sons, Great BritainGoogle Scholar
  59. 59.
    Sommerville I, Sawyer P, Viller S (1998) Viewpoints for requirements elicitation: A practical approach. In: Proceedings of the IEEE International Conference on Requirements Engineering, April 6–10, Colorado Springs, CO, pp. 74–81Google Scholar
  60. 60.
    Sommerville I (2001) Software engineering. 6th edition, Addison Wesley, USAGoogle Scholar
  61. 61.
    Sutcliffe A, Maiden N (1998) The domain theory for requirements engineering. IEEE Transactions on Software Engineering, 24(3): 174–196CrossRefGoogle Scholar
  62. 62.
    Taylor-Cummings A (1998) Bridging the user-IS gap: A study of major systems projects. Journal of Information Technology, 13(1): 29–54CrossRefGoogle Scholar
  63. 63.
    Weatherall A (1998) Creative problem solving using Group Systems. In: Proceedings of the 31st Hawaii International Conference on System Sciences, January 6–9, Hawaii, 1, pp. 588–595Google Scholar
  64. 64.
    Wood D, Christel M, Stevens SM (1994) A multimedia approach to requirements capture and modeling. In: Proceedings of the 1st International Conference on Requirements Engineering, April 18–22, Colorado Springs, CO, pp. 53–56Google Scholar
  65. 65.
    Wood J, Silver D (1995) Joint application development. John Wiley & Sons, New YorkGoogle Scholar
  66. 66.
    Yourdon E (1989) Modern structured analysis. Prentice Hall, Englewood Cliffs, NJGoogle Scholar
  67. 67.
    Yu ESK (1997) Towards modeling and reasoning support for early-phase requirements Engineering. In: Proceedings of the 3rd IEEE International Symposium on Requirements Engineering, January 5–8, Washington, D.C, pp. 226–235Google Scholar
  68. 68.
    Zave P, Jackson M (1997) Four dark corners of requirements engineering. ACM Transactions on Software Engineering and Methodology, 6(1): 1–30CrossRefGoogle Scholar
  69. 69.
    Zowghi D (1999) A logic-based framework for the management of changing software requirements. Doctoral Dissertation, Macquarie University, AustraliaGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Didar Zowghi
  • Chad Coulin

There are no affiliations available

Personalised recommendations