SOA 구현을위한 BPM 적용방안및구축사례 BPM 컨설팅그룹책임컨설턴트이주영
Ⅰ. SOA 개요 Ⅱ. SOA & BPM Ⅲ. SOA기반의 Tmax BizMaster Ⅳ. 구축사례
Ⅰ SOA 개요 Service & SOA 정의 SOA 적용환경과미적용환경의차이 SOA 도입의필요성 SOA Layer Model SOA 서비스의분류및조합
Service & SOA 정의 Service : 언제, 어디서나, 어느기술로도접근이가능하고조합이가능하고반복사용이가능한비즈니스기능 예 ) 중복고객검사, 고객정보오류수정프로세스, 고객정보등록 SOA(Service Oriented Architecture) : 어플리케이션기능들을비즈니스적인의미를가지는기능단위로묶어서표준화된호출인터페이스를통해서서비스로구현하고, 이서비스들을기업의업무에따라조합하여어플리케이션을구성하는소프트웨어개발아키텍처 SOA is the Change-Fluent Architecture Service Consumer 채널 1 채널 2 채널 3 채널 n 채널별독립된기술과프로토콜로서비스에접근 범례 Standard Interface : Service Interface : Service Implementation 인터페이스표준화 : 공개서비스에대한동일한접근통로제공 표준인터페이스 SOA Area Shared (Registered) Services Service Repository Services as Business Rules Services as Business Processes Other Services (Web Services) * New Service can be generated with the composition of existing rules, processes and other services. 3/31
SOA 적용환경과미적용환경의차이 SOA 를적용하게되면업무분석가나업무담당자는변경된업무프로세스나정책에대한서비스 모델을변경함으로써변경내용을실시간으로시스템에적용시킬수있습니다. SOA 미적용환경 SOA 적용환경 +? <Business Process> <Business Rule> Service A 시스템 1 시스템 2 Service B 시스템 3 <Interface> : : 직관적인모델링도구를통한서비스구현 / 관리업무담당자와 IT 담당자간의동일 View 제공어려운 IT 기술없이현업 / 업무전문가가이해가능한모델링지원 4/31
SOA 도입의필요성 최근 IT 의화두가되고있는 Process 의개선, 인터페이스표준화및업무와구현기술의분리는 SOA 가추구하는사상과일치합니다. IT 요구사항 vs. SOA 프로세스개선 비정형업무에대한표준화된프로세스정립 - 가시화 정립된프로세스에따른성과지표의수립 정립된프로세스구현및운영에따른성과측정 성과분석과프로세스개선의선순환구조확립 BPM (Biz. Process Management) 인터페이스표준화 기관 집행내및, 기관정책간업무에표준화된대한인터페이스생산성측정도입방안필요 - Web Services Portal을통한대민서비스일원화 분산된정보의통합관리 업무와구현기술의분리 업무서비스및서비스접근에대한명세화 - 서비스규격표준화및가시화 최신의기술및기존시스템을활용한신규서비스의구현 업무변경시, 유연한대처 ESB (Enterprise Service Bus) Biz. Services (Service Implementations) S O A 5/31
조회SOA Layer Model SOA 기반의시스템은 Service Consumer, Service Bus, 그리고 Service Provider 로 구성됩니다. SOA Layer Model 오류유형별담당자지정 오류유형별작업리스트 오류수정작업을위한고객정보획득 오류수정작업결과확인 미완료상태확인 오류유형별작업리스트조회 고객정보상세조회 획득정보반영 오류수정결과작업조회 미완료상태조회 End 고객식별정보확인 중복여부검사 고객검색 획득정보오류검사 획득정보반영 Business Service Data Service 오류코드별목록조회상세 고객정보 중복검사고객 오류수결과조회정작업 상미태조회완료 획오득정보류검사 대상상중복정보세조회통합 SOAP 수정고객정보File 6/31
SOA 서비스의분류및조합 SOA Service 는그작성형태에따라신규서비스, Wrapped Service, 및복합서비스로분류될수 있으며, 각서비스들을순서와조건에따라조합하여다양한비즈니스를수행합니다. 서비스의작성방법에따른분류 서비스조합방안 New Service - Typical Component Service의구조적인결합 : Lego Block Service Consumer Wrapped Service Structured Services 하위수준의기술서비스를조합하여상위의비즈니스서비스를구성하거나, 분산된시스템의정보를조립하는데사용 주요활용분야 Presentation 영역 ( 포털, EIS) 예 ) 은행단말기에서고객조회시, 계정계의기본정보와 CRM 의마케팅정보를조합하여표시 Composite Service Flow Services Component Service의시계열적인결합 : Flow Chart 여러시스템에분산된단위업무를조건에따라순차적으로조합하여, 의미있는비즈니스업무를완성 주요활용분야 Business Process 영역 (BPM) 예 ) 책임자승인등의 Work Flow 이체 = 인출 + 송금 Service Interface Service Implementation Non-SOA Applications 비즈니스는개별서비스들의다양한조합으로구성 7/31
Ⅱ SOA & BPM SOA 기반의 BPM SOA의 backbone ESB (Enterprise Service Bus) 프로세스를서비스화하는도구인 BPM SOA & BPM
SOA 기반의 BPM Business Process without Service Layer BPM Business Process with Service Layer BPM Activity Activity Activity Activity Activity Activity Business Process Layer Activity Activity Activity Activity Activity Activity Service Layer 인사서비스 회계서비스 ESB 물류서비스 보고서비스 People Soft SAP Custom/ Legacy SAS Application Layer People Soft SAP Custom/ Legacy SAS Java/ J2EE C++/ Unix BPM.Net/ Windows Mobile DBMS MQ LDAP PKI CICS/ OS390 Technical Layer Java/ J2EE C++/ Unix BPM.Net/ Windows Mobile DBMS MQ LDAP PKI CICS/ OS390 9/31
SOA 의 backbone SOA Layer 에서 middle-layer 로위치하여다양한시스템, 단말, 대내외채널등의인터페이스를 ESB 를통해 통합을구현하며, Service layer 와의연계를통해서비스의조합을지원합니다. BPM 은비즈니스프로세스관리 영역에서구현된 Service 들의조합을통해서프로세스관점의업무통합을가능하게해줍니다. SOA stack 구성요소 SOA 성숙도 Process (BizMaster) Activity Activity Activity Activity Activity Activity Activity Business Process Process Enabled SOA Reference Call ESB (ProBus) Flow 기반의 Service 조합 Service Adapter Composition Service Service Service ManagementRegistry Security Business Service Non-Biz. Logic Networked SOA RMI Service (ProFrame) EMB EJB.NET POJO ERP SCM CRM Groupware DB DB Object Svc. Object Biz. Object Data Object Fundamental SOA 10/31
ESB (Enterprise Service Bus) ESB 는비즈니스서비스가사용자, 애플리케이션, 및다른서비스와광범위하게상호작용할수있는 기반을제공하는 S/W 로 SOA 의핵심인프라로자리잡았으며, SOA 의대표솔루션으로부상하였습니다. SOA with ESB ESB Components SOA = Service + Enterprise Service Bus Communication infrastructure Connect Application Front-End Service B Service C Request routing and version resolution Transformation and mapping Extensibility for message enrichment Mediate Service orchestration, aggregation, and process management Transaction management 시작 A B 종료 C Security Enterprise Service Bus Quality of service Monitoring and management Control Support for the service life cycle Service X Service A Application Front-End Service registry and metadata management * The Forrester Wave : Enterprise Service Bus, Q2 2006 11/31
프로세스를서비스화하는도구인 BPM BPM 은 Activity 조합을통한비즈니스프로세스를서비스화할수있는현업사용자입장에서 SOA 구현을가시화할수있는강력한도구입니다. Sub Process 활용을통한프로세스서비스조합 Main Process Sub Process 의활용으로업무단위로관리용이 Sub Process 12/31
SOA & BPM 기업의 IT 부서와사용자부서는 SOA 와 BPM 의시너지를통해당면한문제를해결하고한 단계진화된시스템을구축할수있습니다. IT SOA Driver Barrier 단순한설계원칙을넘어서새로운 S/W Paradigm 으로발전 SOA 를적용을통한기존시스템의 Upgrade 기회 기술중심의원칙으로실제업무적용에대한사용자의동의를구하기어려움 IT 예산집행및 ROI 에대한까다로운규제 BPM as SOA Sponsor (Killer App.) SOA as BPM Infrastructure Biz BPM Barrier Driver 독립된시스템간의연결및업무확장제약 시스템복잡도증가및성능저하 (Hard Wired) One Stop Service (End to End Service) 각종규제사항준수 : 업무표준화및매뉴얼화 13/31
Ⅲ SOA 기반의 Tmax BizMaster TmaxSoft 4대 Framework ESB 기반의 BPM 다양한 Flow 처리가가능한고성능 ESB Process-Enabled SOA SOA기반의 Tmax BizMaster 주요기능
4 대Framework TmaxSoft 4 대 Framework Without Application, Simple System 미래 SOA기반컴퓨팅환경을완벽하게지원하는 TmaxSoft 4대 Framework Front-End (UI) 부터 Back-End (Data) 를커버하는시스템 Interface Integration 을통한수평적시스템아키텍처 TmaxSoft Portal Web UI FW Core 업무시스템 인사관리 인터넷뱅킹시스템 생산관리 C T I DBMS DBMS DBMS X- Internet 영업관리 S M S DBMS 급여관리 Fax 서버 DBMS 출하관리 고객관리 15/31
ESB 기반의 BPM Tmax BizMaster는 ESB기반의 ProBus로부터핵심엔진역할을제공받으며비즈니스프로세스패턴디자인, 조직및권한관리, 비즈니스이벤트등의기능을통해서프로세스기반의업무환경을제공합니다. MCI 전문 Biz Components 부가기능전문채널관리 EAI 파트너관리다양한 Adapter 기능 Message Monitoring BPM Business Pattern 지원조직및권한관리 Business Event Notification Flow Coordination ESB 변환과라우팅 메시징 (Events, Data) ERP CRM SCM BI BSC Inhouse App. 16/31
다양한 Flow 처리가가능한고성능 ESB TmaxSoft 4대 Framework 중 Interface Framework의핵심인 ESB는 Work Flow와 Service Flow의표현을망라하는 Flow 표현력과고성능을기반으로복잡도가높은 Flow를지원하는 Flow Engine을갖고있습니다. 또한, 이는표준 BPEL의성능적 Issue를해결해주고있으며동시에 BPEL과의호환성을보장하여업계표준을준수합니다. BPM Business Flow Activity Activity Activity Activity Activity Activity Activity ESB Service Flow 변환과라우팅 Flow Engine SFDL (Service Flow Definition Language) Monitoring & Management 메시징 (Events, Data) ERP CRM SCM BI BSC In-house App. Work Flow 와 Service Flow 를동시표현할수있는강력한 Engine Concurrency 와 None-Blocking IO 를통한고성능실행 BPEL 호환을통한표준준수 17/31
서비스서비스서비스EJB 서비스서비스서비스Process-Enabled SOA Tmax BizMaster 를통한프로세스중심의업무통합과시스템연계는 SOA 의사상을활용하여전체 시스템이유기적으로통합되어움직이는모습으로동작합니다. Business Process Centric Composite Application for Business Process Data consistency for Process Service Centric Composite Application for Business Purpose Standard Interface, Flexibility BizMaster A A BPM A AActivity B BPEL WWeb Service A A BPMS 와서비스연계 하나의업무프로세스 User Space W Start System Space ESB SAP W Sub Process B W W W W W B W W SOAP End File S O A 연계되는여러프로세스들 하나의비즈니스액티비티가외부서비스호출 ProFrame Services EMB 서비스서비스EJB 서비.NET 스기타 18/31
SOA 기반의 Tmax BizMaster 주요기능 Change-Fluent 변화를내장한 SOA 아키텍처기반의 BPM 솔루션 Simplicity Modeling 직관적인모델링을통한비즈니스시나리오구현 Reflection End-to-End Virtualization Composition/Assembly Hot-Deploy Visualization Monitoring 코딩에의한업무개발이아닌, 비즈니스서비스의조합 / 조립을통한프로그래밍을지향 비즈니스환경변화에민첩한대응을위한실시간변경 / 배포지원 업무프로세스참여자및진행상황에대한시각적인가시성제공 실시간프로세스정보의모니터링대시보드제공 Reusability 프로세스저장을위한 Repository 제공 19/31
Change-Fluent Tmax BizMaster 의영역 비즈니스프로세스 (BPM) Work flow (XPDL) 특정한비즈니스기능을수행하기위하여일련의단계또는동작을캡슐화한것임. 즉비즈니스프로세스는비즈니스기능을제공하기위하여비즈니스서비스를사용함 비즈니스서비스 (ProBus) Service flow (SFDL) 인지할수있는비즈니스기능또는활동에상응하는서비스로, 하위의서비스컴포넌트들의기능을결합하여사용자에게노출하는역할을수행함. 글로벌트랜잭션의단위 서비스컴포넌트 (ProFrame) Service Object (Class) Business Object (Class) 비즈니스서비스에대한노출및호출을목적으로한내부적서비스. 비즈니스서비스의실제실행기능역할을수행함. 단위트랜잭션의단위 서비스오브젝트에의해호출되는공통기능의단위. 모듈수준의재사용성의단위 Data Object (Class) 데이터엑세스를담당하는오브젝트 여러 DBIO 를조합 20/31
Simplicity >> 드래그 & 드롭을통한손쉬운모델링업무를가장잘이해하는업무담당자가직접디자인가능 Activity Set( 기본업무, 시간, 이벤트, 메일, DB Access) 및 BPEL 을통한다양한어플리케이션연결 다양한라우팅 (Serial, Parallel, Rule Based, Conditional, Join, Weighted, Roles Based, Ad-hoc) 타이머를사용하여지정된시간에업무를시작시킴 복잡한프로세스를서브프로세스로분리 21/31
Reflection - Composition/Assembly(1/2) Tmax BizMaster 에서 Service 를생성해서 BPEL 이해당서비스를사용할수있도록정의합니다. Service 생성 : ProFrame 의 Service 호출 Service 생성 : BizMaster 에서 Service 생성 WSDL 편집기를사용하여요소들을정의 서비스제공 서비스를호출해서고객정보를받는다. 결과출력 입력메시지와출력메시지로사용할 XML 메시지자료형정의 WSDL 에서정의한 LinkType (DB Adapter Rule, WebService) 고객정보 Key 값을매핑 서비스호출 서비스내용 서비스생성 BizMaster 에서제공하는 XML Schema 편집기를사용하여손쉽게정의 자동생성 BPEL 이해당서비스를사용할수있도록정의 22/31
Reflection - Composition/Assembly(2/2) Main Process 에서생성된서비스의호출을 BPEL 로매핑합니다. 고객 Contact 서비스 (SVC1) 호출 ProFrame 의 Service 호출 BizMaster 에서생성된 Service 를호출 담당자재배정서비스 (SVC2) 호출 23/31
Reflection - Hot Deploy 실행중인프로세스를불러와서변경된내용을수정한후재 Deploy를하게되면바로변경업무적용 (Hot-Deploy) 이가능하게됩니다. Repository에저장되어있는프로세스를불러서실시간 Deploy하는구조이므로설치장비의변경등환경설정변화에영향을받지않습니다. Hot-Deploy 지원 프로세스를수정또는생성하여재 Deploy 이함으로써기존프로세스를대체 24/31
End-to-End Virtualization - Visualization 단위업무프로세스참여자및진행상황에대한시각적인가시성의확보가가능해집니다. 가시성의확보는실제업무프로세스흐름과문제발생시의장애요인파악이가능해지며, 누구나업무의진행정도를손쉽게확인할수가있습니다. 업무명 : 준사고보고서접수 / 전달 담당자 : 김철수 업무상태 : 정상종료 업무시작 : 2006. 10. 10 11:30 업무종료 : 2006. 10. 10 14:20 업무명 : Follow up 작성 담당자 : 홍길동 업무상태 : 정상종료 업무시작 : 2006. 10. 10 15:00 업무종료 : 2006. 10. 10 16:10 업무명 : 조치사항결재 담당자 : 최영수 업무상태 : 진행중 업무시작 : 2006. 10. 10 11:30 업무종료 : - 25/31
End-to-End Virtualization - Monitoring 프로세스별, 단위액티비티별, 조직별에따른기본적인업무통계를제공하며사용자정의에의한 통계자료제공이가능하므로다양한관점에서의업무통계분석이가능합니다. 병목현상에대한비쥬얼한화면지원예제 티맥스 조직별통계예시 업무별통계예시 중요경영지표의추이를보여주는대시보드 26/31
Reusability 프로세스저장을위한 Repository 표준화기반의프로세스모델을생성하고관리함으로써프로세스를재활용 (import/export 등 ) 할수있습니다. Database 혹은파일시스템으로저장되며, 버전관리를지원합니다. Repository에는서버에배포되는모든프로세스와룰들이관리됩니다. 비즈니스프로세스와룰 WSDL( 서비스정의 ) XML Schema( 메시지정의 ) 등 서버에 Deploy 된프로세스에대한상태를모니터링하고통제할수있는기능 27/31
Ⅳ 구축사례 A 사 - SOA 구축과 BPM B 사 - SOA 기반의시스템통합 C 사 BPM 기반의무역업무구축
A 사 - SOA 구축과 BPM A 사의고객지원업무에대한 SOA 시스템구성도입니다 고객지원업무대상 SOA 시스템구성도 A Activity B BPEL W Web Service ESB A B Tuxedo 등록 W 식별정보확인록고객 W 상품정보조회 상품계약처리 청구계약처리 A 중복여부검사 상품정보조회 W 고객정보등록 WebT For Tuxedo A A 조회S/O 처리상상상고청정고중고상품처품세객처구보객검복등객태정리계조정리계확식사고정보약회조보약인별객보회고객정보 S/O 처리상품계약청구계약 A A 확인 A S/O 처리상태조회 File ICIS 고객정보자산화시스템망관리시스템 29/31
B 사 - SOA 기반의시스템통합 B 사의유통정보포탈시스템개발을위해 B 사의 18 개연계대상시스템과의 SOA 기반의시스템 통합연계기반을구축하였습니다. 웹서비스기술을적용한공유와재사용이가능한서비스와컴포넌트로구현된 SOA 기반시스템연계 / 통합을통해비즈니스에유연한 IT 아키텍처확보한SOA 기반시스템통합시의웹서비스구현범위 Web Services 로구성되는영역 Web Services 化를위한인터페이스 시스템관리자 외부방문자 한국문화컨텐츠진흥원사용자포탈시스템내부템Web Services create & publish SOA 기반의시스템통합 그룹웨어인력양성서비스유통허브사업관리통합통합통합통합. 통합.... UDDI Registry Web Services Inquiry & reuse 3. 정의된프로세스에따라연계실행 4.Request/ Response A 시스템 B 시스템 C 시스템 EJB 각 Component 사이트적용부분 JSP Interface Program 전문가정보 5.Request/ 6.Request/ BizMaster Response Response 적용부분 Interfac Interfac e e 전문가정보조회서비스 BizMaster 2. 비즈니스서비스 7. 시스템조회결과 실행요청 Merge 하여 Response SOA 기반아키텍쳐를적용한웹서비스방식의시스템간연계와통합을통해분산된정보시스템인프라를공유와재사용이가능한서비스기반으로재구성해비즈니스변화요구에대한 IT 응답성을높일수있음 사용자 1. 사용자조회요청 8. 조회결과최종표시 WS Client 유통포탈 각사이트적용부분 30/31
C 사 BPM 기반의무역업무구축 C 사 BPM 을통해무역업무프로세스를개선할수있는환경을구축하였습니다. WEB Legacy VAN / 전용망 무역업체 / 화주 전자무역포탈 Single Window 를통한동일창구제공 전자문서관리 업무처리 (BPM) 전자무역서비스 포탈기본기능 전자무역문서보관소 전자문서관리 전자문서배달 전자무역서비스 무역서비스 Layer 상역물류 / 통관부가정보외환 / 결재 통합 DB BPM BPM 을통한 Process Mgnt/ Automation 실현 Monitoring Workflow Simulation To-Do List 프로세스관리통계분석 EAI 연계 ESB EAI 를통한빠르고안정적인 System 통합 EAI 연계 BizMaster Adapter Adapter Adapter Adapter Adapter Source System 외부망한도관리중계시스템 31/31
32/31