Information Technology Reference
In-Depth Information
A Pattern language for Computer-
mediated interaction
of a design pattern, i.e., a context description, a
problem statement, a solution statement, and a
collection of examples where the solution is in
place, we identified several aspects that should
be included in a pattern that addresses socio-
technical problems.
Our pattern structure is shaped to meet both
end-user's and developer's needs for detail and
illustration. The pattern name is followed by the
intent , and the context of the pattern. All these
sections help the reader to decide, whether or
not the following pattern may fit into his current
situation.
Then follows the core of the pattern composed
of the problem and the solution statement sepa-
rated by a scenario and a symptoms section. The
scenario is a concrete description of a situation
where the pattern could be used, which makes the
tension of the problem statement tangible. The
symptoms section helps to identify the need for
the pattern by describing aspects of the situation
more abstract again.
After the solution section, the solution is ex-
plained in more detail and indications for further
improvement after applying the pattern are pro-
vided. The participants section explains the main
components or actors that interact in the pattern
and explains how they relate to each other. The
rationale section explains, why the forces are
resolved by the pattern. The check section lists
a number of questions, one has to answer before
applying the pattern in a development context.
Unfortunately, the application of a pattern can in
some cases raise new unbalanced forces. These
counter forces are described in the section labeled
danger spots .
The solution presented in a pattern represents
a proven solution to a recurring problem, so the
known uses section provides well-known examples
where this pattern is applied. Finally, the related
patterns section states what patterns are closely
related to this one, and with which other patterns
this one should be used.
An interconnected set of patterns is called a pat-
tern language. Patterns of a pattern language are
intended to be used together in a specific problem
domain for which the pattern language guides
the design decisions in the specific problem
domain.
Links between patterns are an important crite-
rion for organizing a pattern language. Forces of a
pattern or 'requirements interact (and are therefore
linked), if what you do about one of them in a
design necessarily makes it more difficult or easier
to do anything about the other' (Alexander, 1964).
Thus, 'each pattern sits at the center of a network
of connections which connect it to certain other
patterns that help to complete it. [...] And it is the
network of these connections between patterns
which creates the language.' (Alexander, 1979) In
case of patterns in the same problem domain, this
results in a densely connected graph of patterns
with links of different relevance.
The application of a pattern language brings
up additional relations between patterns, called
sequences . A sequence describes the order in
which patterns can be or were applied in the
context of a specific use case. Since the pattern
approach demands that developers focus on one
pattern at a time and thus improve the system
incrementally in piecemeal growth (Alexander,
Silverstein, Angel, Ishikawa, & Abrams, 1980;
Schümmer & Lukosch, 2006; Schümmer et al.,
2006) we can create a linear sequence by ordering
the patterns according to the point in time when
they were used. A sequence is then a sentence
spoken in the pattern language that changes all
forces addressed by the patterns used as words
in the sentence.
In the pattern language for computer-mediated
interaction, we consider patterns on two levels,
each with a different target group (Lukosch &
Schümmer, 2006a):
Search WWH ::




Custom Search