Technical Report
Modeling the Dynamic Behavior of Objects - On Events, Messages and Methods
Author(s): R. Breu, R. Grosu
Year: 1998
Number: TUM-I9804
Editor:
CR Classification: C.2.1, D.1.3, D.1.7, D.2.1, D.2.2, D.2.4, D.3.2, D.4.1, F.1.1, F.1.2, F.3.2
CR General Terms: Design, Languages, Theory
Keywords: Visual Formalisms, design, cuncurrent objects, events, messages,
message passing, life-cycle, multiple threads, object model
Abstract:Events, messages and methods are concepts supported by most object-oriented
analysis and design techniques. The
interrelation between these concepts is
however not yet fully understood and guidelines and techniques for method
specification
remain unprecise and incomplete. In this paper we provide a
simple object model which we use both to clarify the above interrelation
and to
devise a method for specifying the dynamic behavior of objects. In a two layered
approach, this method integrates the
description of the object's life-cycles
with the specification of the object's methods. Our object model is
characterized by two
important assumptions, namely that methods are virtual
objects and that messages sent to inexistent objects are returned back as an
error. Both assumptions are supported by practical evidence and allow us to
model internal concurrency, multiple threads and
attribute sharing in a very
simple and elegant way. Our ideas are illustrated on a simple banking example.
Available as compressed Postscript
BibTeX-Entry:
@techreport{BreuGrosuTUM-I9804,
author = {R. Breu and R. Grosu},
title = {Modeling the Dynamic Behavior of Objects - On Events, Messages and Methods},
number = {TUM-I9804},
institution = {Technische Univerit\"at M\"unchen},
year = {1998},
url = {http://www4.informatik.tu-muenchen.de/reports/BreuGrosuTUM-I9804.html},
abstract = {Events, messages and methods are concepts supported by most object-oriented
analysis and design techniques. The
interrelation between these concepts is
however not yet fully understood and guidelines and techniques for method
specification
remain unprecise and incomplete. In this paper we provide a
simple object model which we use both to clarify the above interrelation
and to
devise a method for specifying the dynamic behavior of objects. In a two layered
approach, this method integrates the
description of the object's life-cycles
with the specification of the object's methods. Our object model is
characterized by two
important assumptions, namely that methods are virtual
objects and that messages sent to inexistent objects are returned back as an
error. Both assumptions are supported by practical evidence and allow us to
model internal concurrency, multiple threads and
attribute sharing in a very
simple and elegant way. Our ideas are illustrated on a simple banking example.},
CRClassification = {C.2.1, D.1.3, D.1.7, D.2.1, D.2.2, D.2.4, D.3.2, D.4.1, F.1.1, F.1.2, F.3.2},
CRGenTerms = {Design, Languages, Theory}}