Sunteți pe pagina 1din 2

Information Grammar for Patterns (IGP) for Pattern

Language of Data Model Patterns Based on Fully


Communication Oriented Information
Modeling (FCO-IM)

Fazat Nur Azizah1, Guido P. Bakema2, Benhard Sitohang1, and Oerip S. Santoso1
1
School of Electrical Engineering and Informatics, Bandung Institute of Technology
Jln. Ganesha no. 10, Bandung, Indonesia
{fazat,benhard,oerip}@stei.itb.ac.id
2
Faculty of Engineering, Institute of Information Technology, Media and Communication,
HAN University of Applied Sciences
Ruitenberglaan 26, 6802 CE, Arnhem, The Netherlands
guido.bakema@han.nl

Abstract. The use of patterns in a design process, including data modeling, is an


attempt to create a better solution to a problem. We propose the use of data model
patterns, organized in a pattern language, and based on Fully Communication Ori-
ented Information Modeling (FCO-IM) as the modeling approach, as a standard to
produce high quality data models. We introduce the concept of Information
Grammar for Pattern (IGP) which works as a kind of template to generate FCO-
IM’s Information Grammar (IG). IGP is also used to define the relations among
patterns. Based on how they are abstracted, we also define 3 types of IGP. The
IGP provides the basic idea for the pattern language of data model patterns based
on the relations among patterns.

Keywords: data model pattern, pattern language, FCO-IM, IGP, IG.

1 Introduction
The use of patterns in a design process, including data modeling, is an attempt to
create a better solution that is reusable for more than one instantiation of a problem. It
is generally accepted that creating a high quality data model is not an easy task. This
problem can be reduced if data modelers are acquainted with standards which ensure
that the data models both meet business needs and be consistent [15]. Data model
patterns are expected to become such standard in data modeling.
Most current works on data model patterns focus on providing data model patterns,
especially the so-called domain-specific data model patterns, using either Entity Rela-
tionship Modeling (ERM) or Object Oriented Modeling (OOM) (see e.g. [6]-[10],
[14]). In this research, we propose the use of conceptual data model patterns organized
in a pattern language as a standard to produce high quality conceptual data models. We
use the concept of pattern and pattern language by Christopher Alexander [1],[2] with
Fully Communication Oriented Information Modeling (FCO-IM) [5], one of fact

R. Meersman et al. (Eds.): OTM 2010 Workshops, LNCS 6428, pp. 522–531, 2010.
© Springer-Verlag Berlin Heidelberg 2010
IGP for Pattern Language of Data Model Patterns 523

oriented modeling (FOM) method, as the modeling approach. It is expected that the
use of FCO-IM will give more insights and provide a more powerful concept for the
data model patterns and the pattern language. A preliminary work on data model pat-
terns based on FCO-IM can be found in [3]. In our proposal, the pattern language is
used to generate an FCO-IM conceptual data model which is also called the Informa-
tion Grammar (IG).

2 The Concept of Data Model Pattern


Our definition of data model pattern is based on classical definition of pattern by
Christopher Alexander. According to Alexander, each pattern is a three-part rule,
which expresses a relation between a certain context, a problem, and a solution [1].
Thus, we define: a data model pattern (π) is a triplet consisting of problem (P), con-
text (C), and solution (S); each applies to a pattern:
π ≡ (P, C, S) (1)
According to [1] and [2], a problem (P) describes the intent of the pattern, i.e. the
goals/objectives that it wants to reach within a context (C) as well as a system of forces
which is required to be balanced by a solution (S). In an FCO-IM based conceptual
data model patterns, the goal is in general to provide an IG (FCO-IM conceptual data
model) which works for particular situations (context). Context (C) defines a set of
situations in which the problem (P) recurs and the solution (S) is desirable. In an FCO-
IM based conceptual data model patterns, it defines a set of situations in which a par-
ticular data modeling problem recurs.
Solution (S) is the configuration that balances the system of forces in order to
achieve the intent within the given context (C). In FCO-IM based conceptual data
model pattern, we employ a kind of template to produce FCO-IM IG that can solve the
problem within a given context. An IG stores in type level the facts related to a specific
UoD [9]. In other words, it stores a higher level of abstraction of the facts. The tem-
plate to produce FCO-IM IG stores an even higher level of abstraction of the fact types
stored in IGs. We call this template as Information Grammar for Pattern (IGP). This
template will not contain only the template to generate IG, but also the rules to gener-
ate other patterns. See section 3 for further explanation on the IGP.
The solution contains other elements which are used to give further explanation
about the IGP. They are called rationale and resulting context. Rationale is used to
explain how the IGP can be used to achieve the intent of the pattern by balancing the
system of forces, while the resulting context is used to explain the consequences that
follow the application of the pattern.
Problem, context, and solution are the main elements of a conceptual data model
pattern. There are other elements that support the description of a conceptual data
model pattern: example, known uses, and name. Example and known uses of concep-
tual data model patterns are other elements that provide clearer description of the pat-
tern by giving instances of the application of the pattern. While example explains in
full detail how a pattern is used in a typical case (it can be a real or a made-up case),
known uses explain real world cases in which the problem is found. Every pattern must
be given a name that embodies the knowledge described within the pattern. It is used to
introduce a pattern and to give the first glimpse of what the pattern might be.

S-ar putea să vă placă și