In the context of database, we believe that MDD (Model-Driven Development) (OMG, 2006) is a very ambitious task because we find that when applying database development methodologies such as (Elmasri, et al., 2007), there are processes devoted to transforming conceptual into logical schemata. In such processes, semantic losses are produced since logical elements are not coincident with conceptual elements. A correct constraints transformation is necessary to preserve the semantics that reflects the Universe of Discourse. The multiplicity constraint, also called cardinality constraint, is one of these constraints that can be established in a conceptual schema. It has dynamic aspects that are transformed into the logical model as certain conditions to verify the insertion, deletion, and update operations. The verification of these constraints is a serious and complex problem because currently database systems are not able to preserve the multiplicity constraints of their objects. To solve the modeling problem, CASE tools have been introduced to automate the life cycle of database development. These platforms try to help the database developers in different design phases. Nevertheless, these tools are frequently simple graphical interfaces and do not completely carryout the design methodology that they are should to support.
When the active technology was introduced into database systems, the automatic transformation from constraints specification to active rules has been well considered in the literature. Different approaches were used to transform integrity constraints into active rules. Some of these approaches reject updates when the violation occurs, and the initial state before updates is restored (Decker, 2006). Other approach in which inconsistency states are detected first, but consistency is restored by issuing corrective actions that depend on the particular constraint violation (Ceri et al., 1997).
Key Terms in this Chapter
Platform Independent Model (PIM): Focuses on the high-level business logic without considering features of the implementation technology of the system.
MDD (Model-Driven Software Development): Focuses on using models as approaches to cover the life cycle of software development. The main contribution of MDD is to give a solution to heterogeneity and interoperability among systems with different implementation platforms.
Platform Specific Model (PSM): Describes the technology that will be used to build the application.
Integrity Constraint: An integrity constraint is used to specify some restriction for maintaining the consistency of data. It can be defined in such a way that in a table (or more than one table) all qualified tuples must satisfy a logical predicate.
Triggers: A trigger is a named event-condition-action rule that is activated by a database state transition. Once a trigger is activated and its condition is evaluated to true, the predefined actions are automatically executed.
Termination: The execution of any set of active rules must terminate. This needs to avoid cycling in the execution. A cycling means a non-termination problem is produced in the triggers execution.
Multiplicity Constraints: Also called cardinality constraint, is one of these constraints that can be established in a conceptual schema. It has dynamic aspects that are transformed into the logical model as certain conditions to verify the insertion, deletion, and update operations.