Skip to main content

Anticipating Change in Requirements Engineering

  • Chapter
  • First Online:
Relating Software Requirements and Architectures

Abstract

Requirements change is inevitable in the development and maintenance of software systems. One way to reduce the adverse impact of change is by anticipating change during requirements elicitation, so that software architecture components that are affected by the change are loosely coupled with the rest of the system. This chapter proposes Change-oriented Requirements Engineering (CoRE), a method to anticipate change by separating requirements into layers that change at relatively different rates. From the most stable to the most volatile, the layers are: patterns, functional constraints, non-functional constraints, and business policies and rules. CoRE is empirically evaluated by applying it to a large-scale software system, and then studying the requirements change from development to maintenance. Results show that CoRE accurately anticipates the relative volatility of the requirements.

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.99
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

Notes

  1. 1.

    From this point on, the word “archetype” is used when referring specifically to the patterns by Arlow and Neustadt [2].

  2. 2.

    A leaf goal is a goal without subgoals.

  3. 3.

    http://www.ucl.ac.uk/isd/community/projects/azlist-projects

References

  1. Anton AI (1996) Goal-based requirements analysis. In: Proceedings of the 2nd international conference on requirements engineering. Colorado Springs, pp 136–144

    Google Scholar 

  2. Arlow J, Neustadt I (2003) Enterprise patterns and MDA: building better software with archetype patterns and UML. Addison-Wesley, Boston

    Google Scholar 

  3. Berenbach B, Paulish DJ, Kazmeier J, Daniel P, Rudorfer A (2009) Software systems requirements engineering: in practice. McGraw-Hill Osborne Media, New York

    Google Scholar 

  4. Boehm BW (1981) Software engineering economics. Prentice Hall, Englewood Cliffs

    MATH  Google Scholar 

  5. Brand S (1995) How buildings learn: what happens after they’re built. Penguin Books, New York

    Google Scholar 

  6. Chung L, Nixon BA, Yu E, Mylopoulos J (1999) Non-functional requirements in software engineering. Springer, Berlin

    MATH  Google Scholar 

  7. Cockburn A (2002) Writing effective use cases. Addison-Wesley, Boston

    Google Scholar 

  8. Dardenne A, van Lamsweerde A, Fickas S (1993) Goal-directed requirements acquisition. Sci Comput Programming 20(1–2):3–50

    Article  Google Scholar 

  9. Foote B, Yoder J (2000) Big ball of mud. Pattern Lang Program Des 4(99):654–692

    Google Scholar 

  10. Harker SDP, Eason KD, Dobson JE (1993) The change and evolution of requirements as a challenge to the practice of software engineering. In: Proceedings of the IEEE international symposium on requirements engineering, San Diego, pp 266–272

    Google Scholar 

  11. IEEE Computer Society (2000) IEEE recommended practice for software requirements specifications, Los Alamitos

    Google Scholar 

  12. International Organization for Standardization (2001) Software engineering – product quality, ISO/IEC TR 9126, Part 1–4

    Google Scholar 

  13. Jacobson I (1995) The use-case construct in object-oriented software engineering. In: Scenario-based design: envisioning work and technology in system development. Wiley, New York, pp 309–336

    Google Scholar 

  14. Jones C (1996) Strategies for managing requirements creep. Computer 29(6):92–94

    Article  Google Scholar 

  15. Kotonya G, Sommerville I (1998) Requirements engineering. Wiley, West Sussex

    Google Scholar 

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

    Google Scholar 

  17. Lim SL (2010) Social networks and collaborative filtering for large-scale requirements elicitation. PhD Thesis, University of New South Wales. Available at http://www.cs.ucl.ac.uk/staff/S.Lim/phd/thesis_soolinglim.pdf, accessed on 14 December 2010

  18. Lim SL, Ishikawa F, Platon E, Cox K (2008) Towards agile service-oriented business systems: a directive-oriented pattern analysis approach. In: Proceedings of the 2008 IEEE international conference on services computing, Honolulu, Hawaii, vol 2. pp 231–238

    Google Scholar 

  19. Lim SL, Quercia D, Finkelstein A (2010) StakeNet: using social networks to analyse the stakeholders of large-scale software projects. In: Proceedings of the 32nd international conference on software engineering, vol 1. New York, pp 295–304

    Google Scholar 

  20. Mens T, Galal G (2002) 4th workshop on object-oriented architectural evolution. Springer, Berlin, pp 150–164

    Google Scholar 

  21. Object Management Group (2006) Business motivation model (BMM) specification. Technical Report dtc/060803

    Google Scholar 

  22. O’Neill RV, DeAngelis DL, Waide JB, Allen TFH (1986) A hierarchical concept of ecosystems. Princeton University Press, Princeton

    Google Scholar 

  23. Papantoniou B, Nathanael D, Marmaras N (2003) Moving target: designing for evolving practice. In: HCI international. MIT Press, Cambridge

    Google Scholar 

  24. Robertson S, Robertson J (2006) Mastering the requirements process. Addison-Wesley, Reading

    Google Scholar 

  25. Ross RG (2003) Principles of the business rule approach. Addison-Wesley, Boston

    Google Scholar 

  26. Salthe SN (1993) Development and evolution: complexity and change in biology. MIT Press, Cambridge, MA

    Book  Google Scholar 

  27. Simmonds I, Ing D (2000) A shearing layers approach to information systems development, IBM Research Report RC21694. Technical report, IBM

    Google Scholar 

  28. Sommerville I (2004) Software engineering, 7th edn. Addison-Wesley, Boston

    MATH  Google Scholar 

  29. Sommerville I, Sawyer P (1997) Requirements engineering: a good practice guide. Wiley, Chichester

    MATH  Google Scholar 

  30. Standish Group (1994) The CHAOS report

    Google Scholar 

  31. Stark GE, Oman P, Skillicorn A, Ameele A (1999) An examination of the effects of requirements changes on software maintenance releases. J Softw Maint Res Pr 11(5):293–309

    Article  Google Scholar 

  32. van Lamsweerde A (2001) Goal-oriented requirements engineering: a guided tour. In: Proceedings of the 5th IEEE international symposium on requirements engineering. Toronto, pp 249–262

    Google Scholar 

  33. van Lamsweerde A (2009) Requirements engineering: from system goals to UML models to software specifications. Wiley, Chichester

    Google Scholar 

  34. Wiegers K (2003) Software requirements, 2nd edn. Microsoft Press, Redmond

    Google Scholar 

  35. Yu ESK (1997) Towards modelling and reasoning support for early-phase requirements engineering. In: Proceedings of the 3rd IEEE international symposium on requirements engineering. Annapolis, pp 226–235

    Google Scholar 

Download references

Acknowledgments

The authors would like to thank members of the Estates and Facilities Division and Information Services Division at University College London for the RALIC project documentation, their discussions and feedback on the requirements models, as well as Peter Bentley, Fuyuki Ishikawa, Emmanuel Letier, and Eric Platon for their feedback on the work.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Soo Ling Lim .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Lim, S.L., Finkelstein, A. (2011). Anticipating Change in Requirements Engineering. In: Avgeriou, P., Grundy, J., Hall, J.G., Lago, P., Mistrík, I. (eds) Relating Software Requirements and Architectures. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21001-3_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-21001-3_3

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-21000-6

  • Online ISBN: 978-3-642-21001-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics