Skip to main content

Definition and Correct Refinement of Operation Specifications

  • Chapter
Dependable Systems: Software, Computing, Networks

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

  • 392 Accesses

Abstract

Modern incremental and iterative software engineering processes advocate to build software systems by first creating a highly simplified and abstract model of the system which is then moved by applying a series of model improvements toward implementation. Models of software systems at any level of abstraction should contain, besides structural information, a precise description of the expected system behavior. This paper formalizes relations between models of the same system at different levels of abstraction, classifies approaches for describing behavior of system operations, and investigates how these system operation descriptions can be kept synchronized with frequent changes of the system’s structure.

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. Kruchten, P.: The Rational Unified Process. Object Technology Series. Addison-Wesley, Reading (1999)

    Google Scholar 

  2. D’Souza, D., Wills, A.: Objects, Components and Frameworks With UML: The Catalysis Approach. Object Technology Series. Addison-Wesley, Reading (1998)

    Google Scholar 

  3. Coleman, D., Arnold, P., Bodoff, S., Dollin, C., Gilchrist, H., Hayes, F., Jeremaes, P.: Object-Oriented Development: The Fusion Method. Prentice Hall, Englewood Cliffs (1994)

    Google Scholar 

  4. Meyer, B.: Applying design by contract. IEEE Computer 25(10), 40–51 (1992)

    Google Scholar 

  5. Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice-Hall, Englewood Cliffs (1997)

    MATH  Google Scholar 

  6. Meyer, B.: Dependable software. In: Kohlas, J., Meyer, B., Schiper, A. (eds.) Dependable Systems: Software, Computing, Networks. LNCS, vol. 4028, pp. 1–33. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  7. Szyperski, C.: Component Software – Beyond Object-Oriented Programming. Addison-Wesley, Reading (1997)

    Google Scholar 

  8. Kent, S.: Model Driven Engineering. In: Butler, M., Petre, L., Sere, K. (eds.) IFM 2002. LNCS, vol. 2335, p. 286. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  9. Mellor, S.J., Scott, K., Uhl, A., Weise, D.: MDA Distilled. Addison-Wesley, Reading (2004)

    Google Scholar 

  10. Meyer, B.: Eiffel – The Language. Prentice-Hall, Englewood Cliffs (1992)

    MATH  Google Scholar 

  11. OMG. UML 2.0 OCL Specification – OMG Final Adopted Specification. OMG Document ptc/03-10-14 (October 2003)

    Google Scholar 

  12. Leavens, G.T., Baker, A.L., Ruby, C.: Preliminary design of JML: A behavioral interface specification language for java. Technical Report TR 98-06-rev28, Department of Computer Science, Iowa State University (2005) (Last revision July 2005), available from: www.jmlspecs.org

  13. Spivey, J.M.: The Z Notation: A Reference Manual. Prentice-Hall, Englewood Cliffs (1992)

    Google Scholar 

  14. Börger, E., Stärk, R.: Abstract State Machiness. Springer, Heidelberg (2003)

    Book  Google Scholar 

  15. Abrial, J.-R.: The B Book: Assigning Programs to Meanings. Cambridge University Press, Cambridge (1996)

    Book  MATH  Google Scholar 

  16. OMG. UML 1.5 Specification. OMG Document formal/03-03-01 (March 2003)

    Google Scholar 

  17. Apt, K.R.: Ten years of Hoare logic: A survey – part I. ACM Transactions on Programming Languages and Systems (1981)

    Google Scholar 

  18. Harel, D., Kozen, D., Tiuryn, J.: Dynamic Logic. Foundations of Computing, MIT Press, Cambridge (2000)

    Google Scholar 

  19. Ahrendt, W., Baar, T., Beckert, B., Bubel, R., Giese, M., Hähnle, R., Menzel, W., Mostowski, W., Roth, A., Schlager, S., Schmitt, P.H.: The KeY tool. Software and System Modeling 4(1), 32–54 (2005)

    Article  Google Scholar 

  20. McCarthy, J., Hayes, P.J.: Some philosophical problems from the standpoint of artificial intelligence. Machine Intelligence, 463–502 (1969)

    Google Scholar 

  21. Borgida, A., Mylopolous, J., Reiter, R.: And Nothing Else Changes: The Frame Problem in Procedure Specifications. In: Proceedings of ICSE-15, pp. 303–314. IEEE Computer Society Press, Los Alamitos (1993)

    Google Scholar 

  22. Baar, T.: OCL and graph-transformations – A symbiotic alliance to alleviate the frame problem. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 20–31. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  23. Booch, G., Rumbaugh, J., Jacobson, I.: The Unified Modeling Language User Guide, 2nd edn. Object Technology Series. Addison-Wesley, Reading (2005)

    Google Scholar 

  24. Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual, 2nd edn. Object Technology Series. Addison-Wesley, Reading (2005)

    Google Scholar 

  25. Warmer, J., Kleppe, A.: The Object Constraint Language: Precise Modeling with UML. Addison-Wesley, Reading (1998)

    Google Scholar 

  26. Strohmeier, A., Baar, T., Sendall, S.: Applying Fondue to specify a drink vending machine. In: Electronic Notes in Theoretical Computer Science, Proceedings of OCL 2.0 Workshop at UML 2003, vol.102, pp.155–173 (2004)

    Google Scholar 

  27. Hoare, C.A.R.: Proof of correctness of data representation. In: Bauer, F.L., Samelson, K. (eds.) Language Hierarchies and Interfaces. LNCS, vol. 46, pp. 183–193. Springer, Heidelberg (1976)

    Google Scholar 

  28. Paige, R.F., Ostroff, J.S.: ERC – an object-oriented refinement calculus for Eiffel. Formal Aspects of Computing 16, 51–79 (2004)

    Article  Google Scholar 

  29. Mens, T., Tourwé, T.: A survey of software refactoring. IEEE Trans. Software Eng. 30(2), 126–139 (2004)

    Article  Google Scholar 

  30. Fowler, M.: Refactoring: Improving the Design of Existing Programs. Addison-Wesley, Reading (1999)

    Google Scholar 

  31. Marković, S., Baar, T.: Refactoring OCL annotated UML class diagrams. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 280–294. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  32. OMG. Revised submission for MOF 2.0, Query/Views/Transformations, version 1.8. OMG Document ad/04-10-11 (December 2004)

    Google Scholar 

  33. Rozenberg, G. (ed.): Handbook of Graph Grammars and Computing by Graph Transformations, Foundations, vol. 1. World Scientific, Singapore (1997)

    Google Scholar 

  34. AGG team. AGG homepage (2005), http://tfs.cs.tu-berlin.de/agg

  35. Baar, T.: Non-deterministic constructs in OCL – what does any() mean. In: Prinz, A., Reed, R., Reed, J. (eds.) SDL 2005. LNCS, vol. 3530, pp. 32–46. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Baar, T., Marković, S., Fondement, F., Strohmeier, A. (2006). Definition and Correct Refinement of Operation Specifications. In: Kohlas, J., Meyer, B., Schiper, A. (eds) Dependable Systems: Software, Computing, Networks. Lecture Notes in Computer Science, vol 4028. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11808107_6

Download citation

  • DOI: https://doi.org/10.1007/11808107_6

  • Publisher Name: Springer, Berlin, Heidelberg

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

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics