7월, 2017의 게시물 표시

Free RPA - Workfusion RPA Express

이미지
Workfusion은 RPA 분야의 Strong Performer 중 하나이며, Free RPA Tool을 제공하고 있는 기업 중 하나이기도 하다. UIPath와 마찬가지로 RPA Core Tool을 무료로 제공하고 있다. Workfusion은 이러한 Free RPA 배포 전략으로 시장을 키우고 있다고 주장하고 있으나, 이를 두고 일부에서는 막 형성되고 있는 RPA 시장을 망치고 있다고 비난하기도 한다. WorkFusion의 RPA Express의 장단점을 파악을 위해 설치 후 사용해 볼 것이다. RPA Express는 등록후 Email로 받은 Download link를 통해 받을 수 있다. 예상보다 용량이 상당하다.(over 2GB) 시스템 최소 요구 사항도 높은 편이다. (4core 이상 메모리 8GB 이상)

RPA 솔루션

이미지
<UIPath Studio> UIPath는 효율적으로 만들어진 솔루션이라 생각된다. Windows Workflow Foundation (WF)을 기본 Framework으로 선택하고 필요 Activity의 구현을 통해 확장해 나가는 전략으로 구현되었다. 이로 인해 Custom Activity를 추가 할 수 있는 구조가 되었고 동시에 오픈 플랫폼의 역할도 하게 되었다. 우리는 필요에 따라 Activity를 구현하고 UIPath Studio에서 사용할 수 있다. 참조:  <How to create a custom activity-UIPath>   UIPath Studio는 Re-hosted Workflow Foundation Application이다. MS는 WF Designer를 직접사용하거나 자신의 Application에 Rehosting해서 사용할 수 있게 제공하고 있다. 이는 솔루션을 개발하는 입장에서 상당히 매력적이다. 특히 솔루션에서 Workflow를 제공하거나 기반으로 해야할 경우는 더욱 그렇다. 물론 Rehosting 할 경우 직접 사용할 경우에 비해 제약이 존재하지만 말이다.  UIPath PLATFORM은 Studio, Orchestrator 그리고 Robot으로 구성되어 있다. Studio로 만들고 만들어진 것들을 Orchestrator을 통해 통제하고 Robot이 실제 Automation을 실행한다.  <UIPath Orchestrator> 솔루션이 Enterprise 레벨로 서비스를 하기 위해서는 코어엔진 이외에 다양한 것들을 만족해야 한다. 예를 들어 보안, 모니터링, 로깅 등의 관점의 서비스가 포함되어야 하고 이런 도구들을 통해 신뢰성, 정확성, 안정성, 보안성 등의 품질 속성을 만족해한다. 사실 이과정이 개발에서 있어서 시간이 많이 필요한 부분이라 생각한다.  UIPath Studio를 확장하기 위한 Custom Activities의 개발을 진행

RPA vs. BPM: 하나의 목표, 2 개의 솔루션

이미지
RPA vs. BPM: One Goal, Two Solutions   <원본> "로봇 프로세스 자동화(RPA)는 정말 새로운 것인가? 라는 질문을 많이받는다. 완전히 혁신적인 기술을 찾고 있었다면 너무 기대하지는 마라.  RPA의 뿌리는 소프트웨어 로봇의 발전 속에서 찾을 수 있다. 따라서 RPA는 이것의 조상 또는 사촌인 비즈니스 프로세스 관리와 닮아 있을지도 모른다. BPM (가끔 "비즈니스 프로세스 자동화"와 혼용됨)은 특정 소프트웨어가 아닌 비즈니스 프로세스를 간소화하고 효율성과 가치를 극대화하는 방법이다. 프로세스가 어떻게 작동되고 있는지, 개선 분야는 어디인지 파악하고, 솔루션을 처음부터 끝까지 구축하기 위한 방법을 상세하게 검토한다. BPM은 비즈니스 프로세스의 인프라가 견고하다는 것을 확인하는 것이다. 반면 RPA는 인간처럼 프로세스를 조작하기 위해 설계되었기 때문에 좀더 표면적인 레벨(UI 같은)에 존재한다고 할 수 있다. 구현이 좀 더 빠르고 모든 소프트웨어에서 바로 사용할 수 있으며, 변화하는 세계에 적응하도록 쉽게 변경하거나 업데이트가 가능하다. 우리가 보기에는 RPA와 BPM은 서로 상충되지 않는다. 서로 다른 구현 전략을 가지고 같은 목표를 달성하고자 하는 것이다. 이전에 사람에 의해 처리되던 빈도 높은 프로세스를 처리하기 위해 RPA를 사용하는 동안 실제로 필요한 것은 워크 플로우에 대한 정밀 검사 정도이다. 예를 들어, 특정 유형의 트랜잭션이 조직의 서비스의 핵심 요소 인 경우, 프로세스가 가능한 긴밀하고 효율적이고 독립적임을 확인해야한다. 표면 수준의 수정에 의지하는 것이 아니라 프로세스 자체를 변환해야하는 경우가 있는데 이럴 때  BPM을 사용하는 것이 적당하다. 물론, 우리 모두는 비즈니스 구조를 변화시키는 것이 항상 실현 가능한 것은 아니라는 것을 알고 있다. 이런경우 많은 개발과 많은 투자 (시간과 돈)가 필요하다는 것도 알고 있다. 처음부터 끝까지 구축할 만큼 당신

