<!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>
      <journal-title-group>
        <journal-title>A. Martínez-Rojas); h.a.reijers@uu.nl (H. A. Reijers); jgenriquez@us.es (J.G. Enríquez)</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>BPM Hub: An Open Collection of UI logs</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Antonio Martínez-Rojas</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Hajo A. Reijers</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>J.G. Enríquez</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Information and Computing Sciences. Utrecht University.</institution>
          <addr-line>Princetonplein 5, 3584 CC, Utrecht</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Seville. Computer Languages and Systems Department. E.T.S. Ingeniería Informática. Avenida Reina Mercedes</institution>
          ,
          <addr-line>s/n, 41012, Seville</addr-line>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2023</year>
      </pub-date>
      <volume>000</volume>
      <fpage>0</fpage>
      <lpage>0002</lpage>
      <abstract>
        <p>A common problem in domains, such as, Robotic Process Automation or Task Mining, is to obtain event logs that include screenshots, i.e., a User Interface (UI) log. This paper presents a data package consisting of synthetic UI logs and corresponding screenshots to facilitate the testing and validation of process analysis proposals. The UI logs are generated based on an easily adaptable configuration. They closely resemble real-world use cases in the administrative domain, including three distinct processes with diferent activities, variants, and decision points. Multiple scenarios with slight variations in the Graphical User Interface (GUI) components are generated for each log. This data package provides a valuable resource for evaluating and refining approaches in screen-based contexts.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;UI Log</kwd>
        <kwd>User Interface</kwd>
        <kwd>Task Mining</kwd>
        <kwd>Robotic Process Automation</kwd>
        <kwd>Event Log Generation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>challenges, we propose developing a collection of synthetic UI logs that can be easily customized
by modifying the generation configuration. This synthetic log dataset will facilitate the testing
and validating various proposals in the field, thereby addressing the aforementioned issues.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Data specification</title>
      <p>
        A data package has been published1 consisting of synthetic UI logs along with corresponding
screenshots. These UI logs closely resemble real-world use cases within the administrative
domain. They exhibit varying levels of complexity, measured by the number of activities, process
variants, and visual features that influence the outcome of decision points. For its generation, the
BPM Log Generator tool2 [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] has been used. This tool stands out as the sole solution capable of
generating screenshots for each log entry. For this a initial generation configuration is required:
• Seed log: with a single instance for each process variant and their associated screenshots.
• Variability configuration : to generate data from seed log. It includes two files:
– Case-level: refers to variations in the content that can be introduced or modified
by the user, e.g., variations in the text inputs, selectable options, checkboxes, etc.
– Scenario-level: refers to vary the GUI components related to the look and feel of
the diferent applications appearing in the process screenshots.
      </p>
      <p>The data package comprises three distinct processes, P1, P2, and P3, for which their initial
configuration is provided, i.e., a tuple of &lt;SeedLog, Case-level variability configuration,
Scenariolevel variability configuration&gt; . They are characterized by the following:
• P1. Client Creation: 5 activities and 2 variants. The decision point in this process
revolves around the presence of an attachment in the reception of an email.
• P2. Client Deletion. User’s presence in the system: 7 activities and 2 variants.</p>
      <p>The decision in this process is based on the result of the user’s search in the Customer
Management System (CRM), represented by a checkbox.
• P3. Client Deletion. Validation of payments: 7 activities and 4 variants. The decision
involves two conditions: (1) the presence of an attachment justifying the payment of the
invoices in the email and (2) the existence of pending invoices in the user CRM profile.
These problems depict processes with a single decision point, without cycles, and executed
sequentially to ensure a non-interleaved execution pattern. Particularly, P3 is more complex
since two visual characteristics determine its decision point.</p>
      <p>For each problem, case-level variations have been applied to generate logs with diferent
sizes, in the range of {10, 25, 50, 100} events. In cases where the log exceeds the desired size, the
last instance is removed to maintain completeness. In addition, each log size has its associated
balanced and imbalanced log, where balanced logs have an approximately equal distribution
of instances across variants. In contrast, imbalanced logs have a frequency diference of more
than 20% between the most frequent and least frequent variants. To ensure the results’ reliability,
30 scenarios are generated for each tuple &lt;Problem, LogSize, Balanced?&gt;. These scenarios exhibit</p>
      <sec id="sec-2-1">
        <title>1Available at: https://doi.org/10.5281/zenodo.8202749</title>
        <p>2Available at: https://canela.lsi.us.es/bpmloggenerator/public
