Nội dung chính
RPA là gì? RPA là một trong nhiều nỗ lực công nghệ nhằm giải phóng đầu óc của con người khỏi những công việc mang tính chất lặp đi lặp lại nhàm chán. Tuy nhiên, khác với AI hay Machine Learning, RPA dễ phát triển và dễ ứng dụng hơn trong cuộc sống.
Để hiểu thêm về RPA cũng như khi nào nên và không nên phát triển RPA, hãy cùng đọc bài phỏng vấn giữa ITviec với anh Nguyễn Tấn Phát – RPA Technical Lead và Nguyễn Trọng Duy – RPA Team Leader tại CMC Global – một trong những đơn vị triển khai dịch vụ IT hàng đầu tại Việt Nam, đặc biệt là về dịch vụ công nghệ RPA.
Thông tin về anh Nguyễn Tấn Phát – RPA Technical Leader tại CMC Global.
Thông tin về anh Nguyễn Trọng Duy – RPA Team Leader tại CMC Global.
RPA là gì?
1. RPA là gì?
RPA là viết tắt của cụm từ Robotic Process Automation, tạm dịch là Tự động hóa Quy trình bằng Robot. RPA là công nghệ được dùng để thay thế con người làm những việc lặp đi lặp lại có quy trình rõ ràng mà không đòi hỏi nhiều chất xám.
Vậy thì những quy trình nào nên được tự động hóa bằng Robot? Khi quy trình là những công việc do con người thực hiện đều đặn hằng ngày như “một cái máy”, tốn thời gian và công sức. RPA phát triển để mô phỏng hoạt động bằng tay của những nhân viên ấy. Chỉ bằng một cú click, robot có thể thay thế hàng chục, hàng trăm người.
Ví dụ như ở ngân hàng, mỗi ngày đều phải có 20 nhân viên lên Excel, tải dữ liệu về, tính toán trên máy sau đó tải lên lại. Thì với RPA, ngân hàng có thể dùng robot để làm nghiệp vụ đó thay cho thao tác của con người. Robot theo lập trình đến thời gian cố định sẽ tiến hành công việc trên. Khi hoàn thành xong, robot sẽ gửi email thông báo kèm output (sản phẩm, kết quả).
Tham khảo thêm: Làm thế nào để trở thành RPA Developer?
Các loại Robot trong RPA.
RPA có 3 loại:
- Attended Robot: Robot cần sự giám sát của con người trong lúc làm việc để tự động hóa quy trình đấy.
- Unattended Robot: Robot có thể hoạt động không cần con người giám sát, có thể tự đưa ra quyết định. Con người chỉ cần thiết lập thời gian cố định, tới giờ là chạy.
- Hybrid Robot: Kết hợp của 2 loại trên, nhưng Hybrid RPA ít được sử dụng. Mặc dù có vẻ như Hybrid Automation sở hữu ưu điểm của cả 2 loại tự động trên nhưng trong thực tế, việc tích hợp Hybrid Automation vào quy trình doanh nghiệp lại vô cùng phức tạp vì đòi hỏi đúng công cụ, đúng nhân sự vận hành.
2. So sánh RPA và Automation truyền thống
RPA và Tự động hóa truyền thống (Automation truyền thống) bản chất đều là sự tự động hóa của bất kỳ loại công việc lặp đi lặp lại nào. Tuy nhiên, nếu RPA thường được sử dụng ở mặt Front-end vì bot RPA sẽ đóng vai như một người dùng tương tác trực tiếp trên giao diện, thì tự động hóa truyền thống đòi hỏi sự tích hợp ở cấp độ cơ sở dữ liệu hoặc cơ sở hạ tầng (Back-end) và có thể mất hàng tháng để thực hiện.
Hạn chế của tự động hóa truyền thống:
- Tốn thời gian tìm hiểu Back-end và database của trang web.
- Chỉ tích hợp được một website đó.
- Yêu cầu nhiều code, thời gian code lâu hơn RPA.
Anh Phát chia sẻ rõ hơn về sự khác biệt của hai hình thức tự động hóa này:
RPA | Tự động hóa truyền thống | |
Mức độ phụ thuộc vào Back-end | Không phụ thuộc vào database hay Back-end. | Phụ thuộc vào database hay Back-end. |
Mức độ phụ thuộc vào trang web | Tích hợp được vào hầu hết các trang web, các trang web sử dụng unstructured data (images, videos, audio, và text và PDF documents). Tuy nhiên, vẫn cần kết hợp với AI (hybrid bot). | Chỉ tích hợp được với một trang web có quyền truy cập. |
Thao tác bot | Có thể tự động hóa các nhiệm vụ lặp đi lặp lại, dựa trên quy tắc, bắt chước hành động của con người để hoàn thành các task. | Không bao gồm khả năng bắt chước hành động của con người, chỉ thực hiện các thao tác lập trình được xác định trước. |
Cấp độ code yêu cầu | Ít code (low-code). | Nhiều code (heavy code). |
Chi phí implement | Khá tốn kém ở giai đoạn đầu (licenses), nhưng tiết kiệm nhiều thời gian, tiền bạc và effort về lâu dài. | Ít tốn kém hơn ở giai đoạn đầu, tuy nhiên đòi hỏi nhiều thời gian, công sức và lực lượng lao động hơn. |
Bảo trì (Maintenance) | Với RPA, người dùng có thể dễ dàng cập nhật các process do tính đơn giản của nó. | Buộc người dùng thay đổi code. Do đó, bảo trì và cập nhật công nghệ này có thể khó khăn hơn. |
Thích hợp với những mô hình/ trang web nào | Thích hợp với những giao diện (Front-end) không thay đổi thường xuyên. Bot sẽ làm việc ở level UI và tương tác với hệ thống như một người dùng. | Thích hợp với những giao diện hay thay đổi, phức tạp vì tự động hóa truyền thống tác động tới tầng sâu hơn (Back-end) của hệ thống và trở thành native automation. |
Giấy phép sử dụng | Cần mua giấy phép mỗi tháng, hoặc theo năm. | Không cần thiết. |
3. So sánh RPA và AI, Machine Learning
RPA | AI và Machine Learning | |
Định nghĩa | RPA là một chương trình robot có thể bắt chước các hành động của con người. | AI là sự mô phỏng trí thông minh của con người trong máy móc được lập trình để suy nghĩ như con người và bắt chước hành động của họ. |
Hoạt động | Robot RPA tự động hóa các tác vụ theo các quy tắc đã xác định. | AI hoạt động dựa trên ‘tư duy’ và ‘học hỏi’. |
Hướng thiết kế phát triển | Dựa trên quy trình (Process-driven). | Dựa trên dữ liệu (Data-driven). |
Dữ liệu | Dữ liệu cần phải được cấu trúc (structured data).
Do RPA được thiết kế dựa trên quy trình nên team phát triển cần phải dự đoán trước được input và output. Đôi khi chỉ cần data khác đi là bot lỗi. |
Ngược lại, AI và Machine Learning sử dụng free time data, không dựa trên một quy trình nào hết. AI và Machine Learning có thể dự đoán bước tiếp theo của quy trình và tự đưa quyết định dựa trên input của người dùng. |
Bot | Bot RPA chỉ xử lý được những hành động, quy trình lặp đi lặp lại. | Bot AI thông minh, tự học được, tự phát hiện gian lận và lỗi. |
Tích hợp | RPA tích hợp Machine Learning vào quá trình được.
VD: Khi xử lý một tấm séc ngân hàng, nếu chữ viết khó nhìn, RPA sử dụng tính năng OCR (Optical character recognition – Nhận dạng ký tự quang học) sẽ dễ bị lỗi font, thu thập sai dữ liệu. Trong khi đó, nếu sử dụng AI cho công việc nhận dạng chữ viết thì độ chính xác cao hơn, xử lý dữ liệu tốt hơn. Các bước sau đó thì sẽ do RPA xử lý. |
AI và Machine Learning có thể không cần tích hợp RPA vào. |
Tương tác với con người | RPA có quy trình sẵn, nhưng vẫn cần giám sát của con người do chưa tự đưa ra được quyết định. | AI và Machine Learning cần data và thuật toán để hiểu tính năng, hiểu cách thức làm việc nên không cần con người giám sát. |
Thời gian phát triển | RPA thường được dùng thay thế những thao tác / tác vụ đơn giản nên thời gian phát triển nhanh thì 1-2 tháng, cao cấp hơn thì 3-4 tháng. | Phát triển AI và Machine Learning yêu cầu độ khó phức tạp nên thời gian phát triển có thể kéo dài từ 4-5 năm hoặc hơn. |
Tham khảo thêm:
4. Ưu điểm của RPA là gì
- Phân bổ và sử dụng nhân lực hiệu quả hơn: RPA có thể thay thế nhiều nhân viên làm cùng một tác vụ, giúp nhân viên loại bỏ những công việc ít giá trị nhưng tốn thời gian, từ đó có thể tập trung nhiều hơn vào những nghiệp vụ thiết yếu, mang lại giá trị cao hơn cho doanh nghiệp.
- Độ chính xác cao hơn: Người thì còn có sai sót nhưng bot thì không. Bot có thể chạy liên tục, cả ngày lẫn đêm, đảm bảo theo yêu cầu và không sai sót.
- Tiết kiệm chi phí do tiết kiệm nhân lực và thời gian.
- Bảo mật tốt hơn.
- Hiệu suất tốt: Khả năng tính toán nhanh hơn so với khả năng của con người, có thể chỉ cần 2-3 giây đã xong một nghiệp vụ.
- Cải thiện khả năng mở rộng quy mô của doanh nghiệp, giúp doanh nghiệp có thêm nguồn lực và thời gian để chuyển đổi mô hình, tăng trưởng doanh thu sau khi đã tối ưu hóa quy trình làm việc.
- Một thiết kế bot có thể dễ dàng được sử dụng lại cho nhiều nghiệp vụ khác nhau.
5. Khuyết điểm của RPA là gì
Khác với AI hay Machine Learning, mô hình bot vẫn có thể xảy ra lỗi. Trong trường hợp đó, vẫn cần có con người phải xử lý những lỗi ấy.
Khi thiết lập bot thì mình có thể xác định những chỗ mà lỗi có thể dễ xảy ra:
- Để bot có thể tự sửa được nếu gặp lỗi
- Bot báo lại lỗi khi gặp phải để user / người phát triển bot biết, chỉnh sửa và cho bot chạy lại
Ví dụ: Trong quy trình ngân hàng, khi mình đưa vào văn bản viết bằng tay hoặc dữ liệu bằng âm thanh thì công nghệ RPA khó có thể hỗ trợ nhận diện chữ viết hay lời nói mà vẫn cần sự can thiệp của con người. Như đã giải thích, RPA được thiết kế theo quy trình, nên chỉ cần nét chữ hoặc câu trả lời bằng giọng nói khác một chút so với “mẫu” thì bot đã không thể xử lý được.
Trong trường hợp này, có 2 hướng giải quyết:
Một là, sử dụng kết hợp AI để nhận diện giọng nói, nhận diện chữ viết sau khi được truyền tải và xử lý. Hai là, người dùng phải theo đúng khuôn mẫu đề ra. Ví dụ như những cuộc gọi tự động chỉ cho phép người dùng trả lời Có hoặc Không, hoặc chấm điểm từ 1 đến 10.
Ứng dụng của RPA là gì?
1. Mục tiêu của RPA là gì?
RPA mong muốn mang lại những lợi ích sau cho người sử dụng:
- Cải thiện năng suất:
Duy đưa ra một ví dụ dễ hiểu thế này, thông thường khi gặp phải lỗi sai, nếu đối với sức người, có khi mất cả ngày để tìm ra một lỗi, sai sót nào đó. Nhưng với bot thì khác, bot có thể tránh được những sai sót đấy.
Đồng thời, khi mở rộng quy mô, phòng ban thì những task cũ có thể lại xuất hiện, lúc này công ty có thể dùng lại con bot đã phát triển rồi cho những task không cần đến chất xám này. Một con bot có thể thay thế năng suất của hàng chục, thậm chí là hàng trăm người nhân viên. Nếu một người nhân viên thông thường cần khoảng 1 tiếng để thực hiện một nghiệp vụ thì bot chỉ cần khoảng 30 phút.
- Cải thiện chất lượng nhân lực:
Mục tiêu mà RPA đang mong muốn hướng đến.
RPA giúp doanh nghiệp “dùng người” tốt hơn, từ đó nâng cao chất lượng nhân lực. Có những công việc làm đến quen tay, không cần suy nghĩ nhiều, nhưng lại xử lý quy trình số lượng lớn, có thể lên đến cả hàng trăm hàng nghìn khách hàng/ngày, thì có thể để RPA hoàn thành những nghiệp vụ đó. Công ty có thể dời những nhân viên đó sang những vị trí đòi hỏi trí tuệ con người hơn để đỡ phí nhân lực.
Đồng thời, qua thời gian dài, nếu những nhân viên chỉ làm những việc không cần chất xám, họ sẽ dễ chán nản, dễ dẫn đến sai sót hoặc thậm chí là họ sẽ nghỉ việc.
- Cải thiện chi phí:
Theo lý thuyết, RPA có thể thay thế được sức làm việc của hàng chục, hàng trăm nhân viên. Từ đó, doanh nghiệp có thể tiết kiệm được số chi phí phải trả theo từng giờ công của ngần ấy nhân viên đó trong suốt nhiều năm.
Tuy nhiên, doanh nghiệp chỉ thực sự có lợi khi mô hình, quy trình hoạt động của doanh nghiệp thay đổi chậm, thời gian tính bằng năm, vì khi đó, con bot đã được tận dụng hết mức chi phí phát triển rồi. Còn trong những ngành thay đổi liên tục thì bot dễ bị thay thế do quy trình thay đổi liên tục, dẫn đến chi phí phát triển RPA cao và uổng phí.
Anh Phát chia sẻ một câu chuyện trong những lần phát triển RPA cho doanh nghiệp của chính anh khi được hỏi về bài toán chi phí RPA:
Phát đã từng biết một công ty ở Hàn Quốc phát triển đến 500 con bot. Ở Việt Nam thì có một ngân hàng đang xây dựng 50 con bot và còn 150 con bot trong dự định sẽ phát triển. Mà đó chỉ là 1-2 phòng ban thôi, chưa phải tất cả. Điều này thể hiện là con bot rõ ràng có lợi cho doanh nghiệp nên người ta mới tin tưởng và phát triển nhiều đến như vậy.
2. Ứng dụng của RPA
RPA có thể được ứng dụng vào đa ngành nghề. Những ngành thường sử dụng RPA đó là viễn thông, bán lẻ, xuất nhập khẩu (logistics), bảo hiểm và sản xuất, ngân hàng.
Hiện nay, ngân hàng là ngành đang áp dụng RPA khá phổ biến do hầu như tất cả các ngân hàng đều đang tiến vào thời kỳ chuyển đổi số. Hoặc, những ngành tài chính nói chung như chứng khoán, bảo hiểm.
Ví dụ như đối với ngành chứng khoán, nhà đầu tư có thể dùng bot để thông báo một mức giá nào đó, có thể lấy ví dụ là mức giá “cắt lỗ”. Khi đến mức giá này, bot sẽ tự động thông báo, gửi email hoặc tin nhắn cho nhà đầu tư. Đây là hình thức Unattended RPA khi mà người dùng không cần giám sát bot vận hành.
Ngoài ra, đối với ngân hàng trước khi chuyển đổi số, khi khách muốn kiểm tra sao kê của tài khoản thì phải gửi thông tin đăng nhập cho ngân hàng để họ xuất sao kê. Hiện nay, mỗi cá nhân chỉ cần đăng nhập thông tin trên trang web của ngân hàng, bot sẽ tự động đăng nhập vào và tìm ra đúng báo cáo mà khách hàng cần.
Một ví dụ khác RPA áp dụng đối với ngành bán lẻ trên các sàn E-commerce như: Khi người bán cần đăng sản phẩm lên, với cách làm thông thường thì họ sẽ phải thủ công nhập liệu từng sản phẩm.
Nhưng nếu sàn thương mại điện tử có ứng dụng RPA thì người bán chỉ cần nhập file dữ liệu Excel vào, sau đó chương trình sẽ tự động trích xuất dữ liệu, nhập vào đúng miền và đăng lên cho người bán, tiết kiệm được rất nhiều thời gian và công sức.
3. Nên chọn phát triển và sử dụng RPA khi nào?
Dù là chủ doanh nghiệp hay lập trình viên, bạn cũng đều nên cân nhắc kỹ trước khi khi quyết định có nên sử dụng RPA hay không.
Phát và Duy chia sẻ rằng không phải lúc nào cũng nên sử dụng RPA thay thế cho quy trình làm việc thông thường. Doanh nghiệp chỉ nên chọn phát triển RPA khi:
- Một là, giá trị của bot cao hơn mức lương phải trả cho nhân viên.
- Hai là, thay thế cho công việc mang tính chất “lặp đi lặp lại”.
Nên phát triển RPA khi nào?
Đi sâu hơn về bài toán chi phí, anh Phát ước lượng chi phí như sau:
Chi phí ước lượng khi thiết kế một con bot:
- Để một con bot chạy được cần phải có “Control Room”. Giấy phép cho control room tầm khoảng $10.000/năm (hoặc phải trả phí mỗi tháng, không có giấy phép vĩnh viễn).
- Những chi phí phát triển khác về mặt công cụ tốn khoảng $300-400 trong suốt thời gian phát triển.
- Để thiết kế một con bot cần mất khoảng 3-4 tháng với nhân sự trình độ Junior Developer với mức lương 12-13.000.000/tháng.
Một con bot tùy vào độ phức tạp có thể thay thế được:
- Độ phức tạp tầm thấp có thể thay thế được 1-2 người.
- Độ phức tạp tầm trung có thể thay thế được 5 người.
- Độ phức tạp tầm cao có thể thay thế được hàng chục, hàng trăm nhân viên.
Độ phức tạp của bot dựa vào:
- Mức độ phức tạp của nghiệp vụ cần thay thế. Một nghiệp vụ có thể đơn giản nhưng số lượng cần hoàn thành lớn thì cũng có thể được xem là có độ phức tạp cao.
- Độ phức tạp của quá trình phát triển, dựa vào công cụ, môi trường phát triển, nguồn lực.
Từ đó, doanh nghiệp hoặc nhà phát triển có thể cân nhắc giữa chi phí tạo ra một con bot và chi phí trả công cho những nhân viên mà bot đó thay thế; sau đó mới quyết định có nên thiết kế bot hay không, nếu có thì độ phức tạp nên như thế nào, đầu tư bao nhiêu nguồn lực (chi phí và nhân sự),…
Phát triển RPA như thế nào?
1. Quy trình phát triển RPA
Quy trình phát triển bot cho công nghệ RPA cũng giống như những quy trình phát triển tính năng khác:
- Xác định mục tiêu, bài toán cần giải.
- Làm rõ yêu cầu của bot.
- Phân tích yêu cầu, lấy đầy đủ resource/thông tin (input và output) của yêu cầu từ người có liên quan.
- Thực hiện bằng tay nghiệp vụ để phân tích: Chỗ nào dùng bot được, chỗ nào bắt buộc phải cần người làm. Từ đó, xác định có nên làm bot hay không và cơ hội phát triển của bot.
- Viết PDD (Process Definition Document).
- Viết SDD (Solution Design Document). Khi đã có thiết kế cấu trúc của bot thì nên gửi qua để duyệt một lần.
- Khi design xong thì mình tiến hành test xem output đúng với yêu cầu hay chưa.
- Nếu test ổn thì deploy lên Control Room.
- Luôn theo dõi sau khi deploy để xem hiệu suất của bot có thể cải thiện được gì không.
- Nếu làm việc với khách hàng: Luôn có một buổi truyền lại kiến thức (Knowledge Transfer) cho khách hàng về cách vận hành, cách kiểm tra, input/output như thế nào,…
2. RPA cần những công cụ nào để phát triển?
Để phát triển RPA, nhà phát triển cần giấy phép/ công nghệ của một nhà cung cấp RPA. Sau đây là 4 nhà cung cấp RPA phổ biến nhất trên thế giới hiện nay và một vài nhận định ngắn gọn từ Phát và Duy:
- UIPath: Nghiệp vụ tầm nhỏ, tầm trung nhưng UI của UIPath cũng khá phức tạp. Ví dụ như khi kết hợp nhiều quy trình thì sẽ bị rối. CMC Global đang lấy license/partner của UIPath.
- Automation Anywhere: Nghiệp vụ tầm trung và tầm lớn.
- Blue Prism: Nghiệp vụ tầm lớn, cỡ enterprise. Blue Prism nổi tiếng ở nước ngoài vì Blue Prism chuyên làm những nghiệp vụ phức tạp, quy mô lớn.
- Microsoft Power Automate: Là hệ sinh thái của Microsoft, Power Automate kết hợp với nhiều ứng dụng khác của Microsoft, sử dụng tích hợp với những công ty nào đang sử dụng dịch vụ của Microsoft như Sharepoint. Những doanh nghiệp đang sử dụng ecosystem của Microsoft thì sẽ có giá rẻ hơn, tận dụng được nhiều hơn.
Tài liệu RPA là gì tham khảo
- Tài liệu RPA là gì:
- Khóa học lấy chứng nhận về RPA: https://academy.uipath.com/certification
- Cộng đồng RPA để chia sẻ những trường hợp, thắc mắc, câu hỏi trong quá trình phát triển RPA:
Qua những chia sẻ kỹ lưỡng của hai chuyên gia về chủ đề RPA là gì, ITviec tin rằng bạn đã hiểu rõ về công nghệ vượt trội và thú vị này. Không chỉ là một công nghệ thu hút giới công nghệ, RPA còn mang lại nhiều cơ hội việc làm RPA Developer cũng hấp dẫn không kém.
Thông tin chuyên gia
Anh Nguyễn Tấn Phát hiện là RPA Technical Leader tại CMC Global.
Anh có 5 năm kinh nghiệm trong ngành CNTT với nhiều vị trí, domain khác nhau như Hàng không, Ngân hàng, Bảo hiểm, Logistic,… và 2 năm kinh nghiệm ở vai trò leader dẫn dắt đội nhóm.
Trong quá trình làm việc, anh đã không ngừng trau dồi kiến thức chuyên môn, và đạt được nhiều chứng chỉ, trong đó có nhiều chứng chỉ liên quan đến RPA như Automation Anywhere Certified Advanced RPA Professional (A2019), Kryon RPA Manager,…
Anh Nguyễn Trọng Duy hiện là RPA Team Leader tại CMC Global.
Anh có 3 năm kinh nghiệm tại nhiều vị trí như Backend software engineer (Java), Frontend software engineer (Vuejs) trước khi đến với RPA.
Trong lĩnh vực RPA, anh từng tham gia các dự án lớn hợp tác cùng đối tác tầm cỡ quốc tế trong lĩnh vực ngân hàng. Anh đã dành được các chứng chỉ liên quan đến RPA như Automation Anywhere Certified Advanced RPA Professional (A2019), Kryon RPA Manager, Blue Prism Developer Accreditation Exam, Automation Anywhere Certified Master RPA Professional – Version 11,…
Bạn thấy bài viết hay và cần thiết với nhiều người? Đừng ngại nhấn nút Share bên dưới nhé.
Và đừng quên tham khảo việc làm IT trên ITviec!