์œ ๋ฃŒ RPA ํ”Œ๋žซํผ์„ ๋ฒ„๋ฆฌ๊ณ  ์˜คํ”ˆ์†Œ์Šค(OpenRPA)๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

์ž…๋ฌธ

์ด์ „์— ์ด ์ฃผ์ œ๋Š” Habrรฉ์—์„œ ๋งค์šฐ ์ž์„ธํžˆ ๋‹ค๋ฃจ์—ˆ์Šต๋‹ˆ๋‹ค. Python์œผ๋กœ ๋ฐ์Šคํฌํƒ‘ GUI ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ž๋™ํ™”. ๋‹น์‹œ ์ €๋Š” ์ด ๊ธ€์ด ๋กœ๋ด‡์„ ๋งŒ๋“œ๋Š” ์š”์†Œ์™€ ์œ ์‚ฌํ•œ ์š”์†Œ๋ฅผ ๋“œ๋Ÿฌ๋ƒˆ๊ธฐ ๋•Œ๋ฌธ์— ๋งค์šฐ ๋Œ๋ ธ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚ด ์ง์—… ํ™œ๋™์˜ ํŠน์„ฑ์ƒ ๋‚˜๋Š” ํšŒ์‚ฌ ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค์˜ ๋กœ๋ด‡ํ™”์— ์ฐธ์—ฌํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์—(RPA๋Š” ์ตœ๊ทผ๊นŒ์ง€ ์™„์ „ํ•œ ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ ์˜คํ”ˆ์†Œ์Šค ์•„๋‚ ๋กœ๊ทธ๊ฐ€ ์—†์—ˆ๋˜ ์˜์—ญ์ž…๋‹ˆ๋‹ค) ์ด ์ฃผ์ œ๋Š” ๋‚˜์™€ ๋งค์šฐ ๊ด€๋ จ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

RPA ๋ถ„์•ผ(UI Path, Blueprism, Automation Anywhere ๋“ฑ)์˜ ๊ธฐ์กด ์ตœ๊ณ  IT ์†”๋ฃจ์…˜์—๋Š” ๋‘ ๊ฐ€์ง€ ์ค‘์š”ํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋ฌธ์ œ 1: ๋กœ๋ด‡ ์Šคํฌ๋ฆฝํŠธ ์ƒ์„ฑ ์‹œ ํ”Œ๋žซํผ ๊ธฐ๋Šฅ์˜ ๊ธฐ์ˆ ์  ํ•œ๊ณ„ ๋งŒ ๊ทธ๋ž˜ํ”ฝ ์ธํ„ฐํŽ˜์ด์Šค์—์„œ(์˜ˆ, ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์ง€๋งŒ ์ด ๊ธฐ๋Šฅ์—๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ œํ•œ ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค)
  • ๋ฌธ์ œ 2: ์ด๋Ÿฌํ•œ ์†”๋ฃจ์…˜์„ ํŒ๋งคํ•˜๊ธฐ ์œ„ํ•œ ๋งค์šฐ ๋น„์‹ผ ๋ผ์ด์„ผ์Šค ์ •์ฑ…(์ตœ๊ณ  ํ”Œ๋žซํผ์˜ ๊ฒฝ์šฐ) ์ง€์†์ ์œผ๋กœ ์ž‘๋™ํ•˜๋Š” ๋กœ๋ด‡ ํ•œ ๋Œ€๋‹น ์—ฐ๊ฐ„ ์•ฝ $8000). ์ˆ˜์‹ญ ๋Œ€์˜ ๋กœ๋ด‡์„ ๋งŒ๋“ค์–ด ๋ผ์ด์„ผ์Šค ๋น„์šฉ ํ˜•ํƒœ๋กœ ํฐ ์—ฐ๊ฐ„ ๊ธˆ์•ก์„ ์–ป์œผ์‹ญ์‹œ์˜ค.

