A Design Pattern Language to Assist the Design of Alarm Visualizations for Operating Control Systems

This section describes the rationale of the solution proposed to the research problem identified. In particular, this research work proposes a design pattern language as a fitting approach to represent and articulate reusable alarm visualization design knowledge.

What is a Design Pattern Language?

According to Appleton (1997) a design pattern language is referred to as "a collection of patterns which at every level of scale, work together to resolve a complex problem into an orderly solution
according to a predefined goal". However, point of view might affect one's interpretation of what is and isn't a pattern. One person's pattern can be another person's primitive building block.
This work is focused on design patterns at a certain level of abstraction. In particular, in this work, design patterns are referred to as:

Design Patterns as a suitable Design Knowledge Reuse Approach

Originally proposed by Alexander (1977) for the design of buildings and towns, design patterns are reusable components encapsulating design knowledge.
They provide a common vocabulary that allows designers to articulate recurring design problems. In particular, they are considered as one of the most succesful attempt to codify design knowledge of different areas such as software design and user interface design.
For instance, the Action Button pattern, which has been widely applied to design user interfaces, solves a common problem about letting know the user what element
what element on the interface can and cannot be clicked on. There are a number of authors that have also looked at the use of patterns for HCI.
Borchers (2001) argued for the use of design patterns to capture HCI knowledge. He mentioned the need for the encapsulation of the designers' experiences, methods, and values into patterns.
Some have created patterns for specific domains. For example, Landay and Borriello (2003) created patterns for ubiquitous computing.
Their goal was to apply them within a field by documenting lessons learned and passing them on to new designs.

Design Patterns for Visualization Design

Several authors have mostly agreed about the benefit gained from incorporating design patterns into the visualization design process.
For instance, Stolte et al.(2003) introduces design patterns to describe different forms of zooming within multi-scale visualizations.
In Thomas and Cook's (2005) research agenda for visual analytics, they called for conducting research to formally define design spaces that capture different classes of visualizations.
They further stated that "one potential approach is to develop a library of common visualization design patterns from which developers could draw to build new visualizations".
Similarly, Chen (2006) suggests high-level visualization patterns to address general visualization concerns. Sedig and Parsons (2013) propose a catalog of design patterns that support the design of visualization-based computational tools for complex cognitive activities.
All of them conclude that, properly used, design patterns help designers make their design simpler, more flexible, modular, reusable, and understandable.