｢정보시스템연구｣ 제18권 제1호

한국정보시스템학회

2009년 3월, pp. 77～95

SOA 및 BPM 기반의 정보시스템 구축 방법론:

고객지향 수주생산 환경에서의 제품 BOM 관리 적용사례

* 울산대학교 산업경영공학부 박사과정, paul52@netsgo.com

** 울산대학교 산업경영공학부 교수, jgkim@ulsan.ac.kr

*** 울산대학교 경영정보학과 교수(교신저자), gsjang@ulsan.ac.kr

신정범*․김재균**․장길상***

			<목 차>
Ⅰ. 서 론 Ⅱ. SOA 및 BPM 기반의 정보시스템 개발 방법론 Ⅲ. SOA 및 BPM 기반의 제품 BOM 관리 시스템 구현 3.1 사례적용대상 업무 프로세스의 이해				3.2 제품 BOM 관리 시스템 구현 Ⅳ. 결론 및 향후 연구방향 참고문헌 Abstract

Ⅰ. 서 론

고객지향 수주생산 환경은 항공기, 선박, 선박엔진 등 매우 복잡한 제품구조와 1대에서 2대 정도의 아주 적은 주문량, 그리고 매우 복잡한 생산 공정을 가지면서, 제품 수명주기 전반에 걸쳐 고객의 요구를 제품에 반영해야 하는 생산 환경으로 정의될 수 있다. 이러한 고객지향 수주생산 환경에서의 고객 및 제품 사양, 그리고 설계 변경에 의한 BOM(Bill of Materials) 변경 업무는 영업, 설계, 생산, 조달, 원가, AS 등의 기업 내 거의 모든 부문에 걸쳐 정보연계가 발생하고, 각 부문 간의 정보연계는 매우 긴밀하게 연관되어 있어서, 이들 변경 내용들은 각 부문의 업무 및 관련 정보시스템에 즉각적으로 반영되어야 한다(정순일 등, 2008). 또한, 이렇게 복잡한 BOM 변경 업무를 시스템으로 구성하기 위해서는 제품 사양 및 설계 변경의 유형, 그리고 이에 따른 BOM 변경 유형을 체계적으로 분류하고 데이터베이스화 하여 관리할 필요가 있다. 따라서 제품 사양 및 설계 변경에 의한 BOM 관리 시스템의 구축은 BOM 변경에 대한 기업 내 관련 부문에 대한 연계를 업무프로세스 측면과 정보구조 측면의 모든 면을 고려하여 통합관리 할 수 있어야 한다(도남철, 2003).

이렇게 기업의 업무 프로세스가 복잡하고, 다양한 응용 시스템들을 연계하기 위하여, 최근 주목을 받고 있는 솔루션이 업무 프로세스 관리(BPM : Business Process Management)와 서비스 지향 아키텍처(SOA : Service Oriented Architecture)이다. BPM은 업무 프로세스를 도출하고 각 프로세스에 포함된 액티비티(Activity)를 정의하여 업무의 수행부서, 권한, 수행도구, 규칙 등의 일련의 흐름을 관리할 수 있도록 한다. BPM은 핵심 프로세스, 상호 기능적 프로세스 및 기업 내 전체 프로세스를 대상으로 실적 데이터를 근거로 전 직원이 참여하여 구조적, 체계적, 분석적 접근방식을 통해 점진적 프로세스 개선을 도모하는 것으로 정의될 수 있다(최성, 2005). 그리고 업무 프로세스 관리 시스템(BPMS : Business Process Management System)은 기업이윤 창출을 위한 프로세스의 지속적인 개선을 목표로 프로세스 라이프 사이클(업무 프로세스의 분석, 정의, 실행, 개선)에 걸쳐 기업 내부의 자원을 통합 관리 할 수 있는 시스템으로 정의할 수 있다(김민수, 2006; 배혜림, 2006; 한용호, 2008). BPM을 도입하고자 하는 조직은 비즈니스 프로세스 수명주기 전체에 걸쳐 비즈니스 프로세스를 관리하고자 하므로 BPM 솔루션은 프로세스 정의로부터 개선을 위한 분석 기능에 이르기까지의 다양한 기능이 제공되어야 하며, 프로세스 모델링, 프로세스 검증 및 최적화, 프로세스 실행과 운영, 모니터링과 통제, 측정과 분석, 프로세스 개선에 이르는 일련의 프로세스 수명주기가 반복되면서 비즈니스 프로세스를 관리한다(김동수, 2006).

	SOA 및 BPM 기반의 정보시스템 구축 방법론: 고객지향 수주생산 환경에서의 제품 BOM 관리 적용사례

｢정보시스템연구｣ 제18권 제1호, 2009년 3월

BPM은 업무 프로세스를 중심으로 일어나는 사람과 사람, 사람과 시스템, 시스템과 시스템의 상호 작용과 명시적인 프로세스 관리 (프로세스 정의, 실행, 모니터링, 분석 등)를 지원하는 도구와 서비스로서 프로세스 모델링 도구, 프로세스 규칙 엔진, 프로세스 모니터링 도구, 프로세스 분석 도구 그리고 관리자 도구 등으로 구성된다. BPM 시스템이 제공하는 주요기능은 다음과 같다. 첫째 기업 내에서 혹은 기업 간의 보이지 않는 프로세스를 보이게 한다. 둘째, 프로세스를 기준으로 사람과 사람이 수행하는 의사소통 및 자료와 업무의 배분 등을 최대한 자동화 한다. 셋째, 업무를 중심으로 통합된 시스템 환경을 제공한다. 넷째, 프로세스 처리 이력을 통한 측정을 지원한다. 다섯째, 변화된 프로세스를 쉽게 적용할 수 있도록 지원한다. 여섯째, 경영환경의 변화에 따라 수반되는 업무처리방식과 규칙의 변화에 적은 비용으로 유연하게 적응할 수 있게 한다(최성, 2005). 이러한 BPM의 기능을 활용하면 복잡한 제품 사양, 설계, BOM 변경 업무 프로세스를 보다 체계적이고, 효율적으로 관리 할 수 있다.

