Abstract :
The modeling of behavior in object oriented systems usually relies on control for diagrams and (extended) state automatas. These basic techniques do not support the design in a declarative style very well. This style is useful for modeling integrity constraints, especially active constraints, on the data model, to perform event handling, to derived new attribute values and associations and to model strategies in business and engineering. Rules are added as a declarative modeling technique for behavior. Roughly speaking, a rule consists of a condition and an action. If the condition is true, the action is performed. The concept of rules is integrated into an existing object oriented modeling technique by formulating rules on object diagrams. A rule application may test and change a certain object structure. The application may be triggered automatically by a relevant change of this object structure, periodically or by an event occurring in some behavior diagram. This rule concept has an underlying formal semantics on the basis of graph transformation which may be exploited for analyzing a designed rule set, concerning, e.g. conflicts, dependencies, etc. The graphical notation of the rules follows the UML notations as far as possible
Keywords :
data integrity; finite state machines; logic programming; object-oriented programming; programming language semantics; UML notations; active constraints; attribute values; behavior diagram; behavior modeling; data model; declarative modeling technique; declarative style; event handling; formal semantics; graph transformation; graphical notation; integrity constraints; object diagrams; object oriented modeling techniques; object oriented systems; object structure; rule application; rule concept; rule set; state automatas; visual rules; Automata; Automatic control; Councils; Data engineering; Data models; Object oriented modeling; Testing; Time factors; Unified modeling language;