Article Preview
TopIntroduction
Conceptual data modeling patterns are used to support the conceptual design of databases. A conceptual data modeling pattern describes a reproducible solution to a general conceptual database design problem, which can be applied to a specific context by customizing its classes, associations, and attributes (Batra, 2005; Reinhartz-Berger & Sturm, 2009).
Research has shown that the use of conceptual data modeling patterns increases the productivity of database designers, especially novice designers (Antony, Batra, & Santhanam, 2005). However, it has also been observed that the use of patterns stimulates the inclusion of superfluous concepts, which are copied from the selected pattern even if they are irrelevant for solving the problem (Batra & Wishart, 2004). This inclusion of irrelevant concepts is explained by the human tendency to anchor to an initial solution under uncertainty (e.g. lack of relevant modeling experiences for novices, unstable user requirements) (Tversky & Kahneman, 1974).
While the use of patterns might result in models with irrelevant elements, incompleteness is also frequently observed in conceptual data models (Moody & Shanks, 2003), meaning that the conceived model does not fully represent the domain concepts and relations that are deemed relevant for the database. To address this dual problem of irrelevancy and incompleteness in models requires being able to accurately assess the scope of the domain to be represented as well as that of the patterns that are used to guide the modeling process. Ideally, the scope of conceptual data modeling patterns is explicitly defined and represented when offering them to modelers, e.g., as part of a pattern catalogue or repository. An explicit indication of scope could help decide which patterns match which parts of the domain to be represented, and as such improve model relevancy and completeness.
As a solution to this problem, we propose an ontology-based framework to explicitly define the scope of conceptual data modeling patterns that are intended for a particular domain in terms of the generic domain knowledge that is captured by domain ontologies. Patterns can be positioned in this framework by ontologically classifying the elements they contain, which helps clarify their scope (i.e., what part of the domain they cover).
The structuring orientation (Dunn & McCarthy, 1997) capability of domain ontologies has already been shown to improve the understandability of models that are constructed using ontology-derived patterns (Poels, 2011). We believe ontologies can not only support the interpretation of patterns, but also the structuring of pattern catalogues and repositories, helping pattern developers organize their patterns and helping modelers find the patterns that are relevant to the problem at hand. The positioning of patterns in the framework is expected to mitigate relevancy and completeness errors as the framework then visualizes the parts of the domain for which a solution has been suggested (e.g., by a pattern from a catalogue) and the parts for which no solution has been presented yet.
Although many conceptual data modeling patterns have been proposed (Coad, North, & Mayfield, 1997; Fowler, 1997; Gamma, Helm, Johnson, & Vlissides, 1995; Hay, 1996), we have applied our ideas for an ontology-based structuring of conceptual data modeling patterns to Batra’s selection of patterns (Batra, 2005). Batra synthesizes earlier proposals of conceptual data modeling patterns, with a focus on patterns that can be used for the conceptual design of enterprise databases. He justifies his selection of patterns by showing that they occur frequently in three influential sources for conceptual data modeling: the enterprise reference models of Scheer (1998) and Silverston et al. (1997) and the casebook of Whitlock et al. (2003).