Abstract
In component-based development, object-oriented modelling notations such as UML are being proposed as a way of providing richer specifications of components. Much more so than in bespoke software development, this requires a high level of precision coupled with sufficient expressive power. Expressive power is delivered by adding textual annotations, such as invariants, pre & post conditions, to diagrams. Navigation expressions, which identify collections of objects by navigating associations, are central to making such annotations precise. We give a semantics to navigation expressions as they are used in recently proposed extensions to object-oriented modelling notations in widespread use by practitioners. The semantics is given using Larch (essentially FOPL), which makes it as accessible as possible while enabling some support for reasoning. The semantics helps to clarify some subtle issues to do with navigation expressions, including the meaning of navigating across collections (sets, bags and sequences) as opposed to just single objects, and the use of filters on collections within expressions.
This research is partially funded by the UK EPSRC under grant number GR/K67304
Chapter PDF
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Allen, P.: Components and Objects. Available at http://www.selectst.com/download (1997)
Bicarregui, J., Lano, K., Maibaum, T.S.E.: Objects, Associations and Subsystems: a hierarchical approach to encapsulation. Proceedings of ECOOP'97, LNCS Series, Springer-Verlag (1997)
Bordeau, H., Cheng, B.: A Formal Semantics for Object Model Diagrams. IEEE Transactions on Software Engineering, Vol. 21, No. 10 (1995)
Cook, S., Daniels, J.: Designing Object Systems: Object-Oriented Modelling with Syntropy. Prentice Hall (1994)
D'Souza, D., Wills, A.: Extending Fusion: practical rigor and refinement. R. Malan et al., OO Development at Work, Prentice Hall (1996)
D'Souza, D., Wills, A.: Objects, Components and Frameworks with UML: The Catalysis Approach. Addison-Wesley, to appear 1998. Draft and other related material available at http:/ /www.trireme.com/catalysis
Fowler, M., Scott, K.: UML Distilled. Addison-Wesley (1997)
France, R., Bruel, J., Larrondo-Petrie, M., Shroff., M.: Exploring The Semantics of UML Type Structures with Z. Proceedings of International Workshop on Formal Methods for Objectbased Distributed Systems (FMOODS), Chapman and Hall (1997)
Burstall R., Goguen J.: Putting theories together to make specifications. In Reddy R. (ed.) Proc. IJCAI 77, (1977) 1045–1058.
Graham, I., Bischof, J., Henderson-Sellers, B.: Associations considered a bad thing. Journal of Object-Oriented Programming, SIGS Publications, February (1997)
Guttag, J., Horning, J.: Larch: Languages and Tools for Formal Specifications. Springer-Verlag (1993)
Hamie, A., Howse, J.: Interpreting Syntropy in Larch. Technical Report ITCM97/C1, University of Brighton (1997)
Hamie, A., Howse, J., Kent, S.: Compositional Semantics of Object-Oriented Modelling Notations. Evans, A. and Lano, K., Making Object-Oriented Methods more Rigorous, LNCS Series, Springer Verlag, to appear (1998)
Hamie, A., Kent, S., Howse J.: A Semantics for OCL, submitted to ECOOP98 (1997)
Kent, S.: Constraint Diagrams: Visualising Invariants in Object-Oriented Models. Procs. of OOPSLA97, ACM Press, to appear (1997)
Kent, S., Lauder, A.: Rigorous Techniques in Component-Based Development. Evans, A. and Lano, K.: Making Object-Oriented Methods more Rigorous, LNCS Series, Springer Verlag, to appear (1998)
Rumbaugh, J., Blaha, M., Premerali, W., Eddy, F, Lorensen, W.: Object-Oriented Modelling and Design. Prentice Hall (1991)
Short, K.: Component Based Development and Object Modeling. Available from http:// www.cool.sterling.com/cbd (1997)
UML Consortium: The Unified Modeling Language Version 1.1. Available from http:// www.rational.com (1997)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hamie, A., Howse, J., Kent, S. (1998). Navigation expressions in object-oriented modelling. In: Astesiano, E. (eds) Fundamental Approaches to Software Engineering. FASE 1998. Lecture Notes in Computer Science, vol 1382. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0053587
Download citation
DOI: https://doi.org/10.1007/BFb0053587
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-64303-6
Online ISBN: 978-3-540-69723-7
eBook Packages: Springer Book Archive