=Paper= {{Paper |id=Vol-3067/paper4 |storemode=property |title=Business process implementation through SaaS services composition |pdfUrl=https://ceur-ws.org/Vol-3067/paper4.pdf |volume=Vol-3067 |authors=Mouna Rekik,Manel Fourati,Khouloud Boukadi |dblpUrl=https://dblp.org/rec/conf/tacc/0001FB21 }} ==Business process implementation through SaaS services composition == https://ceur-ws.org/Vol-3067/paper4.pdf
Business process implementation through SaaS
services composition
Mouna Rekik1 , Manel Fourati1 and Khouloud Boukadi1
1
    University of Sfax, MIRACL Research Laboratory, Tunisia


                                         Abstract
                                         The Business process achievement requires various and heterogeneous knowledge i.e. computer in-
                                         formation, business and information technology. Enterprises relying on Business processes to gain
                                         an added value should have a sufficient expertise necessary to maintain their competitiveness in the
                                         marketplace. The cloud computing and more specifically the Software as a Service (SaaS) composition, is
                                         a prominent solution allowing the well achievement of Business Processes (BPs) goals and objectives.
                                         However,composing multiple SaaS services to support the BP execution is not a trivial task regarding
                                         the complex nature of the BP. Indeed, BP is composed of a set of inter-related activities having each one
                                         a specific functional requirements, data that should be exchanged between each SaaS service, and roles
                                         imposing that only authorized actors can perform a specific activity.
                                             This paper proposes a comprehensive framework for SaaS selection and composition in order to
                                         cover various considerations related to matching BP activities requirements and SaaS functionalities.
                                         The allocation of BP activities to be executed SaaS services using a genetic algorithm while considering
                                         the data and the activities access control issues.

                                         Keywords
                                         Business Process, SaaS composition, Genetic algorithm,




1. Introduction
Achieving " the enterprise business goals and their strategic objectives is becoming easier
regarding the maturity of the available Business Process Management Systems (BPMS). However,
deciding to cut off with traditional Information Technology (IT) systems to adopt BPMS ones
is not a trivial neither a well-worn practice. The reconstitution of the enterprise IT to adopt
business process based systems requires good business and IT expertise.
   Taking advantage of the maturity of emergent and available technologies, such as cloud
computing services, is a less expensive solution, as it reduces the burden of installing and
configuring BPMS. Integrating cloud computing in enterprise IT assets is exhibiting exponential
interest. Indeed, cloud computing is seen as a potential means to increase enterprises’ business
agility, reduce software and hardware expenditure, and enhance productivity.
   Regarding the plethora and the proliferation of the Software as a Service (SaaS) in the cloud
environment, finding the most appropriate service, to support the achievement of the enterprise
functional and non functional requirements, is becoming a fastidious task. For enterprises

Tunisian Algerian Conference on Applied Computing (TACC 2021), December 18–20, 2021, Tabarka, Tunisia
$ mouna.rekik@istls.u-sousse.rnu.tn (M. Rekik); manel.fourati@fsegs.rnu.tn (M. Fourati);
khouloud.boukadi@fsegs.usf.tn (K. Boukadi)
                                       © 2021 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
    CEUR
    Workshop
    Proceedings
                  http://ceur-ws.org
                  ISSN 1613-0073       CEUR Workshop Proceedings (CEUR-WS.org)
relying on business process to gain added value, considering several SaaS services cooperating
to achieve the added value, requires tackling several issues. Firstly, each SaaS offers different
business functions which may fit or not each Business Process (BP) activity functionality.
Moreover, there is no standard SaaS services description that unifies the heterogeneity when
labeling the SaaS offerings. Furthermore, the business process structure, makes harder the BP
outsourcing to SaaS. Indeed, BP is composed among others, of flow and connecting objects,
swimlane and artifacts. Adopting BP based SaaS composition should keep as most as possible
the BP main components.
   This paper proposes a comprehensive system for BP based SaaS composition that tackles the
overall mentioned issues :

    • The semantic matching between each BP activity and its data object with the SaaS offering
      and its input/output data. Indeed, a BP activity/data label and the SaaS service/data may
      use different semantic description although they are functionally equivalent.
    • The consideration of the data exchanged between the on-premise BP activities and the
      outsourced to SaaS ones. Indeed, the access to data managed by SaaS offers is not always
      possible. Furthermore, importing and exporting data to and from SaaS services may be
      not allowed for some SaaS providers. Hence, accessing to data handled by SaaS providers
      is very critical in the BP based SaaS composition as different SaaS services are supposed
      to cooperate together and/or with on-premise activities to achieve the BP functional
      objectives.
    • The consideration of role based activities. Indeed, the role concept is very important in
      the BP context. Each activity is performed by an actor to whom is assigned a role. Hence,
      controlling who is authorized to perform the BP activities in the SaaS environment is of a
      prominent importance. This implies assessing whether the SaaS service supporting the
      BP execution provides role based access control techniques.

   Selecting the most appropriate SaaS service to support business process execution, is a large
scale optimization problem that can be resolved by applying meta-heuristic methods. Hence,
we propose the use of the Genetic Algorithm (GA) [1].
   The sequel of the paper is as follows : Section 2 details our proposed system along with
its different modules, Section3 gives an overview of the related work, Section 4 evaluates our
system. In order to subjectively evaluate this research work, we present the threat to validity in
Section 5. We conclude finally in Section 6.


2. The system overall process
Fig. 1 illustrates the system activities it follows in order to compose a business process based
SaaS composition.
   The Business process is among the main data input for the system which is represented using
the Business Process Model Notation (BPMN) [2]. The process owner is an enterprise aiming
to achieve its business objectives through the outsourced BP. Consequently, the final SaaS
composition should ensure as much as possible functionalities required by BP activities. The
different cloud services are gathered based on well known repository such as cloud harmony.
Figure 1: System process.


The most prominent gathered data related to SaaS services are: the service provider, the offered
functionalities, the data access and the role based access control techniques.
  The proposed system follows four main activities, namely : The BP re-construction, the
semantic matching computing , the SaaS composition and finally, the SaaS modeling activities.

2.1. The BP re-construction
To guaranty keeping as much as possible the business process control flow and to simplify
the outsourcing task, the BP re-construction aim is to decompose the business process into a
hierarchy of sub-process having each one a Single Entry and a Single Exit (SESE) [3]. Each
SESE fragment is considered as a black-box whose functionalities are supposed to be executed
by a SaaS service. Fig. 2 illustrates an example of a BP decomposed into a set of SESE fragments.
Each fragment presents a potential solutions to be outsourced.
   As the Figure illustrates, the BP encompasses five SESE fragments. The fragment 1 is the root
of the sub fragments 2 and 5. Hence, we impose as constraints that if the root is outsourced,
its sub-fragments cannot be outsourced and if the sub-fragment is outsourced, the root cannot
be outsourced. This constraint is imposed to guaranty a correct outsourcing without overlaps.
This constraint is considered in the cloud services composition activity to guarantee a well
synchronized BP execution while supported by cloud services.

2.2. Semantic Matching activity
We propose in this section, a semantic process aiming to match each BP activity with its
data object with the SaaS offering and its input/output data. More specifically, we propose a
process based on the extraction of semantics from the SaaS service Web pages to match the
appropriate SaaS service to each BP activity. To do so, BP activities and SaaS services should
have similar syntactic patterns. To attain this objective, we concentrate on a combination
of statistical, linguistic as well as semantic analysis. Regarding that each SaaS Web pages
contains a set of services which is by itself composed of a set of sub-services, it is essential to
depict some hidden knowledge in each service description to extract its semantic description.
For instance, supposing that a BP activity label is ”Submission of an invoice”, when applying
Figure 2: Illustrative example


the harmonization algorithm, we get the Action ”submit” and the Business Object ”invoice”.
Concerning the SaaS service, we store each solution labels into a dedicated database. For
instance, the SAP concur1 is a SaaS service proposing a set of travel management solutions,
such as expense products, travel products, invoice products, etc. Furthermore, each service
is composed of a set of sub-services. Considering the same SAP concur1 service, it proposes
a set of sub-services such as: ”Broad inventory for global travel booking solutions”, ”Reports
guide informed business decisions”, ”Travel planning that keeps every employee compliant”,
”E-receipts speed up expense claim creation and submission”, etc. These sub services’ labels
are harmonized so as to be syntactically similar to the activities’ ones. To define the semantic
matching activity, three different processes are used:
(i) To extend the scope of the BP activities’ label, we used the lexical and the semantic dataset
      Wordnet dictionary [4] by applying the synonyms and hyponyms of all BP activities’
      labels. In fact, the Wordnet is a large lexical database of nouns, verbs, adjectives and
      adverbs which are categorized into sets of cognitive synonyms, each expressing a distinct
      concept.

(ii) To extract the knowledge of the SaaS services description, we start first by a pre-treatment
      phase. This phase is based on four steps to obtain significant terms: the tokenization of
      all sentences in each description, the remove of all stop words using Porter algorithm,
      the lemmatization of each term using the Stanford lemmatizer. Thereafter, to extract
      knowledge, we used two techniques:
         1. The statistic technique TF-IDF to evaluate the importance of each term in the SAAS
            Web pages description, in relation to the BP activities’ labels. In fact, the TF-IDF
            technique is most important and used frequently in the literature revues to prove
            the relevance of terms between others.
         2. The semantic similarity measures “Wu and Palmer” (Chabi et al., 2011) to measure
            the similarity between also the SAAS functionalities description and the BP activities’
Figure 3: Illustrative example of the obtained result by applying the TF-IDF and Wu and palmer


            labels. Several semantic similarity measures are proposed in the literature such as
            Cosine, Jaccard, Dice, Overlap, etc. Our choice is oriented to the taxonomic measure
            “Wu and Palmer” because it requires the existence of a taxonomic hierarchy between
            the different terms and concepts. In this paper, the taxonomic hierarchy is between
            SAAS functionalities services and sub-services. If the obtained measure result
            between the SAAS functionalities description and the BP activities’ labels admits a
            non-zero value, a semantic relationship exists. The obtained results represent a set
            of terms related to each SAAS functionalities related to the BP activities’ labels with
            a pertinence value extracted using the TF-IDF technique and the “Wu and Palmer”
            similarity measure. Figure 3 showed an example of the obtained result.

(iii) Identification of pertinent matching between SAAS functionalities description and the BP
       activities’ labels: By applying the TF-IDF and the “Wu and Palmer” technique, each SAAS
       functionalities is represented by a set of terms ‘Ti’ through the two techniques. In the other
       words, each generated term from the TF-IDF and the “Wu and Palmer” technique is related
       to the BP activities through a pertinence value as showed in Figure xxxx. To identify
       the corresponding SAAS functionalities to the BP activities’, we find it is prominent to
       measure the pertinence of each SAAS functionalities based on each generated terms from
       the two used techniques. In fact, we propose first, measuring the pertinence of generated
       term. Figure yyyyy showed an example of Each SAAS Functionalities “SF” contains one
       or several terms ‘Ti’, and each term ‘Ti’ has at least one representative value related to
       the BP activities. Two cases are then possible:
          • If the term “Ti” refers to the BP activities through the TF-IDF and the “Wu and
            Palmer” then the weight “wTi” of the term “Ti” is the represented by the following
            formula:

                        𝑤𝑇 𝑖 = 𝑚𝑎𝑥(𝑃 𝑒𝑟𝑡_𝑇 𝐼_𝑇 𝐹 𝐼𝐷𝐹, 𝑃 𝑒𝑟𝑡_𝑇 𝐼_𝑊 𝑢𝑃 𝐴𝑙𝑚𝑒𝑟)                    (1)

           Where: 𝑃 𝑒𝑟𝑡_𝑇 𝐼_𝑇 𝐹 𝐼𝐷𝐹 is the obtained value of the term “Ti” using the TF-IDF
           technique and 𝑃 𝑒𝑟𝑡_𝑇 𝐼_𝑊 𝑢𝑃 𝐴𝑙𝑚𝑒𝑟 is the obtained value of the term “Ti” using
           the “Wu and Palmer” measure.
         • If the term “Ti” refers the BP activities through only a single value (from the TF-IDF
           or the “Wu and Palmer” then the weight “wTi” of the term “Ti” is the represented by
           the following formula: The pertinence of a genre ‘C’ is measured by the following
           formula:
                                              𝑤𝑇 𝑖 = 𝑃 𝑒𝑟𝑡_𝑇 𝐼                                 (2)
           Then, the pertinence of each SAAS functionalities is measured by the following
           formula:                            ∑︀𝑛𝑏
                                                  𝑛=1 𝑤𝑇 𝑖
                                                                                            (3)
                                                   𝑛𝑏
           where “nb” represents the number of terms according to the SAAS functionalities ‘i’.
           The SAAS functionalities having the highest pertinence represents the corresponding
           SAAS to the BP activities.

2.3. The cloud services composition activity
The cloud services composition activity is very important in our research context. The input of
this activity is the BPMN model subject of the BP to be outsourced to the SaaS services as well
as its data model. Its aim is to allocate SaaS services to each SESE fragment in the way that the
allocation ensures:

    • A greater matching between the BP required functionalities and those of the selected
      SaaS;
    • Avoiding outsourcing BP fragments, requiring a considerable amount of external data
      access, to a set of SaaS services that do not handle data access techniques;
    • Outsourcing to SaaS services holding role based access control techniques once the
      outsourced BP activities require to be handled by specific role(s).

From the computational point of view, selecting the most suitable SaaS service for each business
process SESE fragment, is a large scale and complex optimization problem that can be resolved
by applying methods for combinatorial optimization. To select the optimal set of SaaS services
from a variety of SaaS offers, our proposed resolution approach adopt a heuristic technique
namely the genetic algorithm.
.
   Genetic algorithms (GA) [1] belong to the evolutionary algorithm families. These algorithms’
principle is the simulation of the population evolution. A population is composed of a set of
solutions called also chromosomes or individuals. These chromosomes undergo various genetic
operation, such as crossover and mutation. Among the strengths of the GA is the evaluation
of each solution quality in the aim to keep only those considered as of a good quality. In
what follows we detail the proposed GA. More precisely, we first present the chromosome
representation. Then, we present our algorithm for the SaaS allocation to each BP fragment. A
report on the algorithm performance is presented in Section 4.

2.3.1. Chromosome representation
A chromosome in the SaaS allocation/composition problem, represents a SaaS offer that would
potentially support the execution of an SESE fragment. Hence, two basic compartments consti-
tute the chromosome. The first one 𝐶1 corresponds to the 𝑆𝐸𝑆𝐸𝑠 fragment and the second
compartment 𝐶2 is related to the SaaS offer 𝑆𝐿𝑥 supporting the execution of the 𝑆𝐸𝑆𝐸𝑠
identified in 𝐶1. Is is straightforward mentioning, that the application of the GA is realized
multiple times to identify several SaaS that potentially would support the execution of the BP
fragments. Instead of representing a chromosome as a set of SESE fragment and the related
SaaS offering, we believe that using the proposed representation is more efficient as it simplifies
the fitness function detailed in what follows.

2.3.2. Fitness function
Equation 2 formalizes our objective function for the genetic algorithm. The value given by this
function is called the fitness value, and it is used to evaluate the quality of the obtained solution.

                                                  𝑛 ∑︁
                                                     𝑚
                               1                 ∑︁
                 𝑓 (𝑥) =               × [𝑊1 ×             𝑀 𝑎𝑥(𝑠𝑖𝑚(𝐴𝐿𝑖 , 𝑆𝐿𝑗 ))                  (4)
                           𝑛𝑏𝑆𝐸𝑆𝐸𝑎𝑐𝑡
                                                 𝑖=1 𝑗=1
                                                   𝑛 ∑︁
                                                      𝑚
                                        1        ∑︁
                           + 𝑊2 × [          ×             𝑀 𝑎𝑥(𝑠𝑖𝑚(𝐷𝐴𝑖 , 𝐷𝑆𝑗 ))]]                (5)
                                      𝑛𝑏𝐷𝑎𝑡𝑎
                                                 𝑖=1 𝑗=1
                                   𝑛𝑏𝐷𝐴𝑇𝑆𝑙      1
                           + 𝑊3 × [        ×         ]                                            (6)
                                   𝑛𝑏𝑇 𝐷𝐴𝑇   𝑛𝑏𝑅𝑆𝐸𝑆𝐸
                                         1
                           + 𝑊4 ×                                                                 (7)
                                  1 + 𝑛𝑏𝐼𝑂𝐷𝑆𝐸𝑆𝐸

   Where 4𝑖=1 𝑊𝑖 =1 is the weights for each equation in the fitness function.
           ∑︀
   Line 1 of the fitness function focuses on functional similarities between activities and SaaS,
while line 2 compares the data similarity between each SESE and the SaaS managed data. Within
an individual, the SaaS may be composite, composed of other services (SAP concur is a composite
SaaS), or atomic ( for instance, the sub-product "Travel planning that keeps every employee
compliant"). In the case of a composite SaaS, its overall sub-products are evaluated in a way
that allows to identify for instance, that 𝑆𝐸𝑆𝐸3 (see Fig. X) should be supported by the SaaS
"SAP concur".
   The line 3 of Equation 2 aims at maximizing the number of role based access control techniques
of the adopted SaaS provider proportionally to the number of roles within the SESE fragment.
Hence, the fitness function evaluates the number of SaaS access control tools 𝑛𝑏𝐷𝐴𝑇𝑆𝑙 provided
by the adopted SaaS provider. 𝑛𝑏𝑇 𝐷𝐴𝑇 is the total number of the most popular and prominent
SaaS access control tools [5] namely:

    • Intel Expressway cloud Access 360
    • Visual Guard
    • Based (SaaS) IP access control
    • SaaS-based Access Control Solutions
    • SaaS Security: cloud Access Control
    • Cisco Software-as-a-Service (SaaS) Access Control

Finally, 𝑛𝑏𝑅
          1
             refers to the total number of roles in the outsourced SESE fragment. In other words,
if the number of roles is important but the adopted SaaS providers do not provide sufficient
access control tools, than the 𝑛𝑏𝐷𝐴𝑇
                                𝑛𝑏𝑇 𝐷𝐴𝑇 × 𝑛𝑏𝑅𝑆𝐸𝑆𝐸 value is low. It is straightforward to mention,
                                      𝑆𝑙       1

that if 𝑛𝑏𝐷𝐴𝑇 𝑆 = 𝑛𝑏𝑇 𝐷𝐴𝑇 then computing 𝑛𝑏𝑅𝑆𝐸𝑆𝐸       1
                                                            is omitted as the SaaS provider offers
the required access control tools so that the number of roles within the SESE is not important.
   The equation in line 5 evaluates the number 𝑛𝑏𝐼𝑂𝐷𝑆𝐸𝑆𝐸 .

2.3.3. Crossover and mutation
The crossover and the mutation are two genetic operators representing fundamental elements
in the GA. For the crossover operator, we use the single point one respecting a predefined
probability 𝑃𝑐 𝑟.
   A chromosome is also subject to a mutation operation according to a mutation probability
𝑃𝑚 . It is applied to change whether a SESE fragment, or a SaaS service.

2.4. SaaS modeler module
The BP owner lacks in general the sufficient knowledge and expertise related to cloud and
more specifically to SaaS model. As the business process execution is supposed to be entirely
supported by a composition of SaaS services, transforming the outsourced business process
model along with its activities to the target SaaS composition is of paramount importance for
BP owner.
  Hence, we propose (i) an extension of the BP meta model in order to be able to illustrate
required elements for the SaaS composition namely, the SESE fragment and its relation with
other BP elements and the explicit details related to the BP input and output data (ii) a new
SaaS meta model allowing to make in evidence how each BP element is handled in SaaS. (iii) We
propose finally a model to model transformation from business process model to SaaS model.
This transformation is basd on a set of transformation rules we propose but we omit in this
section as it is not the focus of the paper.


3. Related Work
Even though the business process outsourcing to the cloud is not a recent research area, several
works and propositions are elaborated in order to propose a standard process to safely and
Table 1
The used GA parameters.
                       Parameters              Description
                       Population size         100
                       Selection technique     Tournament selection
                       Termination condition   Stability of fitness function
                       Crossover probability   0.5
                       Mutation probability    0.015


effectively outsource a business process to the cloud [6, 7, 8]. In this context, [9] proposes
an open and interoperable framework called CloudSocket, providing BPM solutions in the
cloudfor small and medium sized enterprises. [10] proposes a semantic framework for BP as a
service configurable models, benefiting from the advent of available Web semantic researches.
Furthermore, a comprehensive framework for business process outsourcing is proposed in [11],
focusing on outsourcing BP to IaaS model based on outsourcing criteria such as, cost and risk
minimization and focus on core competencies. The authors in [8] focus on a specific phase of
the BPM in cloud life-cycle, namely the BP as a service modeling, providing hence facilities for
both business and IT experts when adopting cloud to support business processes execution.
   Recently, SaaS model become among the wise choice of enterprises as a mature alternative
of their in-premise applications or to support the BP execution. [12] propose a layer based
configuration architecture dividing logically, business process into three layers: business layer,
service layer, and data layer. According to the specification of each layer, authors propose a set
of configuration strategies. The configuration architecture can be applied in SaaS model to meet
the personalized requirements of tenants. Tan et al. proposed in [13] an evaluation method to
assess the on-premise IT infrastructure and the enterprise readiness for SaaS adoption. This
method employs a mixed of quantitative and qualitative approaches that are used in deciding
and identifying suitable business operation to be migrated to SaaS.


4. Experimental evaluation of the SaaS Allocator
The objective of our experimental evaluation of the performance of the SaaS Allocator is to
evaluate the ability of the GA to identify optimal solution , i. e. the best SESE to outsource and
the appropriate SaaS to support its execution
  We implemented the genetic algorithm using the Java language. In our experimented im-
plementation of the genetic algorithm, we have fixed its characteristics as depicted in table 1.


4.1. Experiment
To evaluate the performance of the GA, we use a real case related to a BP of travel agency.
   The BP is constituted of 7 SESE fragments. It is straightforward to mention that the BP
is simplified so the number of SESE fragments is reduced for simplifications sake. The main
purpose of the BP is to manage the customer quote through the calculation of the flight, hotel,
Figure 4: A travel agency business process


and car rental quotes.
   Concerning SaaS services, we evaluate the overall collected services through the internet
whose number surpasses 8000; constituted of services and their sub-products. The SaaS labels
refactoring is applied only for the services selected by the SaaS allocator module.
   When applying the GA, the best solution identified corresponds to outsourcing the SESE
fragment F2 to SAP Concur. This SaaS service ensures managing travels through multiple set of
services namely, the expense management, the travel solutions and the invoice automation. The
travel solutions encompasses services covering, car rental through the service "select car rental
company", Hotel Reservation Services (HRS), travel control and report through the sub-product
"TripLink".
   In the following, we will present firstly, an example of the calculation related to the semantic
similarities between the SESE fragment F2 activities/ data to be outsourced and the adopted
SaaS/ data. The required input data for the F2 fragment are: the customer data constituted of
his personal information as well as his travel data (car rental, flight and hotel). The output data
corresponds to the customer travel quote which is used by the fragments F6 and F7.
   Sim_Act(Obtain_carrental,select_car_rental)= 6−2  2
                                                       =0.5
   Sim_DataIn(car_rental_data,car_rental_Company)= 6−2     2
                                                              =0.5
   For both similarities (activity and data labels), the calculated value is 0.5. The value 2
corresponds to the number of similar terms and 6 is the total number of terms in both labels.
Indeed, for the similarity between the activity and the SaaS service label, car_rental is used in
both labels. However, as "obtain" and "select" are not synonyms, their similarity value is equal
to 0.
   The performance evaluation is based on the comparison between the GA results with the
Round Robin (RR) and the Greedy ones. For the Round Robin algorithm, the most appropriate
solution to adopt is outsourcing the fragment F6 to the hunter1 SaaS. The best solution related
to the Greedy algorithm is to outsource F7 to the Concur service. Table 2 illustrates the best
solution identified (based on the fitness function) of each algorithm.

Table 2
A comparison between the best solution of the RR, greedy and GA algorithms
                 Algorithm   Number 𝑛𝑏𝐼𝑂𝐷𝑆𝐹       Selected     𝑛𝑏𝐷𝐴𝑇𝑆𝑙          P
                             of 𝑆𝐹                SaaS 𝑆𝑙
                             roles
                 GA          1      2             SAP Con-     Not provided     1
                                                  cur
                 RR          2       2            hunter       Not provided     0
                 Greedy      2       3            SAP con-     Not provided     0.5
                                                  cur

   According to the provided results of the different algorithm, the GA provides better solution in
terms of number of roles, number of exchanged data and the precision. The precision computes
the similarity of each SESE activity with the provided services of each selected SaaS.


5. Threats to validity
Although the good performance of the SaaS allocator module and its ability to match activities
required functionalities with the SaaS ones, we observe some limitations related to the semantic
matching module. Indeed, some SaaS providers use specific and not expressive terms to label
their services which harden the task of matching the activities to the appropriates services.


6. Conclusion
This paper proposes a comprehensive framework for business process based SaaS composition.
The framework is constituted of four basic modules namely, the BP decomposition, the semantic
matching, the SaaS allocator and the SaaS modules. These modules allow to fill the gap between
the BP and the SaaS services available on the Internet. Finding out the suitable BP fragment to
outsource along with the SaaS to adopt is not a wall-worn task regarding the complexity of the
BP structure (i. e. number of activities, number of exchanged data, and number of roles). Hence,
we propose, in the SaaS allocator module a genetic algorithm allowing to find good solutions in
different cases.
   Actually, we are working on proposing, in additional to the objective selection of the SaaS
to adopt, a subjective evaluation of these cloud services, based on users feedback from social
media. Combining objective and subjective evaluation gives a more pertinent solutions.
   1
       https://hunter.io/
References
 [1] M. Mitchell, An Introduction to Genetic Algorithms, MIT Press, Cambridge, MA, USA,
     1998.
 [2] OMG, Business Process Model and Notation (BPMN), Version 2.0, 2011. URL: http://www.
     omg.org/spec/BPMN/2.0.
 [3] R. Uba, M. Dumas, L. García-Bañuelos, M. La Rosa, Clone detection in repositories of
     business process models, in: International Conference on Business Process Management,
     Springer, 2011, pp. 248–264.
 [4] G. A. Miller, Wordnet: A lexical database for english, Commun. ACM 38 (1995) 39–41.
     URL: http://doi.acm.org/10.1145/219717.219748. doi:10.1145/219717.219748.
 [5] S. Rehman, R. Gautam, Research on access control techniques in saas of cloud computing,
     in: International Symposium on Security in Computing and Communication, Springer,
     2014, pp. 92–100.
 [6] T. Barton, C. Seel, Business process as a service - status and architecture, in: Enterprise
     modelling and information systems architectures - EMISA 2014, Luxembourg, September
     25-26, 2014, 2014, pp. 145–158.
 [7] S. Schulte, C. Janiesch, S. Venugopal, I. Weber, P. Hoenisch, Elastic business process
     management: State of the art and open challenges for bpm in the cloud, Future Generation
     Computer Systems 46 (2015) 36–50.
 [8] K. Hinkelmann, K. Kritikos, S. Kurjakovic, B. Lammel, R. Woitsch, A modelling envi-
     ronment for business process as a service, in: International Conference on Advanced
     Information Systems Engineering, Springer, 2016, pp. 181–192.
 [9] R. Woitsch, W. Utz, Business process as a service (bpaas), in: Conference on e-Business,
     e-Services and e-Society, Springer, 2015, pp. 435–440.
[10] K. Yongsiriwit, N. Assy, W. Gaaloul, A semantic framework for configurable business
     process as a service in the cloud, Journal of Network and Computer Applications 59 (2016)
     168–184.
[11] M. Rekik, K. Boukadi, H. Ben-Abdallah, A comprehensive framework for business process
     outsourcing to the cloud, in: 2016 IEEE International Conference on Services Computing
     (SCC), 2016, pp. 179–186. doi:10.1109/SCC.2016.30.
[12] C. Han, C. Wu, W. Gong, Research on saas oriented business process customization method,
     in: 2016 9th International Symposium on Computational Intelligence and Design (ISCID),
     volume 2, 2016, pp. 412–416. doi:10.1109/ISCID.2016.2103.
[13] C. Tan, K. Liu, L. Sun, A design of evaluation method for saas in cloud computing, Journal
     of Industrial Engineering and Management (JIEM) 6 (2013) 50–72.