method builds an Archimate-based goal model that
links candidate solutions (e.g., payment web service)
to the functional requirements (e.g., pay by credit
card) to be implemented and the desired objectives
(e.g., Secure payment) to be satisfied. The goal
model connects Archimate requirements, goals and
solutions according to the GRL rules and constraints.
Second, it computes automatically satisfaction scores
that measure the effectiveness of the solutions. Third,
the method prioritizes the solutions according to their
satisfaction score obtained in the previous step. The
higher the score is, the better is the solution.
This research has been conducted following the
design science methodology (Peffers et al., 2007).
The design science research approach aims to
answer questions related to relevant issues through
the creation of innovative artifacts (Peffers et al.,
2007). The artifact proposed in this research is a
prioritization method.
The remainder of the paper is organized as
follows. Section 2 describes our goal-oriented
method for software solutions prioritization using
a document management system. It also presents
the basic concepts of the Archimate and the GRL
languages. Section 3 surveys related work. Section
4 draws our conclusions and outlines directions for
future research.
2 A GOAL-ORIENTED METHOD
FOR SOFTWARE SOLUTIONS
PRIORITIZATION
Our goal is to design an easy-to-use method that helps
architecture practitioners such as enterprise architects
and solutions architects to prioritize candidates
solutions according to their ability to implement the
requirements and their contributions to satisfy the
software and stakeholders goals.
To provide an easy-to-use method that targets
a large community of architecture practitioners, we
chose the Open Group Archimate language (The
Open Group, 2019) to design the models. We also
needed a goal language that i) links the requirements,
solutions and goals, and ii) provides a mechanism
to evaluate the impact of the choice of solutions
on the business objectives. Among goal modeling
languages KAOS (Keep All Objects Satisfied) (van
Lamsweerde, 2004), GRL (ITU-T, 2012), and i* (Yu,
1997), we found that GRL is suitable to design our
method as it is a standard, lightweight, and easy to
integrate with the Archimate language.
2.1 ArchiMate Language
ArchiMate is an EA modeling language that has
been adopted as a standard by the Open Group
(Jonkers et al., 2011). Archimate allows the creation
of models to build an EA (Jonkers et al., 2017).
It is made up of two dimensions: the layer and
aspect dimensions (Gaydamaka, 2019; Jonkers et al.,
2017). The layers represent the successive levels of
abstraction at which a business is modeled and the
aspects represent the different concerns to be modeled
(Gaydamaka, 2019). Archimate is composed of
five layers, namely Strategy, Business, Application,
Technology, Implementation and Migration and four
aspects, namely Passive structure, Behavior, Active
Structure, and Motivation (The Open Group, 2019).
The Archimate aspects have been inspired by the
natural language. Active structure elements (e.g.,
actor, role, application component) are the subjects
that can perform behavior. Behavior elements
represent the dynamic aspects (e.g., business process,
business interaction, event) of the organization.
Passive structure elements (e.g., product, business
object) can be accessed by behavior elements (The
Open Group, 2019). Motivation elements (e.g.,
goal, requirement) represent the reason behind the
architecture or the behavior (The Open Group, 2019).
Strategy layer elements are used to model the
strategic direction of the organization. These
elements are used to model how the organization
wants to create value, the resources needed, and
how it plans to use these resources. Business layer
elements (e.g., business service) allow to model
the operational aspects of the organization (The
Open Group, 2019). Business layer models are
technology-independent. Application layer elements
(e.g., application service, application component)
model the application architecture (The Open Group,
2019). Technology layer elements are used to model
the technology architecture of the organization (The
Open Group, 2019). Physical layer elements allow
modeling the physical world (The Open Group,
2019). These elements are included as an extension
to the technology layer. The Implementation and
Migration layers support the implementation of the
architectures and their migration (The Open Group,
2019).
2.2 GRL Language
GRL is a goal-oriented modeling language (ITU-T,
2012). It allows to model the requirements to be
achieved by the solutions, the goals to be satisfied,
the tasks and their relationships. Figure 2 presents
MODELSWARD 2022 - 10th International Conference on Model-Driven Engineering and Software Development
288