<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>COSMIC Sizing of RPA Software: A Case Study from a Proof of Concept Implementation in a Banking Organization</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Francisco Valdés Souto</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Roberto Pedraza Coello</string-name>
          <email>rpedrazacoello@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Fabiola Cristina Olguín Barrón</string-name>
          <email>fabiola.olguin@robotdigital.mx</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>National Autonomous University of Mexico Research Institute in Applied Mathematics and Systems</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>National Autonomous University of Mexico Science Faculty CDMX</institution>
          ,
          <addr-line>Mexico City</addr-line>
          ,
          <country country="MX">Mexico</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Robot Digital TI</institution>
        </aff>
      </contrib-group>
      <abstract>
        <p>During a software project lifecycle, the estimation of cost, effort, and schedule are essential aspects since they are used to allocate resources, plan product releases, and negotiate payments. It has been demonstrated that the dominant variable to estimate these aspects is the software functional size. One of the methods to measure software is COSMIC (ISO/IEC 19761). The COSMIC organization has published guidelines to help the measurement process for some types of software applications like real-time software, SOA, business applications, etc. However, there is a lack of information on how to measure some new or trending technologies. One of these trending technologies is Robotic Process Automation, also known as RPA. Even though the RPA market has been growing rapidly, there has not been an approach of using formal metrics to measure this kind of software. This paper illustrates the process of measuring an RPA software using the COSMIC method.</p>
      </abstract>
      <kwd-group>
        <kwd>Robot Process Automation</kwd>
        <kwd>RPA</kwd>
        <kwd>COSMIC</kwd>
        <kwd>ISO/IEC - 19761</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Companies naturally are looking to be more efficient and save costs. This kind of
situation causes technological innovations to arise. Robotic Process Automation (RPA) is
one of these innovations which, in terms of return on investment, most case studies
show positive results. Šimek &amp; Šperka [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] claim several advantages in its application,
generating the RPA market to grow and aiming to keep growing.
      </p>
      <p>
        According to van der Aalst, Bichler &amp; Heinzl [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], “RPA is an umbrella term for tools
that operate on the user interface of the computer systems in the way a human would
do”. Another definition is presented by Tornbohm &amp; Dunie [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]: “RPA tools perform
[if, then else] statements on structured data, typically using a combination of user
interface interactions, or by connecting to APIs to drive client servers, mainframes or
HTML code. An RPA tool operates by mapping a process in the RPA tool language for
the software Robot to follow, with runtime allocated to execute the script by a control
dashboard.” RPA tools generate software robots that perform tasks the same way a
human does, with some configuration a robot could read emails, open PDFs file, enter
data into ERP systems, etc.
      </p>
      <p>
        RPA can be cataloged as a type of software implementing a type of functionality,
maybe in a distinct way of traditional development. During the lifecycle of any software
development project, including RPA, the use of formal metrics to estimate cost, effort,
and schedule is relevant since these aspects are used to allocate resources, plan product
releases and negotiate payments. However, currently in the software development
activities, the lack of formal metrics and standards in the estimation of cost and schedule
is a constant in the industry. The dominant variable to estimate effort, cost, or time is
the software's size to be developed, as has been described by several studies [
        <xref ref-type="bibr" rid="ref4 ref5">4,5</xref>
        ].
      </p>
      <p>The size of the software can be measured in many ways and at different points in a
software project life cycle. Up to now, there are five standards of software functional
size measurement methods (FSMM). The ISO/IEC 19761 COSMIC method is the only
standard belonging to the second generation, including several domains of use, like
MIS (Management Information Systems), real-time infrastructure, etc., and also
solving most of the problems that come with the FSMM of the 1st generation.</p>
      <p>The COSMIC method arises in the year 2000; until now, in the literature reviewed,
there is no documentation about the use of the COSMIC method to measure or estimate
RPA software, as could be reviewed in the knowledge base of the COSMIC site
(www.cosmic-sizing.org).</p>
      <p>Any approach that helps determine if the RPA software can be measured with
COSMIC would be useful in order to generate more formal estimations and compare
the productivity behavior of this type of project against the other types of software in
distinct domains like MIS.</p>
      <p>The article presents a case study that is organized as follows: Section 2 explains the
characteristics of RPA and how the industry has grown. In this section, an overview of
COSMIC (ISO/IEC 19761) is presented. Section 3 explains the RPA robot used in this
paper, along with the Robot’s environment, the process that has been automated, and
the application of the COSMIC method to measure the RPA functionality. Section 4
presents a summary of the study, validity threats and suggestions for future work.
2
2.1</p>
    </sec>
    <sec id="sec-2">
      <title>Background</title>
      <p>
        RPA
