(草稿)如何判断一名UiPath开发人员是否合格?

一名合格的UiPath开发人员究竟须要具有什么核心技能?业务梳理?沟通技巧?VB.net吗?VBA吗?Python?仍是SQL?出于多种缘由,关于这一点老是众说纷纭,莫衷一是。尽管这些技术都算沾边,但我始终以为并无触及RPA或者UiPath的核心。
 
那么我就反过来想,究竟缺乏了哪一点,RPA就再也不可以称之为RPA?
 
一上来就直面这个问题,实际上是有些困难的。因而我便进一步问本身,RPA究竟是什么?
 
我相信许多同行跟我同样,常常被问到——所谓的RPA,跟按键精灵到底有啥区别?我努力试图向人们解释RPA比按键精灵更高大上,但每每人们的表情依然困惑。一我的问,可能只是个疑问,一万我的问,那一定有什么道理。为此我左思右想,突然以为以往试图强行将它与按键精灵区分开,彷佛是个错误的方向。这个东西,本质上跟按键精灵并无什么不一样,都是图形界面的自动化技术。至少在单机环境下,按键精灵和各类RPA工具理应可以实现一样的功能和效果。这么一想,就豁然开朗起来。
 
那么既然RPA是图形界面的自动化技术,这一类技术的核心是什么?
 
固然是找到正确的界面元素,并与其进行预期的交互。因此说,搞明白在UiPath中如何准确地定位界面元素,是UiPath开发的首要技术要求。
 
那么在UiPath中定位元素,有哪些关键知识点呢?
我认为有如下几点。
完整选择器
部分选择器
模糊选择器
绝对定位
相对定位
动态定位
 
其中动态定位技术最复杂,涉及一些相关的Activities,包括但不限于:
Anchor Base
Context Aware Anchor
Element Scope
Find Children
Find Relative Element
Get Ancestor
Indicate On Screen
Pick
Try ... Catch ...
Switch
Throw
Rethrow
Get Position
等等。如何灵活运用以上知识进行准确的元素定位,才是UiPath的核心技术。而且,以上说起的知识点也都是UiPath的难点。UiPath玩过好几年但仍是没有彻底搞懂上述知识的开发人员,我见过很多。新手更是常常在定位界面元素的问题上翻车。可见吃透定位技术并不容易。据我所知这方面的系统学习资料并很少,官方教程也只作扫盲然而并不深刻,只能全凭各人的钻研和经验积累,因此能够用来考察UiPath开发人员的功力深浅。
 
我以为将它视为UiPath开发人员技术合格与否的第一道分水岭都不为过。
 
核心定义的后半句话是,进行预期交互的能力。预期交互是指什么呢?其实说白了,就是设计和实现逻辑分支的能力。
 
有的人可能会以为,实现逻辑分支有什么难的?不就写个if/Else,True/False嘛?会这么想虽然算有些理解,但缺乏实践支撑。
 
我知道有很多人在设计流程的时候,是线性的思惟,流程图是一条直线一二三四走下来,开发的时候也经常喜欢用Sequence一条写到底。这样遇到小的逻辑分支还能修修改改,遇到大的逻辑分支就完蛋了,彻底改不动。一个典型的例子就是登陆流程的设计,每每一登陆就了事,历来不想密码错了流程怎么走,密码过时了流程怎么走,登陆成功仍是失败也不确认,遇到任何异常就简单粗暴地重试三次了事,最终致使帐户被锁定,才回头想办法返工重作。登陆的例子还算简单明了,有些场景逻辑分支实现起来至关复杂,须要对业务异常和技术异常全盘考虑尽可能处理,还要兼顾用户需求,就很棘手。特别是异常流程要怎么走,应该作到什么,能作到什么,什么动做作不了,这些事内心有没有数,也是应该考察的重点之一。
 
以100分制来打比方的话,定位技术能够用来判断UiPath开发人员达到60分没有,而按预期进行交互的能力则能够用来评判是否达到80分。
 
另外,因为目前大多数RPA客户还处于小打小闹的尝鲜状态,许多RPA项目只是作Front-Office Robot,即前端的,助手形的机器人。这种类型的机器人设计上有一个特色是自动化流程有可能与用户当前的操做同时进行。所以,如何尽可能避免影响用户操做,也是一个虽然不大但蛮重要的考察点。
 
与传统IT开发技术不一样,准确和稳定是RPA的首要要求,性能虽然也蛮重要但其实不多优先考虑。
相关文章
相关标签/搜索