Home > Chapters & Articles > Structural Patterns for the Common Information Model

Structural Patterns for the Common Information Model

Chapter Description

This chapter from Common Information Models for an Open, Analytical, and Agile World covers five software design patterns that illustrate different approaches to structuring your common information model.
  • “14. To work our way towards a shared and living language once again, we must first learn how to discover patterns which are deep, and capable of generating life.”
  • Christopher Alexander, “The Timeless Way of Building.” New York, Oxford University Press (1979): xii

In This Chapter:

We now know that the common information model is not a single artifact. It is made up of many parts—this content is tuned to the needs of the organization. In this chapter we provide more guidance on how to structure a common information model. To do this we describe five software design patterns that illustrate different approaches to structuring your common information model.

Introduction

Software design patterns1 are a useful way to explain alternative design choices. They use simple English statements to cover

  • The context of the design decision
  • The problem that needs to be solved
  • An example scenario that illustrates the problem
  • The forces that make the problem difficult to solve
  • A description of the solution
  • An illustration of the solution showing how the example scenario was resolved
  • A description of the consequences of using the solution, expressed as both benefits and liabilities
  • Pointers to known usages of this solution
  • Pointers to related patterns

This section covers five basic high-level structural patterns for a common information model. The first pattern is the basic definition of a common information model. It establishes the need for the common information model and is summarized in Table 3.1.

Table 3.1 Generic design pattern for a common information model

Icon

Pattern Name

Problem

Solution

common.jpg

COMMON INFORMATION MODEL

An organization is struggling to integrate its IT systems and business operations. This integration may be required to increase its efficiency, embrace new technology, expand its business, and/or improve its customer service.

The organization should develop a shared understanding of its information’s terminology, meaning, and structure in order to facilitate agile and effective integrated operations.

The subsequent patterns are specializations of this first common information model pattern that each support a particular business need. A specific implementation of a common information model may focus on one pattern, or may combine these patterns if the stakeholders want to address multiple challenges simultaneously.

Table 3.2 summarizes the four specialized patterns, and the details of each of the patterns follow the table.

Table 3.2 Specialized structural patterns for a common information model

Icon

Pattern Name

Problem

Solution

common.jpg

CONCEPT BEADS

An organization needs common definitions of the simple concepts that are used in many applications to improve the efficiency and consistency of the work of its developers. However, it does not have a strong skill base in modeling.

Create a common information model that defines a clear meaning for each concept and a simple structure for how to record information about an instance of this concept.

common2.jpg

CONTINUOUS FABRIC

An organization needs to integrate related information from a wide range of information sources.

Create a common information model that defines the meaning, structure, and relationships among all the core concepts.

common3.jpg

ENCAPSULATED VIEWS

An organization needs to exchange information for multiple purposes.

Create a common information model that defines small clusters of related concepts that can be used as structures for exchanging information.

common4.jpg

UNIFYING CONTEXT

An organization needs to unify operations that have been independent in the past.

Create a common information model that maps existing terminology and definitions to a set of definitions that represents a canonical view of the subject area.

2. Common Information Model | Next Section