It aims to automate the generation of use case,
system sequence diagrams and UML class diagrams
from BPMN models. The generated IS design can be
used either to establish a new IS system, or analyze or
maintain an existing one. It is defined in terms of
transformations that ensure the alignment of the
presented diagrams to the BPMN model by both
accounting for the semantics and structure of the
BPMN model, and providing for all business objects
and activities.
In this paper, we improve the DESTINY approach
(Khlif et al., 2018) with: 1) BPMN transformation
rules for identifying design sequence diagrams; 2)
implementing the obtained diagrams according to the
proposed transformation rules and evaluating them in
terms of their precision and domain coverage.
The rest of this paper is organized as follows. In
Section 2, we describe the related works of the
existing BP-IS alignment works. Section 3 presents
the transformation strategy rules that allow
transforming CIM models to PIM models. For a better
use of our approach, we develop in Section 4 a tool
for assessing the alignment between BPMN model
and the corresponding design sequence diagrams. In
Section 5, we conclude by specifying the current
works and by presenting future works.
2 RELATED WORK
In this section, we summarizes existing works on
aligning BPM to IS model.
Rhazali et al (Rhazali et al., 2016) the authors
propose a semi-automatic transformation from
Computation Independent Model (CIM) to platform-
independent model (PIM), based on rules.
In (Suchenia et al., 2017), the authors generate
UML sequence model from the BPMN model. Such
a model can support time specification such as
duration constraints or time constraints.
(Bouzidi et al., 2020) propose a set of rules that
transform a BPMN model into a UML sequence
diagram structured according to the model view
controller design pattern.
Overall, the above works related to BP-IS models
in (Suchenia et al., 2017) (Rhazali et al., 2016) are
purely structure-based; it ignores the remaining
aspects of a BP, which do affect the performance of a
BP. For example, the semantic type between objects
in a sequence diagram is not captured. In addition,
few are the works that automatically derive design
sequence diagrams from the BPMN model.
3 FROM BPMN TO DESIGN
SEQUENCE DIAGRAMS
To define the design sequence diagrams, we
decompose BPMN model into fragments. Each
fragment corresponds to a use case. A use case
represents a set of actions that the system(s) should or
can perform in collaboration with one or more
business workers or business actors, and it should
provide some observable result to them (Rumbaugh
et al., 2005). A business worker represents an
abstraction of a human that acts within the business
to realize a service, while a business actor represents
a role played by some person or system external to the
modeled business and interacting with the business.
Recall that we defined a pattern as a fragment F
in an annotated BPMN process model P, that is a
connected, directed sub-graph of P starting at one
activity and ending at another activity such that F
contains the maximum number of activities between
either two gateways, a start node and a gateway, or a
gateway and an end node. A fragment F can be
decomposed into sub-fragments if it contains sub-
processes, which indicates the end of sub-fragment
and the beginning of another one (khlif et al., 2018).
Since each use case is obsolete without a textual
or graphical description, we associated with each
BPMN-to-UCD pattern a set of BPMN-to-DSD rules
to model the use case behavior, which is 1:n mapping
between the concepts of BPMN model and design
sequence diagrams. To end this purpose, we lightly
extended the BPMN meta-model in (khlif et al., 2018)
to handle the business context. We added attributes
and two new classes that are Description and
ExtendedAttributes. For each BPMN element, we
associate a Description that adds a specific
information to BPMN elements in terms of the
relationships between them. The Extended Attributes
class specifies the properties of each BPMN element.
R1: For each lane whose label is a synonym to
"person", "agent" or "system", the corresponding
actor name will be the lane name. For each pool/lane
whose label is a metonymy of "department", "unit",
"division" or "management", the corresponding actor
name will be the concatenation of the pool/lane name
and the word “Agent” (khlif et al., 2018).
R2: For each pool:
R2.1: If the pool includes only business workers
(representing the system), then transform it to a set of
lifelines and an activation zone representing GUI,
entities and control classes that belong to the system
perimeter. The classes’ names follow the linguistic