Graduated the RPA Developer - Foundation Training for UIPath

이미지
<RPA Developer - Foundation Training Certificate> "25 Hours 33 Minutes" 전체 코스를 완료하는데 소요된 시간이다. 어려운 것은 없으나 상당한 끈기를 요하는 코스다. RPA에 대한 기본적인 이해를 얻기에 도움이 된다고 생각된다. Workflow 내에서의 프로세스 구현을 위한 변수, 루프, 조건 처리 등에 대한 내용과 외부 프로그램 연결을 위한 selector에 대한 개념, UI element로 인식 불가한 여러가지 경우를 대비해 고안한 방법들에 대한 것들이 주를 이룬다. <Full index of the course> UI Element또는 HTML Element를 식별하기 위한 유니크한 정보가 없을 경우에 이를 식별하기 위한 방법을 여러가지 고안했다. Object 또는 DOM tree내의 index를 이용하거나 레이블을 이미지로 인식하고 그와 관련된 Edit 박스를 anchor를 이용해서 관계를 설정한다거나 하는 방법들이다. 어떠한 방법이 최적인지는 상황에 따라 Developer가 선택해야 한다. 이는 application과 html dom tree 등에 대한 이해가 Developer에게 요구된다는 의미이다  . 분명히 식별 가능한 object에 대한 스크립트는 빠르고 쉬울수 있으나, client의 환경은 생각보다 복잡하고 다양하다. RPA 솔루션 도입을 위한 검증 과정에서 적용 가능한 프로세스의 정립도 중요하지만, 업무용 SW의 인식(?) 또는 자동화 가능 정도를 반드시 검증해야 한다.

UIPath RPA Academy

이미지
RPA Developer - Foundation Training <출처: The Forrester Wave™: Robotic Process Automation, Q1 2017>  Forrester의 2017년 Q1 보고서에서 RPA 시장의 Leader 중 하나로 언급된 UIPath의 Training course를 등록했다. Automation Anywhere와 Blueprism은 아직 실체(?)를 접하기 어려운 환경이라, 우선 Trial 버전과 Training을 제공하는 UIPath를 분석해 보고자 한다. <UIPath 자체 제공 Training Course> 전체 14 Lesson, 177강으로 구성되어 있으며, 각 lesson 종료시 quiz를 통해 테스트를 진행해야 한다. lesson을 모두 종료하면 Certification을 주는 것으로 보인다. 전체 필요 시간은 아직 파악 전이나 1강에 30여분 정도로 구성되어 있는 것 같다. 단순 Documentation review도 있으니, 생각보다는 오래 걸리지 않을듯 싶다. 완료 후에 Summary를 공유하도록 하겠다. RPA tool을 대표하지는 않겠지만 맛보기에는 적합한 내용으로 생각된다. * UIPath의 개발자를 위한 코스가 분명하지만 개발자 만 을 위한 코스는 아니라 생각된다. 컨설팅을 하던 PM을 하던 기본적으로 자신이 사용할 무기(?)가 어떻게 동작하고 어떤 힘을 가지고 있는지는 알아야 하는것이 당연한것 아닐까 생각한다.

로봇 프로세스 자동화(RPA) vs 테스트 자동화(Test Automation)

이미지
 "The application of technology that enables computer software to partially or fully automate human activities which are manual, repetitive and rule-based" 출처:Mayer Brown(2016) "컴퓨터 소프트웨어가 수동, 반복 및 규칙 기반의 인간 활동을 부분적으로 또는 완전히 자동화 할 수있게 해주는 기술의 응용분야" 정도가  적당할 듯 하다. 오래전부터 IT 분야에서는 사람을 대신해서 Operation 해 주는 소프트웨어를 꿈꿔 왔다. 대표적인 분야가 기능 테스트 자동화 분야이다. 특히 Regression 테스트는 반복이고 지루한 일이며 비용대비 효과 측면에서 계륵과 같은 존재이다. 이에 이의 극복을 위해 테스트를 자동화 하기 위한 많은 솔루션 들이 제시되어 왔다.  예를 들어 HPE Unified Functional Testing (UFT) ,  Compuware Test Partner 등 이 있다.  < HP UFT 12.0 Start Page> 테스트 자동화는 QA 분야의 영원한 화두이다. QA 입장에서 테스트는 검증을 위한 확실한 방법이다. 하지만 인력에 의존하는 테스트는 필요한 횟수, 정도, 시점에 무한히 할 수 없는 것이 현실이고 이를 극복하기에 테스트 자동화는 매력적인 키워드 이다. 하지만 Client의 개발 환경이 다양하고  Test case가 너무 다양할 경우 자동화를 위한 스크립트의 양이 개발 분량에 육박하게 되는 주객이 전도되는 문제로 완전한 자동화가 현실적으로 불가능에 가깝다는 문제가 있다. < VBScript code in Expert View of HP UFT> 기본적으로 RPA 솔루션의 실행 부분은 Test Automation 솔루션과 유사하다. Application 사용자의 행위를 기록(Record)하고