Skip to main content

Requirements Evolution and What (Research) to Do about It

  • Conference paper
Book cover Design Requirements Engineering: A Ten-Year Perspective

Part of the book series: Lecture Notes in Business Information Processing ((LNBIP,volume 14))

Abstract

Requirements evolution is a research problem that has received little attention hitherto, but deserves much more. For systems to survive in a volatile world, where business needs, government regulations and computing platforms keep changing, software systems must evolve too in order to survive. We discuss the state-of-the-art for research on the topic, and predict some of the research problems that will need to be addressed in the next decade. We conclude with a concrete proposal for a run-time monitoring framework based on (requirements) goal models.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Lubars, M., Potts, C., Richter, C.: A review of the state-of-practice in requirements modelling. In: Intl. Symp. on Requirements Engineering, San Diego, CA (January 1993)

    Google Scholar 

  2. Wang, Y., McIlraith, S., Yu, Y., Mylopoulos, J.: An automated approach to monitoring and diagnosing requirements. In: International Conference on Automated Software Engineering (ASE 2007), Atlanta, GA (October 2007)

    Google Scholar 

  3. Lehman, M.: On understanding laws, evolution, and conservation in the large-program life cycle. Journal of Systems and Software 1, 213–221 (1980)

    Article  Google Scholar 

  4. Brooks, F.: The mythical man-month. Addison-Wesley, Reading (1975)

    Google Scholar 

  5. Fernandez-Ramil, J., Perry, D., Madhavji, N.H. (eds.): Software Evolution and Feedback: Theory and Practice, 1st edn. Wiley, Chichester (2006)

    Google Scholar 

  6. Gîrba, T., Ducasse, S.: Modeling history to analyze software evolution. Journal of Software Maintenance and Evolution: Research and Practice 18(3), 207–236 (2006)

    Article  Google Scholar 

  7. Xing, Z., Stroulia, E.: UMLDiff: an algorithm for objectoriented design di erencing. In: Intl. Conf. on Automated Software Engineering, Long Beach, CA, USA, pp. 54–65 (2005)

    Google Scholar 

  8. Basili, V.R., Weiss, D.M.: Evaluation of a software requirements document by analysis of change data. In: Intl. Conf. on Software Engineering, San Diego, USA, pp. 314–323 (1981)

    Google Scholar 

  9. Basili, V.R., Perricone, B.T.: Software errors and complexity: An empirical investigation. Commun. ACM 27(1), 42–52 (1984)

    Article  Google Scholar 

  10. Harker, S.D.P., Eason, K.D., Dobson, J.E.: The change and evolution of requirements as a challenge to the practice of software engineering. In: IEEE International Symposium on Requirements Engineering, pp. 266–272 (1993)

    Google Scholar 

  11. Rajlich, V.T., Bennett, K.H.: A staged model for the software life cycle. IEEE Computer 33(7), 66–71 (2000)

    Google Scholar 

  12. Lientz, B.P., Swanson, B.E.: Software Maintenance Management: A Study of the Maintenance of Computer Application Software in 487 Data Processing Organizations. Addison-Wesley, Reading (1980)

    Google Scholar 

  13. Rowe, D., Leaney, J., Lowe, D.: De ning systems evolvability - a taxonomy of change. In: International Conference and Workshop: Engineering of Computer-Based Systems, Maale Hachamisha, Israel, p. 45+ (1998)

    Google Scholar 

  14. Vicente, K.J.: Ecological interface design: Progress and challenges. Human Factors 44, 62–78 (2002)

    Article  Google Scholar 

  15. Favre, J.-M.: Meta-model and model co-evolution within the 3d software space. In: Intl. Workshop on Evolution of Large-scale Industrial Software Applications at ICSM, Amsterdam (September 2003)

    Google Scholar 

  16. Swanson, B.E.: The dimensions of maintenance. In: Intl. Conf. on Software Engineering, San Francisco, California, pp. 492–497 (1976)

    Google Scholar 

  17. Svensson, H., Host, M.: Introducing an agile process in a software maintenance and evolution organization. In: European Conference on Software Maintenance and Reengineering, Manchester, UK, March 2005, pp. 256–264 (2005)

    Google Scholar 

  18. Nelson, K.M., Nelson, H.J., Ghods, M.: Technology exibility: conceptualization, validation, and measurement. In: International Conference on System Sciences, Hawaii, vol. 3, pp. 76–87 (1997)

    Google Scholar 

  19. Buckley, J., Mens, T., Zenger, M., Rashid, A., Kniesel, G.: Towards a taxonomy of software change. Journal of Software Maintenance and Evolution: Research and Practice 17(5), 309–332 (2005)

    Article  Google Scholar 

  20. Chapin, N., Hale, J.E., Fernandez-Ramil, J., Tan, W.-G.: Types of software evolution and software maintenance. Journal of Software Maintenance and Evolution: Research and Practice 13(1), 3–30 (2001)

    Article  MATH  Google Scholar 

  21. Felici, M.: Taxonomy of evolution and dependability. In: Proceedings of the Second International Workshop on Unanticipated Software Evolution, USE 2003, Warsaw, Poland, April 2003, pp. 95–104 (2003)

    Google Scholar 

  22. Felici, M.: Observational Models of Requirements Evolution. PhD thesis, University of Edinburgh (2004), http://homepages.inf.ed.ac.uk/mfelici/doc/IP040037.pdf

  23. Sommerville, I., Sawyer, P.: Requirements Engineering: A Good Practice Guide. John Wiley & Sons, New York (1997)

    MATH  Google Scholar 

  24. Lam, W., Loomes, M.: Requirements evolution in the midst of environmental change: A managed approach. In: Euromicro. Conf. on Software Maintainance and Reengineering, Florence, Italy, March 1998, pp. 121–127 (1998)

    Google Scholar 

  25. Stark, G., Skillicorn, A., Ameele, R.: An examination of the e ects of requirements changes on software releases. Crosstalk: Journal of Defence Software Engineering, 11–16 (December 1998)

    Google Scholar 

  26. Lormans, M., van Dijk, H., van Deursen, A., Nocker, E., de Zeeuw, A.: Managing evolving requirements in an outsourcing context: an industrial experience report. In: International Workshop on Principles of Software Evolution, pp. 149–158 (2004)

    Google Scholar 

  27. Wiegers, K.E.: Automating requirements management. Software Development Magazine 7(7) (July 1999)

    Google Scholar 

  28. Roshandel, R., Van Der Hoek, A., Mikic-Rakic, M., Medvidovic, N.: Mae – a system model and environment for managing architectural evolution. ACM Trans. Softw. Eng. Methodol. 13(2), 240–276 (2004)

    Article  Google Scholar 

  29. Yu, Y., Wang, Y., Mylopoulos, J., Liaskos, S., Lapouchnian, A.: Reverse engineering goal models from legacy code. In: International Conference on Requirements Engineering, Paris, pp. 363–372 (September 2005)

    Google Scholar 

  30. Niu, N., Easterbrook, S., Sabetzadeh, M.: A categorytheoretic approach to syntactic software merging. In: 21st IEEE International Conference on Software Maintenance (ICSM 2005), Budapest, Hungary (September 2005)

    Google Scholar 

  31. Berry, D.M., Cheng, B.H.C., Zhang, J.: The four levels of requirements engineering for and in dynamic adaptive systems. In: International Workshop on Requirements Engineering: Foundation for Software Quality, Porto, Portugal (June 2005)

    Google Scholar 

  32. Liaskos, S.: Acquiring and Reasoning about Variability in Goal Models. PhD thesis, University of Toronto (2008)

    Google Scholar 

  33. Jureta, I., Faulkner, S., Thiran, P.: Dynamic requirements specification for adaptable and open service-oriented systems. In: Krämer, B.J., Lin, K.-J., Narasimhan, P. (eds.) ICSOC 2007. LNCS, vol. 4749, pp. 270–282. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  34. Etien, A., Salinesi, C.: Managing requirements in a co-evolution context. In: 13th IEEE International Conference on Requirements Engineering, Paris, pp. 125–134 (September 2005)

    Google Scholar 

  35. Boehm, B.: Some future trends and implications for systems and software engineering processes. Systems Engineering 9(1), 1–19 (2006)

    Article  Google Scholar 

  36. Yang, Y., Bhuta, J., Boehm, B., Port, D.N.: Value-based processes for cots-based applications. IEEE Software 22(4), 54–62 (2005)

    Article  Google Scholar 

  37. Nuseibeh, B.: Weaving together requirements and architectures. IEEE Computer  34(3), 115–119 (2001)

    Google Scholar 

  38. Gotel, O.C.Z., Finkelstein, C.W.: An analysis of the requirements traceability problem. In: International Conference on Requirements Engineering, pp. 94–101 (1994)

    Google Scholar 

  39. Fickas, S., Feather, M.S.: Requirements monitoring in dynamic environments. In: RE 1995: Proceedings of the Second IEEE International Symposium on Requirements Engineering, Washington, DC, USA (1995)

    Google Scholar 

  40. Feather, M.S., Fickas, S., van Lamsweerde, A., Ponsard, C.: Reconciling system requirements and runtime behaviour. In: Ninth IEEE International Workshop on Software Specification and Design (IWSSD-9), Isobe, JP, pp. 50–59 (1998)

    Google Scholar 

  41. Cleland-Huang, J., Settimi, R., BenKhadra, O., Berezhanskaya, E., Christina, S.: Goal-centric traceability for managing non-functional requirements. In: Intl. Conf. Software Engineering, St. Louis, MO, USA, pp. 362–371 (2005)

    Google Scholar 

  42. Ramesh, B., Jarke, M.: Toward reference models for requirements traceability. IEEE Transactions on Software Engineering 27(1), 58–93 (2001)

    Article  Google Scholar 

  43. Kephart, J., Chess, D.: The vision of autonomic computing. IEEE Computer 36(1) (January 2003)

    Google Scholar 

  44. Cleland-Huang, J., Chang, C.K., Christensen, M.: Event-based traceability for managing evolutionary change. Transactions on Software Engineering  29(9), 796–810 (2003)

    Article  Google Scholar 

  45. Cleland-Huang, J., Settimi, R., Zou, X., Solc, P.: Automated classi cation of non-functional requirements. Requirements Engineering 12(2), 103–120 (2007)

    Article  Google Scholar 

  46. Breaux, T., Antón, A.: Analyzing goal semantics for rights, permissions, and obligations. In: International Requirements Engineering Conference, Paris, France, pp. 177–186 (August 2005)

    Google Scholar 

  47. Siena, A., Maiden, N., Lockerbie, J., Karlsen, K., Perini, A., Susi, A.: Exploring the effectiveness of normative i* modelling: Results from a case study on food chain traceability. In: Bellahsène, Z., Léonard, M. (eds.) CAiSE 2008. LNCS, vol. 5074, pp. 182–196. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  48. Ramadge, P., Wonham, M.: Supervisory control of a class of discreteevent systems. SIAM J. of Control and Optimization 25(1), 206–230 (1987)

    Article  MATH  MathSciNet  Google Scholar 

  49. Darwin, C.: On the Origin of Species by Means of Natural Selection. Murray, London (1859)

    Google Scholar 

  50. Svahnberg, M., van Gurp, J., Bosch, J.: A taxonomy of variability realization techniques. Softw. Pract. Exper. 35(8), 705–754 (2005)

    Article  Google Scholar 

  51. Kang, K.C., Kim, S., Lee, J., Kim, K.: Form: A feature-oriented reuse method. Annals of Software Engineering 5, 143–168 (1998)

    Article  Google Scholar 

  52. Desai, N., Chopra, A.K., Singh, M.P.: Amoeba: A methodology for requirements modeling and evolution of crossorganizational business processes. Transactions on Software Engineering and Methodology (submitted, 2008)

    Google Scholar 

  53. Rommes, E., America, P.: A scenario-based method for software product line architecting. In: Käkölä, T., Dueñas, J.C. (eds.) Software Product Lines - Research Issues in Engineering and Management, Berlin, pp. 3–52 (2006)

    Google Scholar 

  54. Kau, S.A.: The Origins of Order: Self-Organization and Selection in Evolution. Oxford University Press, Oxford (1993)

    Google Scholar 

  55. Su, N., Mylopoulos, J.: Evolving organizational information systems with tropos. In: Conference on Advanced Information Systems Engineering (2006)

    Google Scholar 

  56. Simon, H.A.: The Sciences of the Artificial, 3rd edn. MIT Press, Cambridge (1996)

    Google Scholar 

  57. Dennett, D.C.: Darwin’s Dangerous Idea: Evolution and the Meanings of Life. Simon & Schuster, New York (1995)

    Google Scholar 

  58. Feather, M.S.: Rapid application of lightweight formal methods for consistency analysis. IEEE Trans. Softw. Eng. 24(11), 948–959 (1998)

    Article  Google Scholar 

  59. Robinson, W.N.: A requirements monitoring framework for enterprise systems. Requirements Engineering Journal 11, 17–41 (2006)

    Article  Google Scholar 

  60. Dardenne, A., van Lamsweerde, A., Fickas, S.: Goal-directed requirements acquisition. Science of Computer Programming 20(1-2), 3–50 (1993)

    Article  MATH  Google Scholar 

  61. McIlraith, S.: Explanatory diagnosis: Conjecturing actions to explain observations. In: International Conference on Principles of Knowledge Representation and Reasoning (KR 1998), Trento, Italy, June 1998, pp. 167–179 (1998)

    Google Scholar 

  62. Mylopoulos, J., Chung, L., Nixon, B.: Representing and using non-functional requirements: A process-oriented approach. IEEE Transactions on Software Engineering 18(6), 483–497 (1992)

    Article  Google Scholar 

  63. Giorgini, P., Mylopoulos, J., Nicchiarelli, E., Sebastiani, R.: Reasoning with goal models. In: Spaccapietra, S., March, S.T., Kambayashi, Y. (eds.) ER 2002. LNCS, vol. 2503, pp. 167–181. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  64. Davis, M., Logemann, G., Loveland, D.: A machine program for theorem proving. Journal of ACM 5, 394–397 (1962)

    Article  MATH  MathSciNet  Google Scholar 

  65. Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Chaff: engineering an efficient sat solver. In: Design Automation Conference, Las Vegas, pp. 530–535 (June 2001)

    Google Scholar 

  66. Goldberg, E., Novikov, Y.: Berkmin: A fast and robust sat-solver. In: Conference on Design, Automation and Test in Europe (DATE), Paris, pp. 142–149 (March 2002)

    Google Scholar 

  67. Ryan, L.: Efficient algorithms for clause-learning SAT solvers. Master’s thesis, Simon Fraser University (2004)

    Google Scholar 

  68. Le Berre, D.: A satisfiability library for java (2007), http://www.sat4j.org/

  69. Reiter, R.: A theory of diagnosis from first principles. Artificial Intelligence 32(1), 57–95 (1987)

    Article  MATH  MathSciNet  Google Scholar 

  70. De Kleer, J., Mackworth, A.K., Reiter, R.: Characterizing diagnoses and systems. Artificial Intelligence 56(2-3), 197–222 (1992)

    Article  MATH  MathSciNet  Google Scholar 

  71. Castello, R.: Squirrel mail (2007), http://www.squirrelmail.org/

  72. Bjork, R.: An example of object-oriented design: an atm simulation (2007), http://www.cs.gordon.edu/courses/cs211/ATMExample/index.html/

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ernst, N.A., Mylopoulos, J., Wang, Y. (2009). Requirements Evolution and What (Research) to Do about It. In: Lyytinen, K., Loucopoulos, P., Mylopoulos, J., Robinson, B. (eds) Design Requirements Engineering: A Ten-Year Perspective. Lecture Notes in Business Information Processing, vol 14. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-92966-6_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-92966-6_11

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-92965-9

  • Online ISBN: 978-3-540-92966-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics