KR20100059947A - 비지니스 프로세스를 재사용가능 서비스들로 변형하기 위한 시스템 및 방법 - Google Patents

비지니스 프로세스를 재사용가능 서비스들로 변형하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20100059947A
KR20100059947A KR1020107007431A KR20107007431A KR20100059947A KR 20100059947 A KR20100059947 A KR 20100059947A KR 1020107007431 A KR1020107007431 A KR 1020107007431A KR 20107007431 A KR20107007431 A KR 20107007431A KR 20100059947 A KR20100059947 A KR 20100059947A
Authority
KR
South Korea
Prior art keywords
service
business process
process model
code
business
Prior art date
Application number
KR1020107007431A
Other languages
English (en)
Inventor
휴미에 렁
Original Assignee
인터내셔널 비지네스 머신즈 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20100059947A publication Critical patent/KR20100059947A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/067Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Data Mining & Analysis (AREA)
  • Stored Programmes (AREA)

Abstract

한 실시태양에서, 본 발명은 비지니스 프로세스에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 방법에 관해 설명한다. 이 방법은, 바람직하게 그래픽 사용자 인터페이스를 통해 제1 서비스로서 노출을 위해 비지니스 프로세스 모델 엘리먼트의 그룹을 선택하는 것, 자동화된 수단을 이용하여, 서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하는 것, 및 제1 서비스와 제2 서비스 사이에 인터페이스를 수립하기 위해 자동화된 수단을 사용하여 코드를 발생하는 것을 포함한다.

Description

비지니스 프로세스를 재사용가능 서비스들로 변형하기 위한 시스템 및 방법{SYSTEMS AND METHODS FOR TRANSFORMING A BUSINESS PROCESS INTO REUSABLE SERVICES}
본 발명은 비지니스 엔티티를 서비스 지향 구조(service-oriented architecture)에 이동시키기 위한 분야에 관한 것으로 더욱 상세히는 비지니스 프로세스에 기초하여 재사용가능 서비스를 통합하는 시스템을 수립하기 위한 시스템 및 방법에 관한 것이다.
비지니스 엔티티를 서비스 지향 구조에 이동시키기 위해선 여러 단계들이 수반된다. 한 단계는 비지니스 프로세스를 프로세스 엘리먼트의 셋트로 분해하는 것을 포함하는, 비지니스 프로세스를 모델링하는 것이다. 다음 단계는 개발된 비지니스 프로세스 모델에 기초하여 서비스 지향 컴포넌트를 통합하는 시스템을 수립하는 것이다.
서비스 지향 컴포넌트를 통합하는 시스템의 수립은 주로 수동적인 작업에 의한 프로세스이고, 특히 프로세스가 여러 사람들에게 나누어져 있는 경우엔 실행이 일관적이지 못하기가 쉽다.
이 프로세스의 효율을 개선시키는 것이 유익하다.
한 실시태양에서, 본 발명은 비지니스 프로세스에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 방법으로서, 이 방법은,
비지니스 프로세스에 관한 비지니스 프로세스 모델을 제공하는 것;
제1 서비스로서 노출을 위해 비지니스 프로세스 모델로부터 적어도 하나의 엘리먼트로 이루어 진 제1 셋트를 선택하는 것;
제2 서비스로서 노출을 위해 비지니스 프로세스 모델로부터 적어도 하나의 엘리먼트로 이루어 진 제2 셋트를 선택하는 것;
자동화된 수단을 이용하여, 제1 서비스 및 제2 서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하는 것; 및
제1 서비스와 제2 서비스 사이에 인터페이스를 수립하기 위해 자동화된 수단을 사용하여 코드를 발생하는 것을 포함한다.
또다른 실시태양에서, 본 발명은 비지니스 프로세스 모델에 기초하고 각각 제1 서비스 및 제2 서비스로서의 노출을 위해 선택된 제1 셋트의 비지니스 프로세스 모델 엘리먼트와 제2 셋트의 비지니스 프로세스 모델 엘리먼트에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 데이터 처리 시스템으로서, 이 데이터 처리 시스템은,
적어도 하나의 프로세서;
적어도 하나의 프로세서에 연결된 버스;
상기 버스에 연결된 적어도 하나의 컴퓨터로 사용가능한 매체를 포함하고,
적어도 하나의 컴퓨터로 사용가능한 매체는 명령어 셋트를 포함하고 적어도 하나의 프로세서는 상기 데이터 처리 시스템으로 하여금,
제1 서비스 및 제2 서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하게 하고; 그리고
제1 서비스와 제2 서비스 사이에 인터페이스를 수립하기 위해 코드를 발생하게 하는, 명령어 셋트를 실행하도록 구성된다.
또다른 실시태양에서, 본 발명은 비지니스 프로세스 모델에 기초하고 각각 제1 서비스 및 제2 서비스로서의 노출을 위해 선택된 제1 셋트의 비지니스 프로세스 모델 엘리먼트와 제2 셋트의 비지니스 프로세스 모델 엘리먼트에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 컴퓨터로 사용가능한 프로그램 코드를 포함하는 적어도 하나의 컴퓨터로 사용가능한 매체를 포함하는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은,
제1 서비스 및 제2 서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하기 위한 컴퓨터로 사용가능한 프로그램 코드; 및
제1 서비스와 제2 서비스 사이에 인터페이스를 수립하기 위해 코드를 발생시키기 위한 컴퓨터로 사용가능한 프로그램 코드를 더 포함한다.
또다른 실시태양에서, 본 발명은 비지니스 프로세스에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 방법으로서, 이 방법은,
비지니스 프로세스에 관한 비지니스 프로세스 모델을 제공하는 것;
비지니스 프로세스 모델을 디스플레이하도록 구성되고 그리고 비지니스 프로세스 모델로부터 엘리먼트들을 함께 그룹화하기 위해 사용자에 대한 그래픽 제어를 제공하도록 구성된 그래픽 사용자 인터페이스를 제공하는 것;
그래픽 사용자 인터페이스를 사용하여, 서비스로서 노출하기 위해 비지니스 프로세스 모델로부터 엘리먼트들을 함께 그룹화하는 것; 및
자동화된 수단을 이용하여, 제1 서비스 및 제2 서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하는 것을 포함한다.
또다른 실시태양에서, 본 발명은 비지니스 프로세스에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 데이터 처리 시스템으로서,이 데이터 처리 시스템은
적어도 하나의 프로세서;
적어도 하나의 프로세서에 연결된 버스;
상기 버스에 연결된 적어도 하나의 컴퓨터로 사용가능한 매체를 포함하고, 적어도 하나의 컴퓨터로 사용가능한 매체는 명령어 셋트를 포함하고, 적어도 하나의 프로세서는 상기 데이터 처리 시스템으로 하여금,
비지니스 프로세스에 관한 비지니스 프로세스 모델을 제공하게 하고;
비지니스 프로세스 모델을 디스플레이하도록 구성되고 그리고 비지니스 프로세스 모델로부터 엘리먼트들을 함께 그룹화하기 위해 사용자에 대한 그래픽 제어를 제공하도록 구성된 그래픽 사용자 인터페이스를 제공하게 하고;
그래픽 사용자 인터페이스를 사용하여, 서비스로서의 노출을 위해 비지니스 프로세스 모델로부터 엘리먼트들을 함께 그룹화하는 것에 관해 사용자로부터 입력을 수신하게 하고; 그리고
상기 서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하게 하는 명령어 세트틀 수행하도록 구성된다.
또다른 실시태양에서, 본 발명은 비지니스 프로세스에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 컴퓨터로 사용가능한 프로그램 코드를 포함하는 적어도 하나의 컴퓨터로 사용가능한 매체를 포함하는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은,
비지니스 프로세스에 관한 비지니스 프로세스 모델을 제공하기 위한 컴퓨터로 사용가능한 프로그램 코드;
비지니스 프로세스 모델을 디스플레이 하도록 구성되고 그리고 비지니스 프로세스 모델로부터 엘리먼트들을 함께 그룹화하기 위해 사용자에게 그래픽 제어를 제공하도록 구성된 그래픽 사용자 인터페이스를 제공하기 위한 컴퓨터로 사용가능한 프로그램 코드;
그래픽 사용자 인터페이스를 사용하여, 서비스로서 노출을 위해 비지니스 프로세스 모델로부터 엘리먼트들을 함께 그룹화하는 것에 관해 사용자로부터 입력을 수신하기 위한 컴퓨터로 사용가능한 프로그램 코드; 및
서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하기 위한 컴퓨터로 사용가능한 프로그램 코드를 더 포함한다.
본 발명에 따르면, 프로세스 효율을 개선시킬 수 있다.
본 발명을 더 잘 이해하기 위해, 그리고 본 발명이 실시되는 방법을 더욱 명확히 나타내기 위해, 첨부도면을 예로 들어 설명한다.
도 1은 본 발명의 한 태양이 구현될 수 있는 데이터 처리 시스템을 그림으로 나타낸 개략도이다.
도 2는 본 발명의 태양이 구현될 수 있는 데이터 처리 시스템의 블록도이다.
도 3은 본 발명의 제1 태양에 따라, 비지니스 프로세스 모델에 기초한 서비스 지향 구조 기반 비지니스 시스템의 개발을 위한 프로그램 모듈 및 방법 단계들을 예시하는 다이어그램이다.
도 4a는 비지니스 프로세스의 비지니스 프로세스 모델을 나타낸 도면이다.
도 4b는 본 발명의 또 다른 태양에 따라, 서비스 모델링 시스템을 사용하여, 도 4a에 도시된 비지니스 프로세스 모델로부터 서비스 모델의 개발에 대한 예를 도시한다.
도 4c는 도 4a에 도시된 비지니스 프로세스 모델에 관한 서비스 지향 구조 기반 비지니스 시스템을 나타낸 도면이다.
도 5는 또다른 비지니스 프로세스의 비지니스 프로세스 모델을 나타낸 도면이다.
도 6은 도 5에 도시된 비지니스 프로세스 모델의 어셈블리 뷰를 나타낸 도면이다.
도 7은 도 6에 도시된 서비스 모듈에 관한 자바 클래스에 대한 스켈레톤 코드를 도시한다.
도 8은 도 6에 도시된 서비스 모듈에 관한 상태기(state machine)에 대한 스켈레톤 코드를 도시한다.
도 9는 도 6에 도시된 비지니스 프로세스 모델에 대한 프로그램 흐름을 예시하는 도면이다.
도 10은 도 3에 도시된 SOA 코드 개발 시스템의 동작을 예시하는 도면이다.
도 11은 도 10에 그 동작이 도시된 SOA 코드 개발 시스템에 의해 적용된 규칙을 변형시키기 위한 소스 및 타겟의 예를 나타낸 도면이다.
도 12는 도11에서 식별된 예시적 규칙의 계층적 모습을 도시하는 도면이다.
도 1은 본 발명의 태양이 구현될 수 있는 데이터 처리 시스템을 그림으로 나타낸 개략도이다. 컴퓨터(100)는 시스템 유닛(102), 비디오 디스플레이 터미널(104), 키보드(106), 플로피 드라이브 및 기타 유형의 영구 및 착탈가능한 저장 매체를 포함하는 저장 디바이스(108), 및 마우스(110)를 포함하는 것으로 도시되어 있다. 예로서, 조이스틱, 터치패드, 터치 스크린, 트랙볼, 마이크로폰등과 같은 추가적인 입력 디바이스가 개인용 컴퓨터(100)에 포함될 수도 있다.
컴퓨터(100)는 뉴욕 아몽크에 있는, 인터내셔널 비지니스 머신 코포레이션사의 제품인, IBM® eServer™ 컴퓨터 또는 IntelliStation® 컴퓨터와 같은, 임의의 적합한 컴퓨터를 사용하여 구현될 수 있다. 도면에 개인 컴퓨터를 도시하고 있지만, 본 발명의 예시적 태양은 랩탑 컴퓨터, 팜탑 컴퓨터, 휴대형 컴퓨터, 네트워크 컴퓨터, 서버, 워크스테이션, 셀룰러 전화 및 이와 유사한 무선 디바이스, 개인 휴대용 단말기기(PDA) 및 소프트웨어 프로그램이 설치될 수 있는 기타 전자 디바이스와 같은 임의 유형의 데이터 처리 시스템으로 구현될 수 있다. 컴퓨터(100)는 바람직하게 컴퓨터(100)내에서 동작시 컴퓨터로 판독가능한 매체에 상주하는 시스템 소프트웨어에 의해 구현될 수 있는 그래픽 사용자 인터페이스(GUI)를 포함한다.
이제 도 2를 참조하면, 본 발명의 태양이 구현될 수 있는 데이터 처리 시스템의 블록도가 도시되어 있다. 데이터 처리 시스템(200)은 예시적인 양상의 프로세스를 구현하는 코드 또는 명령어가 위치될 수 있는, 도 1의 개인용 컴퓨터(100)와 같은 컴퓨터의 한 예이다. 도시된 예에서, 데이터 처리 시스템(200)은 노오쓰(north) 브리지 및 메모리 제어기 허브(MCH)(202)와 사우쓰(south) 브리지 및 입력/출력(I/O) 제어기 허브(ICH)(204)를 포함하는 허브 구조를 채용한다. 프로세서(206), 주메모리(208) 및 그래픽 프로세서(210)는 노오쓰 브리지 및 메모리 제어기 허브(202)에 연결된다. 그래픽 프로세서(210)는, 예를 들어 가속 그래픽 포트(AGP)를 통해 MCH(202)에 연결될 수 있다.
도시된 예에서, 근거리 통신망(LAN) 어댑터(212)는 사우쓰 브리지 및 I/O 제어기 허브(204)에 연결되고, 오디오 어댑터(216), 키보드 및 마우스 어댑터(220), 모뎀(222), 판독전용메모리(ROM)(224), 유니버셜 시리얼 버스(USB) 포트 및 기타 통신 포트(232) 및 PCI/PCIe 디바이스(234)는 버스(238)를 통해 사우쓰 브리지 및 I/O 제어기 허브(204)에 연결된다. 하드 디스크 드라이브(HDD)(226) 및 CD-ROM 드라이브(230)는 버스(240)를 통해 사우쓰 브리지 및 I/O 제어기 허브(204)에 연결된다. PCI/PCIe 디바이스는 예를 들어, 노트북 컴퓨터를 위한 이더넷 어댑터, 애드인 카드, 및 PC 카드를 포함할 수 있다. PCI는 카드 버스 제어기를 사용하지만, PCIe는 카드 버스 제어기를 사용하지 않는다. ROM(224)은 예를 들어 플래쉬 이진 입력 출력 시스템(BIOS)일 수 있다. 하드 디스크 드라이브(HDD)(226) 및 CD-ROM 드라이브(230)는, 예를 들어 집적된 드라이브 전자장치(IDE; integrated drive electronics) 또는 최신 직렬 기술 부착(SATA; serial advanced technology attachment) 인터페이스를 사용할 수 있다. 슈퍼 I/O (SIO) 디바이스(236)는 사우쓰 브리지 및 I/O 제어기 허브(204)에 연결될 수도 있다.
버스 시스템은 시스템 버스, I/O 버스 및 PCI 버스와 같은 하나 이상의 버스로 구성될 수 있다. 물론 버스 시스템은 통신 패브릭 또는 구조에 추가된 상이한 컴포넌트 또는 디바이스간에 데이터 전송을 제공하는 임의 유형의 통신 패브릭 또는 구조를 이용하여 구현될 수도 있다. 통신 유닛은 모뎀 또는 네트워크 어댑터와 같은, 데이터를 송신 및 수신하기 위해 사용되는 하나 이상의 디바이스를 포함할 수 있다.
운영 체제는 프로세서(206)상에서 구동되고 도 2의 데이터 처리 시스템(200)내의 여러 컴포넌트들을 조정하고 이 컴포넌트들을 제어한다. 운영 체제는 Microsoft® Windows® XP(마이크로소프트 및 윈도우는 미국, 기타 국가 또는 미국 및 기타 국가에서 마이크로소프트 코퍼레이션사의 상표명이다)와 같은 상용으로 구입할 수 있는 운영체제들일 수 있다. 자바(Java™) 프로그래밍 시스템과 같은 객체 지향 프로그래밍 시스템은 상기 운영체제와 연계하여 실행될 수 있고 데이터 처리 시스템(200)에서 실행하는 자바 프로그램 또는 애플리케이션으로부터 상기 운영체제에 호출을 제공할 수 있다(자바 및 모든 자바기반 상표명은 미국, 기타 국가 또는 미국 및 기타 국가에서 선마이크로시스템사의 상표명이다).
운영체제, 객체 지향 프로그래밍 시스템, 프로그램 또는 애플리케이션에 대하 명령어는 하드 디스크 드라이브(226)와 같은 저장 디바이스에 위치될 수 있고, 프로세서(206)에 의한 실행을 위해 주메모리(208)에 적재될 수 있다. 본 발명의 태양은 예를 들어 주메모리(208), 판독전용 메모리(224) 또는 하나 이상의 주변장치들과 같은 메모리에 위치될 수 있는 컴퓨터에 구현된 명령어를 사용하여 프로세서(206)에 의해 실행될 수 있다.
당업자는 도 1 내지 2의 하드웨어가 구현에 따라 변동될 수 있음을 인식할 것이다. 플래시 메모리, 이와 등가의 비휘발성 메모리 또는 광학식 디스크 드라이브등과 같은 기타 내부 및 주변 장치들은 도 1 내지 2의 하드웨어에 추가하여 또는 하드웨어 대신 사용될 수도 있다. 또한, 본 발명의 프로세스는 멀티프로세서 데이터 처리 시스템에 적용될 수도 있다.
몇몇 예시적인 예에서, 데이터 처리 시스템(200)은 운영체제 파일 및/또는 사용자 발생 데이터를 저장하기 위한 비휘발성 메모리를 제공하기 위해 플래시 메모리로 구성될 수 있는 개인 휴대형 단말기기(PDA)일 수 있다. 메모리는 예를 들어, 노오쓰 브리지 및 메모리 제어기 허브(202)에서 발견되는 캐쉬 또는 주 메모리(208)일 수 있다. 처리 유닛은 하나 이상의 프로세서를 포함할 수 있다. 도 1내지 2에 도시된 예 및 상기 설명한 예는 이 예들로 구조적으로 제한된다는 것을 의미하는 것은 아니다. 예를 들어, 데이터 처리 시스템(200)은 또한 타블렛 컴퓨터, 랩탑 컴퓨터, 또는 PDA 형태를 취하는 것 외에 PDA 기능을 갖춘 전화 디바이스일 수 있다.
비지니스 프로세스에 기초하여 서비스 지향 구조를 통합하는 서비스 지향 구조 기반 비지니스 시스템(302)(도 4)을 수립하기 위한 방법(300)을 설명하는 흐름도를 도시하는 도 3을 설명한다. 용어 “서비스 지향 구조”는 본 발명에서 SOA(service oriented architecture)로서 지칭될 수도 있다.
방법(300)은 단계(304)에서 비지니스 프로세스 모델을 제공하는 것을 포함한다. 예시적인 비지니스 프로세스 모델은 도 4a에 도면 부호 306으로 도시되어 있다. 비지니스 프로세스 모델(306)은 IBM사의 웹스피어 비지니스 모델러(WebSphere Business Modeler™) 또는 일부 기타 적합한 비지니스 프로세스 모델링 패키지에 의하는 등에 의해 사용되는 바와 같은 임의의 적절한 수단을 사용하여 개발될 수 있다. 비지니스 프로세스 모델(306)은 예를 들어, 자신의 전공이 소프트웨어인 소프트웨어설계자(도면부호 310으로 나타냄)와 대조적으로, 자신의 전공이 비지니스 프로세스인 비지니스 분석가일 수 있는 제1 사용자(308)(도 3)에 의해 개발될 수 있다.
비지니스 프로세스 모델(306)(도 4a)은 원자 비지니스 프로세스 단계(312)들로 이루어 지는 데, 이 단계들은 사용자의 목적을 위해 더 작은 단계들로 감소될 필요가 없거나 더 작은 단계들로 줄일 수 없는 비지니스 프로세스의 단계들을 표현한다.
서비스 모델링 시스템(313)에서 사용자 인터페이스 마법사를 사용하여, 사용자(30)(도 3)는 원자 비지니스 프로세스 단계(312)들로 된 하나 이상의 프로세스 단계 그룹(314)(도 4b)들을 정의한다. 사용자 정의된 프로세스 단계 그룹(314)은 사용자(308)가 SOA 기반 비지니스 시스템(302)에서 서비스로서 노출되길 원하는 공통 작용에 관한 것인 프로세스 단계(312)들의 그룹을 표현한다.
이러한 그룹의 예는, 구입 주문 처리 프로세스에 대한 예시적인 비지니스 프로세스 모델(316)을 도시하는 도 5에 제공된다. 비지니스 프로세스 모델(316)에서, 사용자 정의된 그룹은 일반적으로 도면부호 318로 도시되어 있고, 도면부호 318a로 나타낸 고객 및 주문 유효화 그룹, 도면부호 318b로 나타낸 판매 헤더 데이터 엔트리 그룹, 도면부호 318c로 나타낸 판매 품목 데이터 엔트리 그룹, 및 도면부호 318d로 나타낸 구입 주문 검사 그룹을 포함한다.
도 4b를 참조하면, 사용자(308)는 그룹(314)을 서비스 모델(323)의 개발의 일부분으로서, 도면부호 322로 나타낸 서비스 모듈이 되도록 서비스 모델링 시스템(313)의 서비스 모델 레이아웃 영역(320)내로 이동시킨다. 서비스 모듈(322)은 비교적 정교한 서비스를 제공한다. 서비스 모델 레이아웃 영역(320)에서, 서비스 모듈(322)은 사용자(308)(도 3)에 의해 추가로 정의된다. 예를 들어, 사용자(308)(도 3)는 서비스 모듈(322)이 구현되어야 할 방법을 지정한다. 예를 들어, 서비스 모듈(322)은 자바(Java™)로 구현될 수 있다. 풀다운 메뉴(324) 또는 몇몇 기타 적절한 수단에는 서비스 모듈(322)에 대해 도면부호 325로 나타낸, 구현 유형을 사용자가 선택할 수 있게 하는, 각각의 서비스 모듈(322)이 제공될 수 있다. 서비스 모듈(322)은 단순히 모듈(322)로도 지칭될 수 있다.
그룹(314)을 구성하는 원자 비지니스 프로세스 단계(312)들의 일부는 서비스 컴포넌트(326)(이것도 컴포넌트(326)로서 간단하게 지칭될 수 있음)로서 서비스 모델 레이아웃 영역(320)내로 스스로 이동될 수 있다. 이 컴포넌트(326)들은 간단한(즉, 비교적 저레벨) 서비스를 제공한다.
컴포넌트(326) 및 모듈(322)은 개방형 SCA(service component architecture)과 일치하는 추상화 레벨로 정의될 수 있다.
모듈(322)과 유사하게, 이 컴포넌트(326)들의 각각은 자신과 연관된, 도면 부호 328로 나타낸 구현 유형을 또한 가질 수도 있다. 선택적으로, 컴포넌트(326)가 속하는 모듈(322)에 대한 구현 유형(325)과 동일한 구현 유형(328)을 각각의 컴포넌트(326)가 자동적으로 갖는 것이 가능하다. 대안으로서, 각각의 컴포넌트(326)에 대한 구현 유형(328)은 사용자가 선택가능한 것일 수 있다.
도 4b에 도시된 바와 같이, 사용자(308)(도 3)가 원자 비지니스 프로세스 단계(312)를 모듈(322)의 일부가 아닌 컴포넌트(326)로서 서비스 모델 레이아웃 영역(320)에 이동시키는 것이 가능하다. 그러한 컴포넌트(326)들은 각각 자신과 연관된 사용자가 선택 가능한 구현 유형(328)을 갖게 된다는 것이 명백할 것이다.
서비스 컴포넌트(326)로서 또는 서비스 모듈(322)로서 노출되어야 할 원자 비지니스 프로세스 단계(312)의 그룹(314) 및 원자 비지니스 프로세스 단계(312)를 선택하는 것에 추가하여, 사용자(308)(도 3)는 행해질 것이 요구되는 임의의 결정을 포함하여, 선택된 서비스 엘리먼트들(즉, 컴포넌트(326) 및 모듈(322))간에 발생하는 프로그램 흐름을 선택할 수 있다. 예를 들어, 도 4b에 도시된 서비스 모델(323)에서, 프로그램 흐름은 도면부호 322로 나타낸 모듈로부터 결정 상자(334)로 이른다. 결정 상자(334)의 결과에 기초하여, 프로그램 흐름은 도면부호 336으로 나타낸 모듈에 이르거나 도면부호 338로 나타낸 모듈에 이른다.
그룹(314)을 선택하는 것, 모듈(322) 및 컴포넌트(326)를 정의하는 것, 및 프로그램 흐름을 선택하는 것을 포함하는, 서비스 모델(323)을 완성하는 프로세스는 도 3에 도시된 단계(339)에 포함된다.
사용자(308)가 서비스 모델(323)을 완성하면, 서비스 모델(323)은 도 3에서 SOA 변형 시스템(340)으로의 입력으로서의 역할을 한다. SOA 코드 개발 시스템(340)은 서비스 모델(323)을 수신하여 이 서비스 모델(323)을 SOA 기반 비지니스 시스템(302)를 위한 코드로 변형시킨다. SOA 코드 개발 시스템(340)은, 아티팩트 매퍼(342) 및 서비스 어셈블러(344)인 두 개의 엘리먼트들을 포함한다. 아티팩트 매퍼(342)의 기능은 단계(345)에서 발생한다. 아티팩트 매퍼(342)는 서비스 모델(323)에 대한 어셈블리 뷰를 제공하고, 그 예는 도 6에 도면부호 346으로 도시되어 있다. 특히, 도 6에 도시되어 있는 어셈블리 뷰(346)는 도 5에 도시된 비지니스 프로세스 모델(316)에 관한 것이다.
어셈블리 뷰(346)에서, 서비스 모델(323)을 구성하는 모듈(322) 및 컴포넌트(326)가 도시되어 있고, 사용자(308)는 모듈(322) 및 컴포넌트(326)에 대해 선택된 구현 유형과 같은, 어떤 특성이던지 모듈(322) 및 컴포넌트(326)과 연관된 특성에 대한 정보를 획득할 수 있다. 이 어셈블리 뷰(346)에서, 모듈(322) 및 컴포넌트(326)간의 흐름은 도시되지 않았다. 선택적으로, 사용자(308)는 어셈블리 뷰(346)를 보는 경우 임의의 모듈(322)에 대해 더블클릭할 수 있고 그 모듈(322)을 구성하는 컴포넌트(326)를 보는 것이 가능하다.
도 3을 참조하면, 아티팩트 매퍼(342)는 사용자(308)에 의해 선택된 구현 유형에 의해 지정된 포맷으로, 사용자(308)(도 3)에 의해 서비스로서 노출된 컴포넌트(326)(도 4b)와 모듈(322)의 각각에 대해 스켈레톤 코드를 준비한다. 예를 들어, 도 6에 나타난 바와 같이, 고객에 대한 위험 분석 및 신용 분석을 수행하는 것에 관하여, 도면부호 348로 나타낸 모듈과 연계된 구현 유형은, 자바 구현이다. 아티팩트 매퍼(342)는 도 7에 도면부호 350으로 나타낸, 자바 클래스에 대한 스켈레톤 코드를 준비할 수 있다. 다른 예로서, 도 6의 도면부호 352로 나타낸 컴포넌트에 대해, 아티팩트 매퍼(342)는 사용자에 따라서, 도 8의 도면부호 354로 나타낸 상태기에 대한 스켈레톤 코드를 준비할 수 있다.
더욱 명확히 설명하기 위해, 임의의 적절한 개수의 노출된 서비스가 있을 수 있고 서비스 모델(323)로 표현될 수 있다. 예를 들어, 두 개 이상의 노출된 서비스가 있을 수 있고 서비스 모델(323)로 표현될 수 있다.
도 3을 참조하면, 서비스 어셈블러(344)의 기능은 방법(300)의 단계(355)에서 발생한다. 도 9를 참조하면, 서비스 어셈블러(344)(도 3)는 사용자(308)가 검토하기 위해, BPEL(Business Process Editing Language; 비지니스 프로세스 편집 언어)을 사용하여 서비스 모델(323)에 대한 프로그램 흐름(356)의 예를 제공한다. 서비스 어셈블러(344)는 컴포넌트(326)와 모듈(322)이 서로 상호 협동하는 방법을 수립한다. 예를 들어, 컴포넌트(326)와 모듈(322) 각각에 대해, 서비스 어셈블러(344)는 사용자(308)(도 3)에 의해 지정된 프로그램 흐름에 기초하여 다른 컴포넌트(326) 또는 모듈(322)에 필요한 어떠한 참조사항(references)도 추가할 수 있다.
추가적으로, 서비스 어셈블러(344)는 어떤 데이터가 전송되어야 하는 지를 정의하고 컴포넌트(326) 또는 모듈(322)로 전송되었거나 이들로부터 전송된 임의의 데이터에 대해 어떤 특성인 지를 정의하며, 이에 따라 다른 컴포넌트(326) 또는 모듈(322)에 의해 제공된 서비스를 컴포넌트(326) 또는 모듈(322)을 소비하는 경우 전송된 데이터와 데이터 입력에 대한 필요요건간에 호환성이 있다.
SOA 기반 비지니스 시스템(302)에서 함께 협동하는 컴포넌트(326)와 모듈(322)의 어셈블리는, 컴포넌트(326)와 모듈(322)이 데이터를 전달하고 서로에 대한 프로그램 흐름 관점에서, 비교적 느슨하지만(loose), 컴포넌트(326)와 모듈(322)은 모두 서로에 대해 비교적 독립적으로 동작한다는 것이 이해될 것이다. 컴포넌트(326)와 모듈(322)은 모두 상이한 운영체제를 사용하여 상이한 컴퓨터에서 상이한 소프트웨어 언어로 동작할 수 있다. 서비스 지향 구조의 일반적인 개념에 따라, 이 컴포넌트(326)와 모듈(322)중 임의의 것은 예를 들어, 다른 컴포넌트(326)와 모듈(322)중 임의의 것에 영향을 주지 않고 수정될 수 있다.
모듈(322) 자체의 어셈블리 즉, 모듈(322)내에서 함께 동작하는 컴포넌트(326)들의 어셈블리는, 보다 큰 SOA 기반 비지니스 시스템(302)에서 컴포넌트(326)와 모듈(322)로 된 어셈블리 보단 어느 정도 상이할 수 있다. 모듈(322)내의 컴포넌트(326)로 된 어셈블리는 비교적 보다 엄격할 수 있다. 예를 들어, 컴포넌트(326)는 컴포넌트(326)가 속하는 모듈에 속하는 변수로부터 직접 데이터를 사용하여 동작할 수 있다. 다른 예로서, 컴포넌트(326)는 모두 동일한 하드웨어상에서 동작할 것이 요구될 수 있고 동일한 소프트웨어 언어로 쓰여질 것이 요구될 수 있다. 또 다른 추가적인 예에서, 모듈(322)내의 컴포넌트(326)들은 모듈(322) 외부로부터 자체적으로 엑세스될 순 없고, 단지 모듈(322) 자체적으로만 엑세스될 수 있다.
도 10은 스켈레톤 코드를 개발하고 엘리먼트를 이 스켈레톤 코드에 추가하는 경우 SOA 코드 개발 시스템(340)의 동작을 예시한다. SOA 코드 개발 시스템(340)은 SOA 코드 개발 시스템(340)이 각각의 컴포넌트(326)(도 4b) 또는 모듈(322)에 대해 코드를 발생시키는 법을 결정하는, 변형 규칙을 적용한다. 각각의 규칙에 대한 소스 및 타겟의 예가 도 11에 도시되어 있다. 도 12는 도11에서 확인된 예시적인 규칙의 계층적 모습을 도시한다.
도 3을 참조하면, SOA 코드 개발 시스템(340)이 서비스 지향 컴포넌트(326) 및 모듈(322)에 대한 자신의 개발을 완료한 후에, SOA 기반 비지니스 시스템(302)(도 4c)을 완료하는 데에 필요한 임의의 추가적인 구현 상세사항 및 코딩이 소프트웨어 설계자(310)(도3)와 같은, 적합한 사용자에 의해 제공될 수 있다.
서비스 모델링 시스템(313)의 결과로서, 서비스 모델(323)은 비지니스 프로세스에 대해선 잘 알지만 소프트웨어 또는 코딩에 대해 잘 알지 못하는 사람에 의해 용이하게 개발된다. 이와 대조적으로, 일부 비지니스에선 서비스 모델(323)은 비지니스 프로세스에 대해 잘아는 사용자와 소프트웨어 설계자간의 협동 노력으로 개발된다. 따라서, 서비스 모델링 시스템(313)의 사용은 소프트웨어 설계자가 서비스 모델(323)의 개발 단계에서 직접 연루될 필요를 감소시킨다.
더욱이, SOA 코드 개발 시스템(340)의 결과로서, 소프트웨어 설계자(310)는 생산성이 높은 설계자가 될 수 있는 데, 이는 소프트웨어 설계자들이 시스템(34)에 의해 적어도 어느 정도 준비된 코드를 완료하는 것만이 요구되기 때문이다.
추가적으로, SOA 코드 개발 시스템(340)에 의해 쓰여진 코드는, 고정된 융통성없는 규칙에 기초하는 대신, 비지니스 분석가(304)에 의해 입력된 선택사항(preferences)에 기초하여 적어도 어느 정도 준비된다.
컴포넌트(326) 및 모듈(322)은 SOA 코드 개발 시스템(340)에 의해 적합한 위치에 저장될 수도 있고, 모듈(322)에 의해 제공된 공용 서비스를 정의하는, 모듈(322)에 대한 엔트리 포인트와 같은, 비지니스 엔티티에 대한 임의의 적합한 데이터와 함께 그 비지니스 엔티티에 대한 SOA 레지스트리에 자동적으로 입력될 수도 있다. 어떠한 추가 코딩도 소프트웨어 설계자(310)에 의해 요구된 이후에, 이 엘리먼트들 즉, 컴포넌트(326) 및 모듈(322)은 적합한 저장 위치에 재저장될 수도 있다.
대안으로서, SOA 레지스트리에 컴포넌트(326) 및 모듈(322)을 입력하는 단계는 소프트웨어 설계자(310)가 컴포넌트(326) 및 모듈(322)에 필요로 되는 어떠한 추가 코딩도 완료한 이후에 소프트웨어 설계자(310)에 의해 수동 작업으로 수행될 수도 있다.
실시예에서 본원에서 설명된 방법들의 하나 이상의 단계들은 소프트웨어를 사용하여 수행되고, 소프트웨어의 코딩은 본원에 포함된 설명을 읽은 후엔, 당업자의 기술수준의 범위에 속한다.
본 발명은 전체적으로 소프트웨어 실시태양의 형태를 취하거나 하드웨어 및 소프트웨어 엘리먼트를 포함하는 실시태양의 형태를 취할 수 있다. 바람직한 실시예에서, 본 발명은 소프트웨어로 구현되지만, 이는 펌웨어, 상주하는 소프트웨어, 마이크로코드를 포함하지만 이들로 제한되진 않는다.
더우기, 본 발명은 컴퓨터 또는 임의의 명령어 실행 시스템에 의한 사용을 위해 또는 이 시스템과 연계하여 사용할 수 있는 프로그램 코드를 제공하는 컴퓨터로 사용 가능한 또는 컴퓨터로 판독 가능한 매체로부터 액세스할 수 있는 컴퓨터 프로그램 제품의 형태를 취할 수 있다. 본 발명의 설명의 목적으로, 컴퓨터로 사용 가능한 또는 컴퓨터로 판독 가능한 매체는 명령어 실행 시스템, 장치 또는 디바이스에 의한 사용을 위해 또는 이 시스템, 장치 또는 디바이스와 연계하여 사용할 수 있는 프로그램을 포함하거나 저장하거나 통신하거나 전파하거나 전송할 수 있는 임의의 실체적 장치일 수 있다.
상기 매체는 전자 매체, 자기 매체, 광학식 매체, 전자기적 매체, 적외선 매체, 또는 반도체 시스템(또는 장치 또는 디바이스) 또는 전파 매체일 수 있다. 컴퓨터로 판독 가능한 매체의 예는 반도체 또는 고체상태 메모리, 자기 테이프, 착탈가능한 컴퓨터 디스켓, 임의 접근 메모리(RAM), 판독 전용 메모리(ROM), 강성 자기 디스크 및 광학식 디스크를 포함한다. 현재 광학식 디스크의 예는 컴팩트 디스크-판독 전용 메모리(CD-ROM), 컴팩트 디스크-판독/기입(CD-R/W) 및 DVD를 포함한다.
프로그램 코드를 저장 및/또는 실행하기에 적합한 데이터 처리 시스템은 시스템 버스를 통해 메모리 엘리먼트와 직접 또는 간접으로 연결된 적어도 하나의 프로세서를 포함할 것이다. 메모리 엘리먼트는 프로그램 코드의 실제 실행 동안 채용된 국부 메모리, 대용량 저장장치 및 실행중에 대용량 저장장치로부터 검색되어야 하는 코드수를 감소시키기 위해 적어도 일부 프로그램 코드에 대한 임시 저장장소를 제공하는 캐시 메모리를 포함할 수 있다.
입력/출력 또는 I/O 디바이스(키보드, 디스플레이, 포인팅 디바이스등을 포함하지만 이들로 제한되지 않음)는 직접 또는 중재 I/O 제어기를 통해 시스템에 연결될 수 있다.
네트워크 어댑터는 데이터 처리 시스템이 중재 개인 또는 공용 네트워크를 통해 다른 데이터 처리 시스템 또는 원격 프린터 또는 저장 디바이스에 연결되도록 시스템에 또한 연결될 수 있다. 모뎀, 케이블 모뎀 및 이더넷 카드는 단지 몇몇 현재 이용가능한 유형의 네트워크 어댑터일 뿐이다.
본 발명의 설명은 예시적 및 설명의 목적으로 제시되었고, 본 발명을 설명된 형태에만 전적으로 속하거나 이에 한정되는 것을 의도하는 것은 아니다. 다양한 수정 및 변형이 당업자에겐 명백히 떠오를 것이다. 본 발명의 원리 및 실제 응용을 가장 잘 설명하기 위해 그리고 고려된 특정한 이용에 적합한 것으로써 다양한 수정 사항을 지닌 다양한 실시예에 대해 본 발명을 당업자가 이해할 수 있도록 하기 위해 실시예들이 선택되고 설명되었다.
100: 컴퓨터
102: 시스템 유닛
104: 비디오 디스플레이 터미널
106: 키보드
108: 저장 디바이스
110: 마우스

Claims (10)

  1. 비지니스 프로세스에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 방법에 있어서,
    상기 비지니스 프로세스에 관한 비지니스 프로세스 모델을 제공하는 것;
    제1 서비스로서 노출을 위해 상기 비지니스 프로세스 모델로부터 적어도 하나의 엘리먼트로 이루어 진 제1 셋트를 선택하는 것;
    제2 서비스로서 노출을 위해 상기 비지니스 프로세스 모델로부터 적어도 하나의 엘리먼트로 이루어 진 제 2셋트를 선택하는 것;
    자동화된 수단을 이용하여, 상기 제1 서비스 및 제2 서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하는 것; 및
    상기 제1 서비스와 제2 서비스 사이에 인터페이스를 수립하기 위해 자동화된 수단을 사용하여 코드를 발생하는 것을 포함하는 것인, 상기 SOA 기반 비지니스 시스템을 수립하기 위한 방법.
  2. 제1항에 있어서,
    상기 제1 서비스와 제2 서비스 사이에 프로그램 흐름을 선택하는 것; 및
    상기 제1 서비스와 제2 서비스 사이에 상기 선택된 프로그램 흐름을 수립하기 위해 자동화된 수단을 사용하여 코드를 발생하는 것을 더 포함하는 것인, 상기 SOA 기반 비지니스 시스템을 수립하기 위한 방법.
  3. 제1항에 있어서,
    상기 제1 서비스와 제2 서비스 각각이 구현될 소프트웨어 언어를 선택하는 것을 더 포함하고, 상기 적어도 스켈레톤 코드는 상기 선택된 소프트웨어 언어로 발생되는 것인, 상기 SOA 기반 비지니스 시스템을 수립하기 위한 방법.
  4. 제1항에 있어서, 상기 제1 서비스 및 제2 서비스를 적어도 부분적으로 수동작업으로 수행하기 위해 코드를 발생하는 것을 더 포함하는 것인, 상기 SOA 기반 비지니스 시스템을 수립하기 위한 방법.
  5. 비지니스 프로세스에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 방법에 있어서,
    상기 비지니스 프로세스에 관한 비지니스 프로세스 모델을 제공하는 것;
    상기 비지니스 프로세스 모델을 디스플레이하도록 구성되고 상기 비지니스 프로세스 모델로부터 엘리먼트들을 함께 그룹화하기 위해 사용자에게 그래픽 제어를 제공하도록 구성된 그래픽 사용자 인터페이스를 제공하는 것;
    상기 그래픽 사용자 인터페이스를 사용하여, 서비스로서 노출을 위해 상기 비지니스 프로세스 모델로부터 엘리먼트들을 함께 그룹화하는 것; 및
    자동화된 수단을 이용하여, 상기 서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하는 것을 포함하는 것인, 상기 SOA 기반 비지니스 시스템을 수립하기 위한 방법.
  6. 비지니스 프로세스 모델에 기초하고 각각 제1 서비스 및 제2 서비스로서의 노출을 위해 선택된 제1 셋트의 비지니스 프로세스 모델 엘리먼트와 제2 셋트의 비지니스 프로세스 모델 엘리먼트에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 데이터 처리 시스템으로서, 상기 데이터 처리 시스템은,
    적어도 하나의 프로세서;
    상기 적어도 하나의 프로세서에 연결된 버스;
    상기 버스에 연결된 적어도 하나의 컴퓨터로 사용가능한 매체를 포함하고, 상기 적어도 하나의 컴퓨터로 사용가능한 매체는 명령어 셋트를 포함하고 상기 적어도 하나의 프로세서는 상기 데이터 처리 시스템으로 하여금,
    상기 제1 서비스 및 제2 서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하게 하고; 그리고
    상기 제1 서비스와 제2 서비스 사이에 인터페이스를 수립하기 위해 코드를 발생하게 하는, 명령어 셋트를 실행하도록 구성된 것인, 상기 데이터 처리 시스템.
  7. 제6항에 있어서, 상기 적어도 하나의 프로세서는 상기 데이터 처리 시스템으로 하여금,
    상기 제1 서비스와 제2 서비스 사이에서 프로그램 흐름의 선택에 관해 사용자로부터의 입력을 수신하게 하고; 그리고
    상기 제1 서비스와 제2 서비스 사이에서 상기 선택된 프로그램 흐름을 수립하기 위해 코드를 발생하게 하는 명령어 세트틀 수행하도록 더 구성된 것인, 상기 데이터 처리 시스템.
  8. 비지니스 프로세스에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 데이터 처리 시스템에 있어서,
    적어도 하나의 프로세서;
    상기 적어도 하나의 프로세서에 연결된 버스;
    상기 버스에 연결된 적어도 하나의 컴퓨터로 사용가능한 매체를 포함하고, 상기 적어도 하나의 컴퓨터로 사용가능한 매체는 명령어 셋트를 포함하고 상기 적어도 하나의 프로세서는 상기 데이터 처리 시스템으로 하여금,
    상기 비지니스 프로세스에 관한 비지니스 프로세스 모델을 제공하게 하고;
    상기 비지니스 프로세스 모델을 디스플레이하도록 구성되고 상기 비지니스 프로세스 모델로부터 엘리먼트들을 함께 그룹화하기 위해 사용자에게 그래픽 제어를 제공하도록 구성된 그래픽 사용자 인터페이스를 제공하게 하고;
    상기 그래픽 사용자 인터페이스를 사용하여, 서비스로서의 노출을 위해 상기 비지니스 프로세스 모델로부터 엘리먼트들을 함께 그룹화하는 것에 관해 사용자로부터의 입력을 수신하게 하고; 그리고
    상기 서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하게 하는 명령어 세트틀 수행하도록 구성된 것인, 상기 데이터 처리 시스템.
  9. 비지니스 프로세스 모델에 기초하고 각각 제1 서비스 및 제2 서비스로서의 노출을 위해 선택된 제1 셋트의 비지니스 프로세스 모델 엘리먼트와 제2 셋트의 비지니스 프로세스 모델 엘리먼트에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 컴퓨터로 사용가능한 프로그램 코드를 포함하는 적어도 하나의 컴퓨터로 사용가능한 매체를 포함하는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은,
    상기 제1 서비스 및 제2 서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하기 위한 컴퓨터로 사용가능한 프로그램 코드; 및
    상기 제1 서비스와 제2 서비스 사이에 인터페이스를 수립하기 위해 코드를 발생시키기 위한 컴퓨터로 사용가능한 프로그램 코드를 더 포함하는 것인, 컴퓨터 프로그램 제품.
  10. 비지니스 프로세스에 기초하여 서비스 지향 컴포넌트를 통합하는 SOA 기반 비지니스 시스템을 수립하기 위한 컴퓨터로 사용가능한 프로그램 코드를 포함하는 적어도 하나의 컴퓨터로 사용가능한 매체를 포함하는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은,
    상기 비지니스 프로세스에 관한 비지니스 프로세스 모델을 제공하기 위한 컴퓨터로 사용가능한 프로그램 코드;
    상기 비지니스 프로세스 모델을 디스플레이 하도록 구성되고 상기 비지니스 프로세스 모델로부터 엘리먼트들을 함께 그룹화하기 위해 사용자에게 그래픽 제어를 제공하도록 구성된 그래픽 사용자 인터페이스를 제공하기 위한 컴퓨터로 사용가능한 프로그램 코드;
    상기 그래픽 사용자 인터페이스를 사용하여, 서비스로서 노출을 위해 상기 비지니스 프로세스 모델로부터 엘리먼트들을 함께 그룹화하는 것에 관해 사용자로부터의 입력을 수신하기 위한 컴퓨터로 사용가능한 프로그램 코드; 및
    상기 서비스를 수행하기 위해 적어도 스켈레톤 코드를 발생하기 위한 컴퓨터로 사용가능한 프로그램 코드를 더 포함하는 것인, 컴퓨터 프로그램 제품.
KR1020107007431A 2007-11-23 2008-09-16 비지니스 프로세스를 재사용가능 서비스들로 변형하기 위한 시스템 및 방법 KR20100059947A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/944,577 US20090138273A1 (en) 2007-11-23 2007-11-23 Systems and methods for transforming a business process into reusable services
US11/944,577 2007-11-23

Publications (1)

Publication Number Publication Date
KR20100059947A true KR20100059947A (ko) 2010-06-04

Family

ID=40667073

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107007431A KR20100059947A (ko) 2007-11-23 2008-09-16 비지니스 프로세스를 재사용가능 서비스들로 변형하기 위한 시스템 및 방법

Country Status (7)

Country Link
US (1) US20090138273A1 (ko)
JP (1) JP5244194B2 (ko)
KR (1) KR20100059947A (ko)
CN (1) CN102112999A (ko)
CA (1) CA2700943A1 (ko)
TW (1) TW200935337A (ko)
WO (1) WO2009065209A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8676627B2 (en) * 2008-12-04 2014-03-18 International Business Machines Corporation Vertical process merging by reconstruction of equivalent models and hierarchical process merging
US8255253B2 (en) 2009-06-03 2012-08-28 International Business Machines Corporation Cross functional area service identification method and system
US8739111B2 (en) * 2010-02-02 2014-05-27 International Business Machines Corporation Re-factoring, rationalizing and prioritizing a service model and assessing service exposure in the service model
US8726230B1 (en) 2011-10-07 2014-05-13 Google Inc. Generating a user interface for sending data among resources
US10394533B2 (en) 2013-09-30 2019-08-27 The Mathworks, Inc. Reusable component in a modeling environment
US20170011322A1 (en) * 2014-01-31 2017-01-12 Hewlett Packard Enterprise Development Lp Business process managment
US10133996B2 (en) * 2014-04-22 2018-11-20 International Business Machines Corporation Object lifecycle analysis tool
US10284646B2 (en) * 2014-12-17 2019-05-07 International Business Machines Corporation Application multi-versioning in a traditional language environment
US9952837B1 (en) * 2015-04-01 2018-04-24 The Mathworks, Inc. Reusable component in a modeling environment
US20230385730A1 (en) * 2022-05-24 2023-11-30 Red Hat, Inc. Segmenting processes into stand-alone services

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10105387A (ja) * 1996-09-26 1998-04-24 Nec Commun Syst Ltd Sdl/プログラムコード相互変換方式
US7404175B2 (en) * 2000-10-10 2008-07-22 Bea Systems, Inc. Smart generator
CN1419675A (zh) * 2000-03-22 2003-05-21 伟博麦德有限公司 用于自上而下的企业过程定义和执行的方法和系统
JP2002229787A (ja) * 2001-02-01 2002-08-16 Nri & Ncc Co Ltd プログラム生成装置
WO2003038548A2 (en) * 2001-10-18 2003-05-08 Vitria Technology, Inc. Model driven collaborative business application development environment and collaborative applications developed therewith
AU2003228887A1 (en) * 2002-05-03 2003-11-17 Cedar Point Communications, Inc. Service description and development processes
JP4444920B2 (ja) * 2003-09-19 2010-03-31 株式会社ニコン 露光装置及びデバイス製造方法
US20050144226A1 (en) * 2003-11-10 2005-06-30 Churchill Software Services Systems and methods for modeling and generating reusable application component frameworks, and automated assembly of service-oriented applications from existing applications
JP2005251128A (ja) * 2004-03-08 2005-09-15 Nec Corp モデル編集システム、モデル編集方法およびモデル編集用プログラム
US7805324B2 (en) * 2004-10-01 2010-09-28 Microsoft Corporation Unified model for authoring and executing flow-based and constraint-based workflows
US7451432B2 (en) * 2004-10-01 2008-11-11 Microsoft Corporation Transformation of componentized and extensible workflow to a declarative format
US20060112122A1 (en) * 2004-11-23 2006-05-25 International Business Machines Corporation Method, system, and storage medium for implementing business process modules
EP1715419A1 (en) * 2005-04-22 2006-10-25 Ubs Ag A technique for platform-independent service modeling
US20070033570A1 (en) * 2005-08-02 2007-02-08 Kong Raymond L Method and system for transforming a process flow

Also Published As

Publication number Publication date
JP5244194B2 (ja) 2013-07-24
TW200935337A (en) 2009-08-16
CN102112999A (zh) 2011-06-29
US20090138273A1 (en) 2009-05-28
JP2011504627A (ja) 2011-02-10
WO2009065209A1 (en) 2009-05-28
CA2700943A1 (en) 2009-05-28

Similar Documents

Publication Publication Date Title
KR20100059947A (ko) 비지니스 프로세스를 재사용가능 서비스들로 변형하기 위한 시스템 및 방법
JP4812337B2 (ja) フォームタイプを使用してフォームを生成する方法および装置
CN108292231B (zh) 从数据生成应用的方法和系统
US7398474B2 (en) Method and system for a digital device menu editor
US7809597B2 (en) Progressive refinement model for business processes
US9411798B1 (en) Methods and apparatus for reusing report design components and templates
US7424485B2 (en) Method and apparatus for generating user interfaces based upon automation with full flexibility
US7877680B2 (en) Auto-generation and auto-versioning of a multi-sourced dynamic document
US7624349B2 (en) Declarative definition enabling graphical designer reuse
US8141128B2 (en) Methods and apparatus for building and executing natural language workflow functions
US20100313182A1 (en) Extensible user interface generation
US8302069B1 (en) Methods and systems utilizing behavioral data models with variants
CN106886406A (zh) 开发代码或文档的生成方法和装置
CN111124409B (zh) 基于Sketch的业务页面生成方法、装置、设备和存储介质
US20130254740A1 (en) Composition studio to develop and maintain surveillance and compliance scenarios
CN114048415A (zh) 表单生成方法及装置、电子设备和计算机可读存储介质
Bayer et al. Design and development of a web-based EPANET model catalogue and execution environment
US7567971B2 (en) Generic symbol referencing mechanism
US20160062742A1 (en) Model-driven object composition for data access using function-expressions
Lilius et al. An architecture exploration environment for system on chip design
CN115469896A (zh) 基于低代码的复杂业务应用建模系统及方法
Lo a 265 cozczmhmeEa
US20110191749A1 (en) System and method for generating enterprise applications

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
NORF Unpaid initial registration fee