and actual semantics of the stereotype are defined in
another document, a so called UML profile. However,
the icons do alert to the reader of the model that the
two states and the transition are different than normal,
non-stereotyped states and transitions.
While icons can also be used to show that some
model elements are different than standard model ele-
ments, they usually take only a small part of the model
element, and are less prominent than colors. It is eas-
ier to see colors than icons. Also, difference between
colors is easier to perceive than difference between
icons. Therefore, colors are more suited to highlight
differences between model elements. On the other
hand, colors and icons may be used complementar-
ily, and icons may be colored. The above discussion
about dos and dont’s also applies to using colors in
icons.
4 RELATED WORK
It has been recognized that colors may be helpful
to enhance the understanding of software models,
see (Yusuf et al., 2007), focusing on UML class di-
agrams, and (Reijers et al., 2011), focusing on Petri
Nets, although these papers do not contain guideline
for the use of colors. Some guidelines regarding lay-
out of model elements are published in (AgileMod-
eling, 2016), and in (Mendling et al., 2010) the au-
thors make recommendations of the elements to use
in graphical models, e.g., that OR branching should
be used as little as possible. In these guidelines, col-
ors are not considered. To the author’s knowledge,
our paper is novel in that we provide guidelines of
where and how to use colors in UML class diagrams
and state machine models.
In programming, modern IDEs, such as Eclipse
3
and IntelliJ IDEA
4
, usually display different elements
of a program, such as keywords, identifiers, numbers,
strings, comments, etc., in different colors, and users
can have individual settings of these colors. More-
over, simple static analysis techniques are applied, so
that erroneous code and code with bad smells, e.g.,
unused variables, are also shown in different colors
than “normal” code. This way, the programmer re-
ceives visual aids to structure and understand the pro-
gram better, and to see potential errors in the pro-
gram. To the author’s knowledge, guidelines of how
to use colors in programs have not been investigated
and published yet.
3
http://www.eclipse.org/
4
http://www.jetbrains.com/idea/
5 CONCLUSIONS AND FUTURE
WORK
We have given two examples of where to use colors
as a visual aid in UML diagrams. We considered both
structural and behavioral modeling. Based on the ex-
amples, we proposed some guidelines of how to use
colors in UML diagrams.
Future work includes development of modeling
tools to enable convenient modeling with colors, and
empirical studies on the effectiveness of our guide-
lines. We also plan to extend our guidelines to cover
other graphical modeling languages, such as BPMN
and Petri Nets.
ACKNOWLEDGEMENTS
This work has been partially sponsored by the project
“Anwendungszentrum creative Applied Interactive
Technologies” (cAPITs) of the European Regional
Development Fund.
REFERENCES
AgileModeling (2016). Modeling Style Guidelines.
http://agilemodeling.com/style/. Accessed on 2016-
11-16.
artyfactory (2016). The Visual Elements—Color.
http://www.artyfactory.com/art appreciation/visual-
elements/color.html. Accessed on 2016-11-16.
doFactory (2016). http://www.dofactory.com/net/abstract-
factory-design-pattern. Accessed on 2016-11-16.
Gamma, E., Johnson, R. H. R., and Vlissides, J. (1994). De-
sign Patterns: Elements of Reusable Object-Oriented
Software. Addison.
Mendling, J., Reijers, H. A., and van der Aalst, W. (2010).
Seven Process Modeling Guidelines (7PMG). Infor-
mation and Software Technology, 52(2):127–136.
OMG (2011). Business Process Model and Notation, Ver-
sion 2.0. Specification, Object Management Group.
http://www.omg.org/spec/BPMN/2.0/PDF/, Accessed
on 2016-11-16.
OMG (2015). Unified Modeling Language, Version
2.5. Specification, Object Management Group.
http://www.omg.org/spec/UML/2.5/PDF/, Accessed
on 2016-11-16.
Reijers, H. A., Freytag, T., Mendling, J., and Eckleder,
A. (2011). Syntax Highlighting in Business Process
Models. Decision Support Systems, 51(3):339–349.
Yusuf, S., Kagdi, H., and Maletic, J. I. (2007). Assess-
ing the Comprehension of UML Class Diagrams via
Eye Tracking. In Proc. 15
th
IEEE Int. Conf. Program
Comprehension (ICPC’07), pages 113–122. IEEE.
On using Colors in UML Models
513