【文章導(dǎo)讀】:RPA是一種軟件技術(shù),也就是說(shuō)RPA概念中所謂的“機(jī)器人”并不是指有物理形態(tài)、物理實(shí)體的機(jī)器人,不是工廠中的機(jī)器手臂、自動(dòng)設(shè)備、家里的掃地機(jī)器人以及銀行大堂的迎賓機(jī)器人。說(shuō)到底,它就是計(jì)算機(jī)中的程序代碼,所以被稱作軟件機(jī)器人( Software Robot),也可以把運(yùn)行在RPA中的機(jī)器人稱作BotRPA技術(shù)的核心能力是模擬和替代人工勞動(dòng)。

 

 

什么是RPA?

 

 

RPA在多大程度上可以取代人的工作

RPA (Robotic process automation,簡(jiǎn)稱RPA)機(jī)器人流程自動(dòng)化是以軟件機(jī)器人及人工智能(AI)為基礎(chǔ)的業(yè)務(wù)過(guò)程自動(dòng)化科技。

 

要問(wèn)RPA是什么,就要先回答3個(gè)問(wèn)題。

 

 

問(wèn)題1:RPA是什么樣的機(jī)器人技術(shù)?

 

 

我們從五個(gè)方面來(lái)回答這個(gè)問(wèn)題。

 

 

(1)RPA是一種軟件技術(shù),也就是說(shuō)RPA概念中所謂的“機(jī)器人”并不是指有物理形態(tài)、物理實(shí)體的機(jī)器人,不是工廠中的機(jī)器手臂、自動(dòng)設(shè)備、家里的掃地機(jī)器人以及銀行大堂的迎賓機(jī)器人。說(shuō)到底,它就是計(jì)算機(jī)中的程序代碼,所以被稱作軟件機(jī)器人( Software Robot),也可以把運(yùn)行在RPA中的機(jī)器人稱作BotRPA技術(shù)的核心能力是模擬和替代人工勞動(dòng)。工廠中那些物理形態(tài)的機(jī)器人替代的是工人的體力勞動(dòng),掃地機(jī)器人替代的是家庭主婦的清潔勞動(dòng),而RPA這種存活在計(jì)算機(jī)里的軟件替代的是辦公室里員工的部分腦力勞動(dòng),以及諸如敲擊鍵盤、點(diǎn)擊鼠標(biāo)、切換頁(yè)面等系統(tǒng)操作動(dòng)作。隨著全社會(huì)進(jìn)入信息時(shí)代,幾乎所有企業(yè)中

 

 

的員工以及人們的日常生活都需要依賴計(jì)機(jī),一些大型企業(yè)更是同時(shí)擁有多套應(yīng)用系統(tǒng),員工在工作中經(jīng)常需要登錄不同的系統(tǒng)進(jìn)行業(yè)務(wù)處理,而系統(tǒng)處理過(guò)程中必然存在大量的數(shù)據(jù)錄入、數(shù)據(jù)核對(duì)以及數(shù)據(jù)報(bào)告等工作,RPA通過(guò)模擬人工操作的方式很好地解決了這類問(wèn)題。

 

 

(2)RPA可無(wú)縫地實(shí)現(xiàn)跨系統(tǒng)連接。員工通常在工作中需要使用多個(gè)業(yè)務(wù)系統(tǒng)、桌面軟件,以及不定時(shí)訪問(wèn)內(nèi)外部網(wǎng)站來(lái)獲取信息,所以在實(shí)際業(yè)務(wù)辦理過(guò)程中,他們需要在不同系統(tǒng)間切換,將數(shù)據(jù)傳來(lái)傳去,不停地復(fù)制粘貼,從而花費(fèi)了大量時(shí)間。RPA目前能夠調(diào)用幾乎所有桌面系統(tǒng)中的應(yīng)用程序,如常用的辦公軟件 Excel, PPT、Word、郵件和即時(shí)通信工具等,以及其他帶有客戶端的用戶界面和各類瀏覽器支持的Web頁(yè)面,這樣就可以模擬員工的以上行為,無(wú)縫地集成上述業(yè)務(wù)操作,變相起到了不同應(yīng)用系統(tǒng)之間集成的作用。而這樣的集成方式并不需要修改后端程序的任何行代碼或數(shù)據(jù)庫(kù)字段,也不需要打開(kāi)后端程序的接口或服務(wù),因?yàn)镽PA只是在模擬人的行為,訪問(wèn)操作的是那些應(yīng)用系統(tǒng)的頁(yè)面。這種集成方式也被稱作“At-the- -glass Integration,即“表層集成”。正因?yàn)镽PA不需要工作人員了解復(fù)雜的后端程序邏輯、數(shù)據(jù)庫(kù)結(jié)構(gòu)、軟件接口和服務(wù)調(diào)用方式,而是主要利用圖形化可拖拽的工具進(jìn)行編輯,采用腳本語(yǔ)言編寫程序并且不需要編譯和部署,甚至可以用錄制的方式自動(dòng)生成,才使技術(shù)人員更容易上手,甚至于一些業(yè)務(wù)人員在經(jīng)過(guò)培訓(xùn)后也可以直接使用。

 

 

(3)RPA是多種技術(shù)的組合應(yīng)用。RPA其實(shí)是一類自動(dòng)化技術(shù)的統(tǒng)稱,通常包括鍵盤和鼠標(biāo)的模擬操作技術(shù)、屏幕信息獲取和定位的抓屏技術(shù)、流程控制處理的工作流引擎技術(shù),以及自動(dòng)化任務(wù)調(diào)動(dòng)控制和管理技術(shù)等。這些技術(shù)各自可能已經(jīng)有了很長(zhǎng)的發(fā)展歷史,但是能夠?qū)⑦@些技術(shù)綜合起來(lái)一起使用,而且能夠穩(wěn)定安全地使用,讓用戶用起來(lái)更容易,即真正商用,只有短短幾年的時(shí)間而已。

 

 

(4)利用計(jì)算機(jī)來(lái)實(shí)現(xiàn)自動(dòng)化計(jì)算、數(shù)據(jù)存儲(chǔ)和業(yè)務(wù)操作,這似乎是計(jì)算機(jī)天生的屬性。RPA和傳統(tǒng)的自動(dòng)化技術(shù)有什么不同嗎?傳統(tǒng)的利用計(jì)算機(jī)實(shí)現(xiàn)自動(dòng)化的模式大致可以分為四種。

 

第一種模式是傳統(tǒng)C/S或B/S的應(yīng)用系統(tǒng),需要人類通過(guò)操作應(yīng)用系統(tǒng)的用戶界面來(lái)驅(qū)動(dòng)系統(tǒng),實(shí)現(xiàn)所謂的數(shù)據(jù)計(jì)算和存儲(chǔ)的自動(dòng)化。雖然我們把辦公系統(tǒng)叫作辦公自動(dòng)化( Office Automation),但距離今天對(duì)自動(dòng)化的要求還差很遠(yuǎn)。

 

第二種模式是利用工作流( Workflow)引擎支持業(yè)務(wù)流程管理( Business Process Management,BPM)的自動(dòng)化,即利用系統(tǒng)自動(dòng)串接業(yè)務(wù)流程中不同崗位角色所做的任務(wù),但在落實(shí)到每個(gè)具體的業(yè)務(wù)執(zhí)行過(guò)程中,還是需要人工來(lái)操作用戶界面,這樣工作流引擎才能將工作任務(wù)自動(dòng)流轉(zhuǎn)到下一個(gè)節(jié)點(diǎn)。這種模式與RPA的區(qū)別是,工作流引擎實(shí)現(xiàn)的是不同角色之間業(yè)務(wù)流程的自動(dòng)化,而RPA實(shí)現(xiàn)的是某個(gè)特定角色操作步驟的自動(dòng)化。但是,RPA結(jié)合工作流引擎可以解決全流程的自動(dòng)化,所以在部分高級(jí)的RPA軟件中已經(jīng)融入了工作流引擎技術(shù)。

 

第三種模式是利用服務(wù)器端的程序或腳本來(lái)實(shí)現(xiàn)日間或夜間批處理,也包括數(shù)據(jù)庫(kù)中存儲(chǔ)過(guò)程的執(zhí)行,這種批處理執(zhí)行方式是通過(guò)程序邏輯直接訪問(wèn)數(shù)據(jù)庫(kù),無(wú)須通過(guò)用戶界面處理信息。這種模式與RPA的區(qū)別是,批處理能夠大批量、高效地執(zhí)行數(shù)據(jù)庫(kù)處理但批處理程序必須由專業(yè)的技術(shù)人員完成,而且一旦完成,由于批處理的邏輯復(fù)雜且處理的數(shù)據(jù)量龐大,難以再次修改。批處理過(guò)程和業(yè)務(wù)邏輯對(duì)于業(yè)務(wù)人員完全是不可見(jiàn)的,業(yè)務(wù)人員只能通過(guò)第二天所產(chǎn)生的報(bào)表檢查業(yè)務(wù)結(jié)果是否正確。而RPA的腳本編制簡(jiǎn)單容易上手,甚至業(yè)務(wù)人員也可以讀懂,達(dá)到了所見(jiàn)即所得的效果。RPA模擬了用戶的手工操作過(guò)程,業(yè)務(wù)人員看起來(lái)也更加熟悉和親切;RPA仍是單筆業(yè)務(wù)處理方式,更符合用戶日常業(yè)務(wù)的處理行為,當(dāng)出現(xiàn)業(yè)務(wù)問(wèn)題或程序異常時(shí)也可以及時(shí)進(jìn)行修正。

 

第四種模式有點(diǎn)像RPA的雛形階段,即利用系統(tǒng)或軟件自帶的腳本語(yǔ)言,編制一些簡(jiǎn)單的可以自動(dòng)執(zhí)行的腳本來(lái)幫助用戶實(shí)現(xiàn)系統(tǒng)處理自動(dòng)化,如 Excel中的VBA、UNIx中的 Shell等。這種模式與RPA的區(qū)別是,普通的腳本必須依賴于某一個(gè)特定的軟件,比如A只能在 Microsoft Office中使用,而不能自動(dòng)化地操作 Oracle EBS的用戶界面。RPA在技術(shù)原理上調(diào)用的是操作系統(tǒng)底層技術(shù),它能夠識(shí)別和處理 Windows系統(tǒng)中幾乎全部的應(yīng)用程序、客戶端、瀏覽器,甚至是遠(yuǎn)程虛擬桌面,所以比起傳統(tǒng)的執(zhí)行腳本方式,RPA可以起到強(qiáng)大的用戶操作集成作用。

 

 

(5)我們還要解釋一下RPA與自動(dòng)化測(cè)試( Test AutomationTA)的區(qū)別,很多測(cè)試人員也許使用過(guò)如QTP和 Selenium這樣的自動(dòng)化測(cè)試工具。二者在很多方面看起來(lái)十分相似,如都是為了避免重復(fù)的人工操作,避免人工處理過(guò)程中引入的錯(cuò)誤和風(fēng)險(xiǎn),基于結(jié)構(gòu)化數(shù)據(jù)和固定的業(yè)務(wù)規(guī)則等一個(gè)基本的前提是,RPA可以代替TA工具,但在測(cè)試設(shè)計(jì)上需要做些特別的改進(jìn),也就是說(shuō)RPA基本兼容了TA的功能。TA與RPA比起來(lái)有一定的局限性,如TA的目的是測(cè)試,輸入的是測(cè)試案例,加載于測(cè)試環(huán)境;而RPA既可以用于測(cè)試,也可以用于生產(chǎn)輸入既可以是測(cè)試案例,也可以是實(shí)際生產(chǎn)的案例,并且RPA可以加載于開(kāi)發(fā)、測(cè)試和運(yùn)行環(huán)境中。由于RPA可使用真正的生產(chǎn)數(shù)據(jù),所以需要RPA能夠兼容各種異常,跟蹤和記錄所有的用戶操作行為,對(duì)機(jī)器人的執(zhí)行過(guò)程進(jìn)行嚴(yán)格監(jiān)控,這些能力都是TA軟件所不具備的。通常TA具有兩個(gè)目的,一個(gè)是回歸測(cè)試,另一個(gè)是壓力測(cè)試。為了達(dá)成這兩個(gè)目的,自動(dòng)化測(cè)試只需要關(guān)注于某個(gè)測(cè)試案例或測(cè)試場(chǎng)景的成敗,而不需要關(guān)注整個(gè)業(yè)務(wù)流程的處理過(guò)程和業(yè)務(wù)邏輯從而可以把這些內(nèi)容都交給后端程序。RPA既可以實(shí)現(xiàn)單任務(wù)的自動(dòng)化,也可以實(shí)現(xiàn)多任務(wù)的長(zhǎng)流程自動(dòng)化。另外,RPA可以把真正的業(yè)務(wù)處理邏輯寫在腳本或代碼中,而TA的業(yè)務(wù)處理邏輯只能依賴于后臺(tái)應(yīng)用程序,因?yàn)門A的目的只是為了檢驗(yàn)應(yīng)用程序的正確性。總之,RPA是實(shí)現(xiàn)自動(dòng)化的技術(shù)合集,通過(guò)模擬人類使用計(jì)算機(jī)的行為,實(shí)現(xiàn)了跨應(yīng)用系統(tǒng)的操作集成。

 

 

問(wèn)題2:RPA可以實(shí)現(xiàn)哪些流程的自動(dòng)化?

 

 

RPA是運(yùn)行在計(jì)算機(jī)中的機(jī)器人程序,能實(shí)現(xiàn)的自動(dòng)化流程必然是那些涉及電腦處理的,而現(xiàn)實(shí)物理世界中人們的行為就無(wú)法利用RPA來(lái)模擬和替代,如領(lǐng)導(dǎo)在紙質(zhì)文件上的手寫簽名、取回已打印的文件、將寄送的包裹交到快遞人員的手中等。不過(guò)RPA可以通過(guò)實(shí)現(xiàn)自動(dòng)化的電子簽名和校驗(yàn)來(lái)替代手寫簽名。如果企業(yè)還未實(shí)現(xiàn)無(wú)紙化辦公,至少RPA可以做到將要打印的文件自動(dòng)發(fā)送給打印機(jī),并自動(dòng)判斷打印成功與否。雖然RPA不能親自遞交包裹,但是可以在快遞公司的系統(tǒng)中自動(dòng)下單,并自動(dòng)化地檢查快遞物流的實(shí)時(shí)狀態(tài)。所以,如果在一個(gè)業(yè)務(wù)流程中部分步驟是人工的電腦操作,一部分是人在現(xiàn)實(shí)世界中的行為,那么可以肯定地說(shuō),RPA只能自動(dòng)化地替代人工的電腦操作,而對(duì)于人類的物理行為無(wú)能為力,不過(guò)這時(shí)那些擁有物理手臂和可以自動(dòng)行走的機(jī)器人就可以派上用場(chǎng)了既然RPA是利用程序模擬人的操作行為,那么這些流程中的操作行為就必須要有明確的業(yè)務(wù)規(guī)則、明確的行為邏輯,才能轉(zhuǎn)換成可執(zhí)行的軟件程序。目前RPA主要應(yīng)用于商業(yè)領(lǐng)域,為企業(yè)用戶服務(wù)。商業(yè)領(lǐng)域其實(shí)不像人們的日常生活,日常生活中大部分行為是受情感所支配的,如人們?cè)?ldquo;雙十一”填滿購(gòu)物車,在各個(gè)網(wǎng)站上隨意地瀏覽新聞。而在商業(yè)世界中,90%的業(yè)務(wù)行為都是有邏輯規(guī)則可循的,尤其一線業(yè)務(wù)人員的操作過(guò)程,更是需要嚴(yán)格遵守公司的操作規(guī)程。

 

 

RPA應(yīng)用領(lǐng)域主要包括財(cái)務(wù)會(huì)計(jì)、人力資源、采購(gòu)、供應(yīng)鏈管理等,如費(fèi)用報(bào)銷、單據(jù)審核、人員入職、開(kāi)具證明、訂單核對(duì)等流程。另外,并非所有能夠?qū)崿F(xiàn)自動(dòng)化的流程,都要真正地實(shí)現(xiàn)自動(dòng)化,如上面幾個(gè)定義中所提到的,RPA的目的是要處理那些重復(fù)執(zhí)行且工作量大的流程環(huán)節(jié)。其實(shí),這里討論的是自動(dòng)化的必要性而不是RPA能否實(shí)現(xiàn)自動(dòng)化的問(wèn)題。

 

 

首先,需要考慮投入產(chǎn)出比的問(wèn)題。因?yàn)槭褂肦PA最原始的動(dòng)力是替代人工勞動(dòng),降低人力成本。這部分工作通過(guò)人工操作是需要成本的,但是RPA的軟件、實(shí)施和維護(hù)也需要成本,需要對(duì)比一下哪種方式成本更低。其次,還要考慮業(yè)務(wù)靈活性的問(wèn)題。RPA一旦將業(yè)務(wù)流程和處理規(guī)則固化下來(lái),也就意味著業(yè)務(wù)人員在業(yè)務(wù)辦理中的自主控制力會(huì)降低,隨之會(huì)帶來(lái)業(yè)務(wù)靈活性和業(yè)務(wù)人員及時(shí)應(yīng)變能力的問(wèn)題。當(dāng)然,我們還需要從效率、風(fēng)險(xiǎn)、安全、IT建設(shè)周期等其他維度來(lái)判斷一個(gè)流程是否需要自動(dòng)化,詳細(xì)內(nèi)容參見(jiàn)第4章。通常得出的結(jié)論是,那些重復(fù)執(zhí)行且勞動(dòng)量大的工作一定是人力相對(duì)密集的流程,越多的人執(zhí)行這樣的流程,規(guī)則越不會(huì)輕易調(diào)整,將這些流程進(jìn)行自動(dòng)化所帶來(lái)的業(yè)務(wù)收益通常也會(huì)更大。這也就是為什么RPA首先應(yīng)用于外包服務(wù)和企業(yè)內(nèi)部共享中心的原因??傊?RPA適用于那些具有明確業(yè)務(wù)規(guī)則、重復(fù)執(zhí)行且業(yè)務(wù)量較大的、相對(duì)穩(wěn)定的業(yè)務(wù)流程。

 

 

問(wèn)題3:RPA可實(shí)現(xiàn)什么程度的流程自動(dòng)化?

 

 

如上所述,RPA模擬用戶在計(jì)算機(jī)上的操作行為,那么流程中只要涉及用戶界面的操作過(guò)程就都有可能被自動(dòng)化。首先說(shuō)明,我們所談的流程自動(dòng)化,并不是指流程100%的步驟都實(shí)現(xiàn)了自動(dòng)化,也就是說(shuō)流程中的部分環(huán)節(jié)仍然難以被自動(dòng)化技術(shù)所實(shí)現(xiàn)或者技術(shù)實(shí)現(xiàn)成本過(guò)高,仍需要通過(guò)手工方式完成。但是隨著技術(shù)的進(jìn)步、推廣和普及,以及企業(yè)管理成熟度水平的提升,流程自動(dòng)化的比例自然會(huì)逐步提高。一些流程自動(dòng)化比例不是很高的企業(yè)也決定開(kāi)始嘗試使用RPA技術(shù),因?yàn)橹挥型ㄟ^(guò)實(shí)際的應(yīng)用才能充分了解實(shí)施過(guò)程中的風(fēng)險(xiǎn)和問(wèn)題,培養(yǎng)自身的能力,構(gòu)建相匹配的團(tuán)隊(duì),為將來(lái)更大規(guī)模的RPA應(yīng)用做準(zhǔn)備??梢灶A(yù)想到,開(kāi)始由于流程自動(dòng)化比例較低,更多是由RPA來(lái)配合人類完成工作,而發(fā)展到未來(lái),隨著流程自動(dòng)化比例的升高,可能就會(huì)顛倒過(guò)來(lái),更多是由人類來(lái)配合RPA完成工作。由于流程不是100%的自動(dòng)化,人類和RPA之間就會(huì)產(chǎn)生協(xié)作,也就必然產(chǎn)生一種全新的與RPA機(jī)器人的協(xié)作方式,事實(shí)上產(chǎn)生了人、RPA機(jī)器人、應(yīng)用軟件三者之間的協(xié)作其中,我們最熟悉的就是人使用應(yīng)用軟件的方式,人通過(guò)用戶界面來(lái)操作應(yīng)用軟件( Input),應(yīng)用軟件處理后( Processing),再將結(jié)果反饋給人( Output),也就是常說(shuō)的IPO,這也是所有軟件工程領(lǐng)域,包括需求人員、需求分析人員、設(shè)計(jì)人員、開(kāi)發(fā)人員和測(cè)試人員等共同遵循的話語(yǔ)體系。由于RPA是模仿人類的操作,Bot使用應(yīng)用軟件的方式和人類似,不同的是由于Bot也是一種軟件,它可以選擇不去操作UI,而是通過(guò) Service或AP來(lái)直接調(diào)用應(yīng)用軟件。那么人如何觸發(fā)這些軟件機(jī)器人呢?主要有以下三種方式。

 

第一種是手工觸發(fā),即通過(guò)手工方式隨時(shí)隨地地啟動(dòng)一個(gè)Bot讓它開(kāi)始運(yùn)行,既可以啟動(dòng)本地電腦上的Bot,也可以啟動(dòng)遠(yuǎn)程的Bot。

 

第二種是通過(guò)人們事先編排好的機(jī)器人工作日程表,讓Bot按照這個(gè)日程表來(lái)工作,可以是在某日某時(shí)Bot開(kāi)始運(yùn)行,也可以設(shè)置為上一個(gè)Bot運(yùn)行完成后,下一個(gè)Bot再開(kāi)始運(yùn)行。

 

第三種是Bot按照事先設(shè)定好的規(guī)則來(lái)觸發(fā)機(jī)器人的執(zhí)行,如收到一封郵件,訂單量超過(guò)全年30%等,這些都可以作為觸發(fā)機(jī)器人啟動(dòng)的外部事件。當(dāng)RPA系統(tǒng)監(jiān)聽(tīng)到這些外部事件后,會(huì)自動(dòng)調(diào)用機(jī)器人執(zhí)行自動(dòng)化任務(wù)。然后,在機(jī)器人完成任務(wù)后,將結(jié)果反饋給人類,或者并不需要完全執(zhí)行,而是執(zhí)行了一部分,再將其余的工作轉(zhuǎn)交給人繼續(xù)完成。

 

不單是人可以調(diào)用Bot,應(yīng)用軟件也可以反過(guò)來(lái)采用 Service或接口的方式來(lái)調(diào)用t舉一個(gè)RPA已經(jīng)可以實(shí)現(xiàn)的有趣例子,企業(yè)中的員工可以通過(guò)手機(jī)App啟動(dòng)辦公室里的某臺(tái)電腦中的Bot,由Bot操作電腦中的某個(gè)應(yīng)用軟件來(lái)完成任務(wù),完成任務(wù)之后,再由Bot通過(guò)微信將完成結(jié)果發(fā)送給該員工。

 

 

總之,RPA不只是單純的技術(shù)創(chuàng)新,而是創(chuàng)造了一種新的技術(shù)應(yīng)用模式,是一種新的人機(jī)交互方式和協(xié)作方式。