KR20080010363A - 내장된 이벤트 구동형 솔루션의 설계 및 연산을 용이하게하는 시스템 및 방법 - Google Patents

내장된 이벤트 구동형 솔루션의 설계 및 연산을 용이하게하는 시스템 및 방법 Download PDF

Info

Publication number
KR20080010363A
KR20080010363A KR1020070075329A KR20070075329A KR20080010363A KR 20080010363 A KR20080010363 A KR 20080010363A KR 1020070075329 A KR1020070075329 A KR 1020070075329A KR 20070075329 A KR20070075329 A KR 20070075329A KR 20080010363 A KR20080010363 A KR 20080010363A
Authority
KR
South Korea
Prior art keywords
model
deployment
components
topology
event
Prior art date
Application number
KR1020070075329A
Other languages
English (en)
Other versions
KR101013056B1 (ko
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 KR20080010363A publication Critical patent/KR20080010363A/ko
Application granted granted Critical
Publication of KR101013056B1 publication Critical patent/KR101013056B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07GREGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
    • G07G1/00Cash registers
    • G07G1/0009Details of the software in the checkout register, electronic cash register [ECR] or point of sale terminal [POS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Stored Programmes (AREA)

Abstract

애플리케이션 플랫폼에 대한 소프트웨어의 동시 관리 및 배치를 위한 이벤트 구동형(event-driven) 컴퓨터 시스템은 하나 이상의 컴퓨팅 솔루션을 포함한다. 본 시스템은, 컴퓨터 코드 및 프로세싱(processing) 정보를 실행하는 프로세서와; 상기 컴퓨터 코드 및 정보를 저장하는 메모리를 포함하며, 상기 컴퓨터 코드는 소프트웨어 도구를 포함한다. 상기 소프트웨어 도구는, 애플리케이션 플랫폼의 동작(behavior)을 나타내는 시스템 모델을 구축하는 동작 모델 편집기로서, 상기 동작 모델 편집기는 동작 구성 요소를 포함하며, 각각의 동작 모델 구성 요소는 애플리케이션 플랫폼의 상황(aspect)을 나타내다. 소프트웨어 도구는 추가적으로 시각적 토폴로지(topology) 모델을 구축하는 토폴로지 모델 편집기를 포함한다. 이 토폴로지 모델 편집기는 상위 레벨 노드 및 하위 레벨 노드를 포함하고, 상기 애플리케이션 플랫폼의 논리적 토폴로지를 나타내며, 상기 토폴로지 모델의 각각의 상위 레벨 노드는 적어도 하나의 컴퓨팅 솔루션을 나타낸다. 또한, 소프트웨어 도구는 하나 이상의 배치 유닛을 실행 유닛으로 변형하고, 하나 이상의 실행 유닛을 적어도 하나의 컴퓨팅 솔루션으로 맵핑 하는 맵핑 알고리즘과, 상기 하나 이상의 실행 유닛을 네트워크를 통해서 상기 적어도 하나의 컴퓨팅 솔루션으로 분배하는 배치 프로토콜을 포함한다.

Description

내장된 이벤트 구동형 솔루션의 설계 및 연산을 용이하게 하는 시스템 및 방법{SYSTEM AND METHOD TO FACILITATE DESIGN AND OPERATION OF EVENT DRIVEN, EMBEDDED SOLUTIONS}
관련된 출원에 대한 교차 참조
적용 대상 없음
연합 후원 연구 또는 개발에 대한 진술
적용 대상 없음
콤팩트 디스크로 제출된 자료의 참조에 의한 통합
적용 대상 없음
본 발명은 일반적으로 내장된 이벤트 구동형 솔루션의 설계 및 연산을 위한 방법 및 시스템에 관한 것이며, 더욱 상세하게는, 내장되어 시각적으로 프로그램된 이벤트 구동형 시스템을 위한 소프트웨어의 시각적이고 분배된 배치 및 관리를 위한 방법 및 시스템에 관한 것이다.
내장된 이벤트 구동형 솔루션은 다수의 이종(異種) 구성 요소(예를 들어, 내 장된 컴퓨팅 플랫폼, 센서, 액츄에이터(actuator), 소프트웨어 장비 어댑터, 소프트웨어 제어기 및 기타 소프트웨어 애플리케이션)로 구성되며 다양한 센서 양식(예를 들어, 동작, 온도, 빛, 진동, 무게)으로부터 도달하는 "현실 세계" 이벤트에 의해서 구동된다. 그러므로 내장된 이벤트 구동형 솔루션은 하드웨어와 소프트웨어 구성 요소로 구성되며, 하드웨어는 종종 현실 세계와 상호작용하며 소프트웨어는 하드웨어의 동작을 감독하며 하드웨어에 의해서 생성된 데이터 및 이벤트를 처리한다.
내장된 이벤트 구동형 시스템은 내장된 이벤트 구동형 솔루션을 포함하는 시스템이다. 이러한 시스템은 널리 퍼지고 있다. 예를 들어 슈퍼마켓의 판매 시점 관리(point of sale, POS) 고객 자율 계산(self checkout) 애플리케이션은 내장된 이벤트 구동형 시스템이며, 각각의 고객 자율 계산 통로는 내장된 이벤트 구동형 솔루션을 나타낸다. 각각의 고객 자율 계산 통로 솔루션은 내장된 마이크로프로세서 기반 컴퓨팅 플랫폼에서 실행되는 소프트웨어와, 바코드 스캐너, 현금/신용 카드 판독기, 스피커, 저울 및 터치 패드를 포함하는 다수의 센서/액츄에이터로 일반적으로 구성된다.
고객은 각각의 아이템의 가격을 스캔하는 바코드 스캐너와, 지불 방법을 선택하는 터치 패드와, 그 후 상품에 대한 비용을 지불하는 지불 센서 중 하나와 상호 작용한다. 내장된 소프트웨어는 스캔된 아이템의 총 가격을 계산하고, 임의의 문제에 대해서 고객에게 주의를 주며(예를 들어 인식되지 않은 아이템), 지불을 할 시기에 대해 고객에게 주의를 주며, 고객의 지불이 유효한지를 검증한다.
개념적으로는 단순한 반면에, 이러한 애플리케이션을 실현시키는 것은, 장비 판매상, 시스템 통합 사업자(integrator), 시스템 개발자 및 고객의 정보 기술(IT) 스태프를 포함하는 시스템의 모든 관련된 파트너들 사이의 상호 의존적인 관계에 의존하는 매우 복잡한 프로세스일 수 있다.
시스템 통합 사업자는 하드웨어와 소프트웨어 구성 요소를 장치로 반드시 통합하여야 하며, 시스템 개발자는 고객 특정 요구사항을 위한 애플리케이션 코드를 반드시 기록해야 하며, 시스템 개발자(및 IT 스태프일 수도 있음)는 시스템을 반드시 시험하고 검증해야하며, IT 스태프는 시스템을 IT 인프라스트럭쳐에 반드시 배치하고 시스템을 IT 인프라스트럭쳐에 일부로서 관리하여야 한다.
프로세스를 통해 고용된 전문가의 계층을 고려하면, 이러한 내장된 이벤트 구동형 시스템을 실현하는 것에 대한 복잡성은 명백하다. 이러한 프로세스의 각각의 단계에서, 현재의 방법은 커스텀(및 종종 사유) 애플리케이션, 미들웨어(middleware) 및/또는 장비 어댑터 소프트웨어의 구조를 일반적으로 수반한다. 이러한 완전한 커스텀 접근 방법은, 애플리케이션 소프트웨어를 재설계하지 않고 새로운 사용 케이스를 지원하는 것과 같은 변화 요구를 도모하는데 충분히 유연하지 않은 1회성(one off) 시스템을 종종 발생시킨다. 또한, 상이한 시스템이 유사한 장치에 사용될 수 있는 반면에, 현재의 커스텀 접근 방법은 소프트웨어 재사용을 용이하게 하지 않는다.
내장된 혼성 이벤트 구동형 시스템에서, 솔루션은 상이한 체계적 구조를 갖고 있으며, IT 스태프의 책임은 두드러지게 저하된다. 이는 시스템 내의 모든 내장 된 이벤트 구동형 솔루션의 동시적인 배치 및 관리를 위한, 스케일러블(scalable)하고 시스템적인 방법이 존재하지 않기 때문이다. 예를 들어, 창고형 슈퍼마켓(또는 백화점)을 고려하며, 그것의 모든 계산 통로는 고객 자율 계산 통로이다. 이러한 시스템은 수십 개의 고객 자율 계산 통로를 포함할 수 있으며, 각각은 상이한 하드웨어 및 소프트웨어 구성 요소로 구성될 수 있다.
각각의 고객 자율 계산 통로 솔루션의 소프트웨어 구성요소의 배치 및 관리에 대한 전통적인 접근 방법은 한번에 각각 하나의 솔루션을 배치하고 관리하는 것이다. 이러한 접근 방법은, 그것이 다수의 이종 솔루션으로 구성된 시스템에 잘 스케일 되지 않기 때문에, 귀찮으며 시간 소비가 크다. 게다가, 전통적인 접근 방법은 모든 계산 통로 솔루션의 구성 성분을 시스템으로서 취급하는데 적합하지 않다. 그러므로 전체 시스템에 걸쳐서 관리 능력이 분산된 프로그래밍은 전통적인 접근 방법을 사용하여서는 실행될 수 없다.
그러므로 복수의 내장된 이벤트 구동형 솔루션을 포함하는 내장된 이벤트 구동형 시스템의 동시적이고 스케일러블한 배치 및 관리의 문제를 효과적으로 처리할 수 있는 분산된 배치 및 관리 기술이 필요하다.
애플리케이션 플랫폼의 소프트웨어의 동시적인 관리 및 배치를 위한 이벤트 구동형 컴퓨터 시스템은 하나 이상의 컴퓨팅 솔루션을 포함하며, 상기 시스템은, 실행 컴퓨터 코드 및 프로세싱 정보를 위한 프로세서; 컴퓨터 코드 및 정보를 저장하는 메모리를 포함하며, 컴퓨터 코드는 소프트웨어 도구를 포함한다. 소프트웨어 도구는, 애플리케이션 플랫폼의 동작을 나타내는 시스템 모델을 구축하는 동작 모델 편집기를 포함하며, 동작 모델 편집기는 동작 구성 요소를 포함하며, 각각의 동작 구동 요소는 애플리케이션 플랫폼의 상황을 나타낸다. 소프트웨어 도구는 시각적 토폴로지(topology) 모델을 구축하는 토폴로지 모델 편집기를 더 포함한다. 이 토폴로지 모델 편집기는 노드의 상부 레벨 노드 및 하부 레벨 노드를 포함하고, 애플리케이션 플랫폼의 논리적 토폴로지를 나타내며, 토폴로지 모델의 각각의 상부 레벨 노드는 적어도 하나의 컴퓨팅 솔루션을 나타낸다. 추가로, 소프트웨어 도구는 하나 이상의 배치 유닛을 실행 유닛으로 변환하고 하나 이상의 실생 유닛을 적어도 하나의 컴퓨팅 솔루션에 맵핑(mapping) 하기 위한 맵핑 알고리즘과, 하나 이상의 실행 유닛을 네트워크에 의해 적어도 하나의 컴퓨팅 솔루션에 분산하는 배치 프로 토콜을 포함한다.
이상의 기술 및 다른 예시적인 목적, 측면 및 이점을 기술하기 위해서, 우리는 도면을 참조하여 본 발명의 예시적인 실시예에 대한 이하의 상세한 설명을 사용한다.
복수의 내장된 이벤트 구동형 솔루션을 포함하는 내장된 이벤트 구동형 시스템의 동시적이고 스케일러블한 배치 및 관리의 문제를 효과적으로 처리할 수 있는 분산된 배치 및 관리 기술을 제공한다.
도 1을 참고하면, 내장된 이벤트 구동형 시스템(100)을 도시한다. 시스템(100)은 슈퍼마켓의 판매 시점 관리(point of sale, POS) 고객 자율 계산(self checkout)을 위한 본 발명의 실시예를 예시하며, 다수의 고객 자율 계산 솔루션(터미널)이 다른 고객 자율 계산 솔루션 옆에 배열될 수 있다. 다른 실시예 또한 가능하다. 예를 들어, 다수의 스마트 선반 솔루션이 다른 스마트 선반 솔루션 옆에 배열되는 창고 스마트 선반 시스템, 다수의 통행료(toll) 통로 솔루션이 다른 통행로 통로 솔루션 옆에 배열되는 전자 통행료 수금 시스템 및 다수의 하역장(loading dock)이 다른 하역장 옆에 배열된 소매점 공급 체인 로지스틱스(logistics)이 있다.
도 1은 이벤트 구동형인 다수의 고객 자율 계산 솔루션(140, 141,...,149)을 도시한다. 가계 고객은 키패드를 누르거나 계산 센서 위의 가계 아이템을 실행시킴 으로써 솔루션(140)과의 상호작용을 시작한다.
시스템(100)은 스케일러블(scalable)하다. 그러므로 다른 솔루션이 필요한 경우 부가될 수 있다. 각각의 솔루션(140 내지 149)과 관련된 것은 각각 적어도 하나의 내장된 컴퓨팅 플랫폼(150 내지 159)이다. 본 실시예에서, 각각의 내장된 컴퓨팅 플랫폼은 또한 시스템(100)을 위한 배치 플랫폼으로서 제공된다. 내장된 컴퓨팅 플랫폼은 상업적으로 사용가능하며 아르콤 제어 시스템즈(Arcom Control Systems), 록웰 오토메이션(Rockwell Automation), 씽매직(ThingMagic) 및 어플라이드 데이터 시스템즈(Applied Data Systems)를 포함하는 다양한 회사에 의해서 생산된다.
각각의 고객 자율 계산 솔루션(140 내지 149)과 관련된 것은 각각의 센서(160 내지 169)와 각각의 액츄에이터(170 내지 179)이다. 센서(160 내지 169)는 사용자 인터페이스를 제공하며 본 예에서는 고객 자율 계산 터미널을 통한 슈퍼마켓 상품 구매에 해당하는 이벤트를 시작한다. 센서(160 내지 169)는 동작 검출기, 바코드 센서, 무선 주파수 식별 판독기, 현금/신용 카드 판독기, 저울, 터치 패드, 마이크로폰 및/또는 영상(imaging) 시스템을 포함할 수 있다. 액츄에이터(170 내지 179)는 각각의 솔루션(150 내지 159)을 통과하는 동안 사용자 입력에 반응하는 장비이다. 액츄에이터는 스피커, 디스플레이, 컨베이어 벨트 및/또는 잔돈 지급기를 포함할 수 있다.
각각의 고객 자율 계산 솔루션을 위하여, 관련된 센서(160 내지 169) 및 액츄에이터(170 내지 179)는 시리얼, 유니버설 시리얼 버스, 파이어와이어, 이더넷, 블루투스, 지그비(ZigBee) 또는 다른 적절한 접속을 포함할 수 있는 유선 또는 무선 접속을 통해서 관련된 내장된 컴퓨팅 플랫폼(150 내지 159)과 상호작용한다. 내장된 컴퓨팅 플랫폼(150 내지 159)은 또한 배치 플랫폼으로도 알려져 있으며, 입력-출력(I/O) 장비(센서 및 액츄에이터)를 제어하고 이 장비에 의해서 생성되는 이벤트와 데이터를 프로세스 함으로써 각각의 고객 자율 계산 솔루션(140 내지 149)의 두뇌(brain)를 제공한다. 내장된 컴퓨팅 플랫폼(150 내지 159)은 확장 포인트(extension point)를 POS 고객 자율 계산 애플리케이션 플랫폼(103)과 상호작용하는 배치 및 관리 도구에 제공한다. 확장 포인트는 내장된 컴퓨팅 플랫폼(150 내지 159)을 위한 새로운 기능 포인트를 규정하는데 사용된다. 추가적인 플러그 인(plug-in)은 플랫폼(150 내지 159)의 범용성(versatility) 및 스케일러빌리티(scalability)를 증가시키기 위해서 이러한 확장 포인트에 플러그인 될 수 있다.
적어도 하나의 컴퓨팅 시스템(101)은 배치, 관리 및 프로그래밍 도구를 실행시키고 네트워크(102)에 의해서 POS 고객 자율 계산 애플리케이션 플랫폼(또는 시스템)(103)과 통신하는데 사용된다. 네트워크(102)는 이더넷, 블루투스, 지그비(ZigBee) 또는 다른 네트워크를 포함할 수 있는 유선 또는 무선 네트워크일 수 있다. 컴퓨팅 시스템(101)은 또한 광역망(WAN, 104)에 의해서 다른 컴퓨터 시스템과 상호작용할 수 있다.
컴퓨팅 시스템(101)은 프로세서, 시스템 메모리, 대용량 저장소 및 네트워크(102)에 접속된 입력/출력 서브시스템과 같은 기초 구성 요소를 포함하는 임의의 적절한 컴퓨팅 장비일 수 있다. 시스템(101)은 본 발명의 실시예에 따라 동작하도 록 구성된다. 이는 소프트웨어 도구 또는 주문형 반도체(ASIC)와 같이 소프트웨어 도구의 기능을 수행하기 위한 로직을 포함하는 특수 하드웨어에 의해서 달성된다. 네트워크(102)는 LAN 또는 WAN이다. 우리는 지금 적절한 구성이 소프트웨어 도구에 의해서 달성되는 실시예에 대해서 논의한다.
도 2는 컴퓨팅 시스템(101)에 저장된 소프트웨어 도구(200)의 집합의 블록도이다. 소프트웨어 도구(200)는 동작 모델 편집기(205), 토폴로지 모델 편집기(210), 맵핑 알고리즘(215), 배치 프로토콜(220) 및 저장 매체(225)를 포함하며, 각각은 이하에 상세히 기술된다.
동작 모델 편집기(205)는 도 1의 POS 고객 자율 계산 애플리케이션 플랫폼(103)의 동작을 표현하는 시각적 시스템 모델을 구축하는데 사용된다. 시각적 시스템 모델은 저장 매체(225)를 통해서 액세스 가능한 상호접속 구성 요소에 의해서 구축되며, 각각의 구성 요소는 애플리케이션 플랫폼(103) 동작(예를 들어, 각각의 솔루션의 관련된 센서 및 액츄에이터를 위한 장비 어댑터)의 몇몇 측면을 나타낸다. 만약 시스템 모델이 저장 매체(225)에서 사용가능하지 않은 새로운 구성 요소를 필요로 한다면, 이 구성 요소는 동작 모델 편집기(205)를 사용하여 생성되며, 그 후 후속하는 재사용을 위해서 저장 매체에(225) 지속적으로 저장된다.
모든 시스템 동작이 시스템 모델에 규정되면, 시스템 모델 편집기(205)는 모델 내의 하나 이상의 구성 요소 그룹을 선택하고 각각의 그룹을 배치 유닛으로서 지정하는데 사용된다. 도 1을 다시 참고하면, POS 고객 자율 계산 애플리케이션 플랫폼(104)을 위해서, 10 개의 배치 플랫폼(150 내지 159)이 규정될 수 있으며, 각 각의 구성 요소 그룹 중 하나는 각각 고객 자율 계산 솔루션(140 내지 149)을 포함한다. 동작 구성 요소 및 관련된 배치 유닛 구조의 상호 접속을 포함하는 시스템 모델은 그 후 후속하는 재사용을 위해서 저장 매체(225)에 지속적으로 저장된다.
토폴로지 모델 편집기(210)는 POS 고객 자율 계산 애플리케이션 플랫폼(103)의 논리적, 계층적 토폴로지를 나타내는 시각적 토폴로지 모델을 구축하는데 사용된다. 토폴로지 모델은 저장 매체(225)를 통해서 액세스 가능한 상호접속된 구조적 구성 요소에 의해서 구축되며, 각각의 구성 요소는 시스템 구조의 노드를 나타낸다.
토플로지 계층의 최하위 레벨에서, 토플로지 모델은 센서 및 액츄에이터의 종류와 내장된 컴퓨팅 플랫폼(150 내지 159)에 접속된 센서 및 액츄에이터의 개수를 규정한다. 본 실시예에서, 이는 각각의 고객 자율 계속 솔루션(140 내지 149)의 내부 토폴로지를 규정하는 것에 대응한다.
토폴로지 계층의 상위 레벨에서, 토폴로지 모델은 어떤 그리고 어떻게 각각의 고객 자율 계산 솔루션(140 내지 149)이 POS 고객 자율 계산 애플리케이션 플랫폼(103)을 구성하기 위해서 상호접속되는지를 규정한다. 토폴로지 계층의 최상단에서 각각의 노드는 적어도 하나의 배치 플렛폼(150 내지 159)(예를 들어 내장된 컴퓨팅 플랫폼)을 포함한다. 토폴로지 모델이 규정되고 나면, 후속의 재사용을 위해 저장 매체(225)에 지속적으로 저장된다.
이러한 계층적 모델링은 확장될 수 있다. 예를 들어, 센서(또는 액츄에이터)는 센서(또는 액츄에이터)의 구성을 나타낸다. 그러므로 센서(또는 액츄에이터) 또 한 토폴로지 구조를 가질 수 있다. 마찬가지로, 본 실시예에서 시스템으로서 규정하였던 것도 사실은 다른 실시예에서는 서브시스템에 불과할 수 있으며, 그에 따라 토폴로지 구조의 리프(laef) 노드에 불과할 수 있다.
맵핑 알고리즘(215)은 시스템 모델을 실행 유닛으로 변형하고 매치 모델을 생성하기 위해서 실행 모델을 토폴로지 모델의 배치 플랫폼으로 맵핑 한다. 그러므로 배치 모델은 토폴로지 모델의 각각의 상위 레벨 노드에 대한 특정 동작의 바인딩(binding)을 나타낸다. 배치 모델의 구조는 3 개의 주요 부분을 가지고 있다. 이는 모델 인식기, 하나 이상의 실행 유닛 및 하나 이상의 맵핑이다.
모델 인식기는 배치 모델을 다른 배치 모델과 구별하는 고유의 식별자가다. 이는 URL과 같은 인덱싱(indexing)과 탐색에 적합한 임의의 식별자일 수 있다.
실행 유닛은 목적된 배치 플랫폼을 실행하는데 적합하도록 만들어진 배치 유닛이다. 그러므로 각각의 배치 유닛으로 이루어진 동작 구성 요소는 실행 가능한 구성 요소로 변환된다. 이러한 변환은 일반적으로 동작 구성 요소의 소스 코드의 컴파일링(compiling)을 통해서 달성된다.
맵핑은 토폴로지 모델의 각각의 상위 레벨 노드의 특정 배치 플랫폼에 대한 실행 유닛 각각의 바인딩이다. 제1 근사화로서, 맵핑 알고리즘은 토폴로지 2 튜플(tuple){차일드(child) 노드의 개수, 차일드 노드의 종류)와 동작 2 튜플{장치 어댑터 구성 요소의 개수, 장치 어댑터 구성 요소의 종류} 사이의 최상의 매치(match)를 생성함으로써 각각의 바인딩을 수행하며, 여기서 최상의 매치는 임의의 적합한 메트릭(metric)(예를 들어, 튜플 간의 유클리드(Euclidean) 거리)에 의 해서 정의될 수 있다.
만약 각각의 상위 레벨 토폴로지 노드의 자원(예를 들어 메모리, 프로세서 속도 및 통신 인터페이스)이 고려된다면, 맵핑에 대한 추가적인 세분화(refinement)가 가능하다. 만약 최상의 매치가 특정 한 배치 유닛에서 발견되지 않는다면, 시각적 인터페이스를 통해서 사용자 개입이 수동 맵핑을 수행하기 위해서 필요하다.
맵핑 알고리즘(215)은 두 개의 주요한 연산 모드를 가지고 있다. 이는 자동 및 반자동이다. 자동 모드에서, 알고리즘(215)은 맵핑이 옳다고 가정하고 배치 모델을 배치 프로토콜(220)로 전달한다. 반자동 모드는 사용자가 알고리즘에 의해서 결정된 복수의 맵핑을 오버라이드(override)하도록 호출(invoke)한다. 맵핑 알고리즘(215)은 사용자에게 시각적 인터페이스를 통해서 이러한 수동 오버라이드 특징을 제공한다. 배치 모델은 또한 저장 매체(225)에 지속적으로 저장된다.
배치 프로토롤(220)은 각각의 실행 유닛을 네트워크(102)를 통해서 POS 고객 자율 계산 시스템(103) 내의 적절한 배치 플랫폼(150 내지 159)에 분배하기 위해 배치 모델을 사용한다. 배치 플랫폼(150 내지 159)은 그 후 실행 유닛을 로드(laod)한다.
도 2 가 동일한 컴퓨팅 시스템(101)의 일부로서 본 발명의 실시예의 소프트웨어 도구(200)의 시스템을 도시하고 있지만, 이는 다른 구성을 배제하는 것은 아니다. 각각의 도구는 상이한 컴퓨팅 시스템에도 분배될 수 있다. 사실, 본 실시예의 하나의 주요 이점은 작업 도메인(task domain)에 대한 고유한 분리이다. 예를 들어, 시스템 모델을 구축하는 작업은 토폴로지 모델을 구축하는 작업과 독립한다. 그러므로 대안 실시예에서, 두 개 이상의 컴퓨터 시스템에서 작업하는 두 명 이상의 사용자가 순서대로 하는 것이 아니라 병렬적으로 두 개의 작업을 수행하는 것이 가능하다.
작업 도메인의 분리 이점에 대한 추가적인 도시를 위해서, 도 3은 도구의 제2 실시예를 도시한다. 도구(300)에 대한 본 시스템을 이용하면, 구축 시스템, 토폴로지 및 배치 모델은 도 2에 도시된 도구의 시스템과 동일하다. 그러나 배치 프로세스는 푸시 시맨틱(push semantic)이 아니라 풀 시맨틱(pull semantic)을 통해서 달성된다.
배치 프로토콜 소프트웨어(도시되지 않음)는 이제 새로운 소프트웨어 도구, 모델 실행 관리자(320) 및 POS 고객 자율 계산 애플리케이션 플랫폼(103)의 적어도 하나의 내장된 컴퓨팅 플랫폼(150 내지 159) 사이에 분배된다. 모델 실행 관리자(320)는 모델 식별자를 네트워크(102)를 통해서 POS 고객 자율 계산 애플리케이션 플랫폼(103)으로 전송함으로써 배치를 시작한다. POS 고객 자율 계산 애플리케이션 플랫폼(103)은 네트워크(102)를 통해서 저장 매체(225)로부터 모델 식별자와 관련된 실행 유닛을 풀링(pulling) 함으로써 응답한다. 본 실시예에서, 도 2에서 언급된 실시예와 마찬가지로 동작 모델 편집기(205), 토폴로지 모델 편집기(210) 및 맵핑 알고리즘(215)의 모든 기능은 동일한 방식이며 그것들의 결과는 저장 매체(225)에 저장된다. 모델 실행 관리자(320)를 사용하는 이점은 이것이 애플리케이션의 원격 관리를 가능하게 한다는 것이다.
도 4는 본 발명의 실시예를 실시하기 위한 방법(400)의 흐름도이다. 도 4에 도시된 방법은 도 2의 도시된 도구의 제1 실시예 시스템을 보완하다. 본 방법의 프로세스 흐름은 단계(405)에서 시작한다. 동작 모델 편집기(205)를 사용하여, 사용자는 단계(410)에서 시각적 시스템 모델을 구축한다. 시스템 모델은 시각적으로 상호접속한 동작 구성 요소에 의해서 구축된다. 사용자는 단계(415)에서 시스템 모델 동작을 검증한다. 이는 시뮬레이션, 실험 또는 공식 분석을 포함하는 사용자의 선택의 방법을 통해서 달성된다.
만약 시스템 모델이 유효하지 않다면(예를 들어 단계(415)에서 "아니오"), 사용자는 모델을 재설계하고 재구축한다. 그렇지 않고, 시스템 모델이 유효하다면(예를 들어 단계(415)에서 "예"), 사용자는 배치 유닛을 지정하는 다음 단계(416)로 진행한다.
사용자는 몇 가지 방법을 이용하여 배치 유닛을 지정한다. 한가지 방법은 이하와 같다. 마우스 또는 유사한 입력 장비를 이용하여, 사용자는 구성 요소 주위에 사각형 박스를 그림으로써 시각적 시스템 모델의 구성 요소 그룹을 선택한다. 그 후 모델 다이어그램 내에서 오른쪽 마우스 버튼을 클릭하고 적절한 콘텐츠 메뉴 아이템을 선택함으로써, 사용자는 사각형 영역에 포함된 구성 요소를 배치 유닛으로서 지정할 수 있다.
다른 예시적인 방법에서, 사용자는 왼쪽 마우스 버튼과 컨트롤 키를 동시에 이용하여 하나씩 차례로 시스템 모델 다이어그램의 하나 이상의 구성 요소를 선택할 수 있다. 선택된 구성 요소는 그 후 툴바(toolbar) 버튼을 이용하여 배치 유닛 으로서 지정될 수 있다. 당업자에게, 배치 유닛을 지정하는 다른 예시적인 시각적 방법이 가능하다는 것은 명백할 것이다.
사용자는 시스템 모델 다이어그램의 모든 구성요소를 배치 유닛으로 할당할 필요가 없다. 매치 유닛으로 명시적으로 할당되지 않은 구성 요소는 자율(autonomous) 구성 요소로 간주된다. 즉, 자율 구성 요소의 배치와 관련하여, 그것은 다른 구성 요소와 독립적으로 배치된다. 사용자가 배치 유닛을 지정하면, 시스템 모델을 단계(420)에서 후속 사용을 위해서 저장된다.
토폴로지 모델 편집기(210)를 이용하여, 사용자는 단계(425)에서 시각적 토폴로지 모델을 구축한다. 토폴로지 모델은 시각적으로 상호 접속된 구조적 구성 요소에 의해서 구축된다. 각각의 구조적 구성요소는 자원(예를 들어, 메모리 용량, 프로세서 속도, 통신 인터페이스)과 성질(예를 들어 네트워크 주소, 기호의 이름)을 규정하는 파라미터로 선택적으로 주석이 달릴 수 있다.
사용자는 단계에서 토폴로지 모델 구성을 검증한다. 이는 사용자 선택의 방법을 통해서 달성될 수 있으나, 대부분, 모델의 논리적 구조와 시스템의 물리적 구조 사이의 단순한 시각적 비교이다. 만약 시스템 성질과 자원을 상술한 시스템 기술 파일이 사용 가능하다면, 사용자는 이 파일을 토폴로지 모델로 선택적으로 이입할 수 있다. 이러한 파일은 또한 검증성 체크로서 제공될 수 있다.
만약 토폴로지 모델이 유효하지 않다면(예를 들어 단계(430)에서 "아니오"), 사용자는 모델을 재설계하고 재구축한다. 그렇지 않고, 만약 토폴로지 모델이 유효하다면(예를 들어 단계(430)에서 "예"), 그 후 토폴로지 모델은 단계(435)에서 후 속 사용을 위해 저장된다.
시스템 모델과 토폴로지 모델을 배치 모델로 맵핑 하는 것은 사용자가 단계(440)에서 맵핑 알고리즘을 실행할 때 발생한다. 하나의 예시적인 방법에서, 사용자는 토폴로지 편집기를 이용하여 작업공간 뷰(view)로부터 시스템 모델을 시각적 토폴로지 모델로 드래깅(dragging)함으로써 맵핑 알고리즘을 실행한다. 이러한 동작은, 배치 유닛을 실행 유닛으로 변형하고, 토폴로지 모델의 각각의 상위 레벨 노드의 각각의 배치 플랫폼에 대해 시스템 모델의 배치 유닛과 자율 구성 요소 사이의 최상의 매치를 발견하는 맵핑 알고리즘을 실행한다.
자동 모드에서, 맵핑 알고리즘은 도움없이 배치 모델을 생성하도록 동작한다. 그러나 사용자의 도움이 필요한 시나리오가 있다. 만약 맵핑 알고리즘이 단계(445)에서 하나 이상의 배치 유닛 또는 자율 구성요소를 위한 매치를 발견하는 것을 성공하지 못한다면, 사용자 개입이 단계(450)에서 수동 맵핑을 수행하기 위해서 필요하다.
반자동 모드에서, 알고리즘은 맵핑을 정상적으로 수행하나, 자동 맵핑 후에는, 사용자는 복수의 맵핑을 수동으로 오버라이드하도록 호출된다. 배치 모델은 사용자가 오버라이드 프로세스를 끝마칠 때까지 생성되지 않는다. 토폴로지 편집기는 사용자가 맵핑 알고리즘을 인에이블(enable) 또는 디스에이블(disable)할 수 있게 하는 토글 버튼(toggle button)을 가질 수 있다.
수동 맵핑을 수행하는 하나의 예시적인 방법은 사용자에게 시스템 모델의 배치 유닛을 포함하는 시각적 팔레트(palette)를 제공하는 것이다. 사용자가 팔레트 상의 배치 유닛을 선택하는 경우, 토폴로지 모델에서 배치 유닛이 맵핑 된 대응하는 상위 레벨 노드가 하이라이트(highlight) 된다. 사용자는 그 후 맵핑을 오버라이드 하거나 팔레트로부터 토폴로지 모델의 적절한 상위 레벨 노드로 배치 유닛을 드래그 앤 드롭(drag-n-drop) 함으로써 새로운 맵핑을 생성할 수 있다. 그 후 맵핑 알고리즘은 배치 모델을 생성한다.
맵핑 알고리즘이 배치 모델을 생성하면, 배치 모델은 단계(455)에서 후속 사용을 위해서 저장된다.
그 후 사용자는 단계(460)에서 배치 모델의 실행 유닛을 네트워크를 통해서 POS 고객 자율 계산 시스템(103) 내의 적절한 배치 플랫폼(150 내지 159)으로 배치한다. 하나의 예시적인 방법에서, 사용자는 마우스(또는 다른 입력 장치)를 이용하여 토폴로지 편집기 내의 배치 모델 뷰 상의 "배치" 툴바 버튼을 클릭함으로써 이러한 동작을 수행한다.
또 다른 예시적인 방법에서, 사용자는 마우스(또는 다른 입력 장치)를 이용하여 토폴로지 편집기 내에서 배치 윈도우를 오픈(open)함으로써 이러한 동작을 수행한다. 배치 윈도우는 배치 모델을 선택하고, 배치 구성 파라미터를 편집하며 그 후 모델을 배치하기 위해서 사용자에게 시각적 인터페이스를 제공한다.
본 발명이 몇몇의 예시적인 실시예를 이용하여 기술되었지만, 당업자는 본 발명이 첨부된 청구항의 정신 및 범위 내에서 변형되어 실시될 수 있다는 것을 인지할 것이다. 도시되며 논의된 것은 프로그램 가능한 컴퓨터 장치의 매우 단순화된 서술이다. 당업자는 다른 하위 레벨의 구성 요소 및 접속이 컴퓨터 장치의 다른 실 제적인 애플리케이션에서 필요하다는 것을 이해할 것이다.
그러므로 현재 선호된 실시예로서 고려되는 것이 시술되었지만, 당업자는 다른 변형이 본 발명의 정신 내에서 수행될 수 있다는 것을 이해할 수 있다.
도 1은 내장된 이벤트 구동형 시스템의 실시예를 도시한 블록도이다.
도 2는 본 발명의 실시예를 작동시키는데 사용되는 소프트웨어 도구(200)의 시스템의 블록도 이다.
도 3은 본 발명의 다른 실시예를 작동시키는데 사용되는 소프트웨어 도구(300)의 시스템의 블록도이다.
도 4는 본 발명의 또 다른 발명을 실시하기 위한 방법(400)의 흐름도이다.

Claims (10)

  1. 하나 이상의 컴퓨팅 솔루션을 포함하는 애플리케이션 플랫폼에 대한 소프트웨어의 동시 관리 및 배치를 위한 이벤트 구동형(event-driven) 컴퓨터 시스템에 있어서,
    컴퓨터 코드 및 프로세싱(processing) 정보를 실행하는 프로세서와;
    상기 컴퓨터 코드 및 상기 정보를 저장하는 메모리로서, 상기 컴퓨터 코드는 소프트웨어 도구를 포함하는 것인, 상기 메모리
    를 포함하며,
    상기 소프트웨어 도구는,
    상기 애플리케이션 플랫폼의 동작(behavior)을 나타내는 시스템 모델을 구축하는 동작 모델 편집기로서, 상기 동작 모델 편집기는 동작 구성 요소들을 포함하며, 각각의 동작 구성 요소는 상기 애플리케이션 플랫폼의 상황(aspect)을 나타내는 것인, 상기 동작 모델 편집기와;
    상위 레벨 노드들 및 하위 레벨 노드들을 포함하는 시각적 토폴로지(topology) 모델을 구축하고, 상기 애플리케이션 플랫폼의 논리적 토폴로지를 나타내는 토폴로지 모델 편집기로서, 상기 토폴로지 모델의 각각의 상위 레벨 노드는 적어도 하나의 컴퓨팅 솔루션을 나타내는 것인, 상기 토폴로지 모델 편집기와;
    하나 이상의 배치 유닛을 실행 유닛으로 변형하고, 하나 이상의 실행 유닛을 적어도 하나의 컴퓨팅 솔루션으로 맵핑 하는 맵핑 알고리즘과;
    상기 하나 이상의 실행 유닛을 네트워크를 통해서 상기 적어도 하나의 컴퓨팅 솔루션으로 분배하는 배치 프로토콜
    를 포함하는 것인,
    이벤트 구동형 컴퓨터 시스템.
  2. 제1항에 있어서, 상기 시스템의 소프트웨어 도구들을 저장하고 있으며, 상기 시스템 모델, 상기 토폴로지 모델 및 상기 동작 구성 요소들을 저장하기 위한 저장 매체를 더 포함하는 이벤트 구동형 컴퓨터 시스템.
  3. 제1항에 있어서, 모델 식별자(identifier)를 상기 애플리케이션 플랫폼에 전송함으로써 상기 소프트웨어 도구들의 배치를 시작하는 실행 모델 관리자를 더 포함하는 이벤트 구동형 컴퓨터 시스템.
  4. 적어도 하나의 애플리케이션 플랫폼에서 사용하는 이벤트 구동형 솔루션의 설계 및 연산을 위한 방법에 있어서,
    각각의 이벤트 구동형 솔루션의 동작 구성 요소들을 상호접속하고 상기 구성 요소들을 위해 배치 유닛들을 지정하는 단계와;
    상호 접속된 동작 구성 요소들을 포함하는 시스템 모델의 설계를 수신하는 단계와;
    적어도 일부의 구성 요소들을 각각의 배치 유닛에 할당하는 배치 유닛들의 지정을 수신하는 단계와;
    시각적 토폴로지 모델 및 시각적 배치 인터페이스의 구축을 인에이블(enable)하는 단계와;
    토폴로지 모델을 수신하고 저장하는 단계와;
    맵핑 알고리즘의 사용자 호출(invokation)에 따라 상기 시스템 모델 및 상기 토폴로지 모델을 배치 모델로 맵핑 하는 단계와;
    상기 배치 모델을 수신하고 저장하는 단계와;
    실행 유닛들을 상기 애플리케이션 플랫폼으로 배치하는 단계
    를 포함하는 이벤트 구동형 솔루션의 설계 및 연산을 위한 방법.
  5. 제4항에 있어서, 상기 실행 유닛들은 네트워크를 통해서 배치되는 것인, 이벤트 구동형 솔루션의 설계 및 연산을 위한 방법.
  6. 제4항에 있어서, 상기 시스템 모델을 구축하는 작업은 상기 토폴로지 모델을 구축하는 작업과 독립적인 것인, 이벤트 구동형 솔루션의 설계 및 연산을 위한 방법.
  7. 제4항에 있어서, 상기 맵핑 알고리즘은, 상기 토폴로지 모델로부터의 2-튜플(차일드 노드들의 개수, 차일드 노드들의 종류)과 동작 모델로부터의 2-튜플(장치 어댑터 구성 요소들의 개수, 장치 어댑터 구성 요소들의 종류) 사이의 최상의 매치를 생성함으로써 각각의 바인딩을 수행하는 것인, 이벤트 구동형 솔루션의 설계 및 연산을 위한 방법.
  8. 제4항에 있어서, 상기 맵핑 알고리즘은 자동 및 반자동 모드로 동작하는 것인, 이벤트 구동형 솔루션의 설계 및 연산을 위한 방법.
  9. 제4항에 있어서, 상기 각각의 이벤트 구동형 솔루션의 행동 구성 요소들을 상호접속하는 단계 이전에,
    사용자 인터페이스의 각각의 이벤트 구동형 솔루션의 시각적으로 상호접속된 행동 구성 요소들을 제공하고 상기 구성 요소들을 위해 배치 유닛들을 지정하는 단계
    를 더 포함하는 이벤트 구동형 솔루션의 설계 및 연산을 위한 방법.
  10. 적어도 하나의 애플리케이션 플랫폼에서 사용하는 이벤트 구동형 솔루션의 설계 및 연산을 위한 컴퓨터 판독 가능 매체에 있어서,
    각각의 이벤트 구동형 솔루션의 동작 구성 요소들을 상호접속하고 상기 구성 요소들을 위해 배치 유닛들을 지정하는 단계와;
    상호 접속된 동작 구성 요소들을 포함하는 시스템 모델의 설계를 수신하는 단계와;
    적어도 일부의 구성 요소들을 각각의 배치 유닛에 할당하는 배치 유닛들의 지정을 수신하는 단계와;
    시각적 토폴로지 모델 및 시각적 배치 인터페이스의 구축을 인에이블(enable)하는 단계와;
    토폴로지 모델을 수신하고 저장하는 단계와;
    맵핑 알고리즘의 사용자 호출(invokation)에 따라 상기 시스템 모델 및 상기 토폴로지 모델을 배치 모델로 맵핑 하는 단계와;
    상기 배치 모델을 수신하고 저장하는 단계와;
    실행 유닛들을 상기 애플리케이션 플랫폼으로 배치하는 단계
    를 포함하는 이벤트 구동형 솔루션의 설계 및 연산을 위한 컴퓨터 판독 가능 매체.
KR1020070075329A 2006-07-26 2007-07-26 내장된 이벤트 구동형 솔루션의 설계 및 연산을 용이하게하는 시스템 및 방법 KR101013056B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/493,877 US20080028057A1 (en) 2006-07-26 2006-07-26 System and method to facilitate design and operation of event-driven, embedded solutions
US11/493877 2006-07-26

Publications (2)

Publication Number Publication Date
KR20080010363A true KR20080010363A (ko) 2008-01-30
KR101013056B1 KR101013056B1 (ko) 2011-02-14

Family

ID=38987692

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070075329A KR101013056B1 (ko) 2006-07-26 2007-07-26 내장된 이벤트 구동형 솔루션의 설계 및 연산을 용이하게하는 시스템 및 방법

Country Status (3)

Country Link
US (1) US20080028057A1 (ko)
KR (1) KR101013056B1 (ko)
CN (1) CN100478885C (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8813073B2 (en) 2010-12-17 2014-08-19 Samsung Electronics Co., Ltd. Compiling apparatus and method of a multicore device

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102207859A (zh) * 2010-03-31 2011-10-05 国际商业机器公司 解决方案部署方法、设备和系统
EP2842026A4 (en) * 2012-04-27 2016-01-13 Hewlett Packard Development Co MAPPING OF APPLICATION DEPENDENCIES AT TIME OF EXECUTION
US20150207703A1 (en) * 2012-07-31 2015-07-23 Phyllis Gallagher Abstraction models for monitoring of cloud resources
CN105893509B (zh) * 2016-03-30 2019-04-26 电子科技大学 一种大数据分析模型的标记与解释系统及方法
KR102651467B1 (ko) * 2016-11-07 2024-03-27 삼성전자주식회사 전자 장치 및 그의 무선 신호 송신 방법
FR3097672A1 (fr) * 2019-06-21 2020-12-25 Aava Mobile Sas Système d’applications de service pour terminaux de paiement

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07191838A (ja) * 1993-10-19 1995-07-28 Numetrix Lab Ltd 目的モデルと関係モデル間または二つの目的モデル間のマッピングの方法
US5694150A (en) * 1995-09-21 1997-12-02 Elo Touchsystems, Inc. Multiuser/multi pointing device graphical user interface system
US6173438B1 (en) * 1997-08-18 2001-01-09 National Instruments Corporation Embedded graphical programming system
US6259448B1 (en) * 1998-06-03 2001-07-10 International Business Machines Corporation Resource model configuration and deployment in a distributed computer network
AU6915400A (en) * 1999-08-16 2001-03-19 Z-Force Corporation System of reusable software parts and methods of use
US20030204503A1 (en) * 2000-11-09 2003-10-30 Lars Hammer Connecting entities with general functionality in aspect patterns
IL152999A0 (en) * 2001-03-23 2003-06-24 Sabre Inc Systems and methods for event driven baggage management
US7110935B1 (en) * 2001-10-16 2006-09-19 Xilinx, Inc. Method and system for modeling and automatically generating an electronic design from a system level environment
US7340737B2 (en) * 2002-07-03 2008-03-04 National Instruments Corporation Wireless deployment / distributed execution of graphical programs to smart sensors
US7543238B2 (en) * 2003-01-21 2009-06-02 Microsoft Corporation System and method for directly accessing functionality provided by an application
US7647562B2 (en) * 2003-04-03 2010-01-12 National Instruments Corporation Deployment and execution of a graphical program on an embedded device from a PDA
US7665085B2 (en) * 2004-03-15 2010-02-16 Ramco Systems Limited Flexible deployment of software applications
CN1713191A (zh) * 2004-06-25 2005-12-28 姚晓青 无线终端实时销售管理系统
US20060025981A1 (en) * 2004-08-02 2006-02-02 Microsoft Corporation Automatic configuration of transaction-based performance models
CN1797453A (zh) * 2004-12-24 2006-07-05 莱尔富国际股份有限公司 即时帐单系统及其使用方法
US7735062B2 (en) * 2005-01-21 2010-06-08 Outsystems—Software Em Rede, S.A. Software development system and method
US7512942B2 (en) * 2005-08-24 2009-03-31 International Business Machines Corporation Model-driven software deployment in an application server
US20070174824A1 (en) * 2006-01-23 2007-07-26 Microsoft Corporation Techniques for generating and executing browser-hosted applications

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8813073B2 (en) 2010-12-17 2014-08-19 Samsung Electronics Co., Ltd. Compiling apparatus and method of a multicore device

Also Published As

Publication number Publication date
KR101013056B1 (ko) 2011-02-14
CN100478885C (zh) 2009-04-15
CN101114227A (zh) 2008-01-30
US20080028057A1 (en) 2008-01-31

Similar Documents

Publication Publication Date Title
KR101013056B1 (ko) 내장된 이벤트 구동형 솔루션의 설계 및 연산을 용이하게하는 시스템 및 방법
Clauß Generic modeling using UML extensions for variability
CN102289366B (zh) 用于访问过程控制数据的方法和设备
CN105278936B (zh) 一种基于软件元模型构造软件模型的通用软件建模方法
US20020144256A1 (en) Method of deployment for concurrent execution of multiple versions of an integration model on an integration server
Vyatkin et al. Now that's smart!
Berardinelli et al. Model-driven systems engineering: Principles and application in the CPPS domain
US11557088B2 (en) Generating space models from map files
US20030140126A1 (en) Method of deployment for concurrent execution of multiple versions of an integration model
JP5456756B2 (ja) 構成要素を使用してコンピュータによる実行可能なコードを生成する方法及び装置
Cupek et al. Knowledge integration via the fusion of the data models used in automotive production systems
Binder et al. Towards a standards-based domain specific language for industry 4.0 architectures
Männistö et al. Product configuration view to software product families
Jamous et al. Towards an IT service lifecycle management (ITSLM) Concept
Gomaa A reuse-oriented approach for structuring and configuring distributed applications
Männistö et al. Modeling configurable products and software product families
Althaus et al. SCIL—Symbolic constraints in integer linear programming
CN103329096A (zh) 面向对象的编程环境中对象的定义
US20050268306A1 (en) Method and system for presenting actions associated with a managed object in a task context
CN104765602B (zh) 非功能需求实现策略的量化选择方法
Truscan et al. Tool support for DFD-UML model-based transformations
Weston Integration infrastructure requirements for agile manufacturing systems
US7505821B2 (en) Layout-oriented recording of automation information
Oezluek et al. Automated design of room automation systems by using an evolutionary optimization method
Kalaoja et al. Feature modelling of component-based embedded software

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20131227

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150116

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee