2014년 5월 27일 화요일

BPM (Business Process Management)

BPM의 개요
조직 내의 업무처리의 생산성을 분석한 결과 업무 처리의 전체시간 중에 단지 10%만이 업무자체에 소요되고 나머지 90%의 시간은 업무간의 전이 또는 전달시간에 소요된다는 것을 알게 되면서, 업무처리 프로세스에 대한 생산성 향상 문제로 정보기술의 초첨이 바뀌게 된다. 이러한 사실이 곧 비즈니스 프로세스 리엔지니어링과 자동화를 통한 업무생산성 향상에 초점을 두게 되는 계기가 되었고, 최근 2000년대에는 프로세스중심의 정보기술(BPM)이 핵심으로 등장하였다.

워크플로우관리 기술과 웹서비스 기술 그리고 엔터프라이즈 애플리케이션 통합 기술를 기반으로 하는 비즈니스프로세스관리기술은 바로 프로세스중심 정보기술의 핵심기술이며 조직 내의 대표적인 프로세스기반 정보기술 인프라인 EAI기술 및 워크플로우 기술과 조직간의 정보관리 및 통합을 위한 대표적인 인프라인 웹서비스 및 ebXML기반의 비즈니스프로세스기술의 효율적 통합이 더욱 요망되고 있다.

BPM의 정의
  • 조직 내외부의 사람과 시스템간에 상호 작용하는 비즈니스 프로세스의 지속적이 이해와 관리를 돕는 변화 관리이고 시스템 구현방법론
  • 신축적인 프로세스 관리르 가능케 하는 접근법이며, 이를 지원하는 새로운 소프트웨어 솔류션을 BPMS라고 함
BPM 방법론의 4가지 가정 근거
  • 비즈니스 프로세스는 지속적으로변화하고 발전한다.
  • 프로세스는 상호 영향을 미친다.
  • 여러 조직과 관련된 그룹간의 프로세스 흐름을 이해하고 지원한다.
  • 발전되고 있는, 직접 실행 가능한 비즈니스 프로세스를 생성하는 BPMS라는 기술 솔루션에 근거한다.

BPM 기술의 정의
  • WfMC : BPM의 정의는 워크플로우 기술에 EAI 또는 WS 기술을 접목시킨 개념 즉, 워크플로우 중신의 프로세스 자동화
  • BPMI, W3C : 웹서비스 중심의 프로세스 협업 기술
  • 일반적인 인식 : BPM 기술이 프로세스 기반의 정보관리 시스템을 구축하기 위한 새로운 소프트웨어 솔루션의 한 축이다!

“BPM 기술은 워크플로우 기술과 EAI 기술 그리고 웹서비스 기술의 통합 솔루션이다.”

기존 솔루션에서 바라보는 BPM의 관점
  • 전통적인 프로세스 자동화 기술인 워크플로우 솔루션 관점 : BPM을 워크플로우 기술의 확장 개념으로 정의한다. 워크플로우 기술은 이기종 솔루션 간의 연동과 응용프로그램(EAI)과의 연동을 필요로 하는데, 이러한 두 가지 연동을 구현하는 기술로서 웹서비스 기술을 이용하며, 따라서, BPM의 최종목적인 조직내 프로세스와 조직간 프로세스의 통합을 구현할 수 있다고 이해하고 있다. à WfMC에서 OASIS 기반으로 Wf-XML 2.0발표
  • 웹서비스 솔루션 관점 : 프로세스 기반 웹서비스 솔루션을 BPM기술이라고 정의 한다, BPEL(Business Process Execution Language)로 표현된 웹서비스 프로세스의 실행을 구현하는 솔루션으로 BPM 기술을 정의한다.
  • 기업응용프로그램 통합 솔루션 관점 : 프로세스 기반 기업응용프로그램 통합 솔루션을 BPM 기술이라고 정의한다.

BPM 진행과정
  1. 프로세스 정의:시스템 프로세스와 일반 매뉴얼 프로세스를 포함해야 함
  2. 프로세스 설계
  3. 프로세스 적용
  4. 프로세스 실행
  5. 프로세스 운영/유지보수
  6. 프로세스 최적화
  7. 프로세스 분석

BPM의 구성요소
구분
기능
내용
Modeling Toolsets
Process Design
비즈니스 프로세스와 기업 아키텍처를 캡쳐하고, 개선하고 문서화하도록하는 비주얼 모델링 환경
Workflow Engine
Process Execution
비즈니스 프로세스와 프로스별 태스크, 그리고 리소스들을 정의하고, 구축하고 관리 가능하게 하는 기술
EAI and middleware
Message Broker
Communication Middleware
Application Adaptor
방화벽 내 어플리케이션뿐만 아니라, 방화벽 바깥의 어플리케이션까지 비즈니스 어플리케이션을 통합하도록 지원하는 기술
Business intelligence
Process Analysis
Performance Analysis
BPM 솔류션과 기업의 데이터에 기초하여 의사결정을 지원하는 분석기술

BPM의 기대효과
구분
기대 효과
업무 측면
프로세스의 단순화 및 자동화
Best Practice, 절차, 정책 등의 적용 및 강화
직원, 고객, 파트너간의 협업 및 의사소통 개선
일관성 있는 업무 처리
통제
사람,시스템, 기업 환경 등 모든 자원의 활동에 대한 가시화 및 통제 가능 지속적인 개선 가능
통합
프로세스를 기반으로 분산된 시스템 및 어플리케이션의 전사적 통합
경영인프라
업무 수행방법을 지속적으로 개선시킬 수 있는 환경 제공
시스템으로부터 프로세스 분리를 통한 유연성, 민첩성, 투명성 확보
재무
구축/운영 원가의 절감

BPMS(Business Process Management System)
  • 모델링 서비스 부분 : 비즈니스 프로세스의 모델링을 담당하는 부분
  • 엔진 서비스 부분 : 비즈니스 프로세스의 실행을 담당

비즈니스 프로세스 모델 및 시스템
비즈니스 프로세스는 Activity들의 집합으로 구성되며, 이 Activity들 간에 상호 제어순서 상의 선행 관계를 갖는다. 또한 각각의 Activity는 컴퓨터 프로그램이나 인간의 행동을 통해 구현 및 실행될 수 있으며, 이의 실행을 위한 사전 정보(Input Repository)와 실행 후의 사후 정보(Output Repository)가 정의 되어야 한다. 마지막으로 각 Activity의 실행 및 접근 권한을 정의하기 위한 조직 정보가 할당되어야 하는데, 이는 그 Activity의 실행을 담당할 Role과 그 Role에 대항하는 Actor 또는 Group을 할당함으로써 정의될 수 있다.

비즈니스 프로세스 관리 엔진
비즈니스 프로세스의 실행, 제어, 감시 및 모니터링을 담당하는 핵심구성요소이다. 실행 상태 정보를 저장하는 데이터베이스와 실행객체들의 관리를 지원하는 미들웨어 플렛폼, 실행객체들 간의 통신을 담당하는 호출 메커니즘, 그리고 엔진의 실행객체 자체들을 구성하는 아키텍쳐등으로 구성되며, 이들 각각을 어떻게 구성하느냐에 따라 엔진의 성능이 결정된다.
엔진의 성능에 가장 큰 영향을 미치는 요소는 엔진 실행 객체를 구성하는 아키텍처의 구성방법에 있다.
  • 비즈니스 프로세스를 구성하는 각 Activity가 엔진의 실행 객체로 구현되는 Activity기반 아키텍처
  • 비즈니스 프로세스 모델의 인스턴스 또는 워크케이스를 엔진의 실행 객체로 구현하는 워크케이스 기반 아키텍처

런타임 클라이언트
런타임 클라이언트는 최근에 인터넷 및 웹의 기능과 성능이 급속하게 향상되면서 웹기반으로 구현되는 것이 전반적인 상품화 시스템의 추세이다. 런타임 클라이언트의 주요 구성요소는 다음과 같다.
  1. 비즈니스 프로세스 모델 정보를 제공하는 부분
  2. 실행되고 있는 인스턴스들에 대한 상태정보를 제공하는 부분
  3. 각 Activity들의 실제적인 구현인 응용 프로그램과의 연동 부분
  4. 각종 사용자 역할에 따른 접근 제한 기능 등

차세대 비즈니스 프로세스 관리 시스템과 주요 연구개발 이슈
최근의 정보기술 인프라는 조직 내와 조직 간 정보기술 인프라들 간의 통합과 정보관리기술과 정보통합기술들 간의 통합을 효율적이고 효과적으로 지원하기 위한 자세대 비즈니스 프로세스 관리 기술을 중심으로 발전되고 있다.
차세대 정보기술의 최종 모습은 결국 웹서비스 기반의 정보기술 인프라로 수렴되어, 조직 내 및 조직 간 통합프로세스기반 정보관리 및 정보통합을 구현하는 웹서비스기반의 차세대 워크플로우 및 비즈니스 프로세스 관리 시스템이 될 것이다.
차세대 비즈니스 프로세스 관리 기술을 구성하는 주요 시스템들의 유형은 다음과 같다.
  • EAI 기반의 워크플로우 관리 시스템 : 조직 내의 프로세스 기반 정보관리 및 정보통합 기술
  • ebXML 기반의 비즈니스프로세스 관리 시스템 : 조직 간의 프로세스기반 정보관리 및 정보통합 기술
  • WS기반의 차세대 워크플로우 및 비즈니스 프로세스 관리 시스템 : 조직 내 및 조직 간의 통합프로세스기반 정보관리 및 정보통합 기술

PLM(Product Lifecycle Management)

PLM의 정의
  • 가치 사슬의주요 부문인 엔터프라이즈 비즈니스 프로세스(ERP, CRM, SCM)를 통합하고 e-business기술을 이용하여 제품 컨텐츠의 이용을 극대화하는것
  • 제품 개발 초기의 아이디어 착상에서부터 생산 및 고객에게 제품이 전달된 이후의 유지보수, 교체 및 폐기까지의 전 과정을 통합적으로 연계, 지원하는 솔루션

PLM의 목적
  • 제품 출시 기간의단축-효율적인 R&D 업무 지원
  • 제품 출시 비용의 절감
  • 시장의요구에 정확하게 부합하는 제품 출시

PLM의 주요기능
항목
주요내용
의사 소통 기준 및 표준 제시
정보 자원의 중앙집중 관리
가치사슬간 제품 대상의 의사소통 전개시 기준정보 제공
정보자원 가치의 질적 향상
지식 기반 확립을 통한 가치 창출자의 역략 극대화
가치 창출자에 책임 및 권한 부여
정보자원의 지속적 축적/공유
개인 보유 정보차원 공유를 통한 전 구성원읜 기술/지식 수준 향상 및 협업 지원
지식 기반의지속적 축적/강화를 통한 기업 경쟁력 향상
업무투명성 및 신뢰도 확보
프로세스 모니터링, 정보 공유 등을 통한 업무 투명성 확보
업무정형화/표준화 및 지속적 혁신 지원
솔루션 도입시 BPR/PI 작업을 통한 업무 정형화 및 표준화 개선과제/문제점 분석을 위한 정보를 지속적으로 제공함으로써 프로세스 혁신 지원
전 부문에 대한 정보화
제품 정보의 초기 생성을 당당하는 연구개발 부문의 정보화를 통한 전 부문 정보화 실현

PLM의 구축 효과

  • 설계변경 최소화
  • 자원활용 극대화-불필요한 업무 요소 제거/자동화
  • 납기 단축-제품개발 기간 단축, 조기 양산체계 확립, 제품 서비스 관련 작업시간 단축
  • 기업역량 강화-선진 프로세스 정작

PDM(Product Data Management)

PDM의 정의
PDM은 제품의 개념 정의에서부터 설계, 개발, 제조, 출하 그리고 고객 서비스에 이르기까지, 제품의 전 라이프사이클에 걸쳐 발생하는 각종 데이터와 정보의 흐름을 효율적으로 제어하고 관리하여 주는 시스템 및 서비스

등장배경
  • 호환이 안되는 Engineering Design과 Product Design의 유지, 보수 문제
  • 설계 BOM과 제조 BOM이 연결관계 없이 제품 구조를 보는 문제
  • 적은 시간 내에 막대한 양의제품 설계 데이터를 보는 것은 거의 불가능

EDM(Engineering Data Management)
  • PDM의 초기버전
  • 1980년대 중반부터 시작하여 등장
  • 엔지니어링 정보의 관리를 위해서 제품의 생산 데이터를 정의
  • 초기에 CAD/CAM/CAE의 한 부분으로 그들 내에 패키지화되어 있었음

PDM의 특징
  • CE(Concurrent Engineering)의 장점인 제품 개발 리드타임의 단축
  • 데이터를 필요로 하는 사람에게 필요로 하는 떄에 볼 수 있도록 관리
  • 변경이력 관리

PDM의 주요기능
데이터 관리
프로세스 관리
부품의 분류
문서의 분류
제품의 구조
데이터 질의
형상관리기능
Workflow 관리
Work History 관리

PDM의 기대효과

  • 제품개발 리드타임의 단축
  • 제품설계 정확성 및 생산성의 향상
  • 팀워크를 통한 효과적인 창의력 활용
  • 데이터 통합 및 보안
  • 효율적인 프로젝트 관리
  • 엔지니어링 변화에 대한 관리 효율 증대
  • TQM(Total Quality Management)을 위한 기초

2014년 5월 22일 목요일

Java8 Default Method

Java 8에서 추가된 기능 중 Interface에 default 선언으로 메서드를 만들 수 있게 되었다. 마치 Abstract class 처럼 사용되지만 Interface이기 때문에 다중 상속이 가능하게 되었다.


작성된 메서드에 ‘default’선언을 해준다. 먼저 Eclipse에서 Java8을 쓰기위해서는 ‘Kepler Service Release 2’을 설치하고, “Help > Eclipse Marketplace…” 메뉴에서 ‘Java 8 support for Eclipse Kepler SR2’을 검색하여 설치해야 합니다.

NamedPerson을 상속받는 Student, Contact을 만들고 그중 Student에서는 ‘fullName’메서드를 Override 합니다. 이렇게 만들어진 클래스를 테스트 해보면.

Override하지 않은 경우, 인터페이스에 정의된 Default 메서드가 동작 함을 볼 수 있습니다. 하지만 다중 상속으로 중복된 Default 메서드가 있는 경우를 테스트 해보면

NamedPerson과 동일한 AddressBookEntry을 만들어 Student와 Contact에서 상속받게 합니다.
Student의 경우에는 중복되는 “fullName”메서드가 Override되어 있기 때문에 문제가 없지만, Contact의 경우

“Duplicate default methods named fullName with the parameters () and () are inherited from the types AddressBookEntry and NamedPerson” 처럼 default 메서드가 중복되어 있다는 컴파일 오류가 발생합니다. 이런 경우에는 필히 중복된 Default 메서드를 Override 해서 해결해야 합니다.

Java8 Default Method

Java8에서 추가된 기능 중 Interface에 default 선언으로 메서드를 만들 수 있게 되었다. 마치 Abstact class 처럼 사용되지만 Interface이기 때문에 다중 상속이 가능하게 되었다.


작성된 메서드에 ‘default’선언을 해준다. 먼저 Eclipse에서 Java8을 쓰기위해서는 ‘Kepler Service Release 2’을 설치하고, “Help > Eclipse Marketplace…” 메뉴에서 ‘Java 8 support for Eclipse Kepler SR2’을 검색하여 설치해야 합니다.

NamedPerson을 상속받는 Student, Contact을 만들고 그중 Student에서는 ‘fullName’메서드를 Override 합니다. 이렇게 만들어진 클래스를 테스트 해보면.

Override하지 않은 경우, 인터페이스에 정의된 Default 메서드가 동작 함을 볼 수 있습니다. 하지만 다중 상속으로 중복된 Default 메서드가 있는 경우를 테스트 해보면

NamedPerson과 동일한 AddressBookEntry을 만들어 Student와 Contact에서 상속받게 합니다.
Student의 경우에는 중복되는 “fullName”메서드가 Override되어 있기 때문에 문제가 없지만, Contact의 경우

“Duplicate default methods named fullName with the parameters () and () are inherited from the types AddressBookEntry and NamedPerson” 처럼 default 메서드가 중복되어 있다는 컴파일 오류가 발생합니다. 이런 경우에는 필히 중복된 Default 메서드를 Override 해서 해결해야 합니다.

2014년 5월 13일 화요일

CRO(Customer Relationship Optimization)

CRO 정의
고객이 원하는 시점과 고객이 선호하는 채널, 그리고 다중채널을 통해 고객관계를 최적화하는 능력

CRO의 등장 배경
  • 기존 CRM이 진보한 개념, 기존 고객의 단순 관리의 개념에서 벗어나 고객 관리를 최적화시키는 전략을 의미
  • 단기적인 ROI가 아닌 장기간, 지속적인 수익성을 보장하기 위해 고객과의 관계를 기업의 핵심 역량으로 설정, 전사적인 차원에서 최적화하는 전략
  • 기존의 분석CRM, 운영CRM 등의 통합 CRM이 고객 최적화를 실현하지 못함에서 출발

CRO의 주요 특징
  • 적시성
고객이 원하는 시점을 파악
  • 최적 채널
기업이 선호하는 채널이 아닌 고객이 선호하는 채널
  • 실시간 고객의 행위변화까지도 파악
다양한 채널에서 발생하는 고객의 행위변화까지 파악하여 마케팅을 지원

CRM과 CRO의 비교
구분
CRM
CRO
목적
단순 고객관계 관리
최적화된 고객 관계관리
특징
채널별로 개별적으로 수행
Right time, Right Channel
영역
통합 CRM
통합 CRM + 이벤트 기반 캠페인 관리솔루션

CRO의 향후 전망

  • 고객을 대상으로 한 기업의 효율적인 마케팅 전개를 위한 장기적인 수익모델
  • 고객 정보를 활용하여, 고객의 실질 수요를 발굴하여 고객 마케팅을 최적화

Which Mobile App Development Option is Better?

Different alternatives to native code development have their own advantages and philosophy behind. No one tool or approach can be clearly ma...