5.2 Limitations
We focused on the capability of activities to describe
sequences, parallelism, execution paths and proposi-
tional logic relations. Still, activities can be used in
other ways to describe other aspects of behavior. Con-
sequently, it is not possible to foresee every applica-
tion. Thus, it is necessary to restrict oneself to cer-
tain aspects. While the extracted information can be
used for multiple purposes, there are use cases that
require different aspects our approach does not yet
cover. One of these aspects are asynchronous events
that are potentially used to abort the execution of an
activity. These were not part of our work, since our
industry partner does not use them.
Also, this work focuses on the activity diagrams
of our industry partner. These activities only incor-
porate a subset of elements in activities. Still, this
kind of description is quite common to describe func-
tions (Firesmith, 2004). As a result, the approach is
not generally applicable but we think that it provides
a benefit for that kind of graphical descriptions.
6 CONCLUSION AND OUTLOOK
In this paper we presented an approach to extract im-
plicitly contained information from high-level activ-
ities to support downstream development tasks. For
this purpose we introduce activity graphs as a simpli-
fied, yet formal, representation of activity diagrams,
which can be used to make statements about se-
quences and execution paths of activities. We show
in detail how this can be used to derive textual re-
quirements, which both improves the quality of the
resulting requirements document and saves effort in
its creation. Also, the creation of test cases was per-
formed as a proof-of-concept for one function.
Furthermore, it is planned to use the extracted in-
formation for impact analysis. By combining the ac-
tivities with the mapping of the actions to the com-
ponents, dependencies between components are made
more easily accessible. This knowledge will be used
to derive visual architectural views of the whole sys-
tem, which in turn shall facilitate release planning.
As the approach is restricted to a subset of ele-
ments, the approach is not generally applicable to all
activities. Incorporating all elements (such as guards)
of activities into the approach is an open issue. Also,
there are further aspects of activities that are needed
during the development of systems we did not yet
consider. Which aspects need to be included and what
artifacts they might be used for is also worth investi-
gating.
REFERENCES
Arlow, J. and Neustadt, I. (2004). Enterprise patterns and
MDA: Building better software with archetype pat-
terns and UML. Addison-Wesley Professional.
Beckmann, M., Michalke, V., Vogelsang, A., and Schlutter,
A. (2017a). Removal of Redundant Elements within
UML Activity Diagrams. In Conference on Model
Driven Engineering Languages and Systems.
Beckmann, M. and Vogelsang, A. (2017). What is a Good
Textual Representation of Activity Diagrams in Re-
quirements Documents? In Model-Driven Require-
ments Engineering Workshop.
Beckmann, M., Vogelsang, A., and Reuter, C. (2017b). A
Case Study on a Specification Approach using Acti-
vity Diagrams in Requirements Documents. In Inter-
national Requirements Engineering Conference.
Broy, M. (2006). Challenges in automotive software en-
gineering. In Proceedings of the 28th international
conference on Software engineering.
Drusinsky, D. (2008). From UML activity diagrams to
specification requirements. In International Confer-
ence on System of Systems Engineering.
Firesmith, D. (2004). Generating Complete, Unambiguous,
and Verifiable Requirements from Stories, Scenarios,
and Use Cases. Journal of Object Technology.
Kundu, D. and Samanta, D. (2009). A Novel Approach to
Generate Test Cases from UML Activity Diagrams.
Journal of Object Technology.
Lano, K. (2009). UML 2 Semantics and Applications. John
Wiley & Sons.
Maiden, N. A., Manning, S., Jones, S., and Greenwood, J.
(2005). Generating requirements from systems mod-
els using patterns: a case study. Requirements Engi-
neering.
Nicol
´
as, J. and Toval, A. (2009). On the generation of re-
quirements specifications from software engineering
models: A systematic literature review. Information
and Software Technology.
Object Management Group (OMG) (2015). OMG Unified
Modeling Language (OMG UML), Version 2.5.
Sikora, E., Tenbergen, B., and Pohl, K. (2012). Industry
needs and research directions in requirements engi-
neering for embedded systems. Requirements Engi-
neering.
St
¨
orrle, H. (2004). Semantics of UML 2.0 Activities. In
Symposium on Visual Languages and Human-Centric
Computing.
Usman, M. and Nadeem, A. (2009). Automatic Generation
of Java Code from UML Diagrams using UJECTOR.
Journal of Software Engineering and Its Applications.
Vogelsang, A., Eder, S., Hackenberg, G., Junker, M., and
Teufl, S. (2014). Supporting concurrent development
of requirements and architecture: A model-based ap-
proach. In Conference on Model-Driven Engineering
and Software Development.
Weber, M. and Weisbrod, J. (2002). Requirements En-
gineering in Automotive Development - Experiences
and Challenges. In International Conference on Re-
quirements Engineering.
Information Extraction from High-level Activity Diagrams to Support Development Tasks
445