์ด ์‹œ์žฅ์€ ๋งค์šฐ ์ Š๊ณ  ํ™œ๋ฐœํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด์ œ Google์—์„œ ๋‹ค์–‘ํ•œ ๊ฐ€๊ฒฉ ์ •์ฑ…์„ ๊ฐ–์ถ˜ 10๊ฐœ ์ด์ƒ์˜ ๋กœ๋ด‡ ์†”๋ฃจ์…˜์„ ์‰ฝ๊ฒŒ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ตœ๊ทผ๊นŒ์ง€ ์™„์ „ํ•œ ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ OpenSource ์†”๋ฃจ์…˜์„ ์ฐพ๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅํ–ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๋ถ€๋ถ„์ ์œผ๋กœ ๋ฌด๋ฃŒ ๋กœ๋ด‡ํ™” ์†”๋ฃจ์…˜์„ ์ฐพ์„ ์ˆ˜ ์žˆ์ง€๋งŒ RPA ๊ฐœ๋…์˜ ๊ธฐ๋ฐ˜์ด ๋˜๋Š” ํ•ต์‹ฌ ๊ธฐ์ˆ ์˜ ์ผ๋ถ€๋งŒ ์ œ๊ณตํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์™„์ „ํ•œ ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ OpenSource์— ๋Œ€ํ•ด ๊ตฌ์ฒด์ ์œผ๋กœ ์ด์•ผ๊ธฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

RPA ๊ฐœ๋…์€ ๋ฌด์—‡์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๊นŒ?

RPA(๋กœ๋ด‡ ๊ณต์ • ์ž๋™ํ™”)์€ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•˜๋Š” ๊ฐ€์žฅ ๋น„์šฉ ํšจ์œจ์ ์ธ ํ˜•ํƒœ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. RPA๋Š” ํšŒ์‚ฌ์˜ ๋ชจ๋“  ์ข…๋ฅ˜์˜ ๋ ˆ๊ฑฐ์‹œ ์‹œ์Šคํ…œ์„ ๋ฒ„๋ฆฌ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋ฐ”๋กœ ์ด๋Ÿฌํ•œ ์‹œ์Šคํ…œ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•„์š”ํ•œ ์ž๋™ํ™” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ํฌํ•จํ•˜๋ฏ€๋กœ ์ด๋Š” ๊ฐœ๋ฐœ ์†๋„ ์ธก๋ฉด์—์„œ ๋ชจ๋‘ ๊ฒฐ์‹ค์„ ๋งบ์Šต๋‹ˆ๋‹ค(๊ธฐ์กด ์‹œ์Šคํ…œ ๋™๋ฌผ์›์„ ๋‹ค์‹œ ์‹คํ–‰ํ•  ํ•„์š”๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์—). ๊ทธ๋ฆฌ๊ณ  ๋น„์ฆˆ๋‹ˆ์Šค ๊ฒฐ๊ณผ ์ธก๋ฉด์—์„œ (์ €์žฅ PSE/FTE, ํšŒ์‚ฌ ์ˆ˜์ต์„ ๋Š˜๋ฆฌ๊ณ  ํšŒ์‚ฌ ๋น„์šฉ์„ ์ค„์ž…๋‹ˆ๋‹ค).

RPA ๋„๊ตฌ๋Š” ๋‹ค์Œ ๊ธฐ์ˆ ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

  • ์—ด๋ฆฐ ๋ธŒ๋ผ์šฐ์ € ์›น ํŽ˜์ด์ง€ ๊ด€๋ฆฌ
  • ๊ฐœ๋ฐฉํ˜• ๋ฐ์Šคํฌํƒ‘ GUI ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ด€๋ฆฌ;
  • ๋งˆ์šฐ์Šค ๋ฐ ํ‚ค๋ณด๋“œ ์ œ์–ด(ํ‚ค, ๋‹จ์ถ•ํ‚ค, ๋งˆ์šฐ์Šค ๋ฒ„ํŠผ ๋ˆ„๋ฅด๊ธฐ, ์ปค์„œ ์ด๋™)
  • ๋งˆ์šฐ์Šค ๋ฐ/๋˜๋Š” ํ‚ค๋ณด๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ถ”๊ฐ€ ์ž‘์—…์„ ์ ์šฉํ•˜๋ ค๋ฉด ๋ฐ์Šคํฌํƒ‘ ํ™”๋ฉด์—์„œ ๊ทธ๋ž˜ํ”ฝ ์š”์†Œ๋ฅผ ๊ฒ€์ƒ‰ํ•˜์„ธ์š”.

์ˆ˜๋…„๊ฐ„์˜ ์‹ค์ œ ๊ฒฝํ—˜์„ ํ†ตํ•ด ์šฐ๋ฆฌ๋Š” ์ด ํŠน์ • ๊ธฐ์ˆ  ์„ธํŠธ๋ฅผ ํ†ตํ•ด ์ธ๊ณต ์ง€๋Šฅ์˜ ์ธ์‹/์ ์šฉ ์š”์†Œ๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์€ ๊ฑฐ์˜ ๋ชจ๋“  ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค์˜ ๋กœ๋ด‡ํ™”๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Œ์„ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด IT ์„ธ๊ณ„์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํ•ด๋‹น ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋กœ๋ด‡์— ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ์œ„ ๋„๊ตฌ ์ค‘ ํ•˜๋‚˜ ์ด์ƒ์ด ์—†์œผ๋ฉด RPA ๊ธฐ๋Šฅ์— ํฐ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.

๊ฒฐ๊ตญ ๋ชจ๋“  RPA ๋„๊ตฌ๋Š” ์ธํ„ฐ๋„ท์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋ฌด์—‡์ด ๋น ์กŒ์Šต๋‹ˆ๊นŒ?

๊ทธ๋Ÿฌ๋‚˜ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฒƒ์ด ๋น ์กŒ์Šต๋‹ˆ๋‹ค. ์ฆ‰ ๊ทธ๋“ค์˜ ์ง„์‹ค์„ฑ์ด ์‚ฌ๋ผ์กŒ์Šต๋‹ˆ๋‹ค. ๋ฌด๊ฒฐ์„ฑ - ํ•˜๋‚˜์˜ ๋กœ๋ด‡ ์Šคํฌ๋ฆฝํŠธ์—์„œ ๋‹ค์–‘ํ•œ ๋„๊ตฌ(์›น, GUI, ๋งˆ์šฐ์Šค, ํ‚ค๋ณด๋“œ)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹œ๋„ˆ์ง€ ํšจ๊ณผ๋ฅผ ์‹คํ˜„ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋Š” ๊ฐœ๋ฐœ ์ค‘์— ์ข…์ข… ํ•„์ˆ˜์ž…๋‹ˆ๋‹ค(์‹ค์Šต์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด). ๋ชจ๋“  ์ƒ์œ„ RPA ํ”Œ๋žซํผ์ด ์ œ๊ณตํ•˜๋Š” ํ•ต์‹ฌ ๊ธฐํšŒ์ด๋ฉฐ ์ด์ œ ์ด ๊ธฐํšŒ๊ฐ€ ์ œ๊ณต๋˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ตœ์ดˆ์˜ ์˜คํ”ˆ์†Œ์Šค RPA ํ”Œ๋žซํผ OpenRPA

OpenRPA๋Š” ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋‚˜์š”?

์˜คํ”ˆRPA ํ•„์š”ํ•œ RPA ํ”Œ๋žซํผ ๋„๊ตฌ๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ๊ณ ์˜ ๊ธฐ์กด Python ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ๊ตฌ์„ฑ๋œ Python 3 ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” OpenSource ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค(์œ„์˜ ์ฃผ์š” RPA ๋„๊ตฌ ๋ชฉ๋ก ์ฐธ์กฐ).