Redesigning old information systems or designing new information systems is often
costly in an automation project. Companies have been trying to automate routine tasks
and business processes for a long time, often without proper Return on Investment
(ROI). This kind of problem caused RPA technology to arise [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        RPA tools’ aim is to reduce monotonous tasks on employees so that workers have
more time for value-added tasks [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Although there is another approach where RPA
can cause potential replacement of human resources [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Figure 1 shows how a
backoffice agent performed a specific process, and Figure 2 shows the same process with
an RPA Robot replacing the back-office agent.
      </p>
      <p>
        According to van der Aalst et al. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] there are differences between RPA tools and
other automation technologies. First, RPA uses an “outside-in” approach so that
systems currently being used do not have to be redesigned. Rather than making changes to
systems, humans are replaced by robots that identify applications on the screen and
manipulate this software as a human does, in consequence the RPA robot acts like a
functional user for the current systems. Secondly, one of the RPA objectives is to be
robust regarding changes to the information systems. The user interface can suffer
changes, but if the essential contents remain unchanged, the RPA software should adapt
as humans do.
      </p>
      <p>
        Furthermore, the relationship between the RPA Robot and humans is so that when a
case turns out to be exceptional, the RPA Robot may hand over the case to a human.
Syed et al. [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] also noticed that RPA is easier, cheaper, and faster to implement than
other forms of automation.
      </p>
      <p>
        Aguirre &amp; Rodriguez [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] explain two more characteristics. RPA solutions do not
require programming skills for software interface configuration. This is because RPA
is set to work by just dragging, dropping, and linking icons, and RPA does not store
any transactional data, so there is no need for a database.
      </p>
      <p>
        There are a few papers, most of them presented in the form of a case study, that show
the productivity and cost-saving results of implementing RPA. For example, in the case
study presented by Aguirre &amp; Rodriguez [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] an RPA Robot is implemented into a
Business Process Outsourcing service provider, where an increase in productivity and
capacity of approximately 20% was reported. Lacity, Willcocks &amp; Craig [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] present a
case study that shows one of the most positive results reported, where 300 Robots
automated 25% of the company's office processes. These Robots perform the work of 600
people. The study also shows a return of investment of 200% for the first year after the
implementation.
      </p>
      <p>
        The positive results, along with the RPA trend, have caused the RPA market to grow.
Forrester's estimated growth is that the RPA market will reach US $2.9 billion by 2021
and US $12 billion by 2023. There are approximately 15 main vendors of RPA
solutions on the market [
        <xref ref-type="bibr" rid="ref10 ref9">9, 10</xref>
        ].
      </p>
      <p>
        Considering the feature where RPA creates the functionality required easily by
dragging, dropping, and linking icons, a natural source of cost savings could be the
productivity increase, because the productivity could be defined as "the ratio of the number of
products delivered by a process to the number of inputs" [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. The need to measure the
functionality of an RPA Robot is a fundamental issue to compare the productivity
improvement with this type of project with the traditional developments and to define
estimation models related to RPA projects.
2.2
      </p>
      <sec id="sec-2-1">
        <title>COSMIC</title>
        <p>In the software engineering field, various ISO/IEC norms have been developed oriented
to measurement. Many years verifying various approaches showed that the concept of
software size measurement based on its functionality, is a key attribute to the user and
the technical team.</p>
        <p>
          The ISO/IEC 14143 norm [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] includes a set of rules regarding size measurement in
functionality units. For this kind of measurement, this standard proposes the following
definitions:
        </p>
        <p>
          “Functional size is defined as the size of the software derived by quantifying the
Functional User Requirements” [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]
        </p>
        <p>
          “Functional User Requirements (FUR) stands for a sub-set of the User Requirements
describing what the software does, in terms of tasks and services” [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]
“Functional Size Measurement (FSM) is the process of measuring functional size”
[
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]
        </p>
        <p>
          After about 40 years of improving various software FSM techniques, five of them
(out of over 20) have been acknowledged by the ISO/IEC as conforming the rules laid
down in the ISO/IEC 14143 norm and have taken on the form of the following
standards: ISO/IEC 20926 (IFPUG), ISO/IEC 20968 (MKII), ISO/IEC 24570 (NESMA),
ISO 29881 (FISMA) and ISO/IEC 19761 (COSMIC) [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ]. Although the latter is the
only one that belongs to the “Second Generation” of FSM methods, the others are also
standards belonging to the “First Generation” [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ].
        </p>
        <p>COSMIC introduces its own homologated and standardized measure unit called
Cosmic Function Point (CFP). 1 CFP represents the size of one data movement (Entry,
Exit, Read, or Write). Therefore, functional size can be measured by counting the
number of handled data movements (CFP). More information about the COSMIC method
can be found in the COSMIC website (www.cosmic-sizing.org).</p>
        <p>
          The official COSMIC website provides guidelines to apply the COSMIC method in
specific situations. Some of the situations covered by COSMIC are real-time software
[
          <xref ref-type="bibr" rid="ref15">15</xref>
          ], business applications [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ], data warehouse and big-data software [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ],
serviceoriented architecture [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ], agile project [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ], etc. There are studies [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ] that show that
it is possible to measure software size even in unguided situations or technologies like
machine learning [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ].
3
3.1
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Case study: RPA proof of concept implementation for a banking organization</title>
      <sec id="sec-3-1">
        <title>Methodology</title>
        <p>This study is based on an RPA Robot that has been developed as a proof of concept
(PoC). The Robot involves two companies, due to confidentiality issues, the name of
the client company is not presented. The company Robot Digital TI (company A) was
developing and providing RPA solutions to a second company (company B), a banking
organization. Company A developed a project implementing RPA in the operations
department of company B. Company A had communication with company B to
understand the process that has been automated. When the process was well understood, a
BPMN diagram that models the business process was created.</p>
        <p>The input to develop this paper was the BPMN diagram (Figure 3), received from
Company A; several interviews were developed with this organization’s employees to
understand each of the tasks. We also saw a demonstration of how the robot performs
these tasks. With all this we had enough information to identify FUR at a functional
process level, considering the RPA as a software that will act as a functional user for
the other applications involved.</p>
        <p>Having all the information allowed us to perform the 3 phases of the cosmic method
following the principles from the COSMIC Software Context Model and the COSMIC
Generic Software Model. Firstly, during the measurement strategy phase, we identified
the FUR and the functional users of the robot. The mapping phase allowed us to identify
the functional process derived from the FUR, along with data groups and the data
movements of the functional process. Finally, in the measurement phase, the cosmic unit of
measurement was applied to obtain the functional size of the software.
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>Robot’s environment</title>
        <p>The process named fixed-term deposit was chosen to be automated as a PoC because
the activities that belong to this are repetitive, and the parts of the process are well
structured. It is worth noticing that not all the variants of the fixed-term deposit nor all
the activities of the process were automated. This Robot covers the simplest case of a
fixed-term deposit.</p>
        <p>The process diagram is presented in figure 3, showing 17 activities the operations
department performed during the fixed-term deposit process. Out of these 17 tasks, 15
are automated by the Robot (marked with a green tick); the two remaining tasks
(marked with a red cross) are not part of the PoC, so they are not taken into account for
this case study. This process starts when, at a certain time of the day, the robot starts
waiting for the business department to send a registration request.</p>
        <p>The BPMN diagram presented in figure 3 shows the FTD business process of
company B at a business level, that means, it does not have the granularity level to develop
a measurement. Therefore, some subprocesses, like logging in to their systems, getting
some specific data, downloading PDF files, etc., are missing in figure 3. The whole
process, as it is done by the robot, is explained in section 3.3.</p>
        <p>The RPA Robot has been developed using the “Automation Anywhere” tool and will
be called FTD (acronym of “fixed-term deposit”). Three software pieces are essential
to understand the Robot’s functionality: the CRM System, the banking system, and a
server that runs on CITRIX.
3.3</p>
      </sec>
      <sec id="sec-3-3">
        <title>Applying the COSMIC method to FTD</title>
        <p>According to the COSMIC website, the COSMIC Functional Sizing Methodology “is
based on fundamental software principles, and is therefore suited to all types of
software”. Therefore, it can be applicable to measure RPA robots. COSMIC is based on
representing the functionality of the software, that is mapping the functionality to four
types of data movements that could apply to any software (Entry,eXit,Write,Read).</p>
        <p>The approach we have taken to measure RPA robots is that when the robot
manipulates the user interface, as a human would, by sending or receiving data groups, these
manipulations are classified as entries and exits. According to the COSMIC manual, a
functional user is a sender and/or intended recipient of data of a piece of software. When
the robot writes and reads from other software’s user interface, the RPA robot commits
to the definition of functional user for the other software.</p>
        <p>Fig. 3. BPMN diagram showing the fixed-term deposit process. The tasks that have been
automated by the Robot are marked with a green tick. The tasks that have not been automated,
therefore not taken into account in this case study, are marked with a red cross. The diagram
has numbers in circles/ovals to identify the tasks automated by the robot, and it has letters in
squares to identify decisions automated by the robot.</p>
        <p>The robot reads and writes in the user interface, this could cause confusion when
having, for example, an “Entry” type data movement and the verb “Read” on the
subprocess description. To avoid this, it has been decided not to use the “write” and “read”
verbs in the subprocess descriptions presented in Table 1, nor in the functional process
description. Instead, when talking about the robot writing in the user interface, we use
the verb “send”; when talking about the robot reading from the user interface, we use
the verbs “request” and “receive”.</p>
        <p>
          Below, Figure 4, presents the visualization of the RPA interacting with other
software as defined by COSMIC Manual [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ] and the comparison when the human
functional user executes the same functionality.
        </p>
        <p>Fig. 4. Comparison between RPA functional user and human functional user when
executing the same functionality</p>
      </sec>
      <sec id="sec-3-4">
        <title>Phase 1: Measurement Strategy</title>
        <p>The purpose of this measurement is to measure the FTD software using the
Application Layer approach, that means “as a whole”, to enable the possibility to make a
benchmark to compare the effort required to develop these applications against
traditional web applications, and for estimation purposes. As presented in this paper, to show
that the functionality provided by an RPA software can be measured using COSMIC
(ISO/IEC 19761).</p>
        <p>The scope of the measurement is the complete functionality of the FTD software,
which only includes one functional process called “Fixed Term Deposit FUR”.</p>
        <p>
          The COSMIC context diagram will be used in the strategy phase to help identify and
show the functional users of the software to be measured. The context diagram, defined
by the COSMIC method [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ], of FTD software, is shown in Figure 5.
        </p>
        <p>The FTD Robot has four functional users:
• CRM: The Customer Relationship Management System that company B uses.
• Banking System: The system that company B uses to do banking transactions and
operations.
• Citrix: A server running on CITRIX operative system, where company B uploads
some of their archives.
• Clock: The clock that notifies FTD to start working.</p>
        <p>RPA does not store any transactional data; this leads to not having read or written
data movements when measuring this kind of software.</p>
        <p>In this case, the tasks that the robot should do were presented with a BPMN diagram
(Figure 3), which shows the business view of how the Fixed Term Deposit process
works, along with a detailed explanation of how humans do this process. The BPMN
diagram, along with the explanation, allows the development team to have FUR at a
functional process level of granularity, considering that RPA uses an “outside-in”
approach.
Functional Process – Fixed Term Deposit FUR</p>
        <p>At a particular time, the Robot receives a clock tick to start the process. The Robot
accesses the CITRIX server and then enters the CRM System. The Robot is requesting
the CRM, every specific time, for a new client number to process. When there is a client
number, the Robot receives it. The Robot requests the CRM for the client’s request
document by sending the client number. The Robot receives the client’s request
document (in PDF format) from the CRM.</p>
        <p>The Robot obtains the data through the request document via OCR (Optical
Character Recognition). Then, it verifies that the information supplied by the client is valid
and saves the request document data in variables. It also sends the client’s request
document to CITRIX to be saved.</p>
        <p>After sending the document to CITRIX, the Robot requests the banking system the
client’s information along with the account balance by sending the client number. The
Robots receive the client’s information along with the account balance. The Robot
validates if the balance (included in the account data) is enough for it to continue the
process. If this validation is successful, the Robot sends the term and amount to the banking
system, after this, it sends the subproduct (all of these contained in the client’s request
document) to the banking system. It also sends the account data to CITRIX, so a new
folder is created (the folder name has information from the account data).</p>
        <p>Then it requests the client’s subaccounts by sending the client data to the banking
system. It receives the client’s subaccounts from the banking system. The Robot selects
and sends two subaccounts, the subaccount where the money generated by the
investment will be liquidated, and the subaccount from where the funds for the investment
will be taken.</p>
        <p>After all this, the Robot requests the banking system for all the information saved by
the system during this process (Client’s request information). It receives all the
information that the banking system has saved. The Robot verifies that the saved information
is correct. The Robot confirms the operation, once the information is verified.</p>
        <p>Following the operation's confirmation, the Robot requests the operation voucher (in
PDF format) to the banking system by sending the client’s information. The Robot
receives the operation voucher (in PDF format). Then it requests the banking system for
the account status by sending the client information. The Robot receives the account
status from the banking system, then verifies that the fixed term deposit transactions
are present in the account status. The Robot sends the operation voucher document to
CITRIX to be saved. The Robot sends the operation voucher to the CRM to be saved
as an attachment.</p>
        <p>During all the process, the Robot sends CITRIX the instructions that it executes, so
they are saved in a log.</p>
      </sec>
      <sec id="sec-3-5">
        <title>Phase 2: Mapping Phase and Phase 3: Measurement Phase</title>
        <p>Knowing the information presented in table 1, it is correct to say that the FTD functional
size is 25 CFP.</p>
        <p>Table 1 has 28 rows (1 row per subprocess) and 5 columns. The first column helps
identify every subprocess. The second column shows the functional users related to
each subprocess, from the RPA Robot’s viewpoint. The third column contains the
subprocesses details. The fourth column shows the data groups presented in each
subprocess. Finally, the fifth column shows the data movement types related to every
subprocess.</p>
        <p>ID
1
2
3
4
5
6
7
8
9
10
11
12
13
14</p>
      </sec>
      <sec id="sec-3-6">
        <title>Func</title>
        <p>tional</p>
      </sec>
      <sec id="sec-3-7">
        <title>User</title>
        <p>Clock
CITRIX
CRM
CRM
CRM
CRM
CRM</p>
        <sec id="sec-3-7-1">
          <title>CITRIX Banking System</title>
          <p>Banking
System</p>
        </sec>
        <sec id="sec-3-7-2">
          <title>Bank</title>
          <p>ing
System
CITRIX
0
1
1
1
1
2
2
3
3
4
4
A
7,8
5</p>
        </sec>
      </sec>
      <sec id="sec-3-8">
        <title>BPMN</title>
      </sec>
      <sec id="sec-3-9">
        <title>Activity</title>
      </sec>
      <sec id="sec-3-10">
        <title>Subprocess</title>
        <sec id="sec-3-10-1">
          <title>Receive a clock tick to start the process. Access CITRIX server.</title>
        </sec>
        <sec id="sec-3-10-2">
          <title>Access CRM System.</title>
        </sec>
        <sec id="sec-3-10-3">
          <title>Request, every certain time, for a client number to process. Receive the client's number.</title>
        </sec>
        <sec id="sec-3-10-4">
          <title>Request the client’s request doc</title>
          <p>ument (in PDF format).</p>
          <p>Receive the client’s request
document (in PDF format).</p>
          <p>Get the data from the request
document via OCR. Verify that
the information supplied by the
client is valid and save the
client’srequest data in variables.
Send the client’s request
document to CITRIX to be saved.
Request the client’s information
along with the account balance.</p>
        </sec>
        <sec id="sec-3-10-5">
          <title>Validate if the balance is enough to continue the process. Send amount, term and subproduct.</title>
        </sec>
        <sec id="sec-3-10-6">
          <title>Send the account data to CITRIX so it creates a new folder (the folder name has information from the account data).</title>
        </sec>
      </sec>
      <sec id="sec-3-11">
        <title>Data</title>
      </sec>
      <sec id="sec-3-12">
        <title>Group</title>
        <sec id="sec-3-12-1">
          <title>Clock Tick</title>
        </sec>
        <sec id="sec-3-12-2">
          <title>Creden</title>
          <p>tials Citrix
Credentials CRM
Client</p>
        </sec>
        <sec id="sec-3-12-3">
          <title>Client</title>
          <p>Number
Client
Number
Client
Solicitude
n/a</p>
        </sec>
        <sec id="sec-3-12-4">
          <title>Client Solicitude Client</title>
        </sec>
        <sec id="sec-3-12-5">
          <title>Client Solicitude</title>
        </sec>
        <sec id="sec-3-12-6">
          <title>Account Data</title>
        </sec>
        <sec id="sec-3-12-7">
          <title>Receive the client’s information</title>
          <p>along with the account balance.</p>
        </sec>
        <sec id="sec-3-12-8">
          <title>Client, Account Data E, E</title>
        </sec>
      </sec>
      <sec id="sec-3-13">
        <title>Data</title>
      </sec>
      <sec id="sec-3-14">
        <title>Move</title>
        <p>ment</p>
      </sec>
      <sec id="sec-3-15">
        <title>Type</title>
        <p>E
n/a
X
X
X
E
X
E
X
X
X
X
Banking
System
Banking
System
Banking
System
Banking
System
Banking
System
Banking
System
Banking
System
Banking
System
Banking
System
Banking
System
CITRIX
CRM
11,12
9
9
9
10
11
14
14
13
13
15
15</p>
        <sec id="sec-3-15-1">
          <title>CITRIX n/a</title>
        </sec>
        <sec id="sec-3-15-2">
          <title>Request the client’s subaccounts.</title>
        </sec>
        <sec id="sec-3-15-3">
          <title>Client</title>
        </sec>
        <sec id="sec-3-15-4">
          <title>Receive the client’s subaccounts.</title>
        </sec>
        <sec id="sec-3-15-5">
          <title>Select and send the subaccount</title>
          <p>where the money generated by
the investment will be liquidated.
Select and send the subaccount
from where the funds for the
investment will be taken.</p>
          <p>Request the information that the
banking system has saved during
the process.</p>
          <p>Receive the information that was
captured and verify if it is
correct. Confirm the operation.
Request to download the
operation voucher (in PDF format).</p>
        </sec>
        <sec id="sec-3-15-6">
          <title>Receive the operation voucher (in PDF format).</title>
        </sec>
        <sec id="sec-3-15-7">
          <title>Request the account status.</title>
        </sec>
        <sec id="sec-3-15-8">
          <title>Receive the account status. Ver</title>
          <p>ify that the fixed term deposit
transactions are present.</p>
          <p>Send the operation voucher to
CITRIX to be saved.</p>
          <p>Send the operation voucher so it
is saved as an attachment in
CRM.</p>
          <p>Send the instructions executed so
that CITRIX can save it in a log.</p>
        </sec>
        <sec id="sec-3-15-9">
          <title>Subaccount</title>
        </sec>
        <sec id="sec-3-15-10">
          <title>Subaccount</title>
        </sec>
        <sec id="sec-3-15-11">
          <title>Subaccount</title>
        </sec>
        <sec id="sec-3-15-12">
          <title>Control Command</title>
        </sec>
        <sec id="sec-3-15-13">
          <title>Control Command</title>
        </sec>
        <sec id="sec-3-15-14">
          <title>Client</title>
        </sec>
        <sec id="sec-3-15-15">
          <title>Operation Voucher</title>
        </sec>
        <sec id="sec-3-15-16">
          <title>Client</title>
        </sec>
        <sec id="sec-3-15-17">
          <title>Account Status</title>
        </sec>
        <sec id="sec-3-15-18">
          <title>Operation Voucher Operation Voucher</title>
        </sec>
        <sec id="sec-3-15-19">
          <title>Instruction</title>
        </sec>
        <sec id="sec-3-15-20">
          <title>Total n/a n/a X</title>
          <p>E
X
X
X
E
X
E
X
X
X
24 CFP
v5.0</p>
          <p>It is worth noticing that row 27 has “n/a” in the BPMN activity column, this is
because, even though the robot does this task, it is not related to any activity presented in
the BPMN Diagram.</p>
          <p>The COSMIC method is applied to get the functional size value of FTD by following
the rule that says Functional Size = E + X + W + R. The functional size of the FTD
software is the sum of all the data movements from the Fixed Term Deposit FUR
functional process. The FTD software receives 8 Entries, sends 18 exits and has no writing
or reading. This gives FTD a functional size of 24 CFP v5.0.
4</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Summary and future work</title>
      <p>The RPA market has been growing, and according to the market projections, it will
continue growing. Thus, having a correct estimation for this kind of project will become
more and more critical. Using COSMIC functional size to help estimate is a step
forward to achieving this goal of having better estimations.</p>
      <p>In this paper, an RPA robot from a banking operation was used to illustrate how the
measurement of an RPA software can be made by using the COSMIC method, showing
the appliance of the COSMIC method measurement process to this kind of software.</p>
      <p>The use of the COSMIC method to measure the RPA software was successful. The
FTD Robot has a functional size of 24 CFP v5.0. With the use of the COSMIC method,
a productivity model for RPA projects can be generated, so that productivity can be
compared with other kinds of software.</p>
      <p>This paper obtains the FUR from a BPMN diagram generated by observing how a
human does a certain task, which is the approach applied by the company that develops
the RPA robot. The process should be well defined and monotonous, this leads to
having certain facility to obtain the FUR at a functional process granularity.
4.1</p>
      <sec id="sec-4-1">
        <title>Validity Threats</title>
        <p>This paper presents a case study where the FUR were presented by a BPMN diagram
because that is how company A works; there could be other ways to obtain FUR, but
these other approaches are out of the scope for this work.</p>
        <p>The way of making a BPMN diagram depends from person to person, so there can
be tasks in the diagram that do not have any effect on the measurement process, or vice
versa, tasks that are not explicitly shown in the BPMN diagram but do have effect on
the measurement. This can cause confusion to the measurer and errors during the
measurement process.</p>
        <p>Some tasks caused some confusion, for example, task 6 in figure 7 does not have
any effect in the measurement process. In addition, row 25 in table 1 says “Send the
operation voucher to CITRIX to be saved”, but this task is not shown in the BPMN
diagram, this FUR was only obtainable during the interviews performed to the
employees of company A. Clear FUR are required to get a significant measure of the software
using COSMIC, the same situation is presented in traditional software applications.
4.2</p>
      </sec>
      <sec id="sec-4-2">
        <title>Future Work</title>
        <p>As future work, it could be interesting to compare RPA technology to other kinds of
automation technologies in terms of productivity (CFP/Effort). It is being mentioned
that RPA projects are easier, cheaper, and faster to implement than other forms of
automation, maybe because of the nature of how RPA software is developed (by dragging,
dropping, and linking icons), and it has an “outside-in” approach. The comparison
could approximate how much a software development company can save in costs by
increasing productivity by developing automation projects using RPA instead of other
automation forms.</p>
        <p>Another proposal for future work is a case study where multiple RPA software are
measured, and information about the projects of these software (effort, cost, time) is
collected. This study could be beneficial to the companies that are providing RPA
solutions, as this could show how to generate productivity models applied to this kind of
software in order to estimate effort and costs, obtaining a correlation value between the
functional size and these two aspects.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>D.</given-names>
            <surname>Šimek</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>Šperka</surname>
          </string-name>
          , “
          <article-title>How Robot/human Orchestration Can Help in an HR Department: A Case Study from a Pilot Implementation</article-title>
          ,” Organizacija, vol.
          <volume>52</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>204</fpage>
          -
          <lpage>217</lpage>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>W. M. P. van der Aalst</surname>
          </string-name>
          , M. Bichler,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Heinzl</surname>
          </string-name>
          , “Robotic Process Automation,” Bus. Inf. Syst. Eng., vol.
          <volume>60</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>269</fpage>
          -
          <lpage>272</lpage>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>C.</given-names>
            <surname>Tornbohm</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>Dunie</surname>
          </string-name>
          , “
          <article-title>Market Guide for Robotic Process Automation Software</article-title>
          ,” Gartner, Inc., no.
          <source>December</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>35</lpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>A.</given-names>
            <surname>Lesterhuis</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Abran</surname>
          </string-name>
          , “
          <article-title>Cosmic sizing of machine learning image classifier software using neural networks</article-title>
          ,
          <source>” CEUR Workshop Proc.</source>
          , vol.
          <volume>2476</volume>
          , pp.
          <fpage>121</fpage>
          -
          <lpage>129</lpage>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>P.</given-names>
            <surname>Bourque</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Oligny</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Abran</surname>
          </string-name>
          , and
          <string-name>
            <given-names>B.</given-names>
            <surname>Fournier</surname>
          </string-name>
          , “
          <article-title>Developing project duration models in software engineering</article-title>
          ,
          <source>” J. Comput. Sci. Technol</source>
          ., vol.
          <volume>22</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>348</fpage>
          -
          <lpage>357</lpage>
          , May
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>S.</given-names>
            <surname>Aguirre</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Rodriguez</surname>
          </string-name>
          , “
          <article-title>Automation of a business process using robotic process automation (RPA): A case study,” in Communications in Computer</article-title>
          and Information Science,
          <year>2017</year>
          , vol.
          <volume>742</volume>
          , pp.
          <fpage>65</fpage>
          -
          <lpage>71</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>R.</given-names>
            <surname>Syed</surname>
          </string-name>
          et al., “Robotic Process Automation:
          <article-title>Contemporary themes</article-title>
          and challenges,” Comput. Ind., vol.
          <volume>115</volume>
          , p.
          <fpage>103162</fpage>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>M.</given-names>
            <surname>Lacity</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Willcocks</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Craig</surname>
          </string-name>
          , “
          <article-title>Robotic Process Automation: Mature Capabilities in the Energy Sector,” Outsourcing Unit Work</article-title>
          . Res. Pap. Ser., no.
          <source>October</source>
          <year>2015</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>19</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>C. Le Clair</surname>
          </string-name>
          , “Robotic Process Automation:
          <article-title>The 12 Providers That Matter Most And How They Stack Up Key takeaways</article-title>
          ,” Forrester Wave,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>C. Le Clair</surname>
            , “Robotic Process Automation: The 15
            <given-names>Providers</given-names>
          </string-name>
          <string-name>
            <surname>That Matter Most And How They Stack Up</surname>
          </string-name>
          ,” Forrester Wave,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>A.</given-names>
            <surname>Abran</surname>
          </string-name>
          ,
          <article-title>Software Project Estimation: The Fundamentals for Providing High Quality Information to Decision Makers</article-title>
          .
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12. ISO; IEC, “
          <article-title>Information technology - Software measurement - Functional size measurement - Part 6: Guide for use of ISO/IEC 14143 series</article-title>
          and related International Standards (ISO/IEC 14143-6:2006(E)),” Iso/ Iec,
          <year>2006</year>
          . [Online]. Available: https://www.iso.org/standard/60176.html. [Accessed:
          <fpage>27</fpage>
          -Apr-2020].
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13. B.
          <string-name>
            <surname>Czarnacka-Chrobot</surname>
          </string-name>
          , “
          <article-title>Standardization of software size measurement</article-title>
          ,
          <source>” Adv. Intell. Soft Comput.</source>
          , vol.
          <volume>64</volume>
          , pp.
          <fpage>149</fpage>
          -
          <lpage>156</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>A.</given-names>
            <surname>Abran</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Woodward</surname>
          </string-name>
          , “
          <article-title>Guideline on how to convert 'First Generation' Function Point sizes to COSMIC sizes,” no</article-title>
          .
          <source>November</source>
          , pp.
          <fpage>0</fpage>
          -
          <lpage>53</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Lesterhuis</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Londeix</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Symons</surname>
            ,
            <given-names>C.R.</given-names>
          </string-name>
          , “
          <article-title>Guideline for Sizing Real-time Software</article-title>
          ,”
          <year>2016</year>
          . [Online]. Available: https://cosmic-sizing.org/wp-content/uploads/2016/11/COSMIC-Method-v4.
          <article-title>0.1-Guideline-for-sizing-real-time-softwarev1.1.1</article-title>
          .pdf. [Accessed:
          <fpage>19</fpage>
          -May-2020].
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <given-names>A.</given-names>
            <surname>Symons</surname>
          </string-name>
          ,
          <string-name>
            <surname>C.R.</surname>
          </string-name>
          , Lesterhuis, “
          <article-title>Guideline for Sizing Business Application Software -</article-title>
          COSMIC,”
          <year>2017</year>
          . [Online]. Available: https://cosmic-sizing.
          <article-title>org/publications/guideline-sizing-business-application-software-</article-title>
          <volume>2</volume>
          /. [Accessed:
          <fpage>19</fpage>
          -May-2020].
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>A.</given-names>
            <surname>Symons</surname>
          </string-name>
          ,
          <string-name>
            <surname>C.R.</surname>
          </string-name>
          , Lesterhuis, “
          <article-title>Guideline for sizing Data Warehouse and Big Data Software</article-title>
          ,
          <year>v1</year>
          .2,”
          <year>2018</year>
          . [Online]. Available: https://cosmic-sizing.
          <article-title>org/publications/guideline-for-sizing-data-warehouse-and-big-data-software-v1-</article-title>
          <volume>2</volume>
          /. [Accessed:
          <fpage>19</fpage>
          -May-2020].
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>C. R. Fagg</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lesterhuis</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rule</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ungerer</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Galegaonkar</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Natarajan</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Santillo</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vogelezang</surname>
            ,
            <given-names>F.W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jain</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>O'Neill</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Symons</surname>
          </string-name>
          , “
          <article-title>Guideline for Sizing ServiceOriented Architecture Software -</article-title>
          COSMIC,”
          <year>2015</year>
          . [Online]. Available: https://cosmic-sizing.
          <article-title>org/publications/guideline-for-sizing-service-oriented-architecture-software/</article-title>
          . [Accessed:
          <fpage>19</fpage>
          -May-2020].
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <given-names>S.</given-names>
            <surname>Trudel</surname>
          </string-name>
          and
          <string-name>
            <given-names>L.</given-names>
            <surname>Buglione</surname>
          </string-name>
          , “
          <article-title>Guideline for Sizing Agile Projects with COSMIC,” in Proceedings of the IWSM</article-title>
          /MetriKon/Mensura,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Common Software Measurement International Consortium</surname>
          </string-name>
          (COSMIC),
          <source>“Measurement Manual v5.0</source>
          ,”
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>