Home ] Overview ] Publications ] OMG ] Case Study ] Support ] Other Work ] Search ]
horiz-space.GIF (952 bytes)

Concept Map
How to...
Model Kinds
This 'n That






Objects and Actions

Models in Catalysis are about objects and actions. An object is any individual thing you need to talk about: a customer, product, telephone call, boiler, insurance policy, department, company, computer, software application, component within an application. An action describes interactions between those objects that have specified effects: place an order, end a phone call, make a claim on an insurance policy, deploy a computer system in the accounting department. (If you need a familiar point of reference, treat an action as analogous to a use case; we will clarify the relationship later). An object may participate in an action (customer places an order), influence the outcome of that action (inventory of a product affects the placement of an order), and may itself be changed by that action (the customer's balance due increases). The way an object's state influences actions, or is affected by them, is modeled using attributes of those objects (the inventory attribute of a product, or the account balance attribute of a customer, or the levels of interest a customer has in each product).

Objects and actions are not specific to OOP languages, or even to software. Nothing in the basic modeling approach pre-supposes an object-oriented design and implementation environment. The modeling techniques can be used equally to describe a problem domain, an entirely manual business process, an object-oriented or component-based design, a legacy system, or a rule-based implementation. What varies is the strategy used for the design and implementation of what has been modeled -- for an object-oriented implementation, this approach directly applies all the way down to code; for a different implementation, it may apply down to the external view of some component in a larger system.

Email suggestions to All contents copyrighted 1998.