[转]Uipath、BluePrism、AA产品对比之设计器篇

本文转自:https://www.jianshu.com/p/53d0d33a1a35

版本说明:

Uipath V2018.3.2,BluePrism V6.3,Automation Anywhere 11.2

Uipath (UP)

新建

UP的产品思路是从易于开发者安装和使用开始,本质是以自建工程起步的单机版开发工具,尽管目前版本的名字已经从NewProject改名成NewProcess ,但本质上每个人新建的还是一个工程文件。

熟悉Visio Studio 等任何一款软件开发工具的朋友就会对工程的概念很熟悉 , 如果有人在CSDN上分享成果,大家更想要的肯定是完整的开发工程包。

特点:单机本地工程文件,流程项目协同/版本控制,开发者权限/审计,代码安全等需要额外的管理方法和工具才可以实现 ; 但最大优势是,安装部署简便,再加上Uipath的大市场战略,所以国内知道UP,玩UP的人数量上是最多的。

流程设计

UP的设计器画面总给人一种无法看清流程全貌的感觉。

由于产品的历史原因和用户习惯使然,UP设计器还是主要在Main窗体里面套各种Sequence (序列,方框框)为主。

假设有如下需求已经通过Visio画出流程图,在UP中的实现参见下图:

如果不展开结构,似乎我们只看到了 Do While 和 If判断,那么我们就展开结构。

展开后的流程看起来累不累?

熟悉UP的玩家说,“还好啊” 。但问题是,这个需求如此简单,流程设计逻辑就看起来那么烦人了,那复杂的长流程+很多逻辑分支的情况呢 ?

为了解决Sequence的很多缺点,UP推出了 FlowChart Activity。

UP推出FlowChart Activity 就是想以画布设计的方式部分解决流程设计的缺点

但从FlowChart只是UP的一个Activity组件就大概能明白目前UP对FlowChart的定位。我不确定未来UP是否会强化FlowChart组件,让其成为内置默认设计框架,而Sequence 变成一个Activity 。 如果到了那一天, UP或许更加强大了。 (还有一个很重要原因想必是很多UP玩家习惯了 Sequence,而不愿意去适应FlowChart)

元素抓取

一款RPA工具是否强大,跟能抓到什么级别的元素还是蛮正相关的。不得不承认UP的元素抓取工具还是蛮强的。 点击 Indicate Element后 ,UP首先是以智能识别模式根据鼠标移动的位置自行判断元素类型和适配的方式。

如果是抓网页,默认会选择HTML方式去分析。有一些特殊情况可以考虑 UIA方式,实在无法识别就用区域模式去靠图片识别。

测试题是:  mail.qq.com    点击- 账号密码登陆按钮

UP可以抓到,Selector结构如下

这个测试其实不难,只是抛砖引玉 ,不妨在考虑下以下场景:

SAP/Oralce EBS /用友ERP 元素抓取能力如何

特殊网页数据Table抓取能力如何,控件怎么处理

特殊的Java开发程序抓取能力如何

甚至Mainframe程序是否可以读到模拟器中信息

某一项流程能不能被完美自动化,往往是由能否顺利抓取到元素,读取元素信息所决定的。

可复用性

流程设计的基础模块功能可复用性的高低,是否可以方便其他人拿来就用,直接决定了项目开发效率和周期。

UP通过Add Folder 可以将一些通用性Library xaml文件导入到系统中(严格的讲只是被系统认到,并没有导入到系统的概念)。识别后也可以通过类似操作Activity的方式去调用这些共用。

但这些单独的文件,在项目协同,传参等方面还是有一些问题的。

BluePrism(BP)

新建

区别于UP,BP的设计思路一开始就是定位企业级甚至金融级的RPA平台。

所以在已经部署有RPA的环境中,你想新建一个自动化Robot ,对不起你得先有账号。每一个开发都是经过认证并且行为可追溯的。

BP通过新建Process ,来定义流程。 Process流程可以有很多Page页,便于梳理流程结构 ;Process可以调用Object实现基础功能模块 ;Process也可以调用Process。

流程设计

BP的设计画布更让有人设计的感觉。

BP的流程设计主要有两个维度:

第一个维度是Object ,

Object用来搞定跟各种第三方系统打交道的模型。Object 中有一个重要模块叫 Applicaiton Modeller ,通过这个适配器BP会协助开发者帮助建立BP与应用系统联系。

第二个维度是Process ,

只有Process才是可以被Publish发布到Control Room,以“正规”的方式去执行流程任务。 而Object仅仅可以在设计器Studio中运行 。

回到之前那个样例,如果在BP中实现设计,参见如下图

不得不佩服BP把设计器Studio做的非常好 。

很多场合如果是用BP流程设计开发,可以直接贴到项目的各种设计文档中。

元素抓取

BP的元素抓取能力非常强,而且支持很多模式,混合使用各种不同模式可以有更佳的效果。

HTML Mode

Win32 Mode

UI Automation Mode

Accessibility Mode

Region Mode

BP可以轻松抓取账号密码登陆这个Tab Bar ,而且能对元素进行深入分析,勾选匹配项。

