GO4SOA: Goal-Oriented Modeling for SOA
Inaldo Capistrano Costa
1, 2
and Jos
´
e M. Parente de Oliveira
1
1
Aeronautics Institute of Technology (ITA), Computer Science Department - IEC,
Prac¸a Mal. do Ar Eduardo Gomes, 50, S
˜
ao Jos
´
e dos Campos, S
˜
ao Paulo, Brazil
2
Federal University of Maranh
˜
ao (BICT / CCET / UFMA), Av. dos Portugueses, 1966,
Cidade Universit
´
aria, S
˜
ao Lu
´
ıs, Maranh
˜
ao, Brazil
Keywords:
Goal-oriented Modeling, Service-oriented Applications, SOA, SOAML.
Abstract:
The service-oriented architecture (SOA) has become a standard in business integration. In software engineer-
ing, several authors propose requirements elicitation from business goals. However, SOA application modeling
does not address these goals, causing a gap that can hinder the application design. The work outlined in this
paper proposes an approach to modeling SOA applications based on business goals. The goals are incor-
porated as semantic information to the application’s architecture and are preserved until its implementation.
Thus, the components that perform a particular business goal can be identified from its architecture model,
through detailed design, and implementation. Case study “Purchase Order” was selected to verify the pro-
posed approach. The major contribution of this research is the application of business knowledge to improve
the service’s descriptions in the application design. The case study indicated that business goals are preserved
on models and implementation, making it easy to verify, through tracing its features, if the organization’s goals
were addressed as completely as possible.
1 INTRODUCTION
The service-oriented architecture (SOA) has become
a standard for the integration of distributed systems,
and its adoption has grown in the new applications
developing (Rake et al., 2009). Associated with the
SOA, the application design often uses semantic re-
sources to facilitate interoperability (Agarwal et al.,
2011). Sometimes, the adoption of SOA applications
is used to facilitate collaboration between different
business domains (Elvesæter et al., 2011). This inter-
action between distinct areas happens through busi-
ness processes to meet business process goals. This
interaction between distinct areas happens through
business processes to achieve business goals.
Current SOA applications’ modeling does not ex-
press clearly the goals that are part of business pro-
cess modeling. However, service-based applications
are in place to carry out the business processes and
support their goals (Todoran et al., 2011) (Delgado
et al., 2013). Therefore, this organizational knowl-
edge should serve as a guide to define what services
will be needed and their initial requirements (Horkoff
et al., 2015).
An approach to design service-based applications
must be aligned to business processes that, in turn,
are directly linked to the organization’s goals (Guiz-
zardi and Reis, 2015). Some studies indicate that
the absence of well-documented service is one of the
main problems of the SOA applications design (Bravo
et al., 2013). This gap between business modeling and
discovery requirements contributes negatively to the
applications’ design.
This article proposes an approach to SOA appli-
cation design, named “Goal-oriented Modeling Ap-
proach for SOA (GO4SOA)” (Costa, 2015). Guided
by business goals, the designer uses modeling tech-
niques to capture the application services’ require-
ments. The goals become part of the semantic ser-
vices’ descriptions and are preserved until the imple-
mentation. Thus, all the elements that perform a spe-
cific business goal can be identified.
A proposed approach case study was developed as
an experiment. The scenario chosen was an electronic
purchase process where a consumer interacts with a
provider and performs a purchase order.
The paper is organized in the following sections.
Section 2 discusses other SOA applications modeling
proposals associated with business processes. Section
3 describes the proposed approach, detailing its com-
ponents and technologies used. Section 4 shows the
case study ”Purchase Order” with its architecture and
Costa, I. and Oliveira, J.
GO4SOA: Goal-Oriented Modeling for SOA.
In Proceedings of the 12th International Conference on Web Information Systems and Technologies (WEBIST 2016) - Volume 1, pages 247-254
ISBN: 978-989-758-186-1
Copyright
c
2016 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
247
modeled goals. Finally, Section 5 presents concluding
considerations about the research developed.
2 RELATED WORK
The literature has various methodologies and tech-
niques for modeling SOA applications. This section
presents a few approaches that also use the business
modeling associated with SOAML modeling.
Todoram et al. (2011) analyze and present how
SOAML complements the UML, adding advantages
for modeling services. The authors state that there is
a strong possibility of SOAML being adopted on a
large scale by industry and encourage further studies
to create approaches in that direction (Todoran et al.,
2011).
Minerva’s framework was proposed by (Delgado
et al., 2010) and aims automating the SOAML mod-
els’ generation from business processes. Therefore,
the approach integrates various paradigms such as
Business Process Management (BPM), Service Ori-
ented Computing (SOC) and Model Driven Develop-
ment (MDD).
Hu et al. (2014) presented an architectural ap-
proach, modeling and simulation type for Model
Driven System of Systems (SoS) based services. This
approach use SysML to address the complex re-
quirements inherent to SoS and SOAML to improve
project implementation (Hu et al., 2014).
The work of Fazziki et al. (2014), proposed a
Model Driven approach being intended to overcome
the gap between business requirements and service-
oriented architecture. The approach uses BPMN, and
SOAML meta model for representing business pro-
cesses in a language known by developers (Fazziki
et al., 2012).
A Model Driven approach is presented in (Xu
et al., 2009) with service-oriented systems described
using SOAML with semantic annotations. Their
approach is to create an extended version of the
SAWSDL architecture and a tool that provides an an-
notation editor. The main focus of the paper are the
SOAML model, a model-based SAWSDL version and
a platform independent editor.
We can find that there are several efforts in the lit-
erature aimed at achieving integration between busi-
ness modeling and services-based system design.
This continuity between different levels of abstraction
seeks greater adhesion between the models. This lack
of goals in the association between the two models
can generate a gap that can hinder the identification
of service requirements.
3 PROPOSED APPROACH
Requirements Engineering based on goals has been
considered promising as part of several software-
development processes. This section presents the pro-
posed approach to SOA application modeling based
on objective using SOAML (Service oriented archi-
tecture Modeling Language) (Berre, 2008) in con-
junction with the URN (User Requirements Notation)
(Amyot, 2003).
The proposal aims to establish a modeling process
that makes use of the knowledge captured in the busi-
ness model. Processes and organizational goals are
detailed in an intermediate model that facilitates the
transition to SOA application modeling. The tran-
sitions are facilitated by semantic information sup-
ported by ontologies, which are associated with vari-
ous artifacts of the SOA during the application devel-
opment process.
Figure 1: Proposed approach overview.
Figure 1 shows an overview of the modeling pro-
cess that is premised on the existence of a business
model wich will guide the creation of the follow-
ing models. Service requirements are extracted based
on the business model. The yellow box is the pro-
posed approach, “Goal-oriented Modeling Approach
for SOA (GO4SOA)” detailed in Figure 2.
Figure 2: SOA Application Modeling (Costa, 2015).
The modeling process starts from an existing busi-
ness model that serves as the basis for the prepara-
tion of SOAML model. In the presented approach,
SOAML model was extended by semantic annota-
tions using the standard SAWSDL. The semantic an-
notations are meant to enrich the SOAML model from
specific URN goals. As shown in Figure 2, the mod-
eling process are:
WEBIST 2016 - 12th International Conference on Web Information Systems and Technologies
248
1. Business Goals Services Requirements. At this
stage, an intermediate model that captures the
business services requirements based on goals is
built using URN.
2. SOA Application Design. SOA modeling starts
with the preparation of an architectural model
from the goals and processes that were detailed
with the URN. It makes use of SOAML enriched
with semantic annotations associated with the do-
main ontology;
3. Application Model Verification. The SOA project
is implemented in BPEL for model verification
purpose.
At the end of the modeling process, we have several
levels of goals and services complementary models.
The models artifacts are aligned according to domain
ontology concepts, which facilitates tracking func-
tions among the different abstraction levels.
3.1 Business Goals Services
Requirements
The SOA modeling starts with the capture of business
goals that will be reached by services based processes.
Figure 3 shows “Business Goals Services Require-
ments” phase that uses the URN to represent in more
detail the goals and processes that have been found in
a macro way in business models.
Figure 3: Business Goals Services requirements.
The URN is a visual notation that is designed to
represent functional and non-functional requirements
consistently. To achieve this purpose the URN con-
sists of two graphical notations that complement each
other: the GRL (Goal-oriented Requirement Lan-
guage) to describe the goals and the UCM (Use Case
Maps) to describe the scenarios that should perform
these goals (Amyot, 2003).
The phase “Business Goals Services Require-
ments” has as input the business model and a do-
main ontology. The following activities should be
performed in this process:
Align the concepts between the business model
and the ontology;
Create the GRL diagram using as the base the
business goals;
Build the UCM diagrams with focus to achieve
the goals mapped on the GRL.
This intermediate phase between the business model
and the architectural design of the IT system is a dif-
ferential in relation to other approaches. Without this
vision, the transition between business modeling and
application design can result in erroneous decisions
and choices at the final model.
3.2 SOA Application Design
This modeling phase starts with the creation of an ap-
plication architectural model using SOAML. As al-
ready indicated, SOAML model is annotated seman-
tically to preserve its relationship with BPMN dia-
grams and UCM. Figure 4 illustrates the “SOA Ap-
plication Modeling” process and its elements.
Figure 4: SOA Application Design.
To reference the SOAML model semantically with
a domain vocabulary, we use SAWSDL. The business
goals lists, the service capability descriptions and oth-
ers’ models artifacts can be supported by a domain
ontology. A unified vocabulary enables alignment be-
tween service capabilities and business goals.
We chose SAWSDL based on the studies by
Hobold (Hobold and Siqueira, 2012) and Sun (Sun
et al., 2012). Its conclude that SAWSDL is more flex-
ible and easier to use since it is a WSDL extension.
Sun (Sun et al., 2012) also classified SAWSDL as
possessing “high semantic expressivity”.
In GO4SOA, the SOAML modeling is guided by
URN diagrams. As we can see in Figure 4, as part of
SOAML model, the semantic annotations link each
model component to “service requirements” previ-
ously represented in URN.
The activities to be developed in the “SOA Appli-
cation Modeling” processes are as follows:
Build SOAML architecture from the GRL;
Derive Service Interfaces from GRL resources,
UCM maps and domain ontology;
GO4SOA: Goal-Oriented Modeling for SOA
249
Develop Service Contracts from UCM maps;
Semantically annotate the model artifacts.
This set of models, URN and SOAML semantically
annotated produces a consistent design enough to sup-
port the implementation phase.
3.3 Application Model Verification
The ”Application Model Verification” modeling is
shown in Figure 5. In this phase, the BPEL process
is drawn from the SOAML enabling the verification
of elaborated models and their adherence to business
requirements.
Figure 5: Application Model Verification.
BPEL processes run in a prototype environment,
which enables the initial verification of previous mod-
els. Associated with BPEL requirement tracking doc-
uments can be elaborated. From BPEL with anno-
tated WSDL, it’s possible to be listed which processes
have been implemented and what services are respon-
sible for carrying out a particular organizational goal.
The “Purchase Order” case study was developed
to experiment the GO4SOA.
4 PURCHASE ORDER
MODELING
The case study is a traditional “Purchase Order” ap-
plication. Customer search and consulting products
using an application, select items that want to buy and
submit a purchase order. A company, through web
services, confirms the purchase order after selected
the delivery and payment mode. The following ap-
plication issues an invoice and a delivery protocol for
the customer.
Figure 6 illustrates the selected domain ontology
that is published on the W3C site, being used by the
SAWSDL standardization group as one of the rating
application examples (Farrell and Lausen, 2007). The
ontology describes in a simply way the fundamental
concepts associated with the ”Purchase Order“ do-
main.
Figure 7 shows one of the processes of ”Pur-
chase Order” modeled using BPMN notation (BPMN,
Figure 6: Purchase Order Ontology (Farrell and Lausen,
2007).
Figure 7: Purchase Order BPMN (BPMN, 2010).
2010). This is the primary process that begins with a
product purchase order and ends with delivery to the
customer. This BPMN diagram was used to develop
a refinement of domain ontology shown in Figure 8.
Figure 8: Refine Domain Ontology.
This refinement is to align additional concepts
from business model with domain ontology. The do-
main ontology is extended by synonyms, new classes
and properties that are perceived from the BPMN di-
agram in Figure 7.
At this stage, the following concepts to add to the
domain ontology ”Purchase Order” were identified:
Synonyms: Order = RequestPurchaseOrder
New Classes: Quotation, Review, Seller, Ap-
prover;
New Properties: hasCustomerApprover, hasPro-
ductApprover.
We point out that the original structure of the domain
ontology has been preserved. The BPMN process and
the refined Domain Ontology are the input for the
business goals’ requirements and the SOAML mod-
eling.
WEBIST 2016 - 12th International Conference on Web Information Systems and Technologies
250
4.1 Purchase Order Business Goals
According to this approach, at this stage, from a
BPMN model, GRL and UCM diagrams are prepared
as intermediate models to represent the service re-
quirements.
To model the goals using the GRL notation, it
is necessary to identify the actors, their goals and
macro processes that will accomplish these goals. In
BPMN, Figure 7, we can identify the actors “Cus-
tomer”, “Seller” and “Shipper” as well as the macro
processes associated with “Purchase Order”. These
actors and processes were associated with goals in the
GRL from Figure 9.
Figure 9: Purchase Order GRL diagram.
The goals were modeled and represented in the
GRL diagram in Figure 9 with the processes and re-
sources required to achieve the goals. On the bor-
der of the actors, responsibilities related to their goals
are identified. The responsibilities represented in the
GRL diagram are further detailed by UCM.
Figure 10: Shopping Cart UCM diagram.
In the GRL diagram we can see that the customer
is responsible of starting two main activities, the Pur-
chase Order itself and an earlier support activity, the
Shopping Cart. The Figure 10 shows that the Shop-
ping Cart process is a simple query to a products cat-
alog made available by the seller.
Figure 11: Purchase Order UCM diagram.
Figure 11 shows the Purchase Order process mod-
eled on UCM already with the inclusion of references
to the services to be used, for example, OrderService
and ShipmentService. These services are identified
from the BPMN and GRL diagrams as well as the as-
sumption that the application uses SOA architecture.
From these perspectives represented in URN, we
have the elements necessary to start SOAML model-
ing of “Purchase Order” application.
4.2 Purchase Order Application Design
The SOAML modeling begins with the analysis of the
GRL and UCM diagrams in order to identify the capa-
bilities that must be included in the SOA architecture
model.
Figure 12 represents the main UCMs processes,
Shopping Cart (Figure 10) and Purchase Order (Fig-
ure 11) as capabilities to be offered by a seller who
wishes to provide services to a purchase order client.
These capabilities were represented using the SOA ar-
chitecture diagram: Shopping Cart, the Purchase Or-
der and Shippment.
Additional capabilities were modeled on Figure
12 from UCMs. As the UCM is related to the GRL di-
agram to be responsible for proceeding with the goals,
SOA application capabilities are also associated with
goals through semantic annotations.
To annotate the SOAML model semantically, it
was created an abstract data type based on SAWSDL
standard. This abstract data type shown in Figure 13
is inserted in SOAML diagrams and stores a refer-
ence to the concept of the domain ontology, involving
the element in focus on the vocabulary of the busi-
ness. This semantic information is designed to main-
GO4SOA: Goal-Oriented Modeling for SOA
251
Figure 12: Purchase Order SOAML Architecture.
tain consistency between the models of application
and business modeling.
Figure 13: SAWSDL Annotation Type.
Figure 14 shows an architectural diagram of a con-
sumer application that would be responsible for per-
forming the client’s goal of making a purchase sim-
ulation through a Shopping Cart. Diagrams of the
Service Provider were prepared, Figure 12, and Ser-
vices Consumer, Figure 14, so that we can demon-
strate the interaction between provider and consumer
in the case study.
Even from the UCM “Shopping Cart”, Figure 15
shows the collaboration between a consumer applica-
tion where the customer makes its electronic purchase
simulation, and a provider application in which the
services are provided to feed the necessary informa-
tion for its Shopping Cart.
When making a reference to the UCM shown in
Figure 10, we have here the division of responsi-
bilities between two actors, the consumer and the
provider. This cooperation is via a service interface,
as shown in the diagram.
With the details shown in Figure 15 and contracts
included in the SOAML model, we have the input
needed for BPEL implementation. Some SOA mod-
eling tools generate WSDL files from these elements
that can be useful to elaborate BPEL process.
Figure 14: Customer App Capability Sample.
Figure 15: Purchase Order with provider.
4.3 Purchase Order Model Verification
Starting from UCM maps and SOAML diagrams, it
was implemented a BPEL process for the shopping
cart, as illustrated in Figure 16.
This process was simulated by the BPEL runtime
environment and presented the behavior and modeled
results. As BPEL uses to define service interfaces
WSDL files, which in our case are annotated seman-
tically, we can trace the implementation to business
goals being realized.
4.4 Results Analysis
The case study “Purchase Order” was selected with
the expectation of being achieved the following
checks regarding the proposed approach:
To explain the preservation of the objectives in the
various models;
WEBIST 2016 - 12th International Conference on Web Information Systems and Technologies
252
Figure 16: Shopping Cart Purchase Order BPEL.
To ilustrate the Domain Ontology refinement;
To explain the necessity for URN diagrams as an
intermediary model between BPMN and SOA de-
sign.
The “Customer” goal of making a purchase preview
using a “Shopping Cart” is present in the GRL dia-
gram, aimed at UCM diagram as actions, in SOAML
diagram as capacity and at BPEL process as a service.
In these diagrams are preserved the initial goal that is
always associated with the concept “Shopping Cart”
of Domain Ontology.
The Domain Ontology refinement was presented,
and the main focus is to make concept alignment
with models developed by the addition of synonyms,
classes and properties. At this point, it became clear
that the original ontology was preserved in its essence
and structure.
On the need for an intermediate model be-
tween business processes and application design, we
can highlight some points that have been demon-
strated. The URN diagrams facilitated the modeling
of SOAML architecture with the discovery of capa-
bilities from the responsibilities and the nomination
of candidates to service this level of abstraction close
to business processes. The association between goals
and responsibilities, which is established in the URN,
made possible subsequent tracking that enables the
verification of the completeness of applications de-
signed to meet business goals.
5 CONCLUSIONS
Most approaches to SOA system design end up mov-
ing away from business perspective. Designers and
developers, with its technical view, lose much of the
value that the business knowledge can bring to mod-
eling applications. The service-based computing is
closely linked to business goals and improve when
this knowledge is part of solution to be developed.
This paper presented a new approach for modeling
SOA applications based on business goals. Establish
an alignment and a direct relationship between busi-
ness processes and the application models is the main
gain in the adoption of GO4SOA. The GO4SOA,
from the point of view of the software-development
life cycle, directly contributes to improve service-
based application design. However, improvements in
implementation can be viewed as a result of the se-
mantic annotations.
The GO4SOA explores the business processes
goals from the perspective of an SOA implementa-
tion. The insertion of URN as intermediate model
is one of the approach contributions because it facil-
itates the transition between the business model and
application design, eliminating or mitigating possible
gaps between these two abstraction levels.
The modeling process is supported by a Domain
Ontology. The adoption of the ontology and its evo-
lution throughout the project contributes to the stan-
dardization and clarity of concepts and vocabulary us-
ing during the project, as well as their relationship
with each other. The use of ontology as a support
tool strengthens the semantics of each component of
model associating to business goals.
The GO4SOA uses the URN to provide subsidies
and facilitate the development of SOAML application
design. Semantic annotations in SOAML artifacts re-
late the elements of the business domain concepts to
model, enabling an understanding of the association
between application and business goals. These se-
mantic annotations enable a strong relationship be-
tween objectives, service requirements, architecture
and implementation, associated to business process
goals.
Thus, the GO4SOA enables a smoother transition
between the various levels of abstraction preserving
the knowledge and concepts through a domain ontol-
ogy that is updated during the modeling process. The
case study indicated that business goals are preserved
on all models. This was more explicit in SOAML
model with semantic annotations, enriching the ar-
chitecture and providing more consistency to its ele-
ments and service descriptions. Future work includes
the development of additional case studies in more
complex scenarios.
GO4SOA: Goal-Oriented Modeling for SOA
253
REFERENCES
Agarwal, S., Bloehdorn, S., and Lamparter, S. (2011). In-
telligent service management - technologies and per-
spectives. In Fensel, D., editor, Foundations for the
Web of Information and Services, pages 215–237.
Springer.
Amyot, D. (2003). Introduction to the user requirements
notation: learning by example. Computer Networks,
42(3):285–301.
Berre, A. (2008). Service oriented architecture modeling
language (soaml)-specification for the uml profile and
metamodel for services (upms). Object Management
Group (OMG).
BPMN, O. (2010). Bpmn 2.0 by example. OMG Doc-
ument Number: dtc/2010-06-02. URL: http://www.
omg. org/spec/BPMN/2.0/examples/PDF.
Bravo, M., Pascual, J., and Rodr
´
ıguez, J. (2013). Semantic
representation of public web service descriptions. In
Computational Science and Its Applications–ICCSA
2013, pages 636–651. Springer.
Costa, I. C. (2015). Uma abordagem para mode-
lagem de aplicac¸
˜
oes SOA baseada em objetivos de
neg
´
ocio. Tese de Doutorado - Instituto Tecnol
´
ogico de
Aeron
´
autica - ITA. S
˜
ao Jos
´
e dos Campos, SP, Brasil.
Delgado, A., de Guzman, I. G.-R., Ruiz, F., and Piattini, M.
(2010). From bpmn business process models to soaml
service models: a transformation-driven approach. In
Software Technology and Engineering (ICSTE), 2010
2nd International Conference on, volume 1, pages
V1–314. IEEE.
Delgado, A. et al. (2013). Main principles on the integra-
tion of soc and mdd paradigms to business processes:
a systematic review. In Software and Data Technolo-
gies, pages 88–108. Berlin, ALemanha. Springer.
Elvesæter, B., Berre, A.-J., and Sadovykh, A. (2011). Spec-
ifying services using the service oriented architecture
modeling language (soaml): A baseline for specifica-
tion of cloud-based services. In The 1st International
Conference on Cloud Computing and Services Science
(CLOSER 2011), Noordwijkerhout, The Netherlands.
Farrell, J. and Lausen, H. (2007). Semantic annotations for
WSDL and XML schema. World Wide Web Consor-
tium, Recommendation REC-sawsdl-20070828.
Fazziki, A. E., Lakhrissi, H., Yetognon, K., and Sadgal,
M. (2012). A service oriented information system:
a model driven approach. In Signal Image Technol-
ogy and Internet Based Systems (SITIS), 2012 Eighth
International Conference on, pages 466–473. IEEE.
Guizzardi, R. and Reis, A. N. (2015). A method to align
goals and business processes. In Conceptual Model-
ing, pages 79–93. Switzerland: Springer International
Publishing.
Hobold, G. C. and Siqueira, F. (2012). Discovery of seman-
tic web services compositions based on sawsdl anno-
tations. In Web Services (ICWS), 2012 IEEE 19th In-
ternational Conference on, pages 280–287. IEEE.
Horkoff, J. et al. (2015). Using goal models downstream:
A systematic roadmap and literature review. Interna-
tional Journal of Information System Modeling and
Design (IJISMD), 6(2):1–42.
Hu, J., Huang, L., Chang, X., and Cao, B. (2014). A model
driven service engineering approach to system of sys-
tems. In Systems Conference (SysCon), 2014 8th An-
nual IEEE, pages 136–145. IEEE.
Rake, J., Holschke, O., and Levina, O. (2009). Enhancing
semantic service discovery in heterogeneous environ-
ments. In Abramowicz, W., editor, BIS, volume 21
of Lecture Notes in Business Information Processing,
pages 205–216. Springer.
Sun, L., Dong, H., and Ashraf, J. (2012). Survey of service
description languages and their issues in cloud com-
puting. In Semantics, Knowledge and Grids (SKG),
2012 Eighth International Conference on, pages 128–
135.
Todoran, I., Hussain, Z., and Gromov, N. (2011). Soa inte-
gration modeling: An evaluation of how soaml com-
pletes uml modeling. In Enterprise Distributed Object
Computing Conference Workshops (EDOCW), 2011
15th IEEE International, pages 57–66. IEEE.
Xu, J., Bai, Z., Berre, A., Christer, O., et al. (2009). Model
driven interoperability through semantic annotations
using soaml and odm. In Information Control Prob-
lems in Manufacturing, volume 13, pages 650–655.
WEBIST 2016 - 12th International Conference on Web Information Systems and Technologies
254