์ฃผ์š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ชฉ๋ก:

  • ํ”ผ์œˆ์˜คํ† ;
  • ์…€๋ Œ;
  • ๊ฑด๋ฐ˜;
  • ํ”ผ์˜คํ† ๊ตฌ์ด

๋ชจ๋“  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์„œ๋กœ์˜ ์กด์žฌ๋ฅผ ์•Œ์ง€ ๋ชปํ•˜๋ฏ€๋กœ OpenRPA๋Š” RPA ํ”Œ๋žซํผ์˜ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์—ฌ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” pywinauto ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์Šคํฌํƒ‘ GUI ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ด€๋ฆฌํ•  ๋•Œ ํŠนํžˆ ๋ถ„๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ด ์˜์—ญ์—์„œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๊ธฐ๋Šฅ์€ ์ตœ๊ณ ์˜ RPA ํ”Œ๋žซํผ์—์„œ ์ œ๊ณต๋˜๋Š” ๊ธฐ๋Šฅ ์ˆ˜์ค€(GUI ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์šฉ ์„ ํƒ๊ธฐ, ๋น„ํŠธ ๋…๋ฆฝ์„ฑ, ์„ ํƒ๊ธฐ ์ƒ์„ฑ ์ŠคํŠœ๋””์˜ค ๋“ฑ)์œผ๋กœ ํ™•์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๊ฒฐ๋ก 

์˜ค๋Š˜๋‚  ํ˜„๋Œ€ IT ์„ธ๊ณ„๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ๋„ˆ๋ฌด ๊ฐœ๋ฐฉ๋˜์–ด ์žˆ์–ด ์—ฌ์ „ํžˆ ์œ ๋ฃŒ ๋ผ์ด์„ผ์Šค ์†”๋ฃจ์…˜๋งŒ์ด ์ง€๋ฐฐํ•˜๋Š” ์˜์—ญ์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์ƒ์ƒ์กฐ์ฐจ ํ•˜๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ์ด ๋ผ์ด์„ผ์Šค ์ •์ฑ…์€ ์ด ๋ถ„์•ผ์˜ ๊ฐœ๋ฐœ์„ ํฌ๊ฒŒ ์ œํ•œํ•˜๋ฏ€๋กœ ์ด ์ƒํ™ฉ์„ ๋ฐ˜์ „์‹œํ‚ฌ ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋ชจ๋“  ํšŒ์‚ฌ๊ฐ€ RPA๋ฅผ ๊ฐ๋‹นํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. IT ๋™๋ฃŒ๋“ค์ด ํ•ด๋‹น ์ง€์—ญ์˜ ๊ฒฝ์ œ ์ƒํ™ฉ์— ๊ด€๊ณ„์—†์ด RPA ๋ถ„์•ผ์—์„œ ์‰ฝ๊ฒŒ ์ผ์ž๋ฆฌ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค(ํ˜„์žฌ ๊ฒฝ์ œ๊ฐ€ ์•ฝํ•œ ์ง€์—ญ์—์„œ๋Š” RPA๋ฅผ ๊ฐ๋‹นํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค).

์ด ์ฃผ์ œ์— ๊ด€์‹ฌ์ด ์žˆ์œผ์‹œ๋ฉด ๋‚˜์ค‘์— OpenRPA ์‚ฌ์šฉ์— ๋Œ€ํ•œ Habr์šฉ ํŠœํ† ๋ฆฌ์–ผ์„ ์ง์ ‘ ์ž‘์„ฑํ•ด ๋Œ“๊ธ€์„ ์ž‘์„ฑํ•ด ์ฃผ์„ธ์š”.

๋ชจ๋‘ ๊ฐ์‚ฌ๋“œ๋ฆฌ๋ฉฐ ์ข‹์€ ํ•˜๋ฃจ ๋ณด๋‚ด์„ธ์š”!

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€