BP应该是目前唯一一家可以对市场上主流的Mainframe模拟器进行解析,读模拟器中数据,直接写数据到模拟器中。

可复用性

BP VBO(Visiual Business Object 可视化业务对象)可以极大的提高流程开发的效率。 在面对比较复杂的流程的时候,可以分别由不同的开发人员设计不同的VBO对接不同系统 ,如果是在同一个开发平台 ,其他人可以直接在系统中调用别人已经开发好的VBO对象。如果不在同一个项目,也可以通过将VBO导出成XML文件的方式与别人共享。

BP项目在设计阶段,如何合理的设计不同的Object VBO对象,对项目进程会有较大的影响。

Automation Anywhere(AA)

新建

与BP类似,AA也是企业级部署的RPA平台。

没有单机运行的设计器,要部署了完整的整套系统才可以登陆AA平台。AA在对外宣传的时候号称有非常强的高可用性系统架构,由于是设计器专题这些也就不展开了。

AA新建Workbench,就是基于Task的维度。

流程设计

AA流程的核心是TASK,通过设计编写TASK来完成特定业务流程,或者再通过Workflow去调用TASK。当然TASK本身也可以调用TASK。

TASK里面利用很多很多Commands或者MetaBots,来组成具体的任务流。

AA的Task当中的流程设计界面长这个样子:

说实话,这样的流程设计界面太技术了,对普通人太不友好了。简直比网页源代码更复杂,不是吗?如果别人想读懂这个Task的内容,简直比直接读脚本代码更复杂。     #学AA好比新学一门语言

AA的WorkFlow 当中有部分可视化设计的功能,但是,实在是太局限了。 一共只有四个组件,一个Start ,一个End,一个IF,一个执行Task 。 所以Task才是AA的核心。

元素抓取

元素抓取AA似乎也没有另外两家的强。

AA有三种拾取模式,Object对象模式, Coordinates坐标模式, Image 图片模式。

有RPA实践经验的人一般会优先选择对象模式, 坐标模式很容易因为客户端分辨率(窗口是否最大化)等问题而导致失误。 但AA的对象模式较弱,无法识别“账号密码登陆”,也不支持切换诸如HTML/UIA/CS等其它对象适配方式。

并无法识别mail.qq.com的测试,AA只能识别到整个区域,并无法识别“账号密码登陆”按钮。

另外客观的吐槽几点(如有任何不对的地方,欢迎大哥指正):

AA内置的Mouse Command 的四个方法全部是基于坐标去做点击的

(无法适应窗体移动,或者最大化,分辨率一改就不灵)

AA很多复杂操作必须用到一个叫  Object Clone 组件。Object Clone组件很强,集合了很多功能,但是无论名称,还是定位总感觉怪怪的。 就好比之前做了很多组件发现不好用,后来一口气做了一个很强的Object Clone组件,里面有包含了太多的功能,名字也取的随意。

三种选择模式,各类操作动作(鼠标点击啥的,很多)

AA抓元素这个动作不舒服,需要按着鼠标移动到你想要检测的元素然后松开鼠标。其实不光是因为不顺手 ,还因为,比如如果你想切换不同的侦察元素模式,BP&UP 均可以通过按F? 来切换,但AA不行啊,因为一直保持鼠标左键按着。

可复用性

AA关于复用性的设计全部在MetaBot当中体现。

MetaBot 类似于 BP的VBO,但还是有一些区别。其实严格的讲,MetaBot更像带Input Output的 BP的可重用Process , 因为MetaBot的感觉更像一个可复用子流程的感觉,而BP的VBO有很多基础共用组件的属性。

AA的Commands 通俗的讲就是组件,并不支持自定义导入或者导出 ,所有新能力的获取就得等厂家的新版本,或者索性通过外部的脚本。 而UP&BP 都能通过一些方法实现自定义组件并且复用的能力。

这也是为什么 UP 可以做Uipath GO平台,BP可以做 Blue Prism DX平台的原因,而AA却不可以的原因。

总结:

由于时间和精力关系,本文只是挑了4个与设计器关系较高的角度分析了这三款RPA软件的差异。但还有很多其它指标都会影响RPA工具,比如软件系统架构,管理后台,安全性,工作队列,部门流程权限等等。下回或许可以从 RPA后台&安全的切入点再进行深入分析 。

讲了这么多外国的软件,春节前打算做一期国产RPA工具的分析,希望可以获得各位国产厂商老师的支持 。

作者:RPA虚拟员工转型之路
链接:https://www.jianshu.com/p/53d0d33a1a35
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

原文地址:https://www.cnblogs.com/freeliver54/p/10660761.html

时间: 2024-10-17 23:04:04

[转]Uipath、BluePrism、AA产品对比之设计器篇的相关文章

开源工作流引擎web设计器Activiti Modeler 5.17.0 与IE11的兼容性探究

一.源码下载 Activiti官网:http://activiti.org/ github:https://github.com/Activiti/Activiti 官网上下载的是lib库文件.文档和网站样例,推荐使用maven管理项目,可以不用下载库文件,直接下载源码,github上源码已经是5.18.0,但是官方还没有发布,从以下网址找到5.17.0的source code下载链接下载即可:https://github.com/Activiti/Activiti/releases,大小为20

