This paper proposes a specific Dublin Core
Application Profile to document design patterns. The
profile is based on elements of the DC2AP metadata
profile, proposed by Vegi et al. (2012a) to document
analysis patterns, and on the template used by
Gamma et al. (1995). Moreover, this paper proposes
extending the APRI structure by adding to it a
repository of design patterns, thus allowing this type
of pattern to be cataloged and reused.
The remaining of the paper is structured as
follows. Section 2 reviews works related to design
pattern catalogs, besides introducing DC2AP, a
metadata profile to document analysis patterns.
Section 3 introduces DC2DP, a Dublin Core
Application Profile to document design patterns.
Section 4 proposes extending the APRI structure,
while section 5 presents the final considerations and
proposes some future work.
2 RELATED WORKS
2.1 Design Pattern Catalogs
A design pattern catalog is made up of a set of
related patterns with characteristics in common.
These patterns may be used individually or be
interconnected, since they may be used alongside
each other. There are several design pattern catalogs,
such as GoF Patterns (Gamma et al., 1995), J2EE
Patterns (Alur et al., 2003), SOA Patterns (SOA
Patterns, 2013), among others.
Each existing design pattern catalog uses a way
of documenting the patterns that compose it, i.e.,
each one uses a set of elements to describe the
pattern, with no standardized way of documenting
design patterns.
2.2.1 GoF Pattern Catalog
Gamma et al. (1995) propose in their book a design
pattern catalog, which became known as GoF
Pattern Catalog, made up of 23 patterns classified
according to two criteria: scope and purpose.
Regarding scope, the patterns may be split into
class and objects. As for the purpose, the patterns are
classified into creation, structural, and behavioral
patterns.
In order to describe the design patterns in the
catalog, the authors divided each pattern into
sections according to the template proposed. The
elements in the template used in documenting these
patterns are: pattern name and classification, purpose
and goal, also known as, motivation, applicability,
structure, participants, collaborations, consequences,
implementation, code examples, and known uses.
2.2.2 J2EE Pattern Catalog
Alur et al. (2003) presented in their book a design
pattern catalog based on the work experience with
the J2EE platform of Sun Java Center to clients
worldwide.
The J2EE Pattern catalog is made up of 21
patterns split into presentation layer, business layer,
and integration layer patterns. Each pattern is
documented following a template. The elements in
the template are: problem, forces, solution,
consequences, and related patterns.
2.2.3 SOA Pattern Catalog
The design patterns in the catalog presented in SOA
Patterns (2013) list the service-oriented principles
when a dependency or relationship among services
in an architecture must be highlighted.
The SOA Pattern catalog is made up of 83
patterns divided into the following categories:
Service Implementation, Service Security, Service
Contract Design, Legacy Encapsulation, Service
Governance, Capability Composition, Service
Messaging, Composition Implementation, Service
Interaction Security, Transformation, REST-
inspired.
The elements in the template to document the
SOA patterns are: problem, solution, application,
principles, related patterns, goals related to service-
oriented computing.
2.2 Dublin Core Application Profile to
Analysis Patterns
The Dublin Core Application Profile to Analysis
Patterns (DC2AP) was proposed by Vegi et al.
(2012a) to document analysis patterns. This
metadata profile was created based on the template
proposed by Pantoquilho et al. (2003) to document
analysis patterns and on the Dublin Core metadata
standard elements (DCMI, 1998).
According to Vegi et al. (2012a), the goal of
DC2AP is to improve the recovery and reuse of
analysis patterns by means of a description that
allows the computer to perform a more precise
treatment of the data previously not recovered by
search engines. This task is performed based on
detailed information provided on these patterns.
The DC2AP elements are associated to a
Universal Resource Identifier (URI) and
ICEIS2014-16thInternationalConferenceonEnterpriseInformationSystems
210