신지강
(Jikang Shin)
1iD
이성호
(Sungho Lee)
2iD
서호진
(Hojin Seo)
1iD
임정선
(Jeong-Seon Im)
1iD
조희
(Hee Cho)
1iD
황명하
(Myeong-Ha Hwang)
†iD
-
(Digital Solution Laboratory, Korea Electric Power Research Institute(KEPRI), Korea.)
-
(Division of Computer Convergence, Chungnam National University(CNU), Korea.)
Copyright © The Korean Institute of Electrical Engineers(KIEE)
Key words
Robotic Process Automation, Open Source, Framework, Web System, Software Robot
1. Introduction
This is an Open-Access article distributed under the terms of the Creative Commons
Attribution Non-Commercial License (http://creativecommons.org/licenses/by-nc/4.0/)which
permits unrestricted non-commercial use, distribution, and reproduction in any medium,
provided the original work is properly cited.
Robotic process automation (RPA) is a task automation technology that enables software-driven
“bots” to perform a set of tasks that are typically carried out by humans with their
personal computers (PCs) (1). RPA tools typically perform if–then–else statements based on the intake of structured
data using a combination of user interface interactions or by connecting to application
programming interfaces (APIs) to drive business processes and workflows. The RPA’s
particular scripting language empowers the bots with the necessary runtime allocation
to execute via a control dashboard graphical user interface (GUI) (2). Owing to RPA-driven work processes improvements, which do not require legacy system
modifications, associated industrial processes have become dramatically more efficient
as of late (3). Unfortunately, this only applies to the success stories. Notably, a stark 30–50%
of RPA projects fail due to several key issues (4), rendering their implementations cost-ineffective. Most commercial RPA solutions
require annual subscriptions, whose fees increase proportionally based on the number
of users and/or bots. Various RPA products (e.g., UiPath (5), Automation Anywhere (6), and Power Automate (7)) are commercially available, and diverse use cases have been documented. Notably,
most of these focus on reporting the work reduction effects before and after RPA application
rather than focusing on the burdens and risks of implementation and operation (8).
To improve upon this situation, this paper introduces a new implementation of the
open-source enterprise RPA framework to reduce cost burdens at our particular company.
The name of our tool is EnterRPA. We discuss six examples of automating simple and
repetitive daily employee tasks and confirm that their processing times are greatly
reduced.
2. Background & Related Work
2.1 Robotic Process Automation
Four key improvements can be obtained from utilizing RPAs: operational efficiency,
quality of service, implementation and integration, and risk management and compliance
(9). Operational efficiency refers to the time and cost reductions obtained from replacing
human resources with RPAs. In many industries, cost reduction is critical because
it is directly reflected in company profit. Quality-of-service refers to the use of
software bots to prevent user errors in a rule-based workflow. Implementation and
integration improvements imply the simplification and clarification of user interfaces
in large enterprise systems, including the maintenance and integration efficiencies
that result. Finally, risk management and compliance involves the analysis of RPA
activity logs to detect mistakes and ensure mandatory performance thresholds are met.
Huang et al. proposed an RPA application framework for an auditing project (10). Researchers have also automated website login, client selection, account selection,
authorization request, confirmation, request monitoring, and account balance download
and extraction tasks, shortening them on average from ~30 min to less than 3 min.
Aguirre et al. presented a case study that used RPAs to automate business processes
(11), resulting in real service improvements, such as automating a customer relationship
management receipt-generation process into AS-IS and TO-BE processes, including automatic
email generation. According to the results of a one-week trial, these researchers
demonstrated that a group with RPAs could handle 21% more cases than a group without
RPAs.
Bhatnagar proposed new RPA roles in the pharmaceutical industry (12), including a framework for standardized ayurvedic end products and machine learning
(ML) integration. The ayurvedic process automates simple and repetitive data acquisition
tasks and transmits them to an ML framework for statistical analysis. Romao et al.
performed a case study that applied an RPA to AS-IS and TO-BE processes in the banking
industry (13). They presented and proposed a scheme to apply RPA. As such, RPA is being widely
utilized in various industrial fields.
2.2 Open-Source RPA Frameworks
Although companies have worked hard to automate simple and repetitive tasks using
commercial RPA frameworks, the licensing costs, security risks, and flexibility issues
are driven upward due to each company needing uniquely configured solutions. Hence,
open-source RPA frameworks (14) have been developed to reduce costs and improve flexibility, potentially increasing
returns on investment. Moreover, because the implementers directly participate in
the development of the source code, security and flexibility are also strengthened.
Earlier, we listed several proprietary RPA frameworks. Several major open-source solutions
(e.g., Robot Framework (15), OpenRPA (16), UI.Vision (17), taskt (18), and TagUI (19)) have been introduced, providing benefits of no- or low-code experience via user-friendly
GUIs, human-readable syntax, data “scraping,” feature variety, ubiquitous computer-language
integration (e.g., Python, C#, and JavaScript), and open licensing (e.g., Apache,
Mozilla Public License, and Affero General Public License) (20).
3. EnterRPA
3.1 Overview
EnterRPA is based on the taskt open-source RPA framework, which requires no-or low-code
experience, provides human-readable syntax, and adopts a what-you-see-is-what-you-get
(WYSIWYG) user interface. WYSIWYG allows users to directly manipulate layouts without
applying hypertext or layout commands (21- 23).
We made modifications and extensions on taskt to remedy several drawbacks it has.
The taskt takes and executes a script file that contains execution flows among multiple
commands, but the execution of taskt slows down as the number of commands increases.
Moreover, the execution even occasionally halts when commands run for longer than
a week. Inspecting the source code of the taskt manually, we identified such buggy
code and fixed the code to work correctly. We also improved the function that recognizes
a specific screen image, so that EnterRPA can recognize even small graphical changes
on screen. In addition, EnterRPA checks and reports syntactic errors in scripts before
executing them, while the taskt just executes scripts and halts on errors.
Figure 1 demonstrates the structural overview of EnterRPA. EnterRPA takes a RPA script and
executes it on a dedicated software robot. Users can write a RPA script directly or
can also utilize the graphical user interface (GUI) of EnterRPA to create a RPA script
for their simple and repetitive tasks. Then, EnterRPA assigns a software robot to
the script via a job scheduling algorithm, and the script runs on the robot with automated
functions defined in EnterRPA. Once EnterRPA takes a script, the script is registered
as a robotic process, so that users can re-execute it anytime via the EnterRPA GUI
without re-submitting the script.
We design and implement EnterRPA considering four benefits that can be obtained from
utilizing RPAs:
그림. 1. EnterRPA 구조
Fig. 1. EnterRPA architecture
For the operational efficiencies, EnterRPA automates processes that are frequently
and repeatedly conducted by human.
For the higher quality of service, EnterRPA prevents user mistakes by applying rule-based
workflows and bots.
For the implementation, maintenance, and integration benefits, EnterRPA supports a
web-based interface that provides a simple and distinct single-page method for multiple
data entries.
For the risk-management, EnterRPA equips status management functions that identify
the status of software robots.
In the subsequent subsections, we describe functions that EnterRPA provides (Section
3.2), a web interface for easy-to-use EnterRPA (Section 3.3), and the job scheduling
(Section 3.4) in detail.
3.2 EnterRPA Functions
EnterRPA provides new functions in consideration of our company's work environment:
Selenium-based browser operation automation. New C# and VBScript source-code execution
functions were written, a Windows batch file was added, MySQL, Oracle, and PostgreSQL
database management system linkage functions were added, and real-time debugging for
task automation was incorporated.
EnterRPA supports a total of 13 functions originally supported by taskt, which are
described as follows and illustrated in Figure 1 :
Condition statement to execute functions conditionally
Iteration statement to execute functions repeatedly
Web controller to control Web browsers such as Internet Explorer and Chrome
Excel controller to create, manipulate, integrate, and edit data in excel files
Word controller to create, manipulate, and extract contents in word files
Outlook controller to forward, reply, and delete emails via the Outlook mail client
Database controller to execute database connections and queries
File controller to move, copy, and load files
Folder controller to create, move, copy, and delete folders
Image controller to recognize images and optical characters
Keyboard & Mouse controller to trigger keyboard and mouse events
Window controller to resize, move, close, and perform other window operations
System controller to control execution errors, perform API operations, and etc.
EnterRPA enables users to design automated workflows by combining these functions
via GUI. Thus, each user can easily generate RPA scripts for simple and repetitive
tasks.
3.3 EnterRPA Web Interface
To implement an automation system for target tasks, we analyzed how the best-performing
employee performs the task. The key to the employee’s ability to work well is that
they realize the rules clearly about what information to enter depending on the how
to operate the system and the task. We subdivided the task process to the level of
input device operation, such as the keyboard and mouse. For example we could subdivide
the “Log in ERP System” into four operations: 1) input the user ID with the keyboard,
2) left-click on the password input area with the mouse, 3) input the user password
with the keyboard, and 4) left-click on the login button with the mouse.
그림. 2. EnterRPA Web UI를 통한 RPA 예시
Fig. 2. Example RPA via EnterRPA Web UI
Subsequently, we classified operations into two categories: information input and
system control. The information input category contains operations that require user
inputs to perform target tasks. Such operations need to behave differently depending
on the details of the target tasks. From the example, inputting a user ID and password
belongs to the information input category, since the ID and password are different
for each user who wants to log in. The system control category contains the remaining
operations that are independent of users’ input. From the example, two mouse click
operations in 2) and 4) belong to this category, because they can behave regardless
of what an ID and a password are given.
EnterRPA provides a web interface as a user input simplification system to reduce
information input operation time. Operations in the information input category cannot
be omitted and must be performed by users, while operations in the system control
category can be fully automated. Via the web interface, EnterRPA obtains all necessary
user inputs on a single web page at once and performs target tasks automatically with
the given user inputs.
In addition, the interface effectively reduces users’ burdens in filling in input
forms. EnterRPA requires users to put only minimum information necessary for target
tasks and generates related information automatically using pre-defined rules for
the tasks. EnterRPA then shows the generated information on the web interface, so
that the users can review the information and can modify only some parts of the information.
Figure 2 presents an example RPA process via the EnterRPA web interface. For example, if a
target task demands six user information in total, the web interface shows only three
input forms for a title, contents, and attachments to obtain minimum necessary information
from users. When the users fill in the three input forms, EnterRPA generates additional
information such as eligible approvers, an appropriate expense account. The information
is shown on the web page for the users’ review. After the review, EnterRPA sends the
Job Scheduler the task with obtained information from the web interface. The Job Scheduler
assigns the task to a dedicated software robot via the job scheduling algorithm, and
the robot finally conducts the task automatically with the input information.
3.4 Job Scheduling
EnterRPA parallelizes multiple RPA tasks on multiple PCs and servers simultaneously.
Because our base RPA framework, taskt, handles all scheduled RPA tasks sequentially
on only one PC where the framework is installed, it is not suitable for enterprises
that need to deal with multiple tasks from many users quickly. To overcome the limitation,
EnterRPA provides three additional functionalities to distribute and handle multiple
RPA tasks on multiple software robots. First, it operates a central server that manages
software robots. When EnterRPA is installed on a PC, its host name and network address
are automatically transmitted to the server and registered as a client in real time.
Second, EnterRPA monitors and transmits script execution status, including the line
of code being executed and whether the execution has been completed, to the server.
If an error occurs, the error location in the script and the cause of the error are
sent to the server and reported to the users. Third, EnterRPA schedules tasks across
multiple software robots. It distributes tasks on dedicated software robots to maximize
the use of each robot’s resources as well as deactivates or deletes scheduled tasks
if needed.
Figure 3 shows the job-scheduling algorithm for allocating jobs to multiple SW robot queues.
The jobs are tasks requested by users, which are mapped to RPA scripts and automatically
executed on software robots. The algorithm considers two objectives. First, since
the ERP system does not allow simultaneous multiple accesses from the same user ID,
the algorithm prevents SW robots from logging in with an ID during executing a job
with the ID. Second, it distributes jobs on software robots to minimize their idle
time. The detailed description of the algorithm is as follows: The algorithm takes
three maps (JobsOfId, BotForId, and JobQueue) obtained from the database. The
그림. 3. EnterRPA의 일 분배 알고리즘
Fig. 3. EnterRPA job scheduling algorithm
그림. 4. 펌뱅킹 기반 비용 지급 워크플로우
Fig. 4. Payment via firm banking workflow
JobsOfId stores relations from user IDs to lists of their newly requested jobs, the
BotForId stores mappings user IDs to their dedicated robots performing the IDs’ jobs,
and the JobQueue maintains mappings from robots to queues containing scheduled jobs
to the robots. For each user ID of requested jobs, the algorithm tried to find a SW
robot for which the ID’s jobs are currently scheduled. If such a robot exists, all
the requested jobs of the ID are also scheduled for the robot to prevent different
robots from accessing the ERP system with the same ID simultaneously. Otherwise, the
algorithm finds the most idle SW robot with the fewest scheduled jobs, assigns the
ID’s jobs to the robot to distribute jobs on all robots as equally as possible, and
updates the BotForId to make the robot responsible for further requests from the same
ID. After scheduling all the requested jobs, the algorithm updates the database for
the modified information and terminates.
4. EnterRPA Applications for Enterprise Tasks
We apply EnterRPA to employee expense reporting and processing tasks that are tedious,
repetitive, and non-productive. The tasks are one of the frequently required tasks
in that about 500 employees manually handle such tasks more than 50,000 times in total
per year. Moreover, the tasks require much human efforts including the financial system
training, the accountability controls, and the enterprise resource planning (ERP)
expertise. Actually, our employees spend more than 4,000 hours in processing the tasks
annually.
This study automates two types of statement processes for a total of six tasks. The
first type involves settling expenses paid using a corporate card for meeting preparation,
minor purchases, and business trips. The second type involves payments made via corporate
banking, including wages, contract labor, interns, and consultations. Notably, the
time taken and risks of these expense settlement tasks vary greatly depending on the
employee’s skill level. For example, both types of statement processing tasks involve
accessing the statement via the ERP system. All explanations provided by the system
to the user’s screen require financial knowledge to understand, and the functions
needed for the tasks are not linked to each other, requiring the user to search for
each function via menus. As a second example, both task types include a process of
uploading attachments when entering statement information, and each step requires
navigating different menus and entering (and re-entering) the needed information.
Hence, processing even the simplest statement is time-consuming and risky.
그림. 5. 법인카드 사용 내역 정산 워크플로우
Fig. 5. Corporate card payment receipt settlement workflow
그림. 6. 업무별 처리 시간 비교 결과 (초). ERP: enterprise resource planning; RPA: robotic process
automation
Fig. 6. Comparision results of processing time per task (seconds). ERP: enterprise
resource planning; RPA: robotic process automation
4.1 EnterRPA Application Type 1: Corporate Card Usage Settlement
After a certain period, the list of approvals made using a corporate card can be viewed
by the employee via the ERP system (Figure 4). During the monthly settlement period, employees enter details about the purpose
of each transaction and attach supporting evidence. For the purchase of goods, the
employee must create an inspection report for each item, and for business-trip expenses,
additional evidence must be attached.
4.2 EnterRPA Application Type 2: Payment via Corporate Banking
This task involves paying employee wages, contract researchers, and interns in support
of research and development projects (Figure 5). On a preset date each month, the payroll staff emails an Excel file containing
wage payment details to the project managers, and those managers enter the contents
of the Excel file into the ERP system for payment accountability. Although one can
simply upload the Excel file’s contents directly to the system, nontaxable expenses
must be entered separately, and various steps for exceptions are complex. Hence, those
unfamiliar with these tasks often make mistakes.
5. Results
EnterRPA began its official service in March 2021 in support of 500+ employees. Initially,
the tool’s capabilities only handled three types of corporate card settlement processing
tasks. Since December 2021, services for three types of corporate banking payment
tasks have been added.
Figure 6 presents a comparison of task processing times when using EnterRPA vs. the manual
method. Originally, the time required for a task-skilled employee to complete an operation
from start to finish without mistakes was measured in seconds. With EnterRPA, the
time was measured in seconds.
According to the comparisons of task processing times, the most effective task was
“wage payment for contract researchers,” which was reduced from 4 min to 30 s: a 95%
temporal reduction. The “cost settlement of purchased goods” task showed the smallest
reduction effect: 74% (which is still incredible). The differences in temporal reduction
were confidently attributed to the amount of information required to be input by the
user. Regarding the creation of “contract researcher wage statements,” the task ends
at the moment the user uploads the Excel file containing the wage payment information.
On the other hand, for the cost settlement of purchased goods, the user must enter
significant additional information about the goods.
그림. 7. 월별 EnterRPA 업무 개수 (2021년 3월 ~ 2022년 8월)
Fig. 7. Number of EnterRPA tasks per month (from March 2021 to August 2022)
Figure 7 shows EnterRPA’s usage record for the 18-month period of March 2021 to August 2022.
The number of users rose gradually from 10 during the first month to a maximum of
145 in July 2022. The number of tasks processed also increased, reaching a total of
10,782 statements. The number of statements processed increased from a low of 56 during
the first month to a maximum of 1,344 in May 2022. In August 2021, system usage declined
as business activities were greatly limited due to the impacts of COVID-19.
EnterRPA uses the respective user’s account information to log into the ERP system.
During the period of this study, users were required to update their password information
manually in EnterRPA after updating it in the larger system. To mitigate the risks
associated with login failures, EnterRPA would check every morning using a quick login/logout
routine, to see if the account information matched. If it failed, the user was notified
prior to their arrival at work. Prior to adding this process, about 15–20 user account
mismatches occurred each month, which decreased to 3–5 afterwards.
Sometimes, the user would already be logged into the ERP system when they completed
EnterRPA tasks. Hence, the simultaneous login entry was prohibited. When this happens,
EnterRPA will continue processing attempts until 7 AM the following morning. Sometimes,
EnterRPA would fail to complete a task because the ERP had already coded it as finished.
In both cases, EnterRPA notifies the user by the morning of the following day.
Unexpected changes in corporate financial reporting policies also led to RPA failures.
For example, inspection reports, which had previously only been required for purchased
goods, were mandated for other types of expenses. Hence, until corrected, the task
automation program failed with those respective automation tasks, resulting in hung
tasks. Similar problems appeared when pop-up warnings were issued to users, causing
the task to remain idle. To mitigate these and similar issues, we programmed the tool
to record log data each time it executes an automation task and to execute the subsequent
task after 5 min elapses with no response. Details would then be emailed to the operator.
Thus, even with task failure, consecutive executions would be propagated.
Task processing also failed when malfunctions occurred with the task system. Over
the 18 month period of this study, three such failures occurred: hardware disk failure,
DBMS-surge failure, and software function error (causing a system restart). During
those occasions, EnterRPA services were curtailed for all users until service reactivation.
For many users, this was their first time using a task automation system. Hence, they
desired to receive confirmations that the RPA system was working properly. Hence,
we provided an option that allowed the user to proceed directly to the final processing
step, “Approve.” When entering information for task processing in EnterRPA-Web, the
screen is configured to enter approver information; if the user does not enter this
information, the RPA does not proceed with the approval and terminates execution.
Afterwards, the user may directly log into the ERP system, check the task status as
executed by EnterRPA, and manually processes the remaining task steps. Tasks processed
in this fashion comprised 22% (2,387) of the total.
We found that EnterRPA contributes well to reducing the temporal load imposed by the
ERP system on the user by way of serving as a proxy. EnterRPA handles tasks that had
formerly been processed manually by employees. Notably, the number of employees simultaneously
supported was limited by the number of RPA robots available. During the demonstration
period, the maximum number of concurrent EnterRPA users per hour averaged 14. The
four EnterRPA robots that executed tasks thereby reduced the overall workload.
6. Conclusion
This study examined the benefits of EnterRPA, an enterprise RPA tool based on taskt,
an open-source framework, which reduced the costs of using commercial solutions at
our specific company. EnterRPA enhances the ease of use of taskt and utilizes an additional
monitoring function needed for operations. Moreover, to reduce the conventional data
entry tasks to a single web-based GUI, EnterRPA’s web interface was very effective.
We applied EnterRPA to three types of corporate card usage- settlement tasks and three
types of corporate banking payment tasks, which are simple and repetitive but very
time consuming. As a result, the tool substantially reduced the processing time for
all tasks, which continues to help employees perform their job performance requirements
and contributes to reduced labor costs.
In summary, the results of this study are meaningful in that all four potential benefits
from using RPA were obtained. EnterRPA supports corporate user creation and deployment
of new workflows, and many simple and repetitive tasks can be automated. Notably,
services can be directly extended via the EnterRPA web interface. In the future, we
will develop a question-answering service using deep learning based speech recognition
and a chatbot.
Acknowledgements
This work was funded by the Korea Electric Power Corporation (KEPCO).
References
P. Hofmann, C. Samp, N. Urbach, 2020, Robotic Process Automation, Electron. Mark,
Vol. 30, pp. 99-106
C. Tornbohm, 2017, Gartner market guide for robotic process automation software, Report,
Vol. g00319864, pp. 1-35
W.M. Van der Aaist, M. Bichler, A. Heinzl, 2018, Robotic process automation, Bus.
Inf. Syst. Eng, Vol. 60, pp. 269-272
M. Lacity, L.P. Wilcocks, 2017, Robotic process automation and risk mitigation: The
definitive guide, SB Publishing Ashford UK
UiPath, 2022, https://www.uipath.com/, 2022 (accessed 18 October 2022).
Automation Anywhere, inc., Automation Anywhere, 2022, https://www.automationanywhere.com/,
2022 (accessed 18 October 2022).
Microsoft, Power Automate, 2022, https://powerautomate.microsoft.com/en-us/, 2022
(accessed 18 October 2022).
W. A. Ansari, P. Diya, S. Patil, S. Patil, 2019, A review on robotic process automation-the
future of business organizations, in: International Conference on Advances in Science
& Technology (ICAST)
R. Syed, S. Suriadi, M. Adams, W. Bandara, S.J.J. Leemans, C. Ouyang, A.H.M. Hofstede,
I. Weerd, M.T. Wynn, H.A. Reijers, 2020, Robotic Process Automation: Contemporary
themes and challenges, Comput. Ind., Vol. 115, pp. 1-15
F. Huang, M.A. Vasarhelyi, 2019, Applying robotic process automation (RPA) in auditing:
A framework, Int. J. Account. Inf. Syst, Vol. 35, pp. 1-11
S. Aguirre, A. Rodriguez, 2017, Automation of a Business Process Using Robotic Process
Automation (RPA): A Case Study, in: Workshop on Engineering Applications(WEA), pp.
65-71
N. Bhatnagar, 2019, Role of Robotic Process Automation in Pharmaceutical Industries,
in: International Conference on Advanced Machine Learning Technologies and Applications
(AMLTA), pp. 497-504
M. Romao, J. Costa, C.J. Costa, 2019, Robotic Process Automation: A case study in
the Banking Industry, in: Iberian Conference on information systems and technologies
(CISTI), pp. 1-6
T. Taulli, 2020, The Robotic Process Automation Handbook: A Guide to implementing
Systems, Apress
Robot Framework ry, Robot Framework, 2022, https://github.com/robotframework/robotframework,
022 (accessed 18 October 2022).
OpenRPA, Open Source Robotic Process Automation Software, 2022, https://github.com/open-rpa/openrpa,
022 (accessed 18 October 2022).
The a9t9 software company, UI.Vision: Open-Source RPA Software (formerly Kantu) -
Modern Robotic Process Automation with Selenium IDE++, 2022, https://github.com/A9T9/RPA,
022 (accessed 18 October 2022).
taskt, 2022, https://github.com/saucepleez/taskt, 022 (accessed 18 October 2022).
AI Singapore, TagUI, 2022, https://github.com/aisingapore/TagUI, 022 (accessed 18
October 2022).
GGS IT Consulting, 5 open source Robotic Process Automation tools. Top vendors on
the market, 2022, https://ggsitc.com/blog/5-open-source-robotic-process-automation-tools-top-vendors-on-the-market,
022 (accessed 18 October 2022).
Howe, D. What You See Is What You Get, 1999, https://foldoc.org/WYSIWYGt, 022 (accessed
18 October 2022).
V. O. Babenko, R. M. Yatsenko, P. D. Migunov, A. B. M. Salem, 2019, MarkHub Cloud
Online Editor as a modern web-based book creation tool, in: Proceedings of the 7th
Workshop on Cloud Technologies in Education (CTE 2019), pp. 174-184
L. Delia, P. Thomas, L. Corbalan, J. F. Sosa, A. Cuitino, G. Caseres, P. Pesado, 2018,
Development Approaches for Mobile Applications: Comparative Analysis of Features,
In: Science and Information Conference, pp. 470-484
저자소개
He has received B.S. degree in Electric Engineering and Computer Sceince, from Handong
University, South Korea in 2008, and M.E. degree in Information and Communication
Engineering from Korea Advanced Institute of Sceience and Technology (KAIST), South
Korea in 2010, and currently work for Korea Electric Power Research Institute (KEPRI).
His current research interests are robotic process automation (RPA).
He is an assistant professor in the Division of Computer Convergence at Chungnam National
University (CNU), Korea.
His research interests include static analysis and testing for multilingual programs
and machine learning softwares.
He received his Ph.D. in the School of Computing from Korea Advanced Institute of
Science and Technology (KAIST), and worked at Google.
He has received B.S. degree in Department of Computer Science and Engineering from
Konkuk University, South Korea in 2015 and M.E. degree in Computer Science and Engineering
from KyungHee University, South Korea in 2017, and currently work for Korea Electric
Power Research Institute (KEPRI).
His current research interests Database System and Big Data Processing.
She has received B.S. degree in Department of Information and Communication Engineering,
from Chungnam National University (CNU), South Korea in 2017 and M.E. degree in Information
and Communication Network Technology from University of Science and Technology (UST),
South Korea in 2019, and currently work for Korea Electric Power Research Institute
(KEPRI).
Her current research interests Deep Learning and Computer Vision.
She earned B.S. degree in Department of Information Systems Engineering from Sungshin
University in South Korea in 2019, and M.E. degree in Department of Computer Science
from Sungshin University in 2021.
She is currently working at Korea Electric Power Research Institute (KEPRI).
Her research interests Software Development and Natural Language Processing (NLP).
He has received B.S. degree in Department of Information and Communication Engineering,
from Chungnam National University (CNU), South Korea in 2015 and M.E. degree in Information
and Communication Network Technology from the Schhool of Electronics and Telecommunications
Research Institute (ETRI), University of Science and Technology (UST), South Korea
in 2018.
He is Ph.D. candidate in Bio and Brain Engineering from Korea Advanced Institute of
Science and Technology (KAIST), South Korea and currently work for Korea Electric
Power Research Institute (KEPRI).
His current research interests Deep Learning and Natural Language Processing (NLP).