书名:RPA(机器人流程自动化)快速入门——基于Blue Prism
ISBN:978-7-115-41017-7
本书由人民邮电出版社发行数字版。版权所有,侵权必究。
您购买的人民邮电出版社电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。
我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。
如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。
著 [新加坡] 林美英(Lim Mei Ying)
译 梁一纲 王珮瑶
责任编辑 陈聪聪
人民邮电出版社出版发行 北京市丰台区成寿寺路11号
邮编 100164 电子邮件 315@ptpress.com.cn
网址 http://www.ptpress.com.cn
读者服务热线:(010)81055410
反盗版热线:(010)81055315
Copyright © Packt Publishing 2018. First published in the English language under the title Robotic Process Automation with Blue Prism Quick Start Guide.
All Rights Reserved.
本书由英国Packt Publishing公司授权人民邮电出版社有限公司出版。未经出版者书面许可,对本书的任何部分不得以任何方式或任何手段复制和传播。
版权所有,侵权必究。
本书是Blue Prism的入门指南,旨在帮助没有编程基础的读者快速掌握使用Blue Prism构建简单机器人的流程。全书分为11章,从机器人流程自动化的基本概念出发,配套一个简单的应用案例介绍构建机器人的基本流程,内容涵盖了构建机器人流程的每个环节。
本书适合想要学习或了解机器人流程自动化技术的读者,不论读者是否有计算机基础,都可以通过阅读本书有所收获。
林美英在设计、实施和支持Blue Prism流程以及为企业建立机器人操作模型(Robotic Operating Model)方面经验丰富。她花费了大量时间研究Blue Prism技术的优缺点,并在寻找自动化问题解决方案的挑战中不断成长。美英住在有着阳光岛之称的新加坡。
塞巴尔·戈斯瓦米(Saibal Goswami)从业超过12年,在此期间,他在合作关系管理、客户关系、项目管理、业务分析和运营管理方面的能力得到了极大的提升。他通过有效的流程可行性研究、成本/效益分析、资源规划、带领并指导跨职能团队来培养上述能力,以最大程度地提高生产力。他的职业从一开始就与RPA有关。他掌握了各种技术技能,包括RPA流程评估和RPA卓越中心(Centre of Excellence,CoE)。
本书由梁一纲和王珮瑶共同翻译,两位译者是中国首批接触RPA并从事该行业的人士。
梁一纲研究生毕业于英国华威大学工程商业管理专业,曾就职于某全球银行,担任软件工程师、数据分析师、流程优化顾问;曾就职于某“四大”会计师事务所,担任税务信息化高级咨询师;曾就职于某上市咨询公司,担任RPA高级咨询顾问。他有丰富的流程优化咨询、数据分析、系统开发经验,参与过多个国内外金融、通信、贸易等领域的RPA咨询、实施项目;曾开发纳税申报机器人、增值税进项抵扣机器人、发票验真机器人、同业对账机器人、财务报表识别机器人、网联调账机器人,对公开户机器人、监管报表机器人、集中授权机器人等,对国内外RPA产品及行业有较深理解。
王珮瑶本科毕业于西南财经大学金融学(证券与期货方向)专业,研究生毕业于法国里昂商学院管理学专业,具有翻译及一级市场股权投资从业经验,并投身于中国RPA行业的发展;受益于金融与IT复合背景,王珮瑶在担任RPA产品经理期间负责财务报表识别机器人、监管报表机器人、地方监管报表机器人、同业对账机器人等多个产品的方案设计及实施,有志在RPA行业深耕。
机器人流程自动化(Robotic Process Automation,RPA)从2017年开始引起国内众多财务人员的注意,在经历了咨询公司和会计师事务所等机构的推广后,于2018年引起了社会各界的广泛关注。业内普遍将2019年称为中国RPA发展元年,这也是译者翻译本书的时间。RPA能收获如此多的关注,译者认为这是一个必然事件。古时候,大量人力被投入农耕,于是各种工具和技术都致力于提升农业的生产力;工业时代,许多劳动力被投入车间生产,用于工业生产的工具与技术也得到了快速发展;互联网时代,越来越多的人坐在办公室中从事脑力劳动,如何提高他们的工作效率、减少人为失误,是这个时代以及未来要解决的问题。基于此,RPA诞生了。虽然关于RPA是否属于人工智能在业内尚有争议,但不可否认的是,RPA有助于将一些AI技术应用于实际业务中。有人可能认为RPA的火热是借了AI的“东风”,但是译者认为RPA的出现是历史演进的重要一步,正是RPA把离普及还很远的人工智能变得触手可及。
RPA的诞生有几个因素。一是业务的发展已经超过了人力的负荷;二是信息系统的普及使大部分业务能在计算机上处理,这里是RPA的主场;三是企业风险防范意识的增强,机器人可以有效降低出错率;四是人工智能技术从实验室阶段迈入了现实层面,急于寻找落脚之处。
目前机器人流程的主流开发还多见于国外的一些先行者,如本书所介绍的Blue Prism,相关的中文资料比较少。于是在响应国家号召与大力发展我国人工智能行业的背景下,本书得以翻译出版。两位译者非常荣幸能在RPA起步阶段就参与其中。尽管本书中所使用的Blue Prism版本与读者阅读时使用的版本可能存在差异,但是其核心理念是不变的。希望读者在阅读本书后,能够了解到RPA到底是什么、能够做什么事情,然后再结合自身情况,制作出属于自己的机器人流程,从而更好地为个人、为企业、为社会做贡献。
梁一纲 王珮瑶
2019年10月9日
最近,机器人流程自动化越发流行。机器人流程工具的诞生,诸如Blue Prism,开启了一个充满机遇的世界。以前不能自动化的流程现在可以自动化了,其中包括涉及遗留应用程序的流程:以前没有人敢升级这些程序,担心出现问题;以前这些程序是被打包好的,不为开发人员提供任何集成和扩展的方法。
人们曾经只能通过执行单调的数据输入和单击操作来完成任务。现在,有Blue Prism这样的平台,无须昂贵的系统改进和更改需求就能够准确地模拟人类的行为。只需要训练机器人模仿人类的行为,就能实现流程自动化!
另外,用户无须拥有高超的技术就可以从头开始构建一个流程。本书正是为了从零开始构建流程而写。在构建流程时,读者会逐步了解Blue Prism的所有基本功能——从创建流程,到建立对象,再到使用常见的应用程序(如Excel和Outlook)。
本书的理念是帮助非技术型人群创建自己的流程。我在过去的工作中与最终用户进行了许多合作,帮助他们实现流程自动化。因为当时的方向是让最终用户成为开发人员,所以我目睹了许多人努力地掌握基础知识的过程。这些人没有受过计算机科学的专业训练,也不知道什么是循环和集合等。我们与这些用户一起坐在房间里,并试着让他们的流程运行起来。他们接受过内部的基础培训,但由于某种原因,有些观念没有坚持下来。他们确实需要帮助才能在截止期限前完成任务。
可以将这本书想象成一个特殊的教练,他就在旁边指导读者构建流程并帮助其渡过难关。本书整合了咨询的经验,收集了常见问题,以帮助读者避开流程构建中的陷阱。
第1章, 机器人流程自动化案例,介绍机器人流程自动化的定义、什么流程最适合RPA,以及对机器人操作模型的简要概述。
第2章, 创建首个Blue Prism流程,带领读者创建一个简单的流程。
第3章, 页、数据项、块、集合与循环,通过添加页、数据项、块、集合和循环来继续构建流程。
第4章, 操作、决策、选择与运算,介绍在构建流程中操作、决策、选择与运算的使用。
第5章, 实现业务对象,展示如何指导机器人与Internet Explorer之类的应用程序交互。
第6章, 侦察元素,了解侦察元素,它用于侦察机器人需要与之交互的元素。
第7章, 写入、等待和读取,介绍如何通过写入、等待和读取阶段来构建业务对象背后的逻辑。
第8章, 与Excel交互,介绍如何读写Excel和CSV文件。
第9章, 发送与接收邮件,介绍如何使用Outlook阅读和发送电子邮件。
第10章, 控制室与工作队列,介绍控制室、向队列添加项目、处理项目和更新工作状态。
第11章, 异常处理,演示如何妥善处理预期和意外的错误。
为了便于读者理解,本书中的页面信息框及流程图均译为中文。
本书由异步社区出品,社区(https://www.epubit.com/)为您提供相关资源和后续服务。
作者和编辑尽最大努力来确保书中内容的准确性,但难免会存在疏漏。欢迎您将发现的问题反馈给我们,帮助我们提升图书的质量。
当您发现错误时,请登录异步社区,按书名搜索,进入本书页面,单击“提交勘误”,输入勘误信息,单击“提交”按钮即可。本书的作者和编辑会对您提交的勘误进行审核,确认并接受后,您将获赠异步社区的100积分。积分可用于在异步社区兑换优惠券、样书或奖品。
我们的联系邮箱是contact@epubit.com.cn。
如果您对本书有任何疑问或建议,请您发邮件告诉我们,并请在邮件标题中注明本书书名,以便我们更高效地做出反馈。
如果您有兴趣出版图书、录制教学视频,或者参与图书翻译、技术审校等工作,可以发邮件给我们;有意出版图书的作者也可以到异步社区在线投稿(直接访问www.epubit.com/ selfpublish/submission即可)。
如果您所在的学校、培训机构或企业想批量购买本书或异步社区出版的其他图书,也可以发邮件给我们。
如果您在网上发现有针对异步社区出品图书的各种形式的盗版行为,包括对图书全部或部分内容的非授权传播,请您将怀疑有侵权行为的链接发邮件给我们。您的这一举动是对作者权益的保护,也是我们持续为您提供有价值的内容的动力之源。
“异步社区”是人民邮电出版社旗下IT专业图书社区,致力于出版精品IT技术图书和相关学习产品,为作译者提供优质出版服务。异步社区创办于2015年8月,提供大量精品IT技术图书和电子书,以及高品质技术文章和视频课程。更多详情请访问异步社区官网https://www.epubit.com。
“异步图书”是由异步社区编辑团队策划出版的精品IT专业图书品牌,依托于人民邮电出版社近30年的计算机图书出版经验和专业编辑团队,相关图书的封面上印有异步图书的LOGO。异步图书的出版领域包括软件开发、大数据、AI、测试、前端、网络技术等。
异步社区
微信服务号
有没有好奇过拥有一个克隆人是何等体验?有没有想过有人坐在办公桌旁替你完成所有单调无味的工作?让机器人接手人类的工作现在可以通过机器人流程自动化(Robotic Process Automation,RPA)成为现实。
机器人流程自动化并不是一个新概念。多年以来,人们一直在编写从网站下载数据的脚本、编辑自动化表格的宏和开发记录鼠标操作的记录器。任何计算机可以做的事情都能在一个技艺高超的程序员手中以某种方式得以实现。然而直到最近,这些实现计算机自动化的工具才被搭建成了产品。重要的是,这些工具可以使开发人员无须编写大量复杂的代码来构建自己的流程。
本章将从起点出发,了解什么是机器人流程自动化,快速学习如何挑选出适合RPA的业务流程。本章内容如下。
当下,RPA的热潮方兴未艾。采用机器人劳动力的一大原因就是节约成本。在指定的流程中,经过训练的机器人可以模仿人类行为,提供与人类相同的功能,不用休息、度假或者请病假,也不会抱怨加班或者要求解释绩效考评的结果,其维护费用通常低于聘请员工的花费。此外,机器人可以执行重复性任务,从而解放人力使人类去从事更有附加价值的工作。
实现机器人流程自动化利用的是软件机器人,用户并不会真的看到一个有手臂、腿和轮子的实体机器人在敲击键盘。机器人开发人员借助软件程序记录敲击键盘和单击鼠标的过程,计算机(机器人)通过模拟人类行为重演这些操作。
例如,开发人员想让机器人浏览购物网站采购每周的食品杂货。
人会采取以下步骤购买一盒麦片。
(1)访问购物网站:Amazon购物网站。
(2)在搜索框中输入麦片名称后,单击搜索按钮。
(3)选出想要购买的麦片。
机器人将通过下列步骤完成同样的任务。
(1)打开浏览器,默认主页是Amazon购物网站。
(2)识别搜索框的位置,触发构成麦片名称的按键组合,输入麦片名。
(3)找到搜索按钮的位置,单击按钮。
(4)定位搜索结果。
(5)根据预设规则单击选择搜索结果列表中的所需项,比如预设所需项为搜索结果首项。
机器人将这些动作指令存储于软件程序中,当收到请求时重复上述步骤输入指定内容,逐步执行动作。这也是机器自动化挑选的流程必须可重复的原因。
因为机器人没有与生俱来的智慧,它只能完全按照开发人员的命令行动,它“看不见”另一个商店正在开展麦片的促销活动,所以它会一直选择搜索结果中的首个商品。即使这款麦片已停产,机器人仍会尝试搜索购买它,不会自动选择另一种口味或品牌。赋予RPA机器人认知智力是行业内的一项重大突破:将自然语言处理、文本分析、数据挖掘等算法与RPA技术融合制造出的机器人,不仅可以基于开发人员的命令行动,还能够智能地应对各种情景。然而这些算法仍属于新兴技术,目前RPA机器人所执行的自动化任务通常是具有可预测输入值与输出值的可重复类型。
人们每天所做的工作大多是重复的。我们可能没有意识到这一点,但是当代很多知识型劳动者正在从事着枯燥、常规和单调的工作。也许下列工作中的某一些会听起来比较耳熟。
(1)浏览各种网站并下载报表,随后从每张报表中提取信息,将数据合并成一张表以便进一步分析和报告,最后通过电子邮件将合并报表发送给经理。
(2)查收提醒和通知的邮件。在仔细阅读提及“采取行动”的邮件后,登录另一个办公系统按照一定的顺序输入或者执行交易。操作完成后,清理收件箱并对收件箱里剩下的100封邮件重复上述步骤。
(3)从中央数据仪表盘下载报表,将报表中的数千行数据与副本文件对比,以找到两者之间的差异。
(4)基础数据录入——将一行行数据录入系统。
好消息是,这些工作大部分能够通过软件机器人可靠且可重复地完成。找到适合RPA的流程更像是一门艺术而不是科学,因为机器人只能执行与软件相关的任务,不是万事万物都适合RPA。
适合RPA的流程具有以下特征。
(1)无抽象决策:机器人会严格按照用户的要求行事,因此无论将什么样的流程自动化,它都将以同样的方式一遍一遍地重复工作。假如开发人员通过编程让机器人去购买樱桃巧克力蛋糕,每次运行程序时它都会这样做,它不会突然觉得最近天气转暖,用户也许会想要个巧克力圣代(除非开发人员向它下达指令)。
(2)无人工干预:当流程中出现需要人工完成的某些步骤的时候,开发人员没有办法使其完全自动化,比如有些流程包含要求亲笔签名或者从一个物理令牌读取信息的步骤。但是开发人员仍然可以将这些有人参与其中的流程实现自动化,只是不能实现全部自动化,这称为半自动化(Assisted Automation)。
(3)可重复:机器人每次运行时都将遵循同样的步骤。给定同样的输入值,流程将输出相同的结果。开发人员当然也可以在流程中设定一系列的规则,为了使机器人能够正常运转,流程的输出结果必须是可预测且可重复的。
(4)手工操作耗费大量时间:让机器人去做每天需耗时5min的工作会比每年只要5min就能完成的工作节省更多的时间。应该选择节约更多时间的流程。
(5)所交互的系统不会意外更新:机器人的一大优点是能够与大部分应用程序交互,它们可以读取屏幕内容、输入文本、单击大多数类型的按钮,不受应用程序新旧版本的影响。不过编写好的机器人只有在它经过训练,且可以理解的屏幕内容没有发生改变的情况下才能正常执行接收到的动作命令,一旦应用程序的开发人员决定在程序表单中引入一个新字段,机器人就要被重新训练去理解这个字段。因此要挑选所交互的应用程序不易发生变更的流程实现自动化。理想情况是机器人开发人员能提前获知应用程序升级的时间(当机器人开发人员或者其所属公司同时也负责应用程序的开发时,这一点比较容易实现),这样就有充足的时间重新开发机器人。其他开发人员的应用程序,比如网络上的,可能会被随意更改,导致进程意外出错。
(6)要求精确,尤其是数据录入:工作人员在录入数据时往往会出错。如果和处理钱款的表格打过交道,就能明白只是数字中小数点的位置错误都会造成重大经济损失。甚至拼错一个地址或者邮编也会导致运输货物丢失,使得客户体验非常糟糕。当流程要求数据录入精确度较高时,机器人不会犯这类错误,所以它值得信赖。
(7)重视及时性:机器人可以全年无休地查收邮件或者读取数据库。这意味着一旦接收到命令,即使是凌晨,机器人也能处理工作,不必等到第二天工作人员来上班后完成这项工作。
除上述几点外,与其他开发项目一样,使用机器人接手人类工作还要综合考虑其他各种因素,比如业务流程的所有者支持变革、接受预算并且愿意筹资,经理是否对此表示支持等。或者从自动化最简单的流程开始着手,即使起初它并不是最节省时间的,但是每天机器人所节省的时间都在不断地积累。只要该流程实现自动化可以节省时间,机器人也一直在运行,积少成多,机器人回馈给企业的劳动价值也会随之累积增长。
如果你正在寻找适合RPA的流程,可以从与业务人员交谈入手,盘点现有全部业务流程,将它们列在设有所有关键考虑因素的权重表中,这时可能会产生一个候选名单,随后跟用户讨论哪些流程的自动化价值较大。
利用电子表格记录每个流程手动操作时的步骤以及完成每步所需时间,例如表1-1所示的每周杂货采购流程。将完成搜索商品、购买商品、追踪包裹以及收包裹这些步骤的预计耗时加起来,每周杂货采购流程每年总计节省时长为2709min。
表1-1 每周杂货采购流程
流程名称:每周杂货采购 | |||||
序号 | 步骤 | 频率 | 任务类型 | 平均处理耗时/min | 每年总节省 时长/min |
1 | 搜索商品 | 每周 | 重复性 | 10 | 520 |
2 | 购买商品 | 每周 | 重复性 | 5 | 260 |
3 | 追踪包裹 | 每天 | 重复性 | 5 | 1825 |
4 | 收包裹 | 每周 | 人工 | 2 | 104 |
每年总节省时长/min | 2709 |
之后将各流程每年所节省的总时长汇成一个总表,如表1-2所示。为了使读者更直观地了解表格样式,在表内增加了一些虚构的流程。
表1-2 各流程总节省时长合并表
流程名称 |
每年总节省时长/ min |
---|---|
每周杂货采购 |
2709 |
支付电费 |
421 |
将信用卡账单跟收据扫描件核对 |
1205 |
新建Outlook联系人名片 |
289 |
通过合并表就能准确判断将哪个流程自动化可以节省更多的时间。在上表样例中,很显然将每周杂货采购流程自动化是最佳选择。
一旦确定好需要RPA的流程,就要创建流程定义文档(Process Definition Document,PDD)。别被文档吓倒,流程定义文档只是简单记录机器人每一步应该做的事情。把机器人看成一个新手,得给它一本工作指导手册,可以使用已有手册或者新编一本手册;即使简单地编写一下,也能借此机会帮你在后续设计流程时理清思路。
流程定义文档通常包含以下几部分。
下面将以每周杂货采购流程为例详解流程定义文档的各个部分。
首先描述流程概况,示例如下。
(1)获取下周所需商品清单。
(2)每周一上午10点登录Amazon购物网站。
(3)逐一搜索清单中的待购商品。
(4)将商品添加到购物车。
(5)发送确认邮件,核对无误后付款。
注意:流程要与一些系统进行交互。在本例中,这些交互系统分别是Amazon购物网站、记录购物清单的Excel程序和发送邮件的Outlook邮箱。
接下来绘制流程图,流程图实际上是一种以流程框图的形式说明流程动作的方法。流程图包含分别以两个椭圆表示的一个起点和一个终点,在这两者之间添加以矩形表示的流程步骤,步骤的描述不必特别详细,后续会详述每个步骤。
示例流程从获取购物清单开始,然后登录购物网站逐一搜索清单所列商品,将其加入购物车,待操作完成后关闭网页。流程图中存在菱形以判断是否还有商品需购买,如果是,将会循环以上步骤购买下一商品。当所有的商品都被加入购物车后,发送邮件通知用户付款,结账后该流程结束。
每周杂货采购流程如图1-1所示。
图1-1 每周杂货采购流程
有很多种方法可以详细记录流程。流程的内容是最难被准确描述的。有一种方法是将流程中的每个步骤截屏,然后写好要单击哪个按钮以及要在文本框里输入什么内容等。请参阅以下示例。
(1)获取购物清单:在开始采购前,查找名为购物清单(Shopping List)的Excel表格。
(2)搜索待购商品:步骤如图1-2所示。
图1-2 搜索待购商品
(3)选择要购买的商品:当出现搜索结果时选择步骤如下。
可以想象,这是一种非常详细的记录全部流程细节的方法,每次单击、输入、对话和弹窗都被详细地记录下来。在这部分能提供的细节越多越好,就像创作电影剧本一样,指导演员完成每一步该做的事情。当其他人获得这些指导信息后也能替你完成工作,和你所做的毫无差别。
有时候要把所有细节都写下来是挺烦琐的。可以考虑将流程录制成视频来获取细节信息:使用屏幕录像工具录制业务能手执行任务时的影像,将其单击屏幕时的语音解说作为记录每次动作背后的思维过程的文档,然后保存文档。
人们总是希望机器人第一次就能把事情做好。但还记得机器人总是按照开发人员的指令行事吗?假如它遇到了未知情况,比如说商品没存货了,会不知该如何应对,然后终止流程。
提前考虑在流程运行时可能会发生的所有意外情况,越早越好。把这些意外情况写下来可以帮助开发人员更好地设计流程,协助训练机器人从容应对这些意外情况。
比如在每周杂货采购流程中可能会发生的意外情况如下。
(1)找不到要买的商品。
(2)要买的商品无存货。
在这些情况下,设置机器人记下哪些商品不能被添加到购物车,并且在流程结束时发送电子邮件通知用户。
本章简单介绍了什么是机器人流程自动化以及如何将RPA应用于日常工作中单调重复性的任务;简单地做了一个关于如何挑选适合自动化的流程的探索性练习(尽管是虚构的);在选好要实现RPA的流程后,介绍了如何创建流程定义文档,用以帮助在开始编程前理清思路。
既然已经讲解完流程定义文档了,现在准备探索Blue Prism,这是本书中将使用到的工具。