그러나 기존의 BPM 도구는 업무 프로세스를 도출하고 도출된 프로세스를 관리하는 측면에서는 매우 유용하고 효율적이라고 할 수 있으나, 정보시스템화 되어 있는 기업 내의 업무간 정보연계를 효율적으로 관리, 운영할 수 있는 방안에 대해서는 취약하며, 특히 업무 프로세스와 업무간 정보 서비스의 관계를 명확하게 정의하지 못하였다. 이러한 BPM의 취약 부분인 정보시스템 간의 연계 통합 부분을 해결해 주는 것이 SOA 이다.

SOA란 "서비스를 요청하거나 제공하여 응용 프로그램 기능이 가능하도록 할 수 있도록 하는 정책이나 관례 또는 골격"이다(Mark, 2004). SOA는 서비스로 구성되어 있으며, 개방된 표준을 사용하여 서비스간의 의사소통을 하는 아키텍처로 볼 수 있다. SOA는 비즈니스를 여러 측면에서 변화시킬 수 있다. 비즈니스 구성방법, 애플리케이션을 구축하고 관리하는 방법, 조직이 이용하는 기술과 구입한 제품 등에 대한 모든 변화를 SOA를 기반으로 한 시스템 통합을 위해 효율적인 방식으로 이끌 수 있다. 서비스의 형태로 구성된 현재의 애플리케이션을 통해, 그 기능을 다른 비즈니스를 위해 재사용할 수도 있다. 따라서 애플리케이션의 생명주기를 늘리고, 새로운 기능을 개발하는 비용을 줄임에 따라 레거시(Legacy) 애플리케이션의 ROI(Return on Investment)를 증가시킬 수 있다. SOA를 통해 서비스로 구성되어 있는 기존 애플리케이션의 가치를 높임으로써 새로운 애플리케이션이 기존 애플리케이션과 연계하여 보다 빠르게 실제 시스템에 배치될 수 있으며, 보다 빠르게 최종 사용자에게 서비스될 수 있게 한다. 이러한 서비스 민첩성으로 인하여 기업은 새로운 제품과 서비스를 경쟁사보다 더 빠르게 시장에 내 놓을 수 있으며, 변화하는 비즈니스 환경에 보다 빠르게 대응할 수 있다(조재훈, 2006).

최근 BPM과 SOA의 연계를 통해 업무프로세스 관리 측면과 서비스 아키텍처의 구축 측면을 통합하려는 연구가 일부 진행되어 오고 있다(Thomas, W. etc., 2005, Steen Brahe, 2007, Van der Weken, D. etc., 2008). 그러나 대부분의 연구에서는 BPM과 SOA의 연계를 위해 BPM 프로세스 상에서 기존 레거시 시스템의 서비스를 호출하는 방법을 사용함으로써 기존시스템과 BPM의 활용도를 높였으나, BPM과 SOA에서 공유될 수 있는 서비스 구축 방법에 대한 명확한 제시가 없었다. 또한 BPM 개발도구도 BPM과 SOA의 연계방법 및 BPM 모델링 도구에서의 서비스 구성 기능을 제공하고 있으나, 여전히 업무프로세스와 시스템 서비스와의 관계를 명확히 설명하고 있지 못하다(TmaxSoft, 2005).

따라서 본 연구에서는 BPM의 프로세스, 액티비티 등의 업무활동 요소와 SOA의 서비스와의 관계를 규명하고, 재정의 하여 시스템 구축 시 이러한 서비스 아키텍처 구성을 보다 효과적으로 할 수 있는 시스템 구축 방법론을 제시하고, 그 유효성의 입증을 위하여 고객지향 수주생산 환경의 제품 BOM 관리 시스템을 대상으로 프로토타입 시스템을 구축하고자 한다. 본 방법론에서는 업무의 프로세스를 도출하여 생성, 관리하는 부분에는 BPM 도구를 이용하고, BPM상의 실제 업무 프로세스 및 액티비티, 태스크가 구동되는 과정을 분석하여 SOA의 서비스들을 추출하였으며, 이러한 서비스들을 조합하여 보다 효율적인 정보운용을 위한 아키텍처를 구축할 수 있도록 하였다.

Ⅱ. SOA 및 BPM 기반의 정보 시스템 개발 방법론

본 연구의 방법론은 BPM의 프로세스와 SOA의 서비스에 관한 이질적인 관점을 프로세스 모형화 및 서비스 추출 수준에서 통합 모형화 하는 접근법이다. BPM의 프로세스, 액티비티(Activity), 태스크(Task: 액티비티 하위의 시스템 로직)는 SOA에서 정의하는 서비스와는 의미가 다르다. 프로세스에 대한 서비스를 선정하기 위해서는 시스템 구현의 수준에서 서비스를 추출하고 조합해 가는 별도의 절차가 정의되어야 한다.

본 개발 방법론은 크게 계획/준비, 분석/설계, 그리고 구현/테스트/설치의 세 단계로 구분할 수 있고, 각 단계별로 다음의 <그림 1>과 같은 세부적인 단계로 구성된다. 각 단계에 대한 세부적인 설명은 다음과 같다.

1) 계획 / 준비 단계

이 단계에서는 BPM 적용을 위한 계획 및 프로젝트 범위를 결정하고 대상 프로세스를 선정하여 기존 프로세스를 분석하는 단계이다. 이 단계의 최종적인 산출물은 기존 프로세스의 분석 정보이며, 이러한 정보를 기준으로 분석/설계 단계에서 To-Be 프로세스를 모형화 할 수 있다. 계획/준비 단계는 다음과 같은 세부적인 단계를 거친다.

<그림 1> SOA 및 BPM 기반의 정보시스템 개발 방법론

ⓐ 프로젝트 착수 및 계획 수립

프로젝트의 범위를 선정하고 프로젝트의 전반적인 계획을 수립하는 단계로 프로젝트 대상기업에 대한 내· 외부의 환경 분석 및 현안 분석을 통해 BPM 및 SOA 기반의 시스템 구축의 방향을 제시한다. 산출물로는 사업 방향 분석서 및 프로젝트 추진계획서 등이 있다.

ⓑ 대상 프로세스 선정

BPM 및 SOA를 적용할 대상 업무영역과 프로세스를 선정하고 우선순위를 정의하는 단계로 대상 업무영역에 대한 프로세스 정의서가 산출물이다. 대상 프로세스 선정에 관하여는 많은 연구가 있으나, 일반적으로 조직의 핵심 프로세스 중에서 BPM 및 SOA 적용을 통해 효과를 낼 수 있는 후보 프로세스를 선정하고 예상되는 위협 요인, 기회요인 등에 대한 분석을 통해 적용 대상 프로세스를 선정하게 된다.

ⓒ 요구사항 정의

요구사항 정의 단계에서는 개발 시스템에 대한 기능적 요구사항 뿐만 아니라 시스템의 성능, 안정성, 확장성 등의 요건을 정의하며, 각 부문별 요구사항에 대한 목록과 기능요건 정의서가 산출물이다.

ⓓ 현행(As-Is) 프로세스 분석

현 업무에 대한 프로세스 모델링 작업을 통해 프로세스를 이해하고, 문제점 및 이슈사항, 요구사항 등을 파악하는 단계이다. As-Is 프로세스의 분석을 통해 기존 프로세스의 개선 방안을 제시하며, 타 부문 또는 유사 사례의 검토를 통하여 개선(To-Be) 프로세스 모형을 위한 정보를 제공한다. As-Is 프로세스 모델, 요구사항 정의서 및 개선방안 정의서 등이 산출물이다.

2) 분석 / 설계 단계

이 단계에서는 BPM 적용 방법과 서비스 추출 방법을 연계하는 단계이다. BPM 적용 방법은 프로세스를 정의하고 각 프로세스의 하위 액티비티와 태스크를 세부적으로 정의한다. 서비스는 프로세스, 액티비티, 태스크와 기존의 부문별 애플리케이션의 고유기능 및 정보구조에 대한 정의를 모두 분석하여 추출된 후보 서비스를 조합 및 분류함으로써 정의되고 설계된다.

ⓐ 프로세스, 액티비티, 태스크의 정의

프로세스는 시작과 끝이 명확한 일련의 액티비티들의 흐름을 정의하는 단위로, 일반적으로 모듈화를 통한 공통요소로 활용할 수 있는 업무를 의미한다. 액티비티는 프로세스를 구성하는 개별 업무로 인식하는 업무단위로서 각각에 대해서 수행주체(Participant), 수행에 필요한 도구(Application) 및 수행하는데 지켜져야 하는 업무규칙(Properties)이 정의된다. 태스크는 액티비티를 구성하는 시스템 또는 업무의 트랜잭션 단위이다. 액티비티의 조건, 상태에 따라 구동, 분기, 동기화 하여 동작하며, 페트리넷(Petri Net) 또는 UML(Unified Modeling Language)의 상태 다이어그램(State Diagram) 등으로 표현이 가능하다. 이 단계에서 각 업무의 수행 주체와 수행도구, 업무 규칙 등이 정의된다. 산출물로는 To-Be 프로세스 정의서 및 워크플로우(Workflow) 정의서, 프로세스 실행 모형 등이 있다.

ⓑ 애플리케이션 분석 및 정의

시스템 도입 이전에 사용되고 있던 기존 애플리케이션에 대한 분석을 수행한다. 애플리케이션의 분석 및 정의가 선행되어야 기존에 사용되고 있는 정보와의 인터페이스(Interface)를 정의할 수 있으며, 분석 결과를 이용하여 어플리케이션 서비스 레이어의 구성이 가능하다. 일반적으로 기존 애플리케이션과의 인터페이스는 EAI(Enterprise Application Interface) 형태로 구성된다. 본 방법론에서는 이러한 EAI 형태의 인터페이스를 서비스 래핑(wrapping) 단계를 거쳐 하나의 서비스 레이어로 구축하고, 다시 비즈니스 서비스 레이어와 연계하여 서비스 구조를 만든다. 애플리케이션 분석 및 정의 단계에서 산출물로는 애플리케이션 서비스 정의서 및 인터페이스 I/O 정의서가 있다.

ⓒ 후보 서비스 추출

본 개발 방법론의 주요 관심은 서비스의 개념을 확정하는 것과 BPM의 액티비티 및 태스크와 비교하여 적절한 후보 서비스(Service)를 도출하고, 후보 서비스를 SOA의 오케스트레이션 서비스 레이어(Orchestration Service Layer), 비즈니스 서비스 레이어(Business Service Layer), 애플리케이션 서비스 레이어(Application Service Layer) 별로 분류하고 조합하여 BPM에서 서비스를 연계하도록 구축하는데 있다. <그림 2>는 후보서비스를 추출하여 조합 및 분류하는 과정을 간략히 도식화한 것이다. 후보 서비스를 추출하는 단계는 다음과 같다.

i) 비즈니스 서비스 오퍼레이션 후보를 식별한다. 서비스는 자동화할 수 있는 작업 단위를 의미하므로 자동화 될 수 없거나 수작업으로 이루어지는 프로세스 단계는 제외된다. 또한 서비스 후보 대상이 아닌 시스템 로직이 수행하는 프로세스 단계도 제외된다.

ii) 오케스트레이션 서비스 레이어의 로직을 추상화한다. 오케스트레이션 서비스 레이어란 비즈니스 서비스 레이어 상위의 서비스 레이어로서 비즈니스 서비스를 조합하여 매우 복잡하고 구조적인 작업을 수행하는 서비스 레이어를 의미한다. 이러한 서비스는 후보 서비스 추출 단계에서 미리 고려하여 비즈니스 규칙이나 조건부 로직, 예외 로직, 순차적 로직 등의 유형들을 추상화하여 둔다.

iii) 비즈니스 서비스 후보를 생성한다. 비즈니스 서비스는 각 부문별 어플리케이션 단위의 서비스를 조합하여 비즈니스 프로세스를 구성하는 서비스로서 액티비티 중심 또는 정보 엔티티 중심의 비즈니스 서비스 분류 기준을 선정하여 서비스 후보를 생성한다.

iv) 서비스 지향 원칙을 재검토한다. 후보 서비스의 가치와 서비스 지향 원칙에 충실한지 검토하고 필요에 따라 서비스를 재정의 한다. 서비스 지향 원칙은 재사용성, 자율성, 무상태성, 발견성이다.

<그림 2> BPM 기반의 후보 서비스 도출 및 SOA 서비스로의 연계

ⓓ 서비스 조합 및 분류

도출된 비즈니스 서비스 후보를 오케스트레이션 서비스 레이어, 비즈니스 서비스 레이어, 어플리케이션 서비스 레이어별로 조합하고 분류한다. 이러한 서비스의 조합은 비즈니스 프로세스 범위 내에서 발생할 수 있는 일반적인 시나리오에 대해서만 수행한다. 이 단계의 산출물로는 서비스 정의서 및 서비스 구조 모델 등이 있다. 세부적인 서비스 조합 및 분류 과정은 <그림 3>과 같다.

ⓔ UI와 서비스의 정의 및 설계

정의된 프로세스, 액티비티, 태스크 그리고 서비스를 기반으로 하여 시스템에 필요한 서비스를 정의 및 설계 하고 또한 유저 인터페이스(UI : User Interface)를 정의한다. 시스템에서 사용될 UI의 종류는 업무 비즈니스를 직접 수행하는 사용자 환경의 프로세스 실행 UI와 외부 인터페이스 정의, 통계 분석자료, 모니터링 등으로 분류할 수 있다. 서비스 및 UI 설계의 결과가 바로 구현에 적용될 수 있도록 상세한 수준으로 설계된다. 산출물로는 메시지 정의서, 서비스 정의서, BPEL(Business Process Execution Language) 모형이 있다.

<그림 3> 서비스 조합 및 분류과정

3) 구현 / 테스트 / 설치 단계

정의된 업무 프로세스와 액티비티, 태스크를 BPM 도구에 적용하고 도출된 서비스를 구현하여 시스템을 구축하는 단계이다. 정의된 업무프로세스 적용을 위해서 BPM 도구를 이용하고, 또한 정의된 서비스를 구현하기 위하여 메시지 정의서, 서비스 정의서 등을 이용한다.   또한 서비스의 구동은 BPM에서 화면을 호출하거나 직접 서비스를 호출하여 실행한다. 이후 단위 모듈별 테스트, 전체 테스트, 데이터 이관 작업 및 시스템 운영 이관 등의 작업을 수행한다. 구현/테스트/설치 단계는 다음과 같은 세부적인 단계를 거친다.

ⓐ BPM 프로세스 적용

정의된 업무 프로세스 및 액티비티를 BPM 도구에 적용하는 단계이다. 업무 프로세스 적용의 범위, 참여자, 작업도구, 기한, 경고, 분기 규칙 등을 정의하여 도구에 반영한다. 또한 업무 프로세스가 진행되는 과정에 대한 자원관리 및 액티비티 수행에 대한 관리정보도 함께 반영한다. 최종 산출물로는 BPMN(business Process Management Notation)과 프로세스 정의서 등이다.

ⓑ 서비스 및 UI 구현

도출된 서비스를 구현하고 서비스를 구동하고 결과를 집계하여 보여주는 화면을 구현한다. 서비스 구현은 웹 서비스(Web Service) 구현 도구를 이용하여 도출해 내며, UI는 BPM 도구 및 사용자 요구사항에 의하여 구현한다.

ⓒ 테스트 및 보완

정의된 프로세스의 구동 및 서비스 구동을 테스트하고 보완한다. 산출물은 단위, 모듈, 통합 각 단계의 테스트 결과서이다.

ⓓ 운영 이관

시스템의 운영을 위하여 모든 관련 문서를 사용자에게 인계하고 시스템 사용법을 교육한다. 최종 산출물은 시스템/데이터 이행계획서, 사용자 매뉴얼, 사용자 교육계획서 등이다.

위에서 기술한 SOA 및 BPM 기반의 정보시스템 구축 방법론의 개발 단계별 작업 공정별 산출물들은 <표 1>과 같이 정리할 수 있다.

<표 1> 개발단계별 작업공정별 산출물

Ⅲ. SOA 및 BPM 기반의 제품 BOM 관리 시스템 구현

3.1 사례적용대상 업무 프로세스의 이해

제품 BOM관리 업무와 관련하여 고객지향 수주생산 환경을 갖는 기업들의 주요 특징은 다음과 같다(정순일 등, 2008).

첫째, 고객 주문에 따른 제품사양을 기반으로 한 제품생산체제를 운영한다. 둘째, 고객, 기술 제휴업체, 그리고 생산부서 등으로부터의 빈번한 설계변경 발생으로 인한 맞춤형 제품사양관리 방식을 운영한다. 셋째, 수주생산과 설계생산의 성격을 복합적으로 보유한 생산 형태로 운영된다. 이러한 고객지향 수주생산 환경이 가지는 특징 때문에 발생하게 되는 제품사양 및 설계변경의 발생 요인을 정리하면 제품사양변경, 기술제휴사의 정보변경, 설계개선, 생산환경 변화, 생산방법개선, 주문사특별요청, AS조건 등으로 나눌 수 있다. 또한, 이러한 발생 요인에 대해 설계변경의 유형과 제품 BOM 변경 프로세스를 정리 할 수 있다(신정범 등, 2008).

사양 및 설계변경 담당자는 변경유형에 대한 정확한 정보만 알 수 있다면 설계변경 유형에 따라 BOM이 변경처리 되는 부분을 찾을 수 있으며, 이러한 정보는 제품 BOM 정보 전체에 대해 정확한 변경점(change point)에 대한 정보를 제공한다(신정범 등, 2008).

제품 BOM 변경관리는 변경요청, 분석 및 검토, 수행, 그리고 통보의 네 가지 단계로 이루어진다. 사양 및 설계 변경 요청자가 변경요청서를 작성하여 통보하면, 변경관리 총괄 담당자에게 온라인으로 전달된다. 변경관리 총괄 담당자는 사양 및 설계 변경사항을 검토하여 적합한 담당팀과 담당자를 선정한다. 선정된 담당자는 사양 및 설계 변경 요청사항에 대해 기술검토, 원가검토, 생산가능성 검토를 수행한 후, 사양 및 설계 변경이 가능하다고 판단하는 경우에만 변경추진계획을 수립하며, 변경이 불가한 경우는 변경불가 통지를 한다. 변경추진계획에 대해 승인을 득한 후, 사양/설계 변경 및 그에 따른 BOM 변경을 수행하게 되고 변경통보서를 작성한다. 담당자는 설계 및 BOM 변경 통보서에 대해 승인을 득한 후, 관련 부문별로 변경통보서를 배포한다. 배포된 변경통보서를 접수한 각 부문에서 설계 및 BOM 변경에 대해 조치결과를 입력하면 BOM 변경 절차가 끝나게 된다.

<그림 4>는 사양 및 설계 변경에 의한 BOM 변경 업무 프로세스를 도식화한 것이다.

사양, 설계 및 BOM 변경에 대한 정보의 정합성 유지를 위해 변경 업무의 각 단계별로 다음과 같은 기능이 필요하다.

<그림 4> 사양 및 설계 변경에 의한 BOM 변경업무 흐름도

1) 변경 요청

사양 및 설계 변경요청자가 제품구분, ECR(: Engineering/ Configuration Change Request) 요청구분, 문제 또는 개선사항이 발생한 프로젝트번호, 문제 또는 개선사항이 발생한 부품(Part) 번호, 도면번호, 부품관리번호, ECR 주제 등의 정보를 입력한다. 그리고 변경요인, 변경내용 등 변경에 대한 요인과 내용을 선택하고 의뢰내역을 요약하여 변경요청을 하고자 하는 내용을 간략하게 기술한다. 변경요청 시에 이미 요청된 사항 또는 유사한 요청에 대한 정보에 대한 검색이 필요하다. 또한 모든 변경요청에 대한 진행 상황을 파악함으로써 원활한 업무 진행에 대한 지원이 필요하다. 특히 유사한 변경요청사항의 변경처리과정을 모니터링 함으로써 추가적인 요청 및 업무의 진행 여부를 판단할 수 있도록 한다.

2) 분석 및 검토

변경요청 사항에 대하여 변경 전과 후의 정보를 조회하고 차이점을 구분할 수 있도록 한다. 검토담당자 선정 시에는 변경요청사항에 대한 프로젝트 정보 및 변경범주(사양/부품/도면), 변경요인, 변경내용, 변경대상 부품(PART) 정보, 도면정보 등을 기준으로 검토 담당팀, 기술검토 담당자, 원가검토 담당자, 타 부문연계 담당자를 선정하고 검토 결과에 대한 승인담당자를 선정한다. 검토담당자 선정 후에는 각 담당자에게 검토의뢰를 한다. 담당자 검토는 변경내용 접수 및 적용범위, 의뢰내용 요약 등의 일반적 검토이고, 외부 검토는 변경에 관한 기술검토, 원가검토, 타 부문 연계검토의 결과이다. 검토결과에 따라 승인담당자는 변경을 추진할 것인지 취소할 것인지에 대해 결정하고 추진계획을 수립한다.

사양 및 설계 변경에 대한 기술검토는 기술제휴사의 설계조건, 소재가공에 대한 조건, 품질보증에 대한 조건 등에 대하여 설계부서 및 생산/사업기획부서, 자재/품질부서, 원가부서, AS부서 등에서 부서 내 담당자 또는 담당팀에서 협의하여 이루어진다. 검토 시 기 변경이력정보 및 유사 변경사항, 최신 기술정보, 생산현장 상황, 진행 중인 BOM 프로세스 정보를 참조하여 검토한다.

3) BOM 변경 처리

BOM 변경처리는 변경검토 시 결정된 사양 및 설계 변경유형에 따라 BOM 변경유형이 결정된다. 사양 및 설계 변경유형에 따라 발생되는 BOM 변경은 프로젝트별 사양정보 변경, 표준 BOM 구조 및 속성 변경, 부품(PART) 변경, 도면 변경, 프로젝트 BOM 구조 및 속성 변경, 부문별 BOM 정보 변경으로 구분할 수 있다. 사양 및 설계 변경 요청사항에 대한 분석 및 검토결과 접수 후, BOM 변경승인의 결과로 BOM 변경이 수행된다. BOM 프로세스의 각 단계에서 변경이 발생하면 변경발생 이후의 단계는 기 정의한 설계변경 유형에 대한 BOM 변경 프로세스에 의해 변화한다(신정범 등, 2008). 예를 들면, 표준 BOM의 변경은 표준정보인 부품정보 및 도면정보의 변경을 수반하며 변경된 부품 및 도면정보는 프로젝트별 정보에 참조되어 반영된다.

<그림 5> 기능요건 정의서 및 As-Is 프로세스 모형

4) 변경 결과 통보

설계변경 담당자는 승인 받은 변경통보서를 통해 변경처리에 영향을 받는 해당 부서에 변경처리결과를 통보한다. 각 부서별로 통보되는 정보를 정리하여 보면 영업기획/영업부서는 단가/예산 변경정보, 생산/사업기획부서는 제작일정 및 시운전일정 변경정보, 자재/품질부서 및 협력사는 재고통제 및 진척 변경정보, 원가부서는 실행예산 수정정보, AS 부서는 운항엔진 수정예상 정보 등을 통보 받는다.

<표 2> BOM 변경처리업무의 프로세스, 액티비티, 태스크

3.2 제품 BOM 관리시스템 구현

지금부터 본 방법론을 적용하여 고객지향 수주생산 환경에서의 사양 및 설계 변경에 의한 BOM 변경 관리를 위한 제품 BOM 관리 시스템의 개발 절차와 산출물을 제시하고자 한다.

1) 계획 / 준비 단계

프로젝트의 범위는 사양 및 설계 변경에 의한 제품 BOM 변경 관리 업무를 시스템으로 구축하는 것이며 대상 프로세스는 사양 및 설계 변경 프로세스와 제품 BOM 변경 프로세스의 두 가지로 구분된다. 시스템의 요구사항은 사양 및 설계 변경 업무절차 준수와 제품 BOM 변경 프로세스에 의한 BOM 정보 정합성 유지 등의 요구사항 리스트와 기능요건 정의서로 정의된다. 그리고 As-Is 프로세스 정의는 워크플로우(Work Flow) 다이어그램으로 표현된다. <그림 5>은 기능요건정의서와 As-Is 프로세스 모델을 나타낸다.

2) 분석 / 설계 단계

분석 및 설계 단계의 주요 산출물은 To-Be 프로세스 모델과 서비스 모델이다. As-Is 프로세스 모델로부터 To-Be 프로세스를 도출해 내고 도출된 프로세스에서 액티비티와 태스크를 도출해서 To-Be 프로세스 모형을 작성한다.

<표 2>는 BOM 변경처리 단계를 업무프로세스 관점에서 프로세스와 액티비티, 그리고 태스크를 도출하고 그 결과를 도표로 나타낸 것이다. 프로세스는 업무 구분 단위로 나누었으며 액티비는 해당 프로세스 하위의 주요 기능을 의미한다. 또한 태스크는 액티비티 하위의 정보 처리단위로 구분하여 정의하였다.

<표 3>은 도출된 프로세스와 액티비티, 태스크를 기초로 하여 후보 서비스를 도출한 결과를 도표로 나타낸 것이다. 업무프로세스와 서비스는 업무적 측면과 시스템적 측면에서 볼 때, 구조적인 차이가 있다. 업무 프로세스의 구조는 해당 업무가 수행되는 과정을 계층적인 구조로 나타낼 수 있는 반면, 서비스의 구조는 시스템에서 구성되는 위치와 재사용성, 그리고 독립적 구동의 측면을 고려할 때 계층구조보다는 망구조가 표현하기 용이하다.

<표 3> 프로세스, 액티비티, 태스크 레벨의 후보서비스

후보서비스의 추출 과정은 이러한 상이한 구조를 연계하기 위한 중간과정으로 볼 수 있다.  이 과정에서 추출된 프로세스 레벨의 후보서비스인 프로젝트 사양정보 변경서비스는 사양정보가 변경됨에 따라 하위 정보를 연계하여 변경할 수 있는 서비스로 정의하였고, BOM정보 변경서비스는 표준, 프로젝트, 부문별 BOM에 관계없이 BOM 정보를 변경할 수 있는 서비스로 규정하였다. 이 과정에서 업무관점에서 각 프로세스가 서비스에 포함되었다. 또한, 이러한 후보 서비스 하위에 각각의 기능을 수행하는 액티비티 레벨의 서비스를 도출하였다. 태스크 레벨의 후보서비스는 정보 입출력의 단계에서 수행되거나 입출력 조건에 관한 기본적인 로직을 포함하는 서비스로 정의하였다.

도출된 후보서비스를 각  레이어별 서비스로 분류 및 조합하기 위하여 다음과 같은 과정을 거쳐 작업하였다.

ⓐ 서비스 조합 후보 식별

BOM 변경 프로세스 상에서 일반적으로 발생하는 변경처리 과정을 서비스 후보로 지정하였다. 각 프로세스, 액티비티, 태스크 Level 별 후보서비스를 정리하여 <표 3>의 내용과 같이 정의하였다.

ⓑ 비즈니스 서비스 오퍼레이션 그룹 조정

후보서비스의 수행 부서, 담당자, 액티비티 또는 태스크 별로 후보서비스 그룹을 나눈다. 특히 부서와 액티비티 중심으로 후보서비스 그룹을 분류하여 BOM 변경 서비스가 대부분 액티비티 단위로 서비스 그룹 구성되었다.

ⓒ 어플리케이션 처리 요구사항 분석

BOM 변경 프로그램 상에서 어플리케이션 처리에 대한 요구사항을 정리한다. 특히 BOM 변경 의 핵심기능인 사양수정, 기능단위정보수정,  BOM 구조 수정,  BOM 속성 수정, PART 수정, 도면수정 등의 그룹으로 요구사항을 정리하였다.

ⓓ 어플리케이션 서비스 후보 생성

서비스 그룹별로 요구사항을 정리/검토하고 검토 결과를 기반으로 서비스 후보를 재조정한다. BOM 변경처리 과정의 데이터베이스 처리를 중심으로 서비스 후보를 조정하여 사양,BOM, PART, 도면정의 로딩, Insert, update, Delete 등의 어플리케이션 서비스 후보를 도출하였다.

ⓔ 후보 서비스 조합 조정

지금까지의 각 후보 서비스에 대한 업무과정을 검토한 후 서비스 레이어별 분류 및 조정 작업을 수행한다. 어플리케이션 서비스를 포함한 비즈니스 로직 구성을 검토하여 구성하고 기본 입출력을 제외한 입력조건 검사 등의 로직 단위를 비즈니스 서비스 레이어에 포함하였다. 또한, 비즈니스 서비스의 조합하여 각 비즈니스 서비스를 통제하여 조합하는 오케스트레이션 서비스를  구성하였다. <그림 6>은 이러한 서비스의 구성을 그림으로 나타낸 것이다.

ⓕ 어플리케이션 서비스 오퍼레이션 그룹 조정

비즈니스 및 오케스트레이션 레이어의 분류 및 조합으로 인한 어플리케이션 서비스의 추가적인 조정을 수행한다. 예를 들어, 오케스트레이션 서비스의 입력조건 검사 또는 비즈니스 서비스 간의 조합 등의 로직으로 인하여 표준 BOM 및 프로젝트 BOM 로딩 서비스의 조정하였다.

<그림 6> BOM 관리 시스템 서비스 구조도

<그림 7>은 TmaxSoft의 BPM 개발도구인 BizMaster 4.5의 WorkFlow Modeler를 사용하여 프로세스를 모형화 한 결과이다. <그림 7>에서 접두어가 HM인 액티비티는 수작업 프로세스이고, WS는 WebService, WF는 WorkFlow, BE은 자동화 서비스를 사용하는 프로세스를 의미한다.

<그림 8>은 사양 변경이 발생하여 변경된 프로젝트 사양이 기존의 어플리케이션 서비스를 호출함으로써 자동으로 반영되는 서비스를 표현한 것이다. 여기서 서비스는 프로세스와는 구조적으로 연계되어 있지 않지만, 업무 프로세스 하위의 액티비티와 태스크를 분석하여 기존 어플리케이션 서비스와의 연계를 도출하고 서비스로 정의한다. <그림 8>에서 invoke라고 명명된 개체가 다른 어플리케이션 서비스 호출을 위한 개체이며,  서비스의 설계를 위해서 TmaxSoft의 BPM 개발도구인 BizMaster 4.5의 Business Process Designer(BPD)를 사용하였다.

<그림 8> 서비스 정의 및 BPEL 모형

다음은 BPD 도구의 접두어가 가지는 의미를 설명한 것이다.

ⅰ) Receive : 메시지를 받는 액티비티

<그림 7> To-Be 프로세스 모델

ⅱ) Reply : Request-Response 오퍼레이션에서 사용되는 것으로 받은 메시지에 대한 응답 메시지를 보내는 액티비티

ⅲ) Invoke : 외부의 서비스를 호출하는 액티비티

ⅳ) Assign : 데이터 값을 복사하는 액티비티

ⅴ) Sequence : 포함하는 액티비티들을 순서대로 실행하는 액티비티

ⅵ) Switch : 조건에 따라 분기하는 액티비티

ⅶ) Flow : 포함하는 액티비티들을 동시에 실행하는 액티비티

<그림 9> 프로젝트 사양, 표준 BOM, 도면정보 변경 관리 화면

3) 구현 / 테스트 / 이행

설계 단계에서 정의된 프로세스에 대하여 BPM 도구를 적용하고, 각 프로세스에서 필요한 화면을 구성하여 각 프로세스 수행시 링크로 연계시킨다. 시스템 구현은 BPM 도구 외에 어플리케이션 화면 개발 도구로 X-Internet 기반의 개발 도구인 MiPlatform을 사용하여 구축하였다.  <그림 9>는 구현된 시스템 중 프로젝트 사양변경, 표준BOM 변경, 도면정보 변경 화면을 나타낸다. 실행은 각 화면의 기능 수행 시 설계에 따라 구현된 사양정보 변경 서비스, BOM 변경 서비스, 도면 및  부품 변경 서비스 등을 호출하여 구동한다. 또한 이러한 화면은 BPM에서 프로세스 구동 중 관리되고 호출되어 사용된다.

Ⅳ. 결론 및 향후 연구방향

고객지향 수주생산 환경에서 사양 및 설계 정보는 제품 사양의 변화, 기술제휴사의 도면정보 변경 등의 여러 요인에 의해 변경이 발생하고, 발생된 변경 내용들은 제품 BOM에 즉각적으로 반영되어 기업 내의 전 부문에 걸쳐 영향을 미치게 되므로, 기업에서는 사양, 설계, BOM의 변경에 대한 업무를 체계적으로 분류 및 정의하고, 시스템화 하여 관리하여야 한다. 또한 이러한 사양 및 설계 변경에 의한 제품 BOM 관리 시스템은 정보의 정합성 유지를 위하여 기능적 측면, 정보 구조적 측면, 업무 프로세스의 관리적인 측면 등을 고려하여 구축되어야 한다.

본 연구에서는 이러한 제품 BOM 관리 업무와 같이 복잡한 업무 프로세스를 갖는 정보시스템의 구축을 위하여, BPM과 SOA를 기반으로 한 정보시스템 개발 방법론을 제시하였고, 제시된 방법론의 유효성을 입증하기 위하여 'H'사의 제품 BOM 관리 시스템을 대상으로 프로토타입 시스템을 구현하였다.

본 연구에서 제시한 정보시스템 개발 방법론은 BPM의 구현단계에서 서비스를 연계함으로써 BPM의 실행단계에서 시스템 운용을 보다 다양화 할 수 있다. 서비스를 추출하고 적용하는 과정에 BPM 프로세스의 선정 및 추출 방법을 사용함으로써 보다 후보 서비스 추출을 용이하게 하였다. 그리고 본 방법론은 서비스를 운용하는 수준의 시스템이 아니라, 비즈니스 프로세스의 범위, 권한, 주체의 관리와 서비스를 이용한 정보 자동화의 관리를 동시에 수행함으로써, 실제적인 업무 적용에 용이하도록 하였다. 또한 SOA 기반의 BPM 적용으로 업무의 로직 표현이 용이하여 기업 내의 모든 비즈니스 프로세스에서의 적용이 가능하도록 하였다. 그러나 본 방법론은 후보 서비스를 추출하고 서비스 계층을 구성하는데 있어 BPM의 프로세스 및 액티비티를 이용하여 보다 용이하게 서비스를 구성하도록 하였으나, 여전히 프로세스와 서비스의 관계, 그리고 서비스 계층 간의 기능분담을 명확히 정의하기가 어렵고, 또한 전사적인 관점의 서비스를 도출하는 데는 한계가 있다. 이러한 한계를 극복하기 위하여 향후 전사적인 관점의 서비스 구축에 대한 방법이 연구되어야 하며, 또한 서비스 효율의 검증에 대한 연구도 필요할 것으로 사료된다.

참고문헌

김동수, "비즈니스 프로세스 관리 표준 도입 전략 및 지침 개발", 한국 IT서비스학회지, 5(2), 94-100, 2006.

김민수, 임태수, 김동수, "BPM 표준의 도입전략 및 활용 가이드라인의 개발", 한국전자거래학회지, 12(4), 249-267, 2006.

도남철, “능동형 객체지향적 데이터베이스 모델을 이용한 설계변경 개체 및 제약조건의 표현”, JOURNAL OF INFORMATION TECHNOLOGY APPLICATIONS & MANAGEMENT, 10(1), 111-125, 2003.

배혜림, 이승현, 조남욱, “TOC를 이용한 업무프로세스 효율성 향상”, 정보시스템연구, 15(1), pp.169-189, 2006.

송주석, 한희성, "SOA를 지원하는 표준기반의 BPM", 정보처리학회지, 12(3), 2005.

신정범, 김재균, 장길상, “고객지향 수주생산 환경에서 사양 및 설계 변경에 따른 제품 BOM 관리 방안”, 산업경영시스템학회지, 31(4), 121-133, 2008.

안민정, 이홍철, "서비스지향 아키텍쳐 기반의 자재관리시스템 설계", IE Interface, 20(3), 277-266, 2007.

이장근, "SOA 기반의 역할기반정보시스템 프레임워크에 관한 연구 - D 대학 사례를 중심으로", 동국대학교 정보관리학과, 석사학위논문, 2006.

조재훈, “e-Business 패턴을 이용한 효율적 SOA 구축방안”, 동아대학교 산업공학과, 박사학위논문, 2006.

정순일, 김재균, 장길상, “고객지향 수주생산 기업에서 제품정보 통합체계를 위한 제품사양관리시스템 구축”, IE Interface, 21(1), 18-32, 2008.

최성, 양정진, 한정란, "BPM 기술시장 현황과 정의", 정보처리학회지, 12(3), 18-29, 2005.

한용호, “비즈니스 프로세스 관리 시스템을 기반으로 한 CPFR 의 구현”, 정보시스템연구, 17(4), pp.321-340, 2008.

Mark, C., "Service Oriented Architecture and Web Service", IBM Technical Presentation Material, 2004.

Steen Brahe, "BPM on Top of SOA: Experiences from the Financial Industry", Business Process Management, LNCS 4714, pp. 96 - 111, 2007.

Thomas, E,; "Service-Oriented Architecture Concept Technology and Design", arcon, Seoul, Korea, 2006.

Thomas, W., Stephane, G., "BPM and SOA: Synergies and Challenges", Web Information Systems Engineering(WISE), LNCS 3806, pp. 679 - 688, 2005.

TmaxSoft, "Tmax BizMaster 4.5 Process Design & Business Process Manual", TmaxSoft, Seoul, Korea, 2005.

Van der Weken, D., Desmet, S., Muylaert, B., Van Assche, S., Volckaert, B., "Automating media processes in a Service Oriented Architecture", Computers and Communications, ISCC 2008. IEEE, pp. 97-102, 2008.

신정범(Jung-Bum Shin)

울산대학교 산업공학사 및 산업공학 석사학위를 취득하였으며, 동 대학원 산업경영공학부 박사과정에 재학 중이다. 주요 관심분야는 생산정보시스템, 정보시스템 개발 방법론(Unified Modeling Language, Service Oriented Architecture, Business Process Management), 제품정보관리 분야이다.

김재균(Jae-Gyun Kim)

인하대학교 산업공학과를 졸업하였으며, 한국과학기술원에서 산업공학 석사 및 경영과학 박사학위를 취득하였다. 현재 울산대학교 산업정보경영공학부에서 교수로 재직 중이며, 주요 관심분야는 CIM., PDM, DB응용, WEB Application, 통신망설계 등이다.

장길상(Gil-Sang Jang)

저자는 울산대학교 산업공학과를 졸업하고, 한국과학기술원(KAIST)에서 산업공학 석사와 경영정보공학 박사를 취득하였다. 또한 한국국방연구원(KIDA) 선임연구원, 한국오라클 기술지원팀장, 동국대학교 경주캠퍼스 전자상거래학과 조교수를 거쳐, 현재 울산대학교 경영정보학과 교수로 재직중이다. 주요 관심분야로 생산정보시스템, 사례기반추론 시스템, DB응용, ERP, e-Business 시스템, 객체지향 개발 방법론, 6 시그마 등이다.

<Abstract>

A Methodology of Implementing SOA and BPM Based

Information Systems :

A Case Study on Product BOM Management under Customer-Oriented Make-To-Order Manufacturing Environments

Jung-Bum Shin․Jae-Gyun Kim․Gil-Sang Jang

In customer-oriented make-to-order manufacturing environments, the works of BOM changes due to the changes of product specification and engineering are closely connected with almost all departments such as sales, engineering, production, procurement, cost, after service, etc within an enterprise. So, the contents of BOM changes must be instantly reflected on the related works among the departments. To effectively process these complex works of BOM changes, types of changes on product specification and engineering and types of BOM changes linked with those must be systematically defined, classified and managed by information systems. Thus, it is necessary to introduce solutions such as BPM and SOA in order to efficiently deal with complex business processes like BOM change management.

This paper proposes a methodology of constructing information systems based on BPM and SOA. The proposed methodology defines the relationship between processes of BPM for definition, execution, monitoring, etc of business processes and services of SOA for connection among information systems within an enterprise, and presents a scheme of practically applying BPM and SOA solutions to actual business works. To show an utilization of the proposed methodology, the prototype system for product BOM management is implemented in order to efficiently deal with the works of BOM changes due to the changes of product specification and engineering.

Keywords : BPM, SOA, engineering change, product BOM, make-to-order manufacturing,
information system

* 이 논문은 2008년 12월 12일 접수하여 2차 수정을 거쳐 2009년 1월 19일 게재 확정되었습니다.