# CH 23: Time and Space

By B.Gokul R.Marshall Ismath jafery

It's possible to show the changing state of an object by showing it multiple times in the same interaction diagram. but with each occurrence representing a different state. representing behavior over time and space. In all. every computation takes some amount of time and space. • Time and space constraints. • In the real world. there are two primary kinds of behavioral things. commonly used when modeling real time systems. These are the verbs of a model. Especially for hard real time systems.Where you find time and space • Behavioral things are the dynamic parts of UML models. you are really specifying the value of its state at a given moment in time and space. it's important that you model these properties. • when you visualize states. .

things happen. and at the most unexpected times. • An event is the specification of a significant occurrence that has a location in time and space . Not only do things happen.Where you find time and space • In the real world. "Things that happen" are called events. but lots of things may happen at the same time. and each one represents the specification of a significant occurrence that has a location in time and space.

What we will see today are • • • • • Time. duration. and location Modeling timing constraints Modeling the distribution of objects Modeling objects that migrate Dealing with real time and distributed systems .

Timing Constraints and Location .

Common Modeling Techniques: Modeling Timing Constraints • For each event in an interaction. consider whether there is an associated maximum relative time for that sequence. • For each interesting sequence of messages in an interaction. .Model that real time property as a timing constraint on the message. Model that real time property as a timing constraint on the sequence. consider whether it must start at some absolute time. Model those semantics as timing constraints on the operation. consider its time complexity. • For each time critical operation in each class.

Modeling Timing Constraint .

a loosely coupled one will have distant objects (and thus. Partition sets of objects that have low degrees of interaction. A tightly coupled locality will have neighboring objects close by. to reduce the cost of communication. there will be latency in communicating with them). • Next consider patterns of interaction among related sets of objects.Modeling the Distribution of Objects • Consider all its neighbors and their locations. Tentatively allocate objects closest to the actors that manipulate them. . Co-locate sets of objects that have high degrees of interaction.

volatility. Redistribute your objects to balance the load of each node. and redistribute your objects as appropriate. By nesting objects in the nodes of a deployment diagram 2. • Consider also issues of security. and quality of service. By explicitly indicating the location of the object as a tagged value . • Render this allocation in one of two ways: 1.Modeling the Distribution of Objects • Next consider the distribution of responsibilities across the system.

Modeling the Distribution of Objects .

• Using the become and copy stereotyped messages. render the allocation of an object to a new node. . • Consider the issues of synchronization (keeping the state of cloned objects consistent) and identity (preserving the name of the object as it moves). • Render the allocation of an object to a node by explicitly indicating its location as a tagged value.Modeling Objects that Migrate • Select an underlying mechanism for physically transporting objects across nodes.

Modeling Objects that Migrate .