slight variations at the scenario-level, particularly in the look and feel and user interface of the
applications depicted in the screenshots. Each scenario consists of UI logs corresponding to
specific problems categorized by log size (10, 25, 50, 100) and balanced? (Balanced, Imbalanced).
Here is an example from the file structure of P1. UI logs and their corresponding screenshots
are organized in folders named as follows: sc{scenarioId}_size_{LogSize}_{Balanced?}.</p>
        <p>P1/
sc0_size_10_Balanced/
screenshots/
1_img.png
2_img.png
...</p>
        <p>log.csv
sc0_size_10_Imbalanced/
...</p>
        <p>sc30_size_100_Balanced/</p>
        <p>...
initial_generation_configuration/
seed.csv
seed_screenshots.zip
case-level_variabilty_conf.json
scenario-level_variabilty_conf.json
decision.json</p>
        <p>
          Furthermore, each problem includes two additional artifacts. Firstly, the
initial_generation_configuration folder contains the data necessary for generating problem data
using the BPM Log Generator tool [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]. Secondly, the most valuable component of this package
that is the "decision.json" file, which serves as the decision oracle for each process. This file
specifies the condition that drives the decision made at the decision points. Here is an example:
"UI_compos": {
"B": { // activity whose screenshot contains the UI compos
"compo1": [499, 210, 598, 278], // bounding box: [x_left_corner, y_left_corner,
x_right_corner, y_right_corner]
}
        </p>
        <p>"compo2": [374, 230, 482, 250]
},
"decision": {
"V1": "exists(B_compo1) or exists(B_compo2)", // condition to be variant 1
"V2": "not(exists(B_compo1) or exists(B_compo2))" // condition to be variant 2
}</p>
        <p>This testing oracle serves as a label for validating mined data. The file is divided in two main
sections: "UICompos" and "decision". The "UICompos" section includes a key for each activity
related to the decision, storing key-value pairs that represent the UI components involved, along
with their bounding box coordinates. The "decision" section defines the condition for a case to
match a specific variant based on the mentioned UI components.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Preliminary analysis</title>
      <p>This section is intended to provide an example of the use of this data package. Specifically,
this example consists of performing a decision model discovery study using the provided data
package. The analysis utilizes a decision mining tool3, which focuses on extracting information
from events preceding the decision point (DP).</p>
      <p>Table 1 presents the relevant properties of the UI logs associated with each problem,
specifically concerning events before DP. These properties include the number of variants (#variants),</p>
      <sec id="sec-3-1">
        <title>3Available at: https://github.com/RPA-US/screenrpa</title>
        <p>the average number of activities (avg #act), the number of activities occurring before the decision
point (#act before DP), the average number of UI components per screenshot, i.e., UI compo.
density prior to the decision point (#UICompo density before DP), and the average number of
UI components influencing the decision point condition (avg #UICompo in DP).</p>
        <p>
          Considering that the first two activities (A: view mailing list, and B: view mail) are common
to all three problems. It can be observed, as expected, that the density varies depending on the
nature of the activity. Where A and B are denser than the rest, since P1, which only considers
these before the DP, has the maximum UI components density. The preliminary analysis, in
this case, focuses on the "best" configuration where all UI components involved in the decision
point are discovered, as specified in the "decision.json" file. This configuration corresponds to
a balanced log of size 100. The results of applying the decision model discovery approach
proposed by [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] are illustrated in Figure 1. This shows a decision tree for each problem. Variables
considered in the tree rules are associated with the number of UI components of a type present
in an activity screenshot. For instance, in the case of P1, if there is more than one ImageView in
activity B (there is an id card attached in the mail), the case corresponds to variant 1.
        </p>
        <p>
          Although the diferences between these problems influence their behavior under specific
conifgurations, this analysis emphasizes the optimal case. For a more comprehensive understanding
and in-depth analysis, please refer to a recent publication [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]. The data package’s identifiable
decision points further demonstrate its usefulness for conducting tests and validation.
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Conclusions</title>
      <p>
        This paper introduces a synthetic UI log data package with screenshots, which can be easily
modified using BPM Log Generator tool [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. The data package’s key feature is the presence
of clear and identifiable decision points, making it valuable for contrasting and comparing
diferent approaches. It enables the BPM community to validate similar approaches using this
data package and allows small modifications in the initial generation configuration to adapt the
data to specific approaches. Future work includes expanding the data package to increase its
variability and realism, thereby enhancing its usefulness for RPA research and development
eforts.
      </p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgments</title>
      <p>This publication is part of the projects PID2019-105455GB-C31 and PID2022-137646OB-C31,
funded by MCIN/ AEI/10.13039/501100011033/ and by the “European Union”; the FPU
scholarship program, granted by the Spanish Ministry of Education and Vocational Training
(FPU20/05984) and its mobility grants (EST23/00732).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>J. G.</given-names>
            <surname>Enríquez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Jimenez-Ramirez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Dominguez-Mayo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Garcia-Garcia</surname>
          </string-name>
          ,
          <article-title>Robotic process automation: a scientific and industrial systematic mapping study</article-title>
          ,
          <source>IEEE Access 8</source>
          (
          <year>2020</year>
          )
          <fpage>39113</fpage>
          -
          <lpage>39129</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>V.</given-names>
            <surname>Leno</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Polyvyanyy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Dumas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. La</given-names>
            <surname>Rosa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F. M.</given-names>
            <surname>Maggi</surname>
          </string-name>
          ,
          <article-title>Robotic process mining: vision and challenges</article-title>
          ,
          <source>Business &amp; Information Systems Engineering</source>
          <volume>63</volume>
          (
          <year>2021</year>
          )
          <fpage>301</fpage>
          -
          <lpage>314</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>A.</given-names>
            <surname>Jimenez-Ramirez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. A.</given-names>
            <surname>Reijers</surname>
          </string-name>
          , I. Barba,
          <string-name>
            <given-names>C.</given-names>
            <surname>Del Valle</surname>
          </string-name>
          ,
          <article-title>A method to improve the early stages of the robotic process automation lifecycle</article-title>
          ,
          <source>in: Advanced Information Systems Engineering: 31st International Conference, CAiSE 2019</source>
          , Springer,
          <year>2019</year>
          , pp.
          <fpage>446</fpage>
          -
          <lpage>461</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>S.</given-names>
            <surname>Agostinelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lupia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Marrella</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mecella</surname>
          </string-name>
          ,
          <article-title>Reactive synthesis of software robots in rpa from user interface logs</article-title>
          ,
          <source>Computers in Industry</source>
          <volume>142</volume>
          (
          <year>2022</year>
          )
          <fpage>103721</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>A.</given-names>
            <surname>Martínez Rojas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. Jiménez</given-names>
            <surname>Ramírez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. González</given-names>
            <surname>Enríquez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. A.</given-names>
            <surname>Reijers</surname>
          </string-name>
          ,
          <article-title>A tool-supported method to generate user interface logs</article-title>
          ,
          <source>in: 56th Hawaii International Conference on System Sciences</source>
          (
          <year>2023</year>
          ), pp.
          <fpage>5472</fpage>
          -
          <lpage>5481</lpage>
          .,
          <string-name>
            <surname>HICSS</surname>
          </string-name>
          ,
          <year>2023</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>V.</given-names>
            <surname>Leno</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Polyvyanyy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. La</given-names>
            <surname>Rosa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Dumas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F. M.</given-names>
            <surname>Maggi</surname>
          </string-name>
          ,
          <article-title>Action logger: Enabling process mining for robotic process automation</article-title>
          ,
          <source>in: Proceedings of Demonstration Track at: 17th International Conference BPM</source>
          <year>2019</year>
          , volume
          <volume>2420</volume>
          ,
          <string-name>
            <surname>CEUR-WS</surname>
          </string-name>
          ,
          <year>2019</year>
          , pp.
          <fpage>124</fpage>
          -
          <lpage>128</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>J. M.</given-names>
            <surname>López-Carnicer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Del Valle</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. G.</given-names>
            <surname>Enríquez</surname>
          </string-name>
          ,
          <article-title>Towards an opensource logger for the analysis of rpa projects</article-title>
          ,
          <source>in: BPM 2020 Blockchain and RPA Forum, Proceedings 18</source>
          , Springer,
          <year>2020</year>
          , pp.
          <fpage>176</fpage>
          -
          <lpage>184</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>A.</given-names>
            <surname>Martínez-Rojas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Jiménez-Ramírez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. G.</given-names>
            <surname>Enríquez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. A.</given-names>
            <surname>Reijers</surname>
          </string-name>
          ,
          <article-title>Analyzing variable human actions for robotic process automation</article-title>
          ,
          <source>in: Business Process Management: 20th International Conference BPM</source>
          <year>2022</year>
          , Proceedings, Springer,
          <year>2022</year>
          , pp.
          <fpage>75</fpage>
          -
          <lpage>90</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>A.</given-names>
            <surname>Jiménez-Ramírez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Chacón-Montero</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Wojdynsky</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. G.</given-names>
            <surname>Enriquez</surname>
          </string-name>
          ,
          <article-title>Automated testing in robotic process automation projects</article-title>
          ,
          <source>Journal of Software: Evolution and Process</source>
          (
          <year>2020</year>
          ).
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>