基于Extjs的web表单设计器 第七节——取数公式设计之取数公式的使用

基于Extjs的web表单设计器 基于Extjs的web表单设计器 第一节 基于Extjs的web表单设计器 第二节——表单控件设计 基于Extjs的web表单设计器 第三节——控件拖放 基于Extjs的web表单设计器 第四节——控件拖放 基于Extjs的web表单设计器 第五节——数据库设计 基于Extjs的web表单设计器 第六节——界面框架设计 基于Extjs的web表单设计器 第七节——取数公式设计之取数公式定义 基于Extjs的web表单设计器 第七节——取数公式设计之取数公式的使用

基于Extjs的web表单设计器 第三节——控件拖放

看过之前设计器截图的朋友应该有印象,可能会发觉我们的设计器UI设计布局其实类似Visual studio 的设计界面,采用的是左.中.右三个区域布局.左侧为控件区域.中间为表单的画布设区域.右侧为属性区域.这样的UI设计肯定就得支持控件的拖拽设计,用户只要拖放一个控件到我们的画布上,那么画布就应该立即能够看到我们拖放的控件在画布中的位置.大小.以及一些控件自带的默认信息.不用说这样的设计对于用户来说不论在操作体验上还是设计的感官上都更加直接和方便,因为我在设计阶段就可以知道我设计后的表单在系统运

流程设计器jQuery + svg/vml(Demo7 - 设计器与引擎及表单一起应用例子)

去年就完成了流程设计器及流程引擎的开发,本想着把流程设计器好好整理一下,形成一个一步一步的开发案例,结果才整理了一点点,发现写文章比写代码还累,加上有事情要忙,结果就.. 明天要去外包驻场了,现把流程设计器最终实现的效果及应用案例放到网上(Demo),欢迎大家围观,欢迎园友们提出宝贵意见. 1.流程设计器整体外观 2.流程实例名称设置 3.活动审批人设置 4.条件公式设置 以上是流程设计器的实现效果. 接下来想向园友们推荐一下我这几年来用业余时间做的一个云考勤系统(大部分时间花在做流程设计器.流

基于SVG的票面设计器开发总结

今天周六,原则上要休息,但想到下周还有一堆任务,还是先做一部分工作吧,就把之前做的票面设计器改了改,增加了上传图片和更换背景底图的功能.现在打算整理下这个设计器,也算对齐一个总结.不过这属于我们部门的产品,代码我使用截图的方式多一些.首先来看一下我做的这个票面设计器的最终效果图: 从截图中可以看到在页面里,专业点叫我在画布里增加了很多的元素,这些元素都与剧院票务相关包括项目.场次.地点,二维码等信息.上面的word截图是我今天做的功能,背景图我也换成了自定义的图片.光看这个页面其实不难做,因为页

XForms设计器-----XPath编辑器

GForms平台提供XPath编辑器,辅助开发人员开发xpath表达式. 分为三个区域:选择区域.编辑器区域及问题显示区域. 其中,选择区域: 模型实例树:包含所有的模型实例数据节点,包括属性及元素,如果需要选择某个节点请双击或拖拽到编辑器区域即可. 函数树:包含所有的xforms1.0及xforms1.1所支持的所有xpath,每个函数具体使用说明请参考相关xpath手册. 操作符树:xpath所支持的操作. 配置提示: 如果需要选择模型实例自身,则请在模型实例树上选择模型实例树节点或模型实例

XForms设计器-----模型实例

在模型实例视图中进行模型管理. 模型实例的创建在"模型视图"的模型树中进行,具体参考"模型管理"中的"创建模型实例". 可以在模型实例中手动创建实例数据节点.元素.节点文本等信息. 如果配置模型实例的介质类型为json,则模型实例视图如下(增加了对json的操作): 模型实例配置 属性名称 描述 src 定义模型实例使用一个后台静态的XML文件数据作为模型实例的数据源 标识 模型实例ID,是运行时引用模型实例的唯一标识 介质类型 模型实例的数据源

XForms设计器-----web service

GForms对web服务提供了支持,可以非常快捷的把一个web服务导入到GForms. 新建web服务 在"控件面板"的最下方找到"web服务",拖拽该图标到右边的设计器,将启动新建web服务向导过程: 第一步:指定web服务路径 支持使用本地wsdl文件或远处服务器的WSDL文件. 第二步:选择web服务服务.端口.操作 一次只能添加一个web服务操作到GForms,如果要添加多个操作需要执行多次新建web服务向导. 第三步:配置是否创建web service U

XForms设计器-----概述

1. 概述 GForms Designer 是一款所见即所得设计工具,使用该工具您能够从选项选用板中拖放控件来构建展现页面. GForms设计器支持中文及英文两种语言,具体所使用的语言由用户的电脑配置环境决定. 2. GForms透视图 为了更好的使用GForms设计器,请在打开Eclipse开发平台后,在右上角切换到GForms透视图: 请在透视图列表中选择"GForms",将工作台切换到如下布局: 3. 创建 3.1. 创建GForms工程 在GForms视图下,可以直接通过菜单: