Skip to main content

From Object Orientation to Goal Orientation: A Paradigm Shift for Requirements Engineering

  • Conference paper
Radical Innovations of Software and Systems Engineering in the Future (RISSEF 2002)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2941))

Abstract

Requirements engineering (RE) is concerned with the elicitation of the objectives to be achieved by the system envisioned, the operationalization of such objectives into specifications of services and constraints, the assignment of responsibilities for the resulting requirements to agents such as humans, devices and software, and the evolution of such requirements over time and across system families. Getting high-quality requirements is difficult and critical. Recent surveys have confirmed the growing recognition of RE as an area of primary concern in software engineering research and practice. The paper reviews the important limitations of OO modeling and formal specification technology when applied to this early phase of the software lifecycle. It argues that goals are an essential abstraction for eliciting, elaborating, modeling, specifying, analyzing, verifying, negotiating and documenting robust and conflict-free requirements. A safety injection system for a nuclear power plant is used as a running example to illustrate the key role of goals while engineering requirements for high assurance systems.

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. Bell, T.E., Thayer, T.A.: Software Requirements: Are They Really a Problem? In: Proc. ICSE-2: 2nd Intrnational Conference on Software Enginering, San Francisco, pp. 61–68 (1976)

    Google Scholar 

  2. Bharadwaj, R., Heitmeyer, C.: Model Checking Complete Requirements Specifications Using Abstraction. Automated Software Engineering 6(1), 37–68 (1999)

    Article  Google Scholar 

  3. Boehm, B.W.: Software Engineering Economics. Prentice-Hall, Englewood Cliffs (1981)

    MATH  Google Scholar 

  4. Brooks, F.P.: No Silver Bullet: Essence and Accidents of Software Engineering. IEEE Computer 20(4), 10–19 (1987)

    MathSciNet  Google Scholar 

  5. Chung, L., Nixon, B., Yu, E., Mylopoulos, J.: Non-functional requirements in software engineering. Kluwer Academic, Dordrecht (2000)

    MATH  Google Scholar 

  6. Courtois, P.J., Parnas, D.L.: Documentation for Safety-Critical Software. In: Proc. ICSE 1993: 15th International Conference on Software Engineering, pp. 315–323. ACM Press, New York (1993)

    Chapter  Google Scholar 

  7. Dardenne, A., van Lamsweerde, A., Fickas, S.: Goal-Directed Requirements Acquisition. Science of Computer Programming 20, 3–50 (1993)

    Article  MATH  Google Scholar 

  8. Darimont, R., van Lamsweerde, A.: Formal Refinement Patterns for Goal-Driven Requirements Elaboration. In: Proc. FSE’4 - Fourth ACM SIGSOFT Symp. on the Foundations of Software Engineering, San Francisco, October 1996, pp. 179–190 (1996)

    Google Scholar 

  9. De Landtsheer, R., Letier, E., van Lamsweerde, A.: Deriving Tabular Event-Based Specifications from Goal-Oriented Requirements Models. In: Proc. RE 2003 - International Joint Conference on Requirements Engineering, Monterey, CA, IEEE, Los Alamitos (2003); Expanded version to appear in the Requirements Engineering Journal

    Google Scholar 

  10. European Software Institute, “European User Survey Analysis”, Report USV_EUR 2.1, ESPITI Project (January 1996)

    Google Scholar 

  11. Feather, M.: Language Support for the Specification and Development of Composite Systems. ACM Trans. on Programming Languages and Systems 9(2), 198–234 (1987)

    Article  Google Scholar 

  12. Feather, M., Fickas, S., van Lamsweerde, A., Ponsard, C.: Reconciling System Requirements and Runtime Behaviour. In: Proc. IWSSD 1998 - 9th International Workshop on Software Specification and Design, Isobe, April 1998, IEEE CS Press, Los Alamitos (1998)

    Google Scholar 

  13. Fickas, S., Helm, R.: Knowledge Representation and Reasoning in the Design of Composite Systems. IEEE Trans. on Software Engineering, 470–482 (June 1992)

    Google Scholar 

  14. Gargantini, A., Heitmeyer, C.: Using Model Checking to Generate Tests from Requirements Specifications. In: Nierstrasz, O., Lemoine, M. (eds.) ESEC 1999 and ESEC-FSE 1999. LNCS, vol. 1687, p. 146. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  15. Harel, D.: Statecharts: A Visual Formalism for Complex Systems. Science of Computer Programming 8, 231–274 (1987)

    Article  MATH  MathSciNet  Google Scholar 

  16. Heimdahl, M., Leveson, N.G.: Completness and Consistency Checking in Hierarchical State-Based Requirements. IEEE Transactions on Software Engineering 22(6), 363–377 (1996)

    Article  Google Scholar 

  17. Heitmeyer, C., Jeffords, R., Labaw, B.: Automated Consistency Checking of Requirements Specifications. ACM Transactions on Software Engineering and Methodology 5(3), 231–261 (1996)

    Article  Google Scholar 

  18. Jackson, M.: Software Requirements & Specifications - A Lexicon of Practice, Principles and Prejudices. ACM Press, Addison-Wesley (1995)

    Google Scholar 

  19. Jeffords, R., Heitmeyer, C.: Automatic Generation of State Invariants from Requirements Specifications. In: 6th International Symposium on the Foundations of Software Engineering (FSE-6), Orlando FL (November 1998)

    Google Scholar 

  20. Knight, J.C.: Safety-Critical Systems: Challenges and Directions”, Invited Mini-Tutorial. In: Proc. ICSE 2002: 24th International Conference on Software Engineering, pp. 547–550. ACM Press, New York (2002)

    Chapter  Google Scholar 

  21. van Lamsweerde, A., Darimont, R., Letier, E.: Managing Conflicts in Goal-driven Requirements Engineering. IEEE Transactions on Software Engineering, Special Issue on Inconsistency Management in Software Development 24(11), 908–926 (1998)

    Google Scholar 

  22. van Lamsweerde, A., Letier, E.: Handling Obstacles in Goal-Oriented Requirements Engineering. IEEE Transactions on Software Engineering, Special Issue on Exception Handling 26(10), 978–1005 (2000)

    Google Scholar 

  23. van Lamsweerde, A.: Requirements Engineering in the Year 2000: A Research Perspective. In: Invited Keynote Paper, Proc. ICSE 2000: 22nd International Conference on Software Engineering, pp. 5–19. ACM Press, New York (2000)

    Google Scholar 

  24. van Lamsweerde, A.: Formal Specification: a Roadmap. In: Finkelstein, A. (ed.) The Future of Software Engineering, ACM Press, New York (2000)

    Google Scholar 

  25. van Lamsweerde, A.: From System Goals to Software Architecture. In: Bernardo, M., Inverardi, P. (eds.) SFM 2003. LNCS, vol. 2804, pp. 25–43. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  26. McLean, J., Heitmeyer, C.: High Assurance Computer Systems: A Research Agenda., America in the Age of Information, National Science and Technology Council Committee on Information and Communications Forum, Bethesda (1995)

    Google Scholar 

  27. Letier, E.: Reasoning about Agents in Goal-Oriented Requirements Engineering. PhD Thesis, Université Catholique de Louvain, Dépt. Ingénierie Informatique, Louvain-la-Neuve, Belgium (May 2001), http://www.info.ucl.ac.be/people/eletier/thesis.html

  28. Letier, E., van Lamsweerde, A.: Agent-Based Tactics for Goal-Oriented Requirements Elaboration. In: Proc. ICS 2002: 24th Intl. Conf. on Software Engineering, Orlando, IEEE Computer Society Press, Los Alamitos (2002)

    Google Scholar 

  29. Letier, E., van Lamsweerde, A.: Deriving Operational Software Specifications from System Goals. In: Proc. FSE’10: 10th ACM SIGSOFT Symp. on the Foundations of Software Engineering, Charleston (November 2002)

    Google Scholar 

  30. Letier, E.: Goal-Oriented Elaboration of Requirements for a Safety Injection Control System. Research Report, Département d’Ingénierie Informatique, UCL (June 2002)

    Google Scholar 

  31. Leveson, N.: Safeware: System Safety and Computers. Addison-Wesley, Reading (1995)

    Google Scholar 

  32. Lutz, R.: Analyzing Software Requirements Errors in Safety-Critical, Embedded Systems. In: Proc. RE 1993: First IEEE International Symposium on Requirements Engineering, January 1993, pp. 126–133 (1993)

    Google Scholar 

  33. Manna, Z., The STep Group: STeP: Deductive-Algorithmic Verification of Reactive and Real-Time Systems. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 415–418. Springer, Heidelberg (1996)

    Google Scholar 

  34. The Standish Group, “Software Chaos”, http://www.standishgroup.com/chaos.html

  35. Yue, K.: What Does It Mean to Say that a Specification is Complete? In: Proc. IWSSD- 4, Fourth International Workshop on Software Specification and Design, Monterey (1987)

    Google Scholar 

  36. Zave, P., Jackson, M.: Four dark corners of requirements engineering. ACM Trans. on Software Engineering and Methodology 6(1), 1–30 (1997)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

van Lamsweerde, A., Letier, E. (2004). From Object Orientation to Goal Orientation: A Paradigm Shift for Requirements Engineering. In: Wirsing, M., Knapp, A., Balsamo, S. (eds) Radical Innovations of Software and Systems Engineering in the Future. RISSEF 2002. Lecture Notes in Computer Science, vol 2941. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24626-8_23

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-24626-8_23

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-21179-2

  • Online ISBN: 978-3-540-24626-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics