IEEE Transactions on Knowledge and Data Engineering

— The Unified Modeling Language (UML) supports the capture and representation of conceptual semantics in analysis and modeling of arbitrary domains of discourse. It is now being used for modeling of database and agent-oriented applications in addition to its use with object-oriented software. An important activity in conceptual modeling is the capture and expression of domain constraints on the underlying data and object states. UML supports the capture of declarative constraints both directly in the graphical class diagram notation and in the separately denoted Object Constraint Language (OCL) syntax. In this paper, we present a set of constraint patterns that have been formalized for capturing a broader category of semantic constraints directly using the class diagram notation. The objective of this work is to enrich UML static models for greater precision in conceptual modeling applications by formalizing the syntax and semantics of these constraint patterns, thus giving analysts a tool for capturing these common patterns directly in the UML class diagram with a minimum of additional notation—without requiring a separate expression of constraints in the adjunct OCL syntax. We present a taxonomy for propositional constraints, discuss their semantics through the use of logic truth tables and Karnaugh maps, and illustrate their usage in UML class diagrams by way of an example from the Unix security domain.

Citations in the corpus