What are the used Activity Diagram Constructs?
A Survey
Gianna Reggio, Maurizio Leotta, Filippo Ricca and Diego Clerissi
DIBRIS, Universit
`
a di Genova, Genova, Italy
Keywords:
UML Usage, Survey, Empirical Study.
Abstract:
UML Activity diagrams offer a very large set of constructs, however many of them seem scarcely used or even
their existence is not known. Here, we present a precise view of the usage levels of these constructs by means
of a survey, covering preliminarily books, courses, tutorials, and tools about UML. Results show that, among
the 47 Activity diagrams constructs, a large majority of them seem to be scarcely used, while, only nine result
widely used. This work is part of a larger project aimed at investigating the usage level of the UML diagrams
and their constructs, also by means of a personal opinion survey intended for UML users. UML is really a
huge notation, and as consequence, on one hand, it is difficult and time consuming to master it, and on the
other hand, people tend, naturally, to consider only a part of it; by means of this empirical study we want to
assess what are the most/less used UML diagrams/constructs.
1 INTRODUCTION
UML is a truly large notation offering many differ-
ent diagrams, 14 in the last approved version (UML
Revision Task Force, 2011), and for each diagram it
provides a large set of constructs covering any pos-
sible need of any modeller for any possible task. As
a result, the UML specification is a huge book (732
pages), the UML metamodel is large and quite com-
plex, and the definition and the understanding of its
static and dynamic semantics is a truly difficult task,
with also the consequence to make difficult to teach
it both at the school/university level or in the indus-
try (Grossman et al., 2005). Moreover, the large num-
ber of constructs and the consequent very large meta-
model make complex and time consuming developing
transformations of UML models and building tools
for the UML. Clearly, these UML features have a neg-
ative impact on how the UML is perceived by the
modellers hindering its adoption (Petre, 2013), and
leading in some cases to replace the UML by ad-hoc
lean and simple DSLs (Domain Specific Languages).
On the other hand, users naturally tend to consider
and use only a portion of its diagrams/constructs, and
forgetting about some other ones. On his blog I. Ja-
cobson states “For 80% of all software only 20% of
UML is needed” (Jacobson, 2009). Furthermore, few
people try to learn the UML by reading its specifica-
tion (UML Revision Task Force, 2011), instead the
large majority of the users rely on books and courses/
tutorials or just starts to use some tools for drawing
UML diagrams that in general do not cover the whole
UML. For this reason, in many cases, the UML users
will never become aware of the existence of many
specific constructs (e.g., how many of you do know
the existence of the “Parameter Set” for activities or
has even used this construct?).
We would like to asses by means of a survey
which parts of the UML (diagrams and constructs) are
the most used in practice and which the less ones (and
thus also indirectly which part of the UML is really
known), using again the words of Jacobson trying to
see if an “essential UML” (Jacobson, 2009) emerges.
To discover how much a UML diagram/construct is
used, we chose to preliminarily investigate objective
sources: (1) the books about the UML, (2) the IT
University courses covering also the UML, (3) the tu-
torials presenting the UML to the practitioners, and
(4) the tools for producing UML models. Later,
similarly to (Dobing and Parsons, 2006; Grossman
et al., 2005), we will conduct a personal opinion sur-
vey (Groves et al., 2009) asking to UML users of
different kinds (e.g., industrial practitioners and aca-
demics) which parts of the UML they know and which
they have never used.
For a given UML diagram/construct, we have pro-
ceeded as follows. We have investigated the books to
discover if they were citing such diagram/construct,
87
Reggio G., Leotta M., Ricca F. and Clerissi D..
What are the used Activity Diagram Constructs? - A Survey.
DOI: 10.5220/0004712000870098
In Proceedings of the 2nd International Conference on Model-Driven Engineering and Software Development (MODELSWARD-2014), pages 87-98
ISBN: 978-989-758-007-9
Copyright
c
2014 SCITEPRESS (Science and Technology Publications, Lda.)
and if they were giving an example of it. Similarly
for the courses/tutorials, whereas for the tools we
have tried to produce a model containing such dia-
gram/construct (notice that we speak of a model not
of a diagram, since there are several UML constructs
that cannot be shown in a diagram). Finally, we have
computed descriptive statistics to present the results.
In this study, we analysed 30 books, 20 tools, 22
courses, and 18 tutorials.
The results of this survey, and of the future per-
sonal opinion survey should be of help to many dif-
ferent categories of people:
Teachers and Instructors: allowing to of-
fer courses and/or tutorials concentrating only a
smaller language made out of the most used UML
diagrams/constructs;
Tool Builders/Users: obvious advantages since the
tools covering the most used diagrams/constructs
will be simpler to implement/use;
Notation Designers: interested in discovering
scarcely used constructs, and understanding for
which reasons they have been added to the lan-
guage. Moreover, other interesting questions arise:
are the scarcely used constructs derived
1
or primi-
tive? Can the scarcely used constructs be applied
only in specific cases? It will be interesting to in-
vestigate whether the metamodel (and subsequently
the UML specification book) may be easily simpli-
fied to cover only the most used constructs.
In our opinion having to handle a notation with a large
set of constructs where a portion of them are scarcely
used, if not almost unknown, is problematic because
it can cause a waste of effort and resources by who
want/must use it (e.g., there are countries where some
contracts with the public administration must be ac-
companied by a UML model). Indeed, trivially, to
print the reference document requires 700 sheets, but
also understanding the metamodel/preparing for the
certification/deciding what to teach to the students/
reading a UML book require a large number of hours;
and we do not have to forget that also maintaining the
official specification and any related item requires a
large amount of effort due to its size.
Also the OMG has recently recognised the need
to simplify the UML with the initiative “UML
Simplification” (Seidewitz, 2012) which will result
in the next UML version (2.5), but in this case the
simplification concerns only the way UML is defined
without any impact about its constructs.
1
A derived construct may be replaced by a combination
of other constructs.
In a previous phase of this survey (Reggio et al.,
2013), we analysed the usage level of the 14 types
of UML diagrams and we found that, Activity and
Class diagrams are the most used. For this reason, in
this paper we present the results of a following step of
our survey focusing on the usage level of the Activity
diagram constructs covering books, courses/tutorials,
and tools. The remainder of the paper is organized
as follows. In Section 2, we present related work lit-
erature regarding empirical study about the UML. In
Section 3, we sketch the relevant aspects of the con-
ducted survey such as: goals, research questions, fol-
lowed process and analysis methodology. The results
of the survey about Activity diagram’s constructs are
presented in Section 4, preceded by a summary of the
results on the UML diagrams shown in (Reggio et al.,
2013), while threats to validity are discussed in Sec-
tion 5. Finally, Section 6 concludes the paper.
2 RELATED WORK
The systematic literature review by Mohagheghi et
al. (Mohagheghi et al., 2009) about model-based soft-
ware development states that “the UML is currently
the most widely used modelling language”. A simi-
lar result has also been obtained in (Torchiano et al.,
2013) where a personal opinion survey with 155 Ital-
ian professionals has been conducted.
Another personal opinion survey about UML (171
professionals in total), by Dobing and Parsons (Dob-
ing and Parsons, 2006), points out another strong
statement: “regular usage of UML components were
lower than expected”. The authors of (Dobing and
Parsons, 2006) suggest that the difficulty of under-
standing many of the notations “support the argument
that the UML may be too complex”. The same claim,
in more or less different forms, is present in several
blogs, where several proposals of UML simplifica-
tion are arising
2
. Maybe, the most authoritative is the
one of Ivar Jacobson entitled “Taking the temperature
of UML (Jacobson, 2009), where he wrote: “Still,
UML has become complex and clumsy. For 80% of
all software only 20% of UML is needed. However,
it is not easy to find the subset of UML which we
would call the ‘Essential’ UML. We must make UML
smarter to use”. The need to simplify the UML is
also shown by the recently released OMG draft pro-
posal about this topic (Seidewitz, 2012). Moreover,
the complexity of the UML seems to be one of the
2
e.g., www.devx.com/architect/Article/45694 and
blogs.msdn.com/b/sonuarora/archive/2009/11/02/simplify-
uml.aspx
MODELSWARD2014-InternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
88
factors that limit its diffusion and usage in the indus-
try (Petre, 2013): “UML is considered unnecessar-
ily complex” and understanding its notation could re-
quire a considerable overhead.
In the tentative to find the “essential UML”, Er-
ickson and Siau (Erickson and Siau, 2007) have con-
ducted a Delphi study
3
with the goal of identifying
a UML kernel for three well-known UML applica-
tion areas: Real-Time, Web-based, and Enterprise
systems. The participants to the study (44 experts
in total) were asked to rate the relative importance
of the various UML diagrams in building systems.
UML overall results (i.e., non-domain specific) were:
100% for Class and Statechart diagrams, 95.5% for
Sequence diagrams, 90.9% for Use Case diagrams.
All the others diagrams received a percentage lesser
than 50% (e.g., 27.3% for Activity diagrams). An-
other personal opinion survey (sample size = 131)
about UML (Grossman et al., 2005) confirms the
results of Erickson and Siau. Results indicate that
the three most important diagrams are Use Case di-
agrams, Class diagrams and Sequence diagrams.
The main conclusions from another systematic lit-
erature review by Budgen et al. (Budgen et al., 2011)
about empirical evidence of the UML are two:
while there are many studies that use the UML in
some way, including to assess other topics, there
are relatively few for which the UML is itself the
object of study, and hence that assess the UML in
some way (e.g., UML studies of adoption and use
in the field).
there is a need to study the UML and its elements
much more rigorously and to identify which fea-
tures are valuable, and which could be discarded.
Our preliminary empirical work, much in the spirit of
the Erickson and Siau’s work but using a different ap-
proach, tries to add a small tile to the empirical knowl-
edge about the UML as requested in the first conclu-
sion of the Budgen’s systematic literature review. We
could say that our work tries to identify which UML
features (diagrams and constructs) are valuable, and
which could be discarded as requested in the sec-
ond point of the Budgen’s work — equating the word
“valuable” with “used in practice” and the concept
“could be discarded” with “not used in practice”.
3 STUDY DEFINITION
The instrument we selected to take a snapshot of the
state of the practice concerning UML usage is that of
3
It attempts to form a reliable consensus of a group of
experts in specialized areas.
a survey. In the survey’s design and execution phases
we followed as much as possible the guidelines pro-
vided in (Groves et al., 2009) and used the same pre-
sentation format of (Torchiano et al., 2011).
The survey has been conducted through the fol-
lowing steps: (1) goals selection, (2) goals transfor-
mation into research questions, (3) identification of
the population, sample and process, (4) data extrac-
tion, and (5) analysis of results and packaging.
We conceived and designed the survey with the
goal of understanding which are the less/most used
parts of the UML in practice.
Within the scope of this work, in this paper we
aim at addressing the main research question related
to the above described goal:
RQ: Which UML constructs for the Activity Dia-
grams are the most/less used in practice?
3.1 Population Identification
The first step to conduct a survey is defining a target
population. The target population of our study con-
sists of sources concerning UML. In particular, in this
study we considered the following four kinds of ob-
jective sources: books, tools, courses and tutorials.
As future work, we will conduct a personal opinion
survey with industrial practitioners and academics to
understand which parts of the UML they know, which
they use, and which they have never used.
To sample the population and select the sources
to consider in our study we: (1) conducted a sys-
tematic search performed using Internet resources,
Web search engines and electronic databases and
(2) used non-probabilistic (convenience sampling)
methods (Kitchenham and Pfleeger, 2008). More-
over, in making decisions about whether (or not) to
include a source in the study, we adopted some inclu-
sion/exclusion criteria (see below).
Inclusion and Exclusion Criteria
The inclusion/exclusion criteria can be common for
all the kind of sources or specific.
For all the sources we adopted the following inclu-
sion criterion: only sources concerning UML versions
2.0.
Concerning books, in case of different editions of
the same book we opted (when possible) for the last
one. Moreover, we excluded elements of “grey” liter-
ature, i.e., books without ISBN.
Concerning tools, we included only UML mod-
elling tools (both commercial and non-commercial)
and excluded: (1) general graphics editor (e.g.,
Inkscape), (2) tools providing only a specific type of
WhataretheusedActivityDiagramConstructs?-ASurvey
89
Title
Edition
Author(s) Year Publisher
UML 2.0 in a Nutshell 1st D. Pilone, N. Pitman 2005 O'Reilly Media Inc.
The Elements of UML 2.0 Style 1st S. W. Ambler 2005 Cambridge University Press
Sams Teach Yourself UML in 24 Hours 3rd J. Schmuller 2004 Sams Publishing
UML 2 Certification Guide: Fundamental & Intermediate Exams 1st T. Welkiens, B. Oestereich 2006 Morgan Kaufmann Publishers
UML Distilled: A Brief Guide to the Standard Object Modeling Language 3rd M. Fowler 2003 Addison-Wesley
Learning UML 2.0 1st R. Miles, K. Hamilton 2006 O'Reilly Media Inc.
UML 2 for Dummies 1st M. J. Chonoles, J. A. Schardt 2003 Wiley Publishing Inc.
UML 2 Toolkit 2nd
H. E. Eriksson, M. Penker, B. Lyons, D.
Fado
2004 Wiley Publishing Inc.
UML 2.0 in Action 1st P. Grassle, H. Baumann, P. Baumann 2005 Packt Publishing Ltd
UML Bible 1st T. Pender 2003 Wiley Publishing Inc.
UML Demystified 1st P. Kimmel 2005 McGraw-Hill
UML for the IT Business Analyst 1st H. Podeswa 2005 Muska & Lipman Pub
Verification and Validation for Quality of UML 2.0 Models 1st B. Unhelkar 2005 John Wiley & Sons
The Unified Modeling Language Reference Manual 2nd J. Rumbaugh, I. Jacobson, G. Booch 2005 Addison-Wesley
The Unified Modeling Language User Guide 2nd G. Booch, J. Rumbaugh, I. Jacobson 2005 Addison-Wesley
Object-Oriented Software Engineering Using UML, Patterns and Java 3rd B. Bruegge, A. H. Dutoit 2010 Prentice Hall
System Analysis & Design with UML version 2.0:
An Object-Oriented Approach
3rd A. Dennis, B. H. Wixom, D. Tegarden 2009 John Wiley & Sons
UML 2 and the Unified Process:
Practical Object-Oriented Analysis & Design
2nd J. Arlow, I. Neustadt 2005 Addison-Wesley
UML 2 Semantics and Applications 1st K. Lano 2009 John Wiley & Sons
Object-Oriented Analysis & Design:
Understanding System Development with UML 2.0
1st M. O'Docherty 2005 John Wiley & Sons
Using UML: Software Engineering with Objects and Components 2nd P. Stevens, R. Pooley 2006 Addison-Wesley
UML 2 Pour les bases de donnees 1st C. Soutou 2007 Éditions Eyrolles
Fast Track UML 2.0 1st K. Scott 2004 Apress Media LLC
Model-Driven Development with Executable UML 1st D. Milicev 2009 Wiley Publishing Inc.
Professional Application Lifecycle Management with Visual Studio 2010 1st
M. Gousset, B. Keller,
A. Krishnamoorthy, M. Woodward
2010 Wiley Publishing Inc.
Software Modeling and Design 1st H. Gomaa 2011 Cambridge University Press
Systems Engineering with SysML UML: Modeling, Analysis, Design 1st T. Weilkiens 2006 Morgan Kaufmann Publishers
Use Case Driven Object Modeling with UML: Theory and Practice 1st D. Rosenberg, M. Stephens 2007 Apress Media LLC
Management of The Object-Oriented Development Process 1st L. Liu, B. Roussev 2006 Idea Group Inc.
Real-Time Object Uniform Design Methodology with UML 1st B. M. Duc 2007 Springer
UML Notation Guides
Software Engineering books based on UML
Figure 1: UML Books Considered.
diagram (e.g., class diagrams), (3) really unstable, not
complete or preliminary tools (e.g., tools in beta ver-
sion)
About courses, we considered only university
courses concerning IT studies. We considered courses
offered also in languages different from English but
known or understood by the authors (e.g., French,
Italian and Spanish).
Concerning tutorials, we considered only tutori-
als provided on Internet as written documents (either
on-line or downloadable) and video (where a person
gives instructions on how to do something) but we
have excluded tutorials taking the form of a screen
recording (screencast) and interactive tutorials. For
selecting a document of this kind we used the com-
mon meaning/perception of tutorials: a tutorial is
more interactive and specific than a book or a lecture;
a tutorial seeks to teach by example.
3.2 The Process
The process followed to conduct a survey should be as
much as possible well defined in order to ensure that
such a study can be objective and repeatable. For each
category of sources, we followed a different process
to collect them.
Books. We started by the Amazon website
4
and
used the search form to find UML related books. We
selected the “Computers & Technology” category in
the books section. Then, we experimented with sev-
eral different search criteria using different combina-
tions of strings. Finally, the one that retrieved the
highest number of useful items was the simple string
“UML 2”. Starting from this long list of books or-
dered by relevance
5
we filtered out books not satis-
fying the inclusion criteria explained above. Then,
we tried to recover them using the facilities provided
by our library. Finally, we collected and analysed
30 books. Note that, 18 of them are in the top 24
books ranked ordering the list by relevance by Ama-
zon. The list of the selected books is shown in Fig-
ure 1. More in detail, we have selected two kinds
of books. UML guides (UML Notation Guides) and
books using UML as a notation, i.e., books where
UML is not the primary subject (Software Engineer-
ing books based on UML).
Tools. We started by the “List of Unified Model-
ing Language tools” Wikipedia page
6
containing 49
4
www.amazon.com
5
2.726 books on July 20, 2013.
6
en.wikipedia.org/wiki/List of Unified Modeling Language tools
MODELSWARD2014-InternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
90
Figure 2: UML Tools Considered.
Lecturer Country
Title Year Web Site
Afsarmanesh Netherlands
Project Analysis 2012
www.science.uva.nl/CO-IM/teaching/Project_Analysis_2012/lectures.html
De Angelis Italy
Lab. Ingegneria del SW 2012/13
labsewiki.isti.cnr.it/projects/gulyx/univaq/labse20112012
Ciancarini, Iorio Italy
Lab. Ingegneria del SW 2012/13
www.cs.unibo.it/~cianca/wwwpages/labisw
Vincent Australia
System Analysis and Modeling 2012/13
learnonline.canberra.edu.au/course/view.php?id=7012&cal_m=2&cal_y=2013
Casalicchio Italy
Progettazione SW 2009/10
www.ce.uniroma2.it/courses/PSW/
Gérard France
UML
lipn.univ-paris13.fr/~gerard/enseignement.php
Prié France
Systèmes d'information méthodes avancées 2011/12
pagesperso.lina.univ-nantes.fr/~prie-y/ens/11-12/SIMA/index.html/
Felici UK
Software Engineering with Objects and
Components
2011/12
www.inf.ed.ac.uk/teaching/courses/seoc/2011_2012/notes/
Siebers UK
Object Oriented Systems 2012/13
www.cs.nott.ac.uk/~pos/g64oos/2012-2013/index.html
Varrò Hungary
Modellalapú szoftvertervezés 2012
www.inf.mit.bme.hu/en/edu/courses/mdsd/materials
Lehre Germany
Softwaretechnik 2012/13
www.pst.ifi.lmu.de/Lehre/wise-12-13/swtechnik/materialien
Rumpe Germany
Modellbasierte Softwareentwicklung 2011/12
mbse.se-rwth.de/
Correo, Rossi Argentina
Uml Basico
www.lifia.info.unlp.edu.ar/es/
Brambilla Italy
Ingegneria del SW 2012/13
dbgroup.como.polimi.it/brambilla/
Alkan Turkey
Object Oriented Software Engineering 2012/13
www.cs.bilkent.edu.tr/~calkan/teaching/cs319/slides.html
Farrow UK
Software Engineering 2012/13
www.macs.hw.ac.uk/~monica/Modules/S1/SEFound/timetable1213.html
Easterbrook Canada
Engineering Large SW Systems 2012
www.cs.toronto.edu/~sme/CSC302/
Negre France
Ingéniérie des Systèmes d'Information 2012/13
www.lamsade.dauphine.fr/~negre/coursfr.html
Sellares Spain
Enginyeria del Software 2008/09
ima.udg.edu/~sellares/ETIG-ES/index.html
Jezequel France
Approche objet pour le développement de
logiciels par objets avec UML
people.irisa.fr/Jean-Marc.Jezequel/enseignement/DvpObjetUML.htm
Turgut US
Software Engineering I 2009
www.cs.ucf.edu/~turgut/COURSES/EEL5881_SEI_Spr09/
Cheng US
Advanced Software Engineering 2013
www.cse.msu.edu/~cse870/lectures.php
Figure 3: UML Courses Considered.
UML tools. Then, we considered also the UML-tools
website
7
. A full Internet search was also carried out
using Google. Also in this case, we experimented
with several different search criteria using different
combinations of strings to provide to Google (“UML
tools”, “UML tools list” and “UML free tools”).
For each tool of our list, we found the official web-
site and checked whether it was satisfying the inclu-
sion criteria explained above. Then, we downloaded
and installed the most recent version of all the se-
lected tools. In case of commercial tools, we selected
a “free for not commercial use” version or a version
with university licence or a trial version. At the end,
7
www.uml-tools.com
we collected and analysed 20 different tools. The
complete list of tools is shown in Figure 2. Finally,
we tried to produce a model containing the constructs
of interest for our study (for each tool we produced
the same model with the same diagrams and the same
UML constructs). Notice that Argo UML, one of the
most known UML tool was not included in our survey
since it does support UML 1.x only.
Courses. We started carrying out a search us-
ing Google. The combinations of strings used were:
“UML course”, “UML lecture” and “UML university
course”. We found several university courses satisfy-
ing the inclusion criteria stated above, but in several
cases it was difficult, if not impossible, to recover the
WhataretheusedActivityDiagramConstructs?-ASurvey
91
Author / Source Title Web Site
Allen Holub Allen Holub's UML Quick Reference www.holub.com/goodies/uml/index.html
Analisi-disegno Introduzione a UML www.analisi-disegno.com/uml/uml.htm
Crag Systems A UML Tutorial Introduction www.cragsystems.co.uk/uml_tutorial/index.htm
devmentor UML Guide v2.1 devmentor.org/references/uml/uml.php
Dumke UML Tutorial www-ivs.cs.uni-magdeburg.de/~dumke/UML/index.htm
Embarcadero Practical UML: A Hands-On Introduction for Developers edn.embarcadero.com/article/31863
HTML.it Guida UML www.html.it/guide/guida-uml/
John Deacon Developer's Guide to UML 2: A UML Tutorial www.johndeacon.net/UML/UML_Appendix/Generated/UML_Appendix.asp
lemiffe Reference Guide for UML 2.0 www.lemiffe.com/wp-content/uploads/2008/12/uml2.pdf
New Think Tank Video Tutorials www.newthinktank.com/2012/11/
Online Teach UML Training www.online-teach.com/u-m-l.php
Parlezuml UML Tutorial www.codemanship.co.uk/parlezuml/
Richard Botting A Beginners Guide to The Unified Modeling Language (UML) www.csci.csusb.edu/dick/cs201/uml.html
SmartDraw What is UML? www.smartdraw.com/resources/tutorials/uml-diagrams/
Sparx Systems UML 2 Tutorial www.sparxsystems.com.au/resources/uml2_tutorial/index.html
Storrle & Knapp Unified Modeling Language 2.0 www.pst.ifi.lmu.de/veroeffentlichungen/UML-2.0-Tutorial.pdf
Uml.free UML, le langage de modélisation objet unifié uml.free.fr/index-cours.html
uml-diagrams UML 2.5 Diagrams Overview www.uml-diagrams.org/uml-25-diagrams.html
Figure 4: UML Tutorials Considered.
slides of the lectures, and in general the material. Of-
ten, the material was not publicly available; only the
content of the lessons was present on the website. For
this reason, we resort also to convenience sampling,
asking to our colleagues the slides of UML courses
they teach. At the end, we collected and analysed 22
different University courses. The complete list of lec-
tures is shown in Figure 3. Convenience sampling was
also useful to balance a little the geographic origin
of the UML courses (e.g., before convenience sam-
pling we had three courses from France and zero from
USA).
Tutorials. We started with the tutorial lists present
in the following three websites: www.uml.org
8
,
stackoverflow.com
9
and www.jeckle.de
10
. Then, we
integrated the obtained results with other tutorials re-
covered using Google (the research was conducted us-
ing the strings: “UML tutorials” and “UML guide”).
Finally, we collected and analysed 18 tutorials. The
complete list of tutorials is shown in Figure 4.
4 SURVEY RESULTS
After having collected the sources, we extracted the
data of interest for our research questions and finally
we performed the analysis. Given the nature of this
survey, that is mainly descriptive (it describes some
condition or factor found in a population in terms of
its frequency and impact) and exploratory, we mainly
applied descriptive statistics and showed our findings
by means of charts.
8
www.uml.org/#Links-Tutorials
9
stackoverflow.com/questions/1661961/ recommended-uml-tutorials
10
www.jeckle.de/umllinks.htm#tutorials
We preliminarily decided to interpret the results
of our survey assuming that a diagram/construct is
widely used if it is present in the 60% or more of the
sources, similarly it is scarcely used if it is present
in the 40% or less of the sources, having also some
non-defined cases (grey zone). In the following sub-
sections we briefly summarize the results concerning
UML diagrams, see (Reggio et al., 2013) for the de-
tails, and present the ones for the activity diagram
constructs.
4.1 Level of Usage of the UML
Diagrams
The level of usage of the various UML diagrams in
books, courses, tutorials, tools, and in the totality of
the sources respectively is summarized in Figure 5.
If we consider the totality of the sources, disre-
garding their kind, we have that the scarcely used di-
agrams are timing, interaction overview and profile,
listed starting from the most used; all of them were
not present in UML 1.x, and the profile diagram ap-
peared only in version 2.2. The last position of the
profile diagram is not very surprising due both to the
late appearance and to the fact that this kind of dia-
gram has a very restrict scope (indeed it is used only
to present a profile) and that, it is essentially a variant
of the package diagram. Also timing diagrams have
a restrict scope, and UML offers other ways to model
time related aspects (e.g., timed events may be used
in state machines and activity diagrams; durations and
time intervals may appear in sequence diagrams), and
this may be the motivation for their low usage. Fi-
nally, interaction overview diagrams are quite com-
plex and in many cases may be replaced by sequence
diagrams and/or a combination of sequence and ac-
MODELSWARD2014-InternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
92
UML Diagram
Book Guide
Book Spec Book Tot Tool Course Tutorial All Sources
Class 100% 100% 100% 100% 100% 100%
100%
Activity 100% 93% 97% 100% 95% 100%
98%
Sequence 100% 93% 97% 100% 100% 89%
97%
Use Case 100% 93% 97% 100% 95% 89%
96%
State Machine 100% 93% 97% 100% 95% 89%
96%
Communication 100% 80% 90% 90% 59% 89%
82%
Component 93% 80% 87% 85% 59% 89%
80%
Deployment 93% 80% 87% 90% 55% 89%
80%
Object 93% 80% 87% 70% 55% 67%
71%
Package 100% 79% 89% 65% 52% 67%
70%
Composite Structure 87% 60% 73% 80% 14% 33%
52%
Timing 87% 53% 70% 40% 5% 33%
40%
Interaction Overview 80% 53% 67% 45% 5% 28%
39%
Profile 7% 13% 10% 30% 0% 6%
11%
Figure 5: Usage levels of UML diagrams.
Book Guide = UML Notation Guides, Book Spec = Software Engineering books based on UML, Book Tot = All books, Dashed lines represent the 40% and 60%
thresholds
tivity diagrams, and perhaps this is the reason for not
being so considered.
The widely used diagrams, when considering the
totality of the sources, are instead, listed again start-
ing from the most used ones, class (100% in any kind
of sources), activity, sequence, state machine and use
cases, communication, deployment, component, ob-
ject and package diagrams. The first position of class
diagrams is not surprising, it is indeed the main build-
ing block of the UML, while the fact that activity di-
agrams are the second is relevant and is due, in our
opinion, to the fact that they are used also for busi-
ness process modelling (Reggio et al., 2012) and for
describing SOA based systems (Leotta et al., 2012;
Leotta et al., 2011). All the widely used diagrams,
except the package diagram, were already present in
the UML 1.x versions (although the communication
diagrams were before called collaboration diagrams).
The only diagram in the grey area (i.e., above 40%
and below 60%) is the composite structure, which al-
lows to represent both structured classes and collab-
orations; again it is a new diagram appearing in the
UML 2.0 and this may be a reason for its low usage.
However, the result is surprising because structured
classes were completely absent in UML 1.x, and this
was a perceived problem, and the new collaborations
are truly useful (see for example the big role that they
have in representing service oriented architectures in
the SoaML OMG standard profile (OMG, 2012)). For
a more complete analysis of the results and a deeper
discussion see (Reggio et al., 2013).
4.2 Level of Usage of the Activity
Diagram Constructs
The number of available constructs in activity dia-
grams is 47, a truly large number, and as it is shown in
Figure 8 a lot of them are scarcely used (their descrip-
tion and some examples may be found in the UML
specification (UML Revision Task Force, 2011)).
If we consider the totality of our sources disre-
garding the fact that they are of different kind, we
have that the widely used constructs are only 9 (nine),
precisely Action and Control Flow Edge (both 99%), Ini-
tial and Final Node (98%), Decision/Merge Nodes (97%),
Fork/Join Nodes (94%), Activity Partition, i.e., swim-
lane (82%), Object Node (79%), and Object Flow Edge
(75%)
11
. Some of them are used in the Activity dia-
gram shown in Figure 6.
Those scarcely used, i.e., with a percentage less
than 40% are 31, and in 8 cases the percentage is
lower than 10%. One of the least used constructs Pa-
rameter Set is shown in Figure 7, it is used to provide
alternative sets of inputs or outputs that a behaviour,
and thus an activity, may use.
The fact that Activity is in the grey area is a little
surprising since Activity is the construct that together
with Call Behaviour Action (rake), again in the grey area,
allows to structure complex activity diagrams, also if
11
This surprising result, since it is not possible to connect
an object node to other nodes without using the object flow,
is due to the fact that in some courses the classification of
the arcs in activity diagrams in control and object flow was
not mentioned.
WhataretheusedActivityDiagramConstructs?-ASurvey
93
we suspect that in some cases Activity is considered but
not precisely indicated with its proper name. See an
example of Call Behaviour Action (rake) in Figure 9.
We briefly discuss two of the least used constructs
(resulting used only in 3% of the sources): Input and
Output Effects for Object Node and Decision Node with In-
put Flow. The semantics of the first one is not very
clear Specifying the effect that the behaviour of ac-
tions has on the objects passed in and out of their pa-
rameters can be represented by placing the effect in
braces near the edge leading to or from the pin for the
parameter see (UML Revision Task Force, 2011).
Indeed, it may be interpreted as a kind of constraint
(the preceding/following action should be such that
to produce the depicted effects) and so it is not clear
the difference with the local pre-post conditions. Oth-
erwise, it may be considered as a kind of comment
making explicit some effects already defined by the
behaviour of the preceding/following action. In the
latter case it may be replaced by a comment. Also
the semantics of Decision Node with Input Flow is quite
complex, see (UML Revision Task Force, 2011)[371-
372], but this construct may be considered as derived
(it may be replaced by combining the normal and the
extra input tokens of the decision node by means of
Figure 6: Example of Activity Diagram built with the six
most used constructs (beyond the 90%).
Figure 7: Activity parameter set, usage level 10% in the
totality of the sources.
a new data structure). We think that however in these
two cases one of the reasons of the fact that they are
neglected is the complexity of their definition.
One of the possible reasons, for the quite surpris-
ing result summarized in Figure 8, is that in UML 1.x
there were few constructs for the activity diagrams,
more or less those resulting widely used in our An-
other reason for these constructs being so unpopu-
lar is that many of them are not depicted visually by
the tools on the activity diagrams (for example, Ob-
ject Node Ordering Kind may be defined using the Vi-
sual Paradigm tool for an Object Node by means of the
property panel but cannot be visualized).
In our opinion, some of the constructs classified
by our survey as scarcely used or in the grey area may
be useful for modelling workflows and business pro-
cesses (Di Cerbo et al., 2011; Leotta et al., 2012; Reg-
gio et al., 2012; Reggio et al., 2011b; Reggio et al.,
2011a), e.g., Flow Final Node, Accept Event Action, Send
Signal Node, Activity and the constructs related with ex-
ception handling; whereas many others are just a kind
of derived constructs, i.e., they may be replaced by an
equivalent activity diagram fragment (e.g., Value Pin).
We think that the future personal survey with UML
users should involve many subjects active in the field
of workflow/business modelling to get more relevant
knowledge about the usage level of these constructs.
If we examine the usage data considering sepa-
rately the various kind of sources, we have that the
tools and the books are “using” a greater number
of constructs, whereas courses and tutorials are con-
sidering less constructs. Precisely the numbers of
scarcely used/widely used constructs for the various
kinds are:
books guide: scarcely used 25 and widely used 16,
books spec: scarcely used 36 and widely used 10,
books tot (i.e., all books): scarcely used 30 and
widely used 11,
tools: scarcely used 20 and widely used 15,
courses: scarcely used 38 and widely used 9,
tutorials: scarcely used 38 and widely used 9.
Moreover, three constructs Accept Event Action, Action
MODELSWARD2014-InternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
94
Activity Diagram Construct
Book Guide
Book Spec Book Tot Tool Course Tutorial All Sources
Action
100% 93% 97% 100% 100% 100%
99%
Control Flow Edge
100% 93% 97% 100% 100% 100%
99%
Final Node
100% 93% 97% 100% 100% 94%
98%
Initial Node
100% 93% 97% 100% 100% 94%
98%
Decision/Merge Nodes
100% 87% 93% 100% 100% 94%
97%
Fork/Join Nodes
100% 93% 97% 100% 100% 78%
94%
Activity Partition
100% 67% 83% 85% 81% 78%
82%
Object Node
100% 73% 87% 95% 67% 61%
79%
Object Flow Edge
100% 60% 80% 95% 62% 61%
75%
Accept Event Action
60% 40% 50% 95% 38% 28%
53%
Activity
93% 60% 77% 55% 38% 28%
53%
Flow Final Node
80% 40% 60% 85% 29% 28%
52%
Send Signal Node
60% 47% 53% 95% 33% 17%
51%
Action Pin
67% 40% 53% 75% 19% 28%
45%
Named Activity Edge
27% 20% 23% 95% 33% 28%
43%
Object Node for Objects in Specific States
53% 27% 40% 50% 38% 39%
42%
Call Behaviour Action (rake)
33% 40% 37% 65% 29% 22%
38%
Activity Parameters
67% 33% 50% 50% 19% 22%
37%
Accept Timed Event
53% 27% 40% 55% 24% 11%
34%
Expansion Region
53% 33% 43% 50% 10% 22%
33%
Exception Handler
47% 27% 37% 50% 10% 22%
30%
Interruptible Activity Region
33% 27% 30% 50% 14% 22%
29%
Activity Edge Connector
73% 27% 50% 10% 14% 22%
27%
Data Store
33% 13% 23% 55% 5% 17%
25%
Central Buffer Node
27% 20% 23% 55% 5% 6%
22%
Behaviour Specification for Object Flows
33% 13% 23% 40% 10% 11%
21%
Local Pre-Post Condition
53% 20% 37% 30% 0% 11%
21%
Weighted Activity Edge
20% 13% 17% 55% 5% 11%
21%
Decision Node with Behaviour
33% 27% 30% 25% 5% 6%
18%
Object Node Ordering Kind
13% 13% 13% 55% 0% 6%
18%
Structured Nodes/Activities
27% 20% 23% 40% 5% 0%
18%
Activity Partition Textually Presented
47% 13% 30% 0% 19% 11%
17%
Object Node with a Limited Upper Bound
13% 20% 17% 45% 0% 6%
17%
Exception Pin
27% 13% 20% 20% 5% 11%
15%
Selection Specification for Object Flow
13% 7% 10% 35% 5% 6%
13%
Join Specification
20% 7% 13% 30% 5% 0%
12%
Stream Pin
20% 20% 20% 15% 0% 11%
12%
Value Pin
13% 7% 10% 40% 0% 0%
12%
Parameter Set (Activity Parameters)
33% 13% 23% 5% 0% 6%
10%
Selection Specification for Object Node
7% 7% 7% 30% 0% 0%
9%
Object Node for Tokens with Signal as Type
33% 13% 23% 0% 0% 0%
8%
Parameter Effect Kind
7% 7% 7% 20% 0% 0%
7%
Activity Exception Parameters
13% 0% 7% 15% 0% 0%
6%
Activity Stream Parameters
7% 7% 7% 15% 0% 0%
6%
Stream Edge
13% 7% 10% 5% 0% 0%
4%
Decision Node with Input Flow
0% 0% 0% 15% 0% 0%
3%
Input and Output Effects for Object Node
0% 7% 3% 10% 0% 0%
3%
Book Guide = UML Notation Guides, Book Spec = Software Engineering books based on UML, Book Tot = All books
Dashed lines represent the 40% and 60% thresholds
Figure 8: Usage levels of Activity Diagram constructs.
WhataretheusedActivityDiagramConstructs?-ASurvey
95
The first action of the activity diagram on the left is a call to
the behaviour defined elsewhere by the activity Validation
Figure 9: Call Behaviour Action (Rake) construct, usage
level 38% in the totality of the sources.
Pin and Flow Final Node result widely used for both
books guide and tools. The percentages relative to
courses and tutorials are really striking; the consid-
ered activity diagrams constructs are just 1/5 of those
available. Finally, looking at Figure 8, it is interesting
to note that the usage levels among different sources,
even if different in magnitude, have similar trends.
5 THREATS TO VALIDITY
In our study a possible threat is the fact that when ex-
amining books, courses and tutorials we have decided
to assume that a construct is used in that source if it is
mentioned without making a deeper analysis to mea-
sure how much detailed was presented or taught. Un-
fortunately, it is really difficult to devise a better met-
ric; for example, trying to distinguish if a diagram is
just mentioned, shortly presented, presented, and pre-
sented with all the details may be too much depending
on the personal judgement of who examines the tex-
tual sources; also counting the occurrence of the name
of a construct is in our opinion too dependent on the
way the texts are written, e.g., more or less verbose.
We have also tried to distinguish the case of a sim-
ple mention of a construct in the text and the presence
of an example of such construct, without detecting a
relevant difference.
To avoid to bias the results of our survey, we have
considered only sources concerned with the use of
the UML, avoiding those with different aims, for ex-
ample drawing tools suitable to produce pictures of
UML diagrams, or books presenting a survey on the
current visual notations have been excluded; whereas
instead books covering specific use of the UML or
courses about software engineering where the UML
was taught were included.
Concerning the textual sources, we have consid-
ered only books/courses/tutorials presented using lan-
guages understood by the authors (i.e., English, Ital-
ian, French and Spanish). For the courses the limita-
tion on the language is less problematic, indeed many
of the courses presented using the English language
are taught in countries where the English is not the
mother tongue (e.g., Hungary and Turkey).
For the tools, instead, we are quite confident to
have examined almost all the available ones; we think
that a UML tool cannot exist without being presented
somewhere on the Web. Notice that Argo UML, one
of the most known UML tool was not included in our
survey since it does support only UML 1.x.
We have considered here only four kinds of
sources (books, courses, tutorials, sources) and we
are aware that these are not the only ones; indeed
there are also the UML users, and we are ready to
launch a personal survey to investigate which con-
structs they know and which they use. Instead, we do
not plan to make a literature survey examining which
constructs are used in scientific papers in the area of
modelling or of Model Driven Development, since
this will be surely biased: e.g., there are few scientific
papers about class diagrams, whereas the newest and
the most problematic constructs will appear in many
of them. However, literature survey covering applica-
tive areas for modelling, for example concerning SOA
(Service Oriented Architecture) or requirement engi-
neering may give valuable insights.
The various diagrams/constructs of the UML have
different ages, i.e., they were introduced in the UML
at different times, some appeared in the UML 1.x,
others in UML 2.0 and someone is still more recent
(e.g., the profile diagram appeared only in UML 2.2).
To mitigate this threat we have careful considered
only sources that explicitly stated that were consid-
ering at least UML 2.0. A more refined analysis made
considering as a source for a given construct only
those dated after the official time of appearance of the
same is unfeasible, also because we have the official
date of appearance of a constructs, i.e., the official ap-
proval of the OMG document presenting it, but such
document was already available to the community and
so the construct was already know and used.
Finally, we have decided to define widely used
(scarcely used) when a construct was considered in
the 60% ( 40%) of the sources, resulting also
in a grey area. We think that this a sensible choice,
using a threshold lower than 60%, e.g., 50%, should
have led to have that a construct is either widely used
or scarcely used without any doubt cases, and this
does not sounds realistic. On the other hand, a higher
threshold, e.g., 80%, should have led to a quite large
number of inconclusive cases.
MODELSWARD2014-InternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
96
We have also computed the widely/scarcely used
on the totality of the sources, disregarding the fact
that they are of very different kinds, e.g. books
and courses, and so assigning them different weights
would have been more realistic. Again, we had the
problem to compute these weights in an unbiased
way: is it sensible to say that a book is three times
more relevant than a course, or that a tool is two times
more relevant than a tutorial? To avoid to make our
result too dependent on our personal judgement we
have preferred to assume that all the sources have the
same weight.
6 CONCLUSIONS
We have investigated, by means of a survey, the level
of usage of the UML activity diagram constructs, con-
sidering in this paper four kinds of objective sources:
books, tools, courses, and tutorials. The results of our
survey show that, the level of usage varies consider-
ably among the different constructs, and that for some
of them it is really very low. However, it is important
to note that, a low level of usage of a construct does
not mean that it is useless. This could be caused by
different factors, for example: (1) a construct may be
replaced by a combination of other constructs (i.e.,
it is derived), (2) its existence may be not widely
known, (3) its definition could be too complex and
not very clear, and thus discouraging potential users,
or finally, (4) it could be useful only in very specific
and rare cases.
Results show that, a large majority of the 47 Ac-
tivity diagrams constructs seem to be scarcely used.
More precisely, 31 activity diagram constructs result
scarcely used (in some cases the percentage of usage
is less than 10%), while, only nine constructs result
widely used by our survey: Action, Control Flow Edge,
Initial/Final Node, Decision/Merge Nodes, Fork/Join Nodes,
Activity Partition (i.e., swimlane), Object Node, and Ob-
ject Flow Edge.
In this paper, we have considered only “objec-
tive” sources and examined them for checking if
some UML constructs are used in an objective way
(e.g., can a tool produce a model including such con-
structs?, is a course/tutorial teaching the fact that
UML has such constructs?). For this reason, the re-
sults of this survey are not biased by any personal
opinion (neither ours nor of any human being tak-
ing part in the examination of the sources). We are
now investigating the usage of the other UML di-
agrams/constructs and launching a personal survey
to investigate which UML diagrams/constructs are
known and used by UML users trying to cover differ-
ent categories of them, and different applicative fields.
The combined results of this work and of the future
personal opinion survey should lead to finally deter-
mine an “essential” UML.
REFERENCES
Budgen, D., Burn, A. J., Brereton, O. P., Kitchenham, B. A.,
and Pretorius, R. (2011). Empirical evidence about the
UML: a systematic literature review. Software Prac-
tice and Experience, 41(4):363–392.
Di Cerbo, F., Dodero, G., Reggio, G., Ricca, F., and Scan-
niello, G. (2011). Precise vs. ultra-light activity dia-
grams - an experimental assessment in the context of
business process modelling. In Proceedings of 12th
International Conference on Product Focused Soft-
ware Development and Process Improvement (PRO-
FES 2011), volume 6759 of LNBIP, pages 291–305.
Springer.
Dobing, B. and Parsons, J. (2006). How UML is used. Com-
munications of the ACM, 49(5):109–113.
Erickson, J. and Siau, K. (2007). Can UML be simplified?
Practitioner use of UML in separate domains. In Pro-
ceedings of 12th International Workshop on Exploring
Modeling Methods for Systems Analysis and Design
(EMMSAD 2007), volume 365, pages 81–90. CEUR
Workshop Proceedings.
Grossman, M., Aronson, J. E., and McCarthy, R. V. (2005).
Does UML make the grade? Insights from the soft-
ware development community. Information and Soft-
ware Technology, 47(6):383–397.
Groves, R. M., Fowler, F. J. J., Couper, M. P., Lepkowski,
J. M., Singer, E., and Tourangeau, R. (2009). Survey
Methodology. John Wiley and Sons.
Jacobson, I. (2009). Taking the temperature of
UML. Web site blog.ivarjacobson.com/taking-the-
temperature-of-uml/.
Kitchenham, B. and Pfleeger, S. (2008). Personal opin-
ion surveys. In Shull, F. and Singer, editors, Guide
to Advanced Empirical Software Engineering, pages
63–92. Springer London.
Leotta, M., Reggio, G., Ricca, F., and Astesiano, E. (2011).
Building VECM-based systems with a model driven
approach: an experience report. In Proceedings of 1st
International Workshop on Experiences and Empiri-
cal Studies in Software Modeling (EESSMod 2011),
volume 785, pages 38–47. CEUR Workshop Proceed-
ings.
Leotta, M., Reggio, G., Ricca, F., and Astesiano, E. (2012).
Towards a lightweight model driven method for devel-
oping SOA systems using existing assets. In Proceed-
ings of 14th International Symposium on Web Systems
Evolution, WSE 2012, pages 51–60. IEEE.
Mohagheghi, P., Dehlen, V., and Neple, T. (2009). Defini-
tions and approaches to model quality in model-based
software development - a review of literature. Infor-
mation and Software Technology, 51(12):1646–1669.
WhataretheusedActivityDiagramConstructs?-ASurvey
97
OMG (2012). Service oriented architecture Modeling Lan-
guage (SoaML) Specification Version 1.0.1. Available
at www.omg.org/spec/SoaML/1.0.1/PDF.
Petre, M. (2013). Uml in practice. In Proceedings of
35th International Conference on Software Engineer-
ing, ICSE 2013, pages 722–731. IEEE.
Reggio, G., Leotta, M., and Ricca, F. (2011a). “Pre-
cise is better than light” A document analysis study
about quality of business process models. In Proceed-
ings of 1st International Workshop on Empirical Re-
quirements Engineering, EmpiRE 2011, pages 61–68.
IEEE.
Reggio, G., Leotta, M., Ricca, F., and Astesiano, E. (2012).
Five styles for modelling the business process and a
method to choose the most suitable one. In Proceed-
ings of 2nd International Workshop on Experiences
and Empirical Studies in Software Modeling, EESS-
Mod 2012, pages 8:1–8:6. ACM.
Reggio, G., Leotta, M., Ricca, F., and Clerissi, D. (2013).
What are the used UML diagrams? A preliminary
survey. In Proceedings of 3rd International Work-
shop on Experiences and Empirical Studies in Soft-
ware Modeling, EESSMod 2013. CEUR Workshop
Proceedings. To appear.
Reggio, G., Ricca, F., Scanniello, G., Di Cerbo, F., and Do-
dero, G. (2011b). A precise style for business process
modelling: Results from two controlled experiments.
In Proceedings of 14th International Conference on
Model Driven Engineering Languages and Systems
(MoDELS 2011), volume 6981 of LNCS, pages 138–
152. Springer.
Seidewitz, E. (2012). Uml 2.5: Specification simplifi-
cation. Presented at “Third Biannual Workshop on
Eclipse Open Source Software and OMG Open Spec-
ifications”.
Torchiano, M., Penta, M. D., Ricca, F., Lucia, A. D., and
Lanubile, F. (2011). Migration of information systems
in the italian industry: A state of the practice survey.
Information and Software Technology, 53(1):71 – 86.
Torchiano, M., Tomassetti, F., Ricca, F., Tiso, A., and Reg-
gio, G. (2013). Relevance, benefits, and problems of
software modelling and model driven techniques a
survey in the Italian industry. Journal of Systems and
Software, 86(8):2110–2126.
UML Revision Task Force (2011). OMG Unified Modeling
Language (OMG UML), Superstructure, V2.4.1.
MODELSWARD2014-InternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
98