Skip to main content

An Introduction to Requirements Knowledge

  • Chapter
  • First Online:
Book cover Managing Requirements Knowledge

Abstract

Requirements represent a verbalisation of decision alternatives on the functionality and quality of a system. Engineering, planning, and implementing requirements are collaborative, problem-solving activities, where stakeholders consume and produce considerable amounts of knowledge. Managing requirements knowledge is about efficiently identifying, accessing, externalising, and sharing this knowledge by and to all stakeholders, including analysts, developers, and users. This chapter introduces five foundations of managing requirements knowledge, which are discussed in the book parts. First, identifying requirements knowledge aims at externalising tacit knowledge such as rationale or presuppositions. Second, representing requirements knowledge targets an efficient information access and artefact reuse within and between projects. Third, sharing requirements knowledge improves stakeholders’ collaboration and ensures that their experiences do not get lost. Fourth, reasoning about requirements and their interdependencies aims at detect inconsistencies and deriving new knowledge. Finally, intelligent tool support reduces the overhead to manage requirements knowledge.

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 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.00
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover 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. Bruegge B, Dutoit A (2010) Object-oriented software engineering using UML, Patterns, and Java, vol 3. Prentice Hall, Upper Saddle River

    Google Scholar 

  2. Kang K, Cohen S, Hess J, Nowak W, Peterson S (1990) Feature-oriented domain analysis (FODA) feasibility study. Technical report, CMU/SEI-90-TR-21. Software Engineering Institute, Carnegie Mellon University, Pittsburgh

    Google Scholar 

  3. Institute of Electrical and Electronic Engineers (1990) IEEE standard glossary of software engineering terminology (IEEE Std 610.12-1990). Institute of Electrical and Electronics Engineers, New York

    Google Scholar 

  4. Clements P, Northrop L (2006) A framework for software product line practice-version 4.2 (2006). Carnegie Mellon, Software Engineering Institute, Pittsburgh. http://www.sei.cmu.edu/prodvolnuctlines/framework.html. Last visited Nov 2012

  5. Davis A (2003) The art of requirements triage. IEEE Comput 36(3):42–49

    Article  Google Scholar 

  6. Sommerville I, Sawyer P (1997) Requirements engineering: a good practice guide. Wiley, New York

    MATH  Google Scholar 

  7. Nuseibeh B, Easterbrook S (2000) Requirements engineering: a roadmap. In: Proceedings of the conference on the future of software engineering (ICSE’00). ACM, New York, pp 35–46

    Google Scholar 

  8. Aurum A, Wohlin C (2003) The fundamental nature of requirements engineering activities as a decision-making process. Inf Softw Technol 45(14):945–954

    Article  Google Scholar 

  9. Pohl K (1996) Process-centered requirements engineering. Wiley, New York

    Google Scholar 

  10. Hofmann H, Lehner F (2001) Requirements engineering as a success factor in software projects. IEEE Softw 18(4):58–66

    Article  Google Scholar 

  11. Yang D, Wu D, Koolmanojwong S, Brown A, Boehm B (2008) Wikiwinwin: a wiki based system for collaborative requirements negotiation. In: Proceedings of the HICCS, p 24, Waikoloa

    Google Scholar 

  12. Leffingwell D (1997) Calculating the return on investment from more effective requirements management. Am Program 10(4):13–16

    Google Scholar 

  13. Firesmith D (2004) Prioritizing requirements. J Object Technol 3(8):35–47

    Article  Google Scholar 

  14. Gartner Group (2011) Hype cycle for application development: requirements elicitation and simulation. Gartner Group

    Google Scholar 

  15. Dorfman M, Thayer RH (1997) Software requirements engineering. IEEE Computer Society Press, Los Alamitos

    MATH  Google Scholar 

  16. Pohl K, Böckle G, van der Linder F (2005) Software product line engineering foundations, principles, and techniques. Springer, New York

    MATH  Google Scholar 

  17. Software Engineering Institute (2012) Product line hall of fame. http://www.sei.cmu.edu/productlines/plp_hof.html

  18. Smith G (2000) The object-Z specification language, Advances in formal methods series. Kluwer, Boston

    Book  MATH  Google Scholar 

  19. Creighton O, Software Cinema (2006) Employing digital video in requirements engineering. Dissertation, Technische Universtät München

    Google Scholar 

  20. Neill CJ, Laplante PA (2003) Requirements engineering: the state of the practice. IEEE Softw 20(6):40–45, IEEE CS

    Article  Google Scholar 

  21. Peterson M (2009) An introduction to decision theory. Cambridge University Press, Cambridge/New York

    MATH  Google Scholar 

  22. Cooke S, Slack N (1984) Making management decisions. Prentice Hall, Englewood cliffs

    Google Scholar 

  23. Kunz W, Rittel H (1970) Issues as elements of information systems. Working paper no. 131. University of California at Berkeley, Institute of Urban and Regional Development, Berkeley

    Google Scholar 

  24. MacLean A, Young RM, Bellotti VME, Moran TP (1991) Questions, options, and criteria: elements of design space analysis. Hum Comput Interact 6(3):201–250

    Article  Google Scholar 

  25. Dutoit AH (1996) Rationale management in requirements engineering. Ph.D. dissertation, Carnegie Mellon University

    Google Scholar 

  26. Dutoit A, Paech B (2003) Eliciting and maintaining knowledge for requirements evolution. In: Aurum A, Jeffery R, Wohlin C, Handzic M (eds) Managing software engineering knowledge. Springer, Berlin

    Google Scholar 

  27. Dutoit A, McCall R, Mistrik I, Paech B (2006) Rationale management in software engineering. Springer, Berlin

    Book  Google Scholar 

  28. Damian D, Zowghi D (2003) Requirements engineering challenges in multi-site software development organizations. Requir Eng J 8:149–160

    Article  Google Scholar 

  29. Chisholm RM (1982) The foundations of knowing. The University of Minnesota Press, Minneapolis

    Google Scholar 

  30. Resher N (2003) Epistemology: an introduction to the theory of knowledge. State University of New York Press, Albany

    Google Scholar 

  31. Thierauf RJ (1999) Knowledge management systems for business. Praeger

    Google Scholar 

  32. Wikipedia, the free encyclopaedia (2012) http://en.wikipedia.org/wiki/Knowledge_management. Last visited in Nov 2012

  33. Hansen MT (1999) The search-transfer problem: the role of weak ties in sharing knowledge across organization subunits. Adm Sci Q 44(1):82–111

    Article  Google Scholar 

  34. Ma L, Nuseibeh B, Piwek P, De Roeck A, Willis A (2009) On presuppositions in requirements. In: 2nd international workshop on managing requirements knowledge, MaRK’09 IEEE, Atlanta, USA, pp. 27–31

    Google Scholar 

  35. Finkelstein A, Kramer J, Nuseibeh B, Finkelstein L, Goedicke M (1992) Viewpoints: a framework for integrating multiple perspectives in system development. Int J Softw Eng Knowl Eng 2–1:31–57

    Article  Google Scholar 

  36. Ko AK, DeLine R, Venolia G (2007) Information needs in collocated software development teams. In: Proceedings of the 29th international conference on software engineering, Minneapolis, USA, pp 344–353

    Google Scholar 

  37. Herbsleb JD, Mockus A (2003) An empirical study of speed and communication in globally-distributed software development. IEEE Trans Softw Eng 29(6):481–494

    Article  Google Scholar 

  38. Milewski AE, Tremaine A, Egan R, Zhang S, Kobler F, O’Sullivan P (2008) Guidelines for effective bridging in global software engineering. In: Proceedings of the 2008 I.E. international conference on global software engineering, pp 23–32. IEEE Computer Society, Washington, DC

    Google Scholar 

  39. Daramola O, StĂĄlhane T, Omoronyia I, Sindre G (2013) Using ontologies and machine learning for hazard identification and safety analysis. In: Managing requirements knowledge. Springer

    Google Scholar 

  40. Ghaisas S, Ajmeri N (2013) Knowledge-assisted ontology-based requirements evolution. In: Managing requirements knowledge (Chapter 7 in this volume). Springer, Heidelberg

    Google Scholar 

  41. Soffer A, Dori D (2012) Model-based requirements engineering framework for systems lifecycle support. In: Managing requirements knowledge (Chapter 13 in this volume). Springer, Heidelberg

    Google Scholar 

  42. Lutz R, Lavin M, Lux J, Peters K, Rouquette NF (2013) Mining requirements from operational experience. In: Managing requirements knowledge (Chapter 3 in this volume). Springer, Heidelberg

    Google Scholar 

  43. Franch X, Quer C, Renault S, Guerlain C, Palomares C (2012) Constructing and using software requirements patterns. Springer

    Google Scholar 

  44. Carrillo de Gea JM, Nicolás J, Alemán JLF, Toval A, Vizcaíno A, Ebert C (2013) Reusing requirements in global software engineering. In: Managing requirements knowledge (Chapter 8 in this volume). Springer, Heidelberg

    Google Scholar 

  45. Thurimella AK, Bruegge B (2012) Issue-based variability management. Inf Softw Technol 54(9):933–950

    Article  Google Scholar 

  46. Narayan N, Delater A, Paech B, Bruegge B (2011) Enhanced traceability in model-based CASE tools using ontologies and information retrieval. In: Proceedings of the 4th international workshop on managing requirements knowledge (MaRK’11), Trento

    Google Scholar 

  47. Bjørnson FO, Dingsøyr T (2008) Knowledge management in software engineering: a systematic review of studied concepts, findings and research methods used. Inf Softw Technol 50:1055–1068

    Article  Google Scholar 

  48. Lago P, van Vliet H, Babar MA, Dingsoyr T (eds) (2009) Software architecture knowledge management: theory and practice, 1st edn. Springer

    Google Scholar 

  49. Gamma E, Helm R, Johnson R, Vlissides J (1995) Design patterns: elements of reusable object-oriented software. Addison-Wesley, Reading

    Google Scholar 

  50. Basili VR, Caldiera G, Rombach DH (1994) The experience factory, Encyclopedia of software engineering – 2 volume set. Wiley, New York, pp 469–476

    Google Scholar 

  51. Basili V, Costa P, Lindvall M, Mendonca M, Seaman C, Tesoriero R, Zelkowitz M (2001) An experience management system for a software engineering research organization. In: Proceedings of the 26th annual NASA Goddard Software engineering workshop. Greenbelt, Maryland, USA

    Google Scholar 

  52. Humphrey WS (2005) PSP: a self-improvement process for software engineers. Addison-Wesley, Reading. ISBN 03213054931

    Google Scholar 

  53. Humphrey WS (1999) Introduction to the team software process. Addison-Wesley, Reading. ISBN 0-201-47719-X

    Google Scholar 

  54. Holz H (2003) Process-based knowledge management support for software engineering. Doctoral dissertation. University of Kaiserslautern, dissertation.de Online- Press

    Google Scholar 

  55. Sillito J, Murphy GC, De Volder K (2008) Asking and answering questions during a programming change task. Trans Softw Eng 34:434–451

    Article  Google Scholar 

  56. Robillard MP (2009) What makes APIs hard to learn? Answers from developers. IEEE Softw 26:27–34

    Article  Google Scholar 

  57. Rus I, Lindvall M, Sinha SS (2001) Knowledge management in software engineering: a state-of-the-art-report. Fraunhofer Center for Experimental Software Engineering Maryland and the University of Maryland for Data and Analysis Center for Software, Department of Defence

    Google Scholar 

  58. Bajracharya S, Lopes C (2009) Mining search topics from a code search engine usage log. In: Proceedings of the 2009 6th IEEE international working conference on mining software repositories (MSR’09). IEEE Computer Society, Washington, DC, pp 111–120

    Google Scholar 

  59. Happel H-J, Maalej W, Seedorf S (2010) Applications of ontologies in collaborative software development. In: MistrĂ­k I, Grundy J, van der Hoek A, Whitehead J (Hrsg.) Collaborative software engineering. Springer, Berlin/Heidelberg. ISBN 978-3642102936

    Google Scholar 

  60. Aguiar A, Dekel U, Merson P (2009) Wikis4SE’2009: Wikis for software engineering. ICSE companion 2009, pp 480–481

    Google Scholar 

  61. Happel H-J, Maalej W (2008) Potentials and challenges of recommendation systems for software development. In: RSSE’08: proceedings of the 2008 international workshop on recommendation systems for software engineering, ACM

    Google Scholar 

  62. Robillard MP, Walker RJ, Zimmermann T (2010) Recommendation systems for software engineering. IEEE Softw 27(4):80–86

    Article  Google Scholar 

  63. Maalej W, Thurimella A (2013) DUFICE – guidelines for a lightweight management of requirements knowledge. In: Managing requirements knowledge. Springer

    Google Scholar 

  64. Dumitru H, Gibiec M, Hariri N, Cleland-Huang J, Mobasher B, Castro-Herrera C, Mirakhorli M (2011) On-demand feature recommendations derived from mining public product descriptions. ICSE 2011, pp 181–190

    Google Scholar 

  65. Mathes A (2004) Folksonomies: cooperative classification and communication through shared metadata. In: Computer mediated communication – LIS590CMC http://www.adammathes.com/academic/computer-mediated-communication/folksonomies.html

  66. Jürgens E, Deissenboeck F, Feilkas M, Hummel B, Schätz B, Wagner S, Domann C, Streit J (2010) Can clone detection support quality assessments of requirements specifications? ICSE (2): 79–88

    Google Scholar 

  67. Ajmeri N, Vidhani K, Bhat M, Ghaisas G (2011) An ontology-based method and tool for cross-domain requirements visualization. In: Fourth workshop on managing requirements knowledge, MaRK11, pp 22–23, Trento

    Google Scholar 

  68. Lohmann S, Heim P, Auer S, Dietzold S, Riechert R (2008) Semantifying requirements engineering – the softWiki approach, I-SEMANTICS, Graz, pp 182–185

    Google Scholar 

  69. Uenalan O, Riegel N, Weber S, Doerr J (2008) Using enhanced wiki-based solutions for managing requirements. First international workshop on managing requirements knowledge (MARK), Barcelona, Spain, pp 63–67

    Google Scholar 

  70. Lohmann S, Riechert T, Auer S (2008) Collaborative development of knowledge bases in distributed requirements elicitation. Software engineering (workshops): agile knowledge sharing for distributed software teams, Munich, Germany, pp 22–28

    Google Scholar 

  71. Ruhe G, Saliu M (2005) The art and science of software release planning. IEEE Softw 22(6):47–53

    Article  Google Scholar 

  72. Karlsson J, Olsson S, Ryan K (1998) Improved practical support for large-scale requirements prioritization. Require Eng J 2(1):51–60

    Article  Google Scholar 

  73. Ramesh B, Jarke M (2001) Toward reference models for requirements traceability. IEEE Trans Softw Eng 27(1):58–93

    Article  Google Scholar 

  74. Dahlstedt A, Persson A (2003) Requirements interdependencies – moulding the state of research into a research agenda, REFSQ’03, Klagenfurt, pp 71–80

    Google Scholar 

  75. Iyer J, Richards D (2004) Evaluation framework for tools that manage requirements inconsistency. In: 9th Australian workshop on requirements engineering (AWRE’04). Adelaide, Australia

    Google Scholar 

  76. Göknil A, Kurtev I, and van den Berg K (2008) A metamodeling approach for reasoning about requirements. In: 4th European conference on model driven architecture – foundations and applications, Berlin. LNCS, vol 5095, pp 310–325, Berlin

    Google Scholar 

  77. Hoenderboom B, Liang P (2009) A survey of semantic wikis for requirements engineering. Technical report RUG-SEARCH-09-L03, University of Groningen

    Google Scholar 

  78. Mobasher B, Cleland-Huang J (2011) Recommender systems in requirements engineering. AI Mag 32(3):81–89

    Google Scholar 

  79. Glinz M (2007) On non-functional requirements. In: 15th IEEE international requirements engineering conference, New Delhi, 15–19 Oct 2007, pp 21–26

    Google Scholar 

Download references

Acknowledgements

We are grateful to Pete Sawyer, Smita S Ghaisas, Yang Li, and Zardosht Hodaie for their constructive reviews.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to W. Maalej .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Maalej, W., Thurimella, A.K. (2013). An Introduction to Requirements Knowledge. In: Maalej, W., Thurimella, A. (eds) Managing Requirements Knowledge. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-34419-0_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-34419-0_1

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-34418-3

  • Online ISBN: 978-3-642-34419-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics