KR20010103604A - 모델링 도구 제작 장치 및 방법 - Google Patents
모델링 도구 제작 장치 및 방법 Download PDFInfo
- Publication number
- KR20010103604A KR20010103604A KR1020017004771A KR20017004771A KR20010103604A KR 20010103604 A KR20010103604 A KR 20010103604A KR 1020017004771 A KR1020017004771 A KR 1020017004771A KR 20017004771 A KR20017004771 A KR 20017004771A KR 20010103604 A KR20010103604 A KR 20010103604A
- Authority
- KR
- South Korea
- Prior art keywords
- property
- interface
- semantics
- model
- metamodel
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99936—Pattern matching access
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
- Devices For Executing Special Programs (AREA)
- Apparatus For Radiation Diagnosis (AREA)
- Measuring Fluid Pressure (AREA)
- Other Investigation Or Analysis Of Materials By Electrical Means (AREA)
- Analysing Materials By The Use Of Radiation (AREA)
- Numerical Control (AREA)
- Perforating, Stamping-Out Or Severing By Means Other Than Cutting (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
Abstract
본 발명은 의미론 등록부 및 메타 데이터 관리자를 갖는 메타 모델, 객체/특성 인터페이스 및 객체/특성 작성기 등록부를 포함하고 있는 모델링 도구 제작 방법 및 장치에 관한 것이다. 객체/특성 작성기 등록부는 메타 모델과 객체/특성 인터페이스에 결합되어 있다. 또한, 본 발명의 장치는 객체/특성 인터페이스에 결합된 객체/특성 모델을 포함하고 있다. 의미론 등록부는 적어도 미리 정의된 세트의 의미론을 포함하고 있다.
Description
부록에 대한 참조
본 출원은 본 명세서에 인용되고 있는 본 발명의 예시적인 실시예에 대한 예시적인 서비스 및 기능을 설명하고 있는 별첨의 부록을 포함하고 있다. 본 출원의 공개 부분은 저작권 보호를 받는 저작물을 포함하고 있다. 본 저작권자는 특허 상표청의 특허 파일 또는 레코드에 나타나 있는 바와 같은 특허 공개 자료를 본 발명의 공동 발명자 중 한 사람이 팩시밀리 복제하는 것에 이의를 달지 않는다. 그러나, 그 밖의 경우에는 누구든지 저작권을 유보한다.
발명의 배경
본 발명은 모델링 엔진, 특히 모델링 도구 제작 장치 및 방법에 관한 것이다.
배경 정보
모델링 두구는 과거부터 있었다. 이러한 모델링 도구를 구성하는 일반적인 방법은 특수 모델링 방법을 이용하는 특수 모델링 도구를 기록하는 것이다. 이 방법은 일반적으로 받아들여 왔지만, 이러한 방법은 몇 가지 단점이 있다. 예컨대, 종래의 모델링 도구는, 주어진 도구 내의 많은 기능이 이전의 도구들과 동일하지는 않지만 유사함에도 불구하고, 신형의 모델링 도구가 생길 때마다 새로운 구성을 필요로 한다.
따라서, 복수 개의 전혀 다른 모델링 방법을 발생시키는 것을 지원하도록 구성된 단일 구조를 이용하여 모델링 도구를 제작하는 방법 및 장치가 필요하다. 이 새로운 모델링 도구 제작 장치 및 방법은 새로운 모델링 도구를 구성하는 데 필요한 노력과 시간을 절감할 것이다.
본 출원은, 출원일이 1998년 10월 16일이고, 발명의 명칭이 「모델링 도구 시스템 및 방법」인 미국 특허 가출원 번호 제60/104,682호의 이점에 관한 것으로서, 상기 미국 특허는 본 명세서에 인용되어 있다.
본 출원은, 동일자로 동시 출원되고, 발명의 명칭이 「모델의 충격 분석을 위한 방법」인 미국 특허 가출원 번호 제60/104,682호(대리인 문서 번호 #22074661-25532)에 관한 것으로서, 상기 미국 특허는 본 명세서에 인용되어 있다.
본 출원은, 동일자로 동시 출원되고, 발명의 명칭이 「2 또는 그 이상의 모델 간의 차를 판별하는 방법」인 미국 특허 가출원 번호 제60/104,682호(대리인 문서 번호 #22074661-25531)에 관한 것으로서, 상기 미국 특허는 본 명세서에 인용되어 있다.
본 출원은, 동일자로 동시 출원되고, 발명의 명칭이 「확장 가능한 마크로 언어를 위한 방법 및 시스템」인 미국 특허 가출원 번호 제60/104,682호(대리인 문서 번호 #22074661-25533)에 관한 것으로서, 상기 미국 특허는 본 명세서에 인용되어 있다.
본 출원은, 동일자로 동시 출원되고, 발명의 명칭이 「SQL 입력을 통해 계층데이터 기억부에 액세스하는 방법 및 장치」인 미국 특허 가출원 번호 제60/104,682호(대리인 문서 번호 #22074661-25534)에 관한 것으로서, 상기 미국 특허는 본 명세서에 인용되어 있다.
도 1은 종래의 컴퓨터 시스템의 기능 블럭도를 도시하고 있다.
도 2는 본 발명의 예시적인 실시예에 관한 기능 블럭도를 도시하고 있다.
도 3은 본 발명의 메타 모델에 관한 예시적인 실시예의 데이터 모델을 도시하고 있다.
도 4는 본 발명의 객체 의미론을 실시하는 방법에 관한 예시적인 실시예의 흐름도를 도시하고 있다.
도 5는 본 발명의 특성 의미론을 실시하는 방법에 관한 예시적인 실시예의 흐름도를 도시하고 있다.
도 6은 본 발명의 모델링 도구를 작성하는 방법에 관한 예시적인 실시예의 흐름도를 도시하고 있다.
도 7은 본 발명의 예시적인 기능을 실행하는 예시적인 실시예의 흐름도를 도시하고 있다.
본 발명의 한 가지 특징은 의미론 및, 객체와 특성을 갖는 모델을 포함하는 방법 및 장치를 제공하는 것이다. 의미론은 상기 모델에 포함되어 있을 수 있는 객체와 특성을 변경하는 트랜잭션 시에 공급된다. 개별 의미론을 위반하는, 트랜잭션에 의한 객체 및 특성에 대한 어떠한 변경도 실행되지 않는다. 또한, 개발자는 상기 의미론을 확장시킬 수 있다.
본 발명의 다른 특징은 모델링 도구를 제작하기 위한 장치를 제공한다. 이 장치는, 예컨대 의미론 등록부 및 메타 데이터 관리자를 갖는 메타 모델, 객체/특성 인터페이스 및 객체/특성 작성기 등록부를 포함하고 있다. 객체/특성 작성기 등록부는 상기 메타 모델과 상기 객체/특성 인터페이스에 결합되어 있다. 또한, 상기 장치는 객체/특성 인터페이스에 결합된 객체/특성 모델을 포함하고 있다.
본 발명의 또 다른 특징은 모델링 도구를 제작하는 방법을 제공한다. 이 방법은 제1 세트의 클래스를 정의함으로써 객체/특성 모델을 구성하는 것과 제2 세트의 클래스를 정의함으로써 메타 모델의 구성하는 것을 포함하고 있다. 또한, 상기 방법은 유형 코드를 제1 세트의 클래스 및 제2 세트의 클래스와 연결짓는 것과 미리 정의된 세트의 의미론을 메타 모델에 공급하는 것을 포함하고 있다. 또한, 상기 방법은 의미론 세트 중 적어도 하나의 의미론이 복수 개의 독립된 작업의 각각의 발생시에 호출될 때, 상기 복수 개의 독립된 작업을 인식하는 것을 포함하고 있다. 또한, 상기 방법은 개발자가 객체/특성 모델을 엑세스하는 것을 제한하기 위한 객체/특성 인터페이스를 제공하는 것을 포함하고 있다.
도 1은 본 발명이 동작하는 종래의 컴퓨터 시스템(101)을 도시하고 있다. 예시적인 실시예에서, 본 발명은, 예컨대 SUN MICROSYSTEMS(등록 상표)가 제조한 SUN(등록 상표) 워크스테이션 상에서 실시된다. 다른 실시예들은, 예컨대 IBM 코포레이션이 제조한 IBM(등록 상표) 개인용 컴퓨터 또는 APPLE(등록 상표) 컴퓨터가 제조한 MACINTOSH(등록 상표) 컴퓨터 상에서 실시될 수도 있다. 당해 기술 분야의 숙련자에게는 다른 컴퓨터 시스템 아키텍쳐가 사용될 수도 있음이 명백할 것이다. 일반적으로, 도 1에 도시한 이러한 컴퓨터 시스템은 정보를 교신하기 위한 버스(102), 상기 버스(102)에 결합하여 정보를 처리하기 위한 중앙 처리 장치와 같은 프로세서(103), 및 상기 버스(102)에 결합하여 상기 프로세서(103)에 대한 정보와 명령을 기억하기 위한 주메모리(104)를 포함하고 있다. 판독 전용 메모리(105)는 버스(102)에 결합되어 프로세서(103)에 대한 정적 정보와 명령을 기억한다. 버스(102)에 결합된 디스플레이 장치(106)는, 예컨대 개발자를 위해 정보를 디스플레이한다.
키보드와 같은 문자·숫자 입력 장치(107)는 버스(102)에 결합되어, 정보 선택과 커맨드 선택을 프로세서(103)와 교신한다. 모뎀(110)은 버스(102)에 결합되어, 예컨대 다른 컴퓨터 시스템 또는 데이터베이스와, 자기 디스크와 같은 대량 기억 매체(108) 및, 버스(102)에 결합되어 정보와 명령을 기억하기 위한 관련 디스크 드라이브와 교신한다. 디지털 정보를 싣고 있는 데이터 기억 매체(109)는, 예컨대 대량 기억 매체(108)와 연동하도록 구성되어, 프로세서(103)가 버스(102)를 거쳐서 데이터 기억 매체(109) 상의 디지털 정보를 액세스할 수 있게 한다. 또한, 디스플레이 장치(106)에 디스플레이하기 위해, 고해상도 이미지를 기억하기 위한 CD-ROM드라이브(도시되지 않음)가 사용될 수도 있다.
본 발명의 일 실시예는, 예컨대 종래의 방식으로 컴퓨터 시스템(101)과 같은 컴퓨터 시스템에서 실행될 수 있는 C++ 프로그래밍 언어로 작성된 소프트웨어 모듈로서 실시될 수 있다. 공지된 기술을 이용하여, 애플리케이션 소프트웨어는 데이터 기억 매체(109) 상에 기억되고, 이어서 컴퓨터 시스템(101) 내에 적재되어 실행될 수 있다. 일단 개시되면, 양호한 실시예의 소프트웨어는, 예컨대 후술하는 방식으로 동작한다. 범용 모델링 아키텍쳐(UMA)는 데이터 구동식 모델링 엔진이며, 이 엔진은, 개발자가 제공하고 UMA 기반의 제품을 제공하도록 확장될 수 있는 메타 모델의 외부 정의를 기초로 하여 다양한 문제 영역에서 작업을 행할 수 있다. 메타 모델의 외부 정의란, 예컨대 문제 영역에서 나타날 수 있는 객체들의 유형 및, 이들 각 객체와 관련된 특성에 관한 일련의 설명이다. 이 설명은 이용예가 나타낸 기능 세트를 호출하고, 그 설명 정보를 기능 매개 변수를 거쳐서 통과시킴으로써 공급될 수 있다. 예시적인 문제 영역에는, 데이터 테이블, 칼럼 및 색인과 같은 데이터 모델링, 활동(activity) 및 흐름(arrow)과 같은 처리 모델링, 데이터 조작 언어 스테이트먼트 및 파일과 같은 액세스 모델링, 및 인터페이스, 적용예 및 종속성과 같은 구성 요소 모델링이 있다.
본 발명의 예시적인 실시예에서, UMA 기반의 산물(産物)은 모델링 도구이다. UMA 기반의 산물은 UMA를 포함하는 사용자 인터페이스와 같은 UMA 기반의 애플리케이션일 수 있다. 또한, UMA 기반의 산물은, 예컨대 개발자가 공급한 메타 모델의 외부 정의를 기초로 한 객체/특성 모델의 예를 포함할 수 있다.
본 발명의 예시적인 실시예에서, 도 2에 도시한 바와 같이, UMA(200)는 메타 모델(210), 객체 및 특성 작성기 등록부(260), 객체/특성 인터페이스(280), 트랜잭션 관리자(285), 로그 파일(295), 및 객체/특성 모델(290)을 포함하고 있다. 메타 모델(210)은, 복수 개의 세트의 의미론부(230)를 포함하고 있는 의미론 등록부(220)와, 객체/특성 설명부(250)를 포함하고 있는 메타 데이터 관리자(240)를 포함할 수 있다. 객체/특성 설명부(250)는 객체 또는 특성의 특징을 설명하는 정보의 세트이다. 객체의 경우, 이것은 그의 명칭, 설명 텍스트 중 인간이 판독할 수 있는 부분, 일반화 정보, 다른 유형의 객체들이 그 안에 포함되어도 되는지에 관한 정보를 포함할 수 있다. 예컨대, 일반화 정보는 동의어 정보와 같은 세부 구분/서브타이핑을 설명한다.
객체/특성 설명부는 외부에서 정의한 메타 모델로서 개발자 또는 사용자가 제공할 수 있다. 메타 모델(210)은 해결되어야 할 문제 영역의 객체 및 특성과, 객체 및 특성에 대한 변경이 요구될 때 이러한 객체 및 특성을 변경하도록 각각 호출되어야 할 복수 개의 세트의 의미론부(230)의 설명부이다.
도 3은 본 발명의 메타 모델(210)의 예시적인 실시예를 도시하고 있다. 도 3에 도시한 바와 같이, 메타 모델(210)은 객체, 특성 및 의미론과 같은 복수 개의 클래스를 포함하고 있고, 객체, 특성 및 의미론 간의 관계를 정립하고 있다. 유형(310)은 유형 코드 키, 명칭 속성 및 정의 속성과 관련되어 있다. 유형(310)은, 예컨대 범주(330) 또는 항목(320)일 수 있다. 범주(330)는 유형 코드 키와 관련되어 있고, 복수 개의 항목을 포함하고 있다. 범주 자격(340)은 범주키 및 구성원키와 관련되어 있다. 항목(320)은 유형 코드 키와 관련되어 있고, 특성 또는 객체일 수 있다.
특성(350)은 유형 코드키, 기본값 속성 및 데이터 유형 속성과 관련되어 있다. 또한, 특성(350)은 특성 용도(375)와 관련되어 있다. 객체(360)는 유형 코드키, 객체 구현 속성 및 슈퍼타입 속성과 관련되어 있다. 슈퍼타입 속성은 더 특별한 내용을 객체(360)에 공급한다. 객체(360)는 다른 객체를 소유하거나(예컨대, 구성 요소로서 포함함) 소유될 수 있다. 객체 소유권(370)은 소유권 양도자(owner)키 및 소유권 양수자(ownee)키와 관련되어 있다. 특성 용도(375)는 특성키 및 객체키와 관련되어 있다.
또한, 특성 용도(375)는 특성(350)을 객체(360)와 관련짓는다. 객체 의미론 용도(390)는 유형 코드키 및 인식(ID)키와 관련되어 있다. 객체 의미론 용도(390)는 객체(360)를 객체 의미론(395)과 관련짓는다. 특성 의미론 용도(380)는 ID키, 특성키 및 객체키와 관련되어 있다. 특성 의미론 용도(390)는 특성 의미론(385)을 특성 용도(375)와 관련짓는다. 특성 의미론(385)은 ID키와 관련되어 있다.
도 2에 도시한 바와 같이, 메타 모델(210)의 메타 데이터 관리자(240)는 메타 데이터(예컨대, 객체 및 특성의 설명)를, 예컨대 개발자로부터 UMA 기반의 애플리케이션(225)을 거쳐 수신한다. 메타 데이터는 개발자의 문제 영역을 해결하기 위해 개발자가 공급한 객체 및 특성이다. 메타 데이터 관리자(240)는 객체 및 특성 작성기 등록부(260)로부터 정당성 생성 요구를 수신한다.
도 2에 도시한 바와 같이, 메타 모델(230)의 의미론 등록부(220)는 복수 개의 세트의 의미론부(230)를 포함하고 있고, 그들 세트의 의미론부는,예컨대 UMA 기반의 애플리케이션을 통해서 개발자가 공급한 미리 정의된 세트와 부가 세트들을 포함할 수 있다. 의미론부(230)는, 순수 가상 클래스와 같은 인터페이스를 나타내고 상기 의미론부(230)의 세부로부터 모델링 엔진을 은닉시키는 의미론 객체 내에 캡슐화된 모델링 규칙이다. 미리 정의된 세트의 의미론부는 기본 모델링 엔진을 보전시키는 규칙을 제공하고, 본 발명의 양호한 실시예에서, 개발자는 미리 정의된 세트의 의미론부를 변경시킬 수 없다. 개발자가 공급한 부가적인 세트의 의미론부는 개발자가 변형시킬 수 있다. 의미론의 일 예에는, 예컨대 「하나의 데이터 베이스 테이블 안에서 두 개의 칼럼이 동일한 명칭을 사용할 수 없다」는 규칙을 시행하는 것이 있을 수 있다.
의미론부(230)는 객체/특성 인터페이스(280)를 거쳐서 객체/특성 모델(290)을 액세스한다. 의미론 등록부(220)는, 특수한 세트의 객체 의미론부가 있는 지를 판별하고, 만일 있다면, 개별 세트의 객체 의미론부들을 찾는 객체 의미론 등록부를 포함할 수 있다. 또한, 의미론 등록부(220)는 특수한 세트의 객체 의미론부가 있는 지를 판별하고, 만일 있다면, 개별 세트의 특성 의미론부를 찾기 위한 특성 의미론 등록부를 포함할 수도 있다. 의미론 등록부(220)는, 예컨대 객체/특성 인터페이스(280)에 의해 요구되는 개별 세트의 의미론부를 찾는다. 의미론 등록부(220)는 호출된 의미론에 따라서 개별 객체 및 특성에 대한 변경을 행하고, 그 변경된 객체 및 특성을 객체/특성 인터페이스(280)에 공급한다. 또한, 의미론 등록부(220)는 트랜잭션 행위의 상태도 객체/특성 인터페이스(280)에 공급한다. 예컨대, 소정의 행위를 위해 호출된 의미론들 중 하나가 규정을 위반하여 그 행위가 실패했음을 나타낼 수도 있다.
객체 및 특성 작성기 등록부(260)는 객체 작성기 및 특성 작성기와 같은 작성기(270)를 각각 포함할 수 있다. 객체 및 특성 작성기 등록부(260)는 객체 및 특성의 생성을 위한 요구를, 예컨대 UMA 기반의 애플리케이션(225)을 거쳐서 개발자로부터 수신한다. 작성기(270)는 객체 및 특성을 생성한다. 객체 및 특성 작성기 등록부(260)는 특수한 작성기가 있는 지를 판별하고, 만일 있다면, 그 개별 작성기를 찾아서, 요구되고 있는 개별 객체 또는 특성을 생성한다. 또한, 객체 및 특성 작성기 등록부(260)는 정당성 생성 요구를 메타 데이터 관리자(240)에 공급한다. 그 정당성은, 예컨대 요구된 객체 또는 특성의 생성이 성공적이었는 지의 여부를 포함할 수 있다. 객체 및 특성 작성기 등록부(260)는 객체 및 특성을 각각 실증하고, 이러한 객체 및 특성을 객체/특성 인터페이스(280)에 공급한다.
도 2에 도시한 바와 같이, 객체/특성 인터페이스(280)는, 예컨대 개발자에 의한 객체 및 특성의 변형 및 삭제에 대한 요구를 UMA 기반의 애플리케이션(225)을 거쳐서 수신한다. 이러한 요구는 메타 모델(210)의 의미론 등록부(220)로부터 객체/특성 인터페이스(280)에 공급되는 객체 및 특성에 대한 변경으로 될 수 있는 메타 모델(210) 내의 개별 의미론을 호출한다. 객체/특성 인터페이스(280)는 복수 개의 독립된 작업(discrete event) 중 소정의 독립된 작업을, 예컨대 표 1에 나타낸 바와 같이 인식하고, 소정의 의미론부 또는 세트의 의미론부가 호출되어야 하는 지를 판별할 수 있다. 독립된 작업은 객체/특성 모델(290)이 변형될 수 있는 발생을 나타낸다. 본 발명의 예시적인 실시예에서, UMA의 저작자는 복수 개의 독립된 작업을 제공할 수 있다.
상수 | 설명 |
PostCreation | 객체가 생성되고 있다 |
PreDestruction | 객체가 파괴되고 있다 |
PreEdit | 특성이 생성 및/또는 변형되려 하고 있다 |
PostEdit | 특성이 생성 및/또는 변형을 마쳤다 |
PreNull | 특성이 파괴되려 하고 있다 |
PreOwnerDestruction | 특성을 소유하는 객체가 파괴되려 하고 있다 |
객체/특성 인터페이스(280)에는 호출된 개별 세트의 의미론부의 결과를 기초로 하여 의미론 등록부(220)에 의해 트랜잭션의 행위의 상태가 공급된다. 예컨대, 만일 어떤 행위로 인해, 호출된 세트의 의미론부 중 어느 하나가 규정에 위반된다면, 의미론 등록부(220)는 그 행위가 실패했다는 표시를 제공할 수 있다. 그러나, 만일 그 행위가 세트의 의미론부 중 어느 것도 규정을 위반하지 않았다면, 의미론 등록부(220)는 그 행위가 성공적이었다는 표시를 공급할 수 있다. 객체/특성 인터페이스(280)는 객체 및 특성 변경을 트랜잭션 관리자(285)에 공급하고, 만일 객체/특성 인터페이스(280)가 「어떤 행위가 실패했다」고 판별한다면, 그것은 그 행위가 실패했다는 표시를 트랜잭션 관리자(285)에 공급할 수 있다. 또한, 객체/특성 인터페이스(280)는 객체 및 특성을 객체/특성 모델(290)에도 공급한다. 또한, 객체/특성 인터페이스(280)는 객체/특성 모델(290)로부터 객체 및 특성을 수신하여, 예컨대, 요구받는다면, 이러한 객체 및 특성을 UMA 기반의 애플리케이션(225)에 공급한다.
도 4는 객체 의미론을 실시하는 객체/특성 인터페이스(280)의 예시적인 방법에 관한 흐름도를 도시하고 있다. 410에서, 객체/특성 인터페이스(280)는 트랜잭션 관리자(285)와의 트랜잭션을 연다. 트랜잭션은 모델에 대한 각 변경마다, 그 변경이 무효라고 인지되면 삭제될 수 있게 열린다. 415에서, 객체/특성 인터페이스(280)는 객체 그 자신과 교신한다. 모든 객체는 자신들의 유형을 알고 있어, 그 객체 유형을 판별할 수 있다. 420에서, 객체/특성 인터페이스(280)는 객체/특성 인터페이스(280)는, 예컨대 위아래순으로, 메타 모델(210)로부터 각 객체에 대해 완성된 슈퍼타입 경로를 얻는다. 425에서, 제1 객체 유형(최상의 슈퍼타입)은 메타 모델로부터 객체/특성 인터페이스(280)에 의해 얻는다. 430에서, 객체/특성 인터페이스(280)는 객체 의미론 등록부(220)로부터 객체 유형에 대한 의미론 리스트를 얻는다. 435에서, 객체/특성 인터페이스(280)는 의미론 등록부(220)와 교신하여, 그 리스트 안에 보다 많은 의미론이 있는 지를 판별한다. 만일 그렇다면, 객체/특성 인터페이스(280)는 다음 의미론을, 455에서 얻고 460에서 실시한다. 465에서, 객체/특성 인터페이스(280)는 그 의미론이 실패했는 지를 판별한다. 만일 그렇다면, 470에서, 그 트랜잭션은 객체/특성 인터페이스(280)의 요구에 따라 트랜잭션 관리자(285)에 의해 롤백된다. 그러나, 그 의미론이 실패하지 않았다면, 435에서, 객체/특성 인터페이스(280)는 다시, 그 리스트 안에 보다 많은 의미론이 있는 지의 여부를 판별할 것이다.
440에서, 그 리스트 안에 더 이상의 의미론이 없다면, 객체/특성 인터페이스(280)는 메타 모델과 교신하고, 상위 경로에 보다 많은 객체 유형이 있는 지의 여부를 판별할 것이다. 없다면, 450에서, 트랜잭션은 닫힌다. 만일 상위경로에 보다 많은 객체 유형이 있다면, 445에서, 다음 객체 유형을 얻고, 객체/특성 인터페이스(280)는 다시, 객체 의미론 등록부로부터 객체 유형에 대한 의미론 리스트를 얻는 경우에 430으로 진행한다.
도 5는 특성 의미론을 실시하는 객체/특성 인터페이스(280)의 예시적인 방법에 관한 흐름도를 도시하고 있다. 510에서, 객체/특성 인터페이스(280)는 트랜잭션 관리자(285)와의 트랜잭션을 연다. 515에서, 객체/특성 인터페이스(280)는 객체와 교신하여, 객체 유형을 판별한다. 520에서, 객체/특성 인터페이스(280)는, 예컨대 위아래순으로, 메타 모델(210)로부터 각 객체에 대해 완성된 슈퍼타입 경로를 얻는다. 525에서, 제1 객체 유형(최상의 슈퍼타입)은 메타 모델로부터 객체/특성 인터페이스(280)에 의해 얻는다. 527에서, 객체/특성 인터페이스(280)는 객체 유형과 특성 유형에 대해 객체/특성쌍을 구성한다. 530에서, 객체/특성 인터페이스(280)는 특성 의미론 등록부(530)로부터 객체/특성상 유형에 대한 의미론 리스트를 얻는다.
535에서, 객체/특성 인터페이스(280)는 그 리스트 안에 보다 많은 의미론이 있는 지를 판별한다. 만일 그렇다면, 객체/특성 인터페이스(280)는 560에서 다음 의미론을 얻고, 상기 다음 의미론을 560에서 실시한다. 565에서, 객체/특성 인터페이스(280)는 그 의미론이 실패했는 지를 판별하고, 570에서, 그 트랜잭션은 롤백된다. 그러나, 그 의미론이 실패하지 않았다면, 435에서, 객체/특성 인터페이스(280)는 535로 복귀하여, 그 리스트 안에 보다 많은 의미론이 있는 지의 여부를 판별할 것이다.
540에서, 그 리스트 안에 더 이상의 의미론이 없다면, 객체/특성인터페이스(280)는 메타 모델과 교신하고, 상위 경로에 보다 많은 객체 유형이 있는 지의 여부를 판별할 것이다. 없다면, 550에서, 트랜잭션은 닫힌다. 만일 상위 경로에 보다 많은 객체 유형이 있다면, 545에서, 다음 객체 유형을 얻고, 객체/특성 인터페이스(280)는 다시, 객체 유형과 특성 유형에 대한 객체/특성쌍을 구성하는 경우에 527로 진행한다.
본 발명의 예시적인 실시예에서, 객체/특성 모델(290)은 소정의 세트의 미리 정의된 객체 및 특성을 포함하고 있다. 미리 정의된 세트의 객체 및 특성은, 예컨대 제품 개발자에게 필요한 작업량을 줄이기 위해 UMA 개발자에 의해 공급될 수 있다. 또한, 객체/특성 모델(290)은 객체/특성 인터페이스(280)로부터 객체 및 특성을 수신한다. 객체/특성 인터페이스로부터 수신된 객체 및 특성은 개발자가 공급한 메타 데이터의 외부 정의를 기초로 한다. 객체/특성 모델(290)에 포함되는 것은, 생성 및 변형되도록 개발자가 요구한 객체 및 특성이다. 또한, 객체/특성 모델(290)은 객체/특성 인터페이스(280)를 통해서 트랜잭션 관리자(285)에 대한 모델 변경을 로그(log)한다. 그러나, 본 발명의 예시적인 실시예에서, 실패한 행위의 결과인 객체/특성 모델(290)의 객체 및 특성은 객체/특성 모델(290)로부터 제거된다.
따라서, 본 발명의 예시적인 실시예에서, 개발자가 공급하고 객체/특성 모델(290) 내에 남아 있는 객체 및 특성은 성공한 행위로부터 얻은 객체 및 특성이다. 따라서, 개발자는 객체/특성 모델(290)을, 직접 액세스하지 못하고 직접 변경할 수도 없다. 결국, 모델의 변경은 모델링 엔진에 의해 인지되고, 언제든지 일관되고 유효한 상태가 보장될 수 있다. 만일 개발자가 기본 데이터 구조를 직접 액세스했다면, 부적절한 변경이 행해질 수 있고, 따라서 무효의 상태가 생성될 수 있다.
트랜잭션 관리자(285)는 개별 객체 및 특성을, 그들 개별 객체 및 특성이 실패한 행위에 의해 변경되기 이전에 있었던 상태로 놓는다. 예컨대, 트랜잭션 관리자(285)는 객체/특성 인터페이스(280)가 소정의 행위를 실패했다는 표시를 공급받는다. 실패하는 모든 행위는 수행되지 않거나 소거된다. 트랜잭션 관리자(285)는, 예컨대 객체/특성 모델(290)에 대한 변경을 로그 파일(295)에 로그시키고, 그 로그 파일(295)로부터 비실행 데이터를 얻으며, 객체/특성 인터페이스(280)에 의해 판별된 트랜잭션 내에서 행위의 성공 또는 실패를 기초로 하여 비실행 동작을 수행함으로써, 이것을 달성할 수 있다. 따라서, 객체/특성 모델(285)은 유효 상태로 유지된다. 또한, 본 발명의 예시적인 실시예에서, 트랜잭션 관리자(285)는 UMA 기반의 애플리케이션(225)으로부터의 행위를 비실행 또는 재실행하기 위해 소정의 요구를 수신할 수 있다. 만일 소정의 재실행이 요구된다면, 트랜잭션 관리자(285)는 로그 파일(295)로부터 재실행 정보를 요구하고, 공지의 방식으로 그 재실행 동작을 수행할 수 있다.
본 발명의 예시적인 실시예에서, UMA(200)는 내부 서비스 구성 요소와 외부 서비스 구성 요소를 더 포함할 수 있다. 내부 서비스 구성 요소는, 예컨대 개발자의 문제 영역을 해결하기 위해 개발자에게 노출되어 모델의 생성과 조작시에 지원할 수 있는 서비스 또는 기능을 포함할 수 있다. 본 발명의 예시적인 실시예에서,내부 서비스는 본 명세서에 첨부된 부록 1에 나타낸 그들 서비스 또는 기능을 포함할 수 있다.
외부 서비스 인터페이스는 외부 서비스가 UMA(200)와 교신할 수 있게 하는 인터페이스이다. 외부 서비스 인터페이스는, 예컨대 제3자 모듈이 도구의 모델링 능력을 확장할 수 있게 하는 애드 인(add-in) 애플리케이션 프로그램 인터페이스를 연결하고 실장하는 객체일 수 있으며, 따라서 자동으로 사용자 정의되는 것과 같은 기능을 포함하기 위해 모델링 환경과 모델링 규칙을 확장할 수 있다. 따라서, 개발자는 UMA(200) 내부의 서비스를 벗어난 서비스를 액세스할 수 있다. 외부 서비스는, 예컨대 사용자가 입력한 모든 명칭에 관한 통합 명명법 기준을 만들기 위한 모듈일 수 있다. 또한, UMA(200)는 UMA 기반의 애플리케이션(225)과 같은 사용자 인터페이스가 의미론부(230)로부터 분리됨에 따라서 축소 확대가 가능하다.
도 6에는 본 발명의 모델링 도구를 제작하기 위한 방법의 예시적인 실시예를 도시하고 있다. 610에서, 객체/특성 모델(290)은 메타 데이터로서 개발자가 공급한 객체 및 특성에 대한 제1 세트의 클래스를 정의함으로써 구성된다. 본 발명의 예시적인 실시예에서, 객체/특성 모델(290)은 미리 정의된 세트의 하나 또는 그 이상의 객체 및 특성을 포함할 수 있다. 객체는 특성에 대한 기억 메카니즘을 제공하고, 그 특성은 그 기억 메카니즘에 적용된다. 본 발명의 예시적인 실시예에서, 객체에 대한 인터페이스 클래스는, 예컨대 UMEObjectI일 수 있다. 특성은 프로그래머가 서브클래스 세분(subclassing)을 할 필요가 있는 기본 클래스로서 구성될 수 있다. 본 발명의 예시적인 실시예에서, 그 기본 클래스는 데이터 기억부 없이도 행정 서비스를 제공할 수 있다. 본 발명의 예시적인 실시예에서, 개발자는 데이터 엘리먼트를 선언하는 서브클래스와, 액세스를 생성하기 위한 방법을 제공할 수 있다.
620에서, 메타 모델(210)은, 예컨대 제2 세트의 클래스를 정의함으로서 구성된다. 그 제2 세트의 클래스는 특성, 객체 및 의미론의 설명을 유지하도록 지정된다. 예컨대, 본 발명의 예시적인 실시예에서, 2 개의 의미론 인터페이스 클래스가 지정된다. 제1 의미론 인터페이스 클래스, 예컨대 UMEObjectSemanticI는 소정의 객채의 생성 또는 파괴에 영향을 미치는 임의의 의미론에 대한 인터페이스이다. 또한, 제2 의미론 인터페이스 클래스, 예컨대 UMEPropertySemanticI는 소정의 특성의 생성, 파괴 또는 변형에 영향을 미치는 임의의 의미론에 대한 인터페이스이다. 본 발명의 예시적인 실시예에서, 메타 모델(210)의 표현의 실시는 메타 데이터와 의미론을 등록하기 위한 정적 방법을 노출시키는 독자적인 객체를 포함하고 있다.
모델링 규칙, 예컨대 의미론부(230)는 메타 모델(210)의 의미론 등록부(220) 내에 640에서의 미리 정의된 세트의 의미론부로서 및/또는 예컨대 스타트업시에 또는 그후의 임의의 시간에 개발자가 공급한 부가의 세트의 의미론부로서 통합될 수 있다. 소정의 객체에 대해서 모델링 규칙을 메타 모델(210) 내에 통합하기 위해서, 개발자는 적절한 호(乎·call)들을, 예컨대 소정의 객체에 대한 모델링 규칙용 UMEObjectSemanticI과 소정의 특성에 대한 모델링 규칙용 UMEPropertySemanticI를 서브클래스로 세분한다. 또한, 개발자는, 원하는 동작을 수행하고 객체/특성 모델(290)을 점검하기 위해 첫번째 방법을 실시할 수 있다. 그 동작이 성공했는 지의 여부를 나타내는 값은 복귀될 것이다. 예컨대, 복귀값이 TRUE이면 그 동작이 성공했음을 나타내고, 복귀값이 FALSE이면 그 동작이 성공적으로 수행되지 않았거나 그 모델이 무효 상태에 있었음을 나타낼 것이다. 또한, 의미론부(230)를 호출하기 위해, 메타 모델(210) 내에는 액세스 점(예컨대, 객체/특성 모델 변형점)이 포함될 수 있다. 다양한 모델 변형점들(예컨대, CreatObject)이 적절한 점의 개별 의미론을 호출할 것이다. 하나 또는 그 이상의 의미론이 성공적으로 완수하는 데 실패한 의미론들을 실시하는 것 중에서 소정의 표시, 예컨대 FALSE가 수신된다면, 그 동작은 결국 중지될 수 있다.
630에서, 유형 코드는 제1 세트의 클래스 및 제2 세트의 클래스와 관련되어 있다. 유형 코드는 메타 데이터의 어느 유형이 표현되고 있는 지를 지정하는 특유의 인식자이다. 메타 모델에 지시된 각 항목, 즉 객체 및 특성 모두는 특유의 유형 코드를 구비할 것이다. 본 발명의 예시적인 실시예에서, UMA(200)는 변수 유형, 즉 TypeCode_t를 포함하고 있고, 그것은 유형 코드를 유지하도록 선언된다. 미리 정의된 세트의 의미론부는 640에서 메타 모델(210)의 의미론 등록부(220)에 공급된다.
650에서, 예컨대 표 1에 도시한 바와 같은 복수 개의 독립된 작업이 인식된다. 그 독립된 작업들은 객체/특성 모델(290)이 변형될 수 있는 발생을 나타낸다. 본 발명의 예시적인 실시예에서, 각 독립된 작업에는 그것을 나타내는 상수가 배정되고, 변수 유형, 예컨대 Event_t가 작업 상수(event constant)들을 유지하도록 선언된다.
660에서, 객체/특성 인터페이스(280)가 실행된다. 객체/특성 인터페이스(280)는, 예컨대 개발자가 객체/특성 모델(290)을 직접 액세스하지 못하게 하고, 개발자가 객체/특성 모델(290)을 변형시킬 수 있는 코드 경로의 수를 제한하는 것을 포함하고 있다. 예컨대, 만일 개발자가 객체/특성 모델(290) 내의 소정의 객체를 파괴하고 싶어한다면, 부록 1의 리스트에 있는 UMEObjectI:DestroyObject와 같은 객체/특성 인터페이스(280)에 대해 소정의 요구가 행해져야 할 것이다.
도 7은 DestroyObject 요구를 실행하는 객체/특성 인터페이스(280)의 예시적인 실시예를 도시하고 있다. 도 7에 도시한 바와 같이, 객체/특성 모델(290)에 대한 액세스는 DestroyObject 요구를 취급하는 객체/특성 인터페이스(280)에 의해 제한된다. 예컨대, 710에서, 객체/특성 인터페이스(280)는 트랜잭션 관리자(285)와 교신하여, 요구를 수신할 때 트랜잭션을 열어서, 객체를 파괴한다(예컨대, DestroyObject 기능). 715에서, 객체/특성 인터페이스(280)는 객체/특성 모델(290)과 교신하여, 파괴되도록 요구받은 객체를 찾는다. 720에서, 객체/특성 인터페이스(280)는 그 객체를 찾았는 지의 여부를 판별한다. 못찾았다면, 725에서, 트랜잭션 관리자(285)는 객체/특성 인터페이스(280)에 의한 요구에 따라서 트랜잭션을 롤백하고, 730에서 트랜잭션 관리자는 실패 코드를 호(calling) 모듈, 예컨대 사용자 인터페이스로 되돌려 보낸다. 그러나, 객체를 찾으면, 735에서, 객체/특성 인터페이스(280)는 트랜잭션 관리자(285)에게 객체 파괴 정보를 공급하고, 트랜잭션 관리자(285)는 그 객체 파괴를 트랜잭션 로그(295) 내에 로그시킨다.
740에서, 객체/특성 인터페이스(280)는 개별 객체의 모든 특성에 관한 PreOwnerDestruction Semantics를 실시한다. 745에서, 객체/특성 인터페이스(280)는 모든 의미론이 성공했는 지의 여부를 판별한다. 그렇지 않다면, 725에서, 트랜잭션 관리자(285)는 객체/특성 인터페이스(280)에 의한 요구에 따라서 트랜잭션을 롤백하고, 트랜잭션 관리자(285)는 실패 코드를 호 모듈로 돌려 보낸다.
모든 PreOwner Destruction Semantics가 성공했다면, 750에서, 객체/특성 인터페이스(280)는 PreDestruction Semantics를 실시한다. 755에서, 객체/특성 인터페이스(280)는 모든 PreDestruction Semantics가 성공했는 지의 여부를 판별한다. 성공했다면, 760에서, 그 객체는 파괴되고, 765에서, 객체/특성 인터페이스(280)는 트랜잭션 관리자(285)와 교신하여 트랜잭션을 종료시키며, 770, 730에서, 트랜잭션 관리자(285)는 성공 코드를 호 모듈로 돌려 보낸다. 그러나, PreDestruction Semantics가 실패했다면, 725에서, 트랜잭션 관리자(285)는 객체/특성 인터페이스(280 및 730)로부터의 요구에 따라서 트랜잭션을 롤백하고, 트랜잭션 관리자(285)는 실패 코드를 호 모듈로 돌려 보낸다.
객체의 구성과 파괴를 제한하기 위해, 예컨대, 객체 구성기와 객체 파괴기는 개발자가 객체를 직접 실증하거나 파괴하지 못하도록 보호된다. 특성의 생성, 파괴 및 변형을 제한하기 위해, 예컨대, 특성의 데이터 구성원들은 개별적으로 행해진다. 본 발명의 예시적인 실시예에서, UMA(200)는 인터페이스 클래스, 예컨대 UMEAccessorI를 포함하는 액세서라고 하는 클래스를 포함하고 있다. 액세서 인터페이스 클래스은 특성에 대한 동급의 클래스이고, 데이터 구성원에게 액세스가 부여되는 것은 바로 액세서를 통해서 이다. 엑세서에는 데이터값과 명령(예컨대, 「그 값을 설정」 또는 「특성을 삭제」)이 공급되고, 액세서는 특성들에 주입된다. 액세서들은 그들의 행위를 수행하고, 성공 또는 실패를 표시하는 코드를 돌려 보낸다. 액세서는 특성에 하나를 공급해달라고 요청함으로써 구성된다. 이에 의해, 특성은 그 특성의 데이터 유형을 취급할 수 있는 액세서를 구성할 수 있게 된다. 특성에 관한 모든 동작은 액세서를 통해서 구성되고, 따라서 의미론이 필요로 하는 모든 코드는 제공되는 액세서 기본 클래스 내에 있을 수 있다. 개발자 세부 클래스 클래스 액세서는 데이터 엘리먼트와, 그것을 판독하고 기록하는 방법을 간단히 공급할 것이다. 방법은, 특성에 대한 결합을 허용할 수 있는 액세서 기본 클래스에 관해 공급된다.
도 6에 도시한 바와 같이, 670에서, 트랜잭션 관리자(285)가 수행된다. 트랜잭션 관리자(285)는 트랜잭션의 행위들을 관리하고, 그들 행위가 실패한다면, 그들 행위는 비실행 또는 소거된다. 모델 조작의 개시부에서 트랜잭션을 시작하고 나서 다양한 의미론의 오류 상태를 감시함으로써, 트랜잭션 관리자(285)는 객체/특성 모델(290)을 유효 상태로 유지한다. 본 발명의 예시적인 실시예에서, 트랜잭션 관리자(285)는 행위에 기초하여 변경을 구현하기 이전에 객체/특성 모델(290)의 정확한 이미지를 기록한다. 그 행위가 성공한다면, 그 개별 변경은 바뀌지 않게 된다. 실패가 발생하면, 트랜잭션 관리자(285)는 과거의 이미지를 재기억시킨다. 트랜잭션 관리자(285)는 모델이 변경함에 따라 이미지를 증가적으로 보존할 수 있다.
일 예로서, 단일의 트랜잭션 내에서 사용자는 객체를 생성하고 그의 명칭을 설정해 나간다. 객체의 성공적 생성시에, 객체가 생성된 사실과 그 객체에 대한 취급은 트랜잭션 로그(295) 내에 기억된다. 이어서, 사용자가 「Customer」에 대한객체의 명칭을 설정하면, 특성의 생성은 재기록되고 과거값(없음)이 로그에 저장된다. 이어서, 사용자가 다시 「Cust」에 명칭을 설정하면, 과거값(「Customer」)이 로그에 저장된다. 모두 성공하면, 「Cust」라는 명칭의 객체가 남는다. 그러나, 실패시에, 트랜잭션 관리자(285)는 롤백을 시작할 것이다. 즉, 첫째로, 명칭을 「Cust」에서 「Customer」로 변경하고, 둘째로, 명칭 특성의 존재를 모두 삭제하며, 마지막으로, 객체를 삭제한다. 이로써, 객체/특성 모델(290)은 그 실패한 트랜잭션의 수행 이전에 있었던 상태로 재기억된다.
본 발명의 예시적인 실시예에서, 행위의 결과로서 변경된 객체 및 특성은 객체/특성 인터페이스(280)에 의해 객체/특성 모델(290)에 공급된다. 그 행위가 관계된 의미론이 실패하면, 객체/특성 인터페이스(280)는 트랜잭션 관리자(285)에게 그 행위를 실행하지 말라고 통보한다. 그 결과, 객체/특성 모델(290)은 실패한 행위의 결과로서 객체/특성 인터페이스(280)로부터 객체/특성 모델(290)에 공급되고 있는 변경된 객체 및 특성 이전의 상태로 다시 있게 된다.
전술한 실시예들은 본 발명의 설명예이므로, 본 발명을 이들 특정 실시예에 한정해서 해석해서는 안된다. 당해 기술 분야의 숙련자에게는 특허 청구의 범위에 정의한 본 발명의 사상 또는 범위를 벗어나지 않고서도 다양한 변경과 변형이 실현될 수 있다.
부록
Claims (16)
- 의미론 등록부와 메타 데이터 관리자를 포함하는 메타 모델과,객체/특성 인터페이스와,상기 메타 모델 및 상기 객체/특성 인터페이스에 결합된 객체/특성 작성기 등록부와,상기 객체/특성 인터페이스에 결합된 객체/특성 모델을 포함하는 것인 모델링 도구 제작 장치.
- 제1항에 있어서, 상기 객체/특성 모델을 무효 상태로 하는 행위를 실행시키기 않기 위해 상기 객체/특성 인터페이스에 결합된 트랜잭션 관리자를 더 포함하는 것인 모델링 도구 제작 장치.
- 제1항에 있어서, 상기 메타 모델의 상기 의미론 등록부는 적어도 미리 정의된 세트의 의미론을 포함하는 것인 모델링 도구 제작 장치.
- 제1항에 있어서, 상기 메타 모델의 상기 의미론 등록부는 개발자가 공급한 적어도 한 세트의 의미론을 포함하는 것인 모델링 도구 제작 장치.
- 제1항에 있어서, 상기 메타 모델의 상기 객체/특성 작성기 등록부는 객체의일 예를 생성하기 위한 적어도 하나의 객체 작성기와, 특성의 일 예를 생성하기 위한 하나의 특성 작성기를 포함하는 것인 모델링 도구 제작 장치.
- 제1항에 있어서, 상기 객체/특성 모델은 복수 개의 객체와 복수 개의 특성 중 적어도 하나의 미리 정의된 세트를 포함하는 것인 모델링 도구 제작 장치.
- 제1항에 있어서, 상기 객체/특성 모델은 상기 메타 모델의 외부 정의를 기초로 하여 객체 및 특성의 예들을 포함하는 것인 모델링 도구 제작 장치.
- 제2항에 있어서, 상기 트랜잭션 관리자 객체/특성 인터페이스에 결합된 로그 파일을 더 포함하는 것인 모델링 도구 제작 장치.
- 제1항에 있어서, 상기 객체/특성 인터페이스는 상기 객체/특성 모델에 대한 액세스를 제한하는 것인 모델링 도구 제작 장치.
- 제1 세트의 클래스를 정의함으로써 객체/특성 모델을 구성하는 단계와,제2 세트의 클래스를 정의함으로써 메타 모델을 구성하는 단계와,유형 코드를 상기 제1 세트의 클래스 및 상기 제2 세트의 클래스와 연결짓는 단계와,미리 정의된 세트의 의미론을 상기 메타 모델에 공급하는 단계와,상기 세트의 의미론 중 적어도 하나의 의미론이 복수 개의 독립된 작업의 각 발생시에 호출될 때, 상기 복수 개의 독립된 작업을 인식하는 단계와,상기 객체/특성 모델에 대한 엑세스를 제한하기 위한 객체/특성 인터페이스를 공급하는 단계를 포함하는 것인 모델링 도구 제작 방법.
- 제10항에 있어서, 상기 객체/특성 모델을 무효 상태로 하는 행위를 실행시키지 않기 위해 트랜잭션 관리자를 공급하는 단계를 더 포함하는 것인 모델링 도구 제작 방법.
- 제10항에 있어서, 상기 객체/특성 모델은 상기 복수 개의 객체와 상기 복수 개의 특성 중 적어도 하나의 미리 정의된 세트를 포함하는 것인 모델링 도구 제작 방법.
- 제10항에 있어서, 상기 객체/특성 모델은 상기 개발자가 공급한 상기 메타 모델의 외부 정의를 기초로 하여 객체와 특성의 예들을 포함하는 것인 모델링 도구 제작 방법.
- 제10항에 있어서, 상기 메타 모델은 상기 개발자가 공급한 적어도 한 세트의 의미론을 포함하는 것인 모델링 도구 제작 방법.
- 등록부와 데이터 관리자를 포함하는 제1 모델과,인터페이스와,상기 제1 모델과 상기 인터페이스에 결합된 작성기 등록부와,상기 인터페이스에 결합된 제2 모델을 포함하고,상기 등록부는 의미론을 포함하는 것인 모델링 도구 제작 장치.
- 제1 세트의 클래스를 정의함으로써 제1 모델을 구성하는 단계와,제2 세트의 클래스를 정의함으로써 제2 모델을 구성하는 단계와,유형 코드를 상기 제1 세트의 클래스 및 제2 세트의 클래스에 연결짓는 단계와,미리 정의된 세트의 의미론을 상기 제1 모델에 공급하는 단계와,상기 세트의 의미론 중 적어도 하나의 의미론이 복수 개의 독립된 작업의 각각의 발생시에 호출될 때, 상기 복수 개의 독립된 작업을 인식하는 단계와,상기 제1 모델에 대한 액세스를 제한하기 위한 인터페이스를 공급하는 단계를 포함하는 것인 모델링 도구 제작 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10468298P | 1998-10-16 | 1998-10-16 | |
US60/104,682 | 1998-10-16 | ||
PCT/US1999/024118 WO2000023883A1 (en) | 1998-10-16 | 1999-10-15 | Apparatus and method for building modeling tools |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20010103604A true KR20010103604A (ko) | 2001-11-23 |
Family
ID=22301805
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020017004671A KR20010106514A (ko) | 1998-10-16 | 1999-10-15 | 확장 가능한 매크로 언어를 위한 방법 및 시스템 |
KR1020017004801A KR20010089309A (ko) | 1998-10-16 | 1999-10-15 | 2 이상의 모델들간의 차이점을 결정하는 방법 |
KR1020017004770A KR20010103603A (ko) | 1998-10-16 | 1999-10-15 | 모델의 충격 분석 |
KR1020017004595A KR20010093777A (ko) | 1998-10-16 | 1999-10-15 | Sql 입력을 통해 계층 데이타 기억 장치에 억세스하는방법 |
KR1020017004771A KR20010103604A (ko) | 1998-10-16 | 1999-10-15 | 모델링 도구 제작 장치 및 방법 |
Family Applications Before (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020017004671A KR20010106514A (ko) | 1998-10-16 | 1999-10-15 | 확장 가능한 매크로 언어를 위한 방법 및 시스템 |
KR1020017004801A KR20010089309A (ko) | 1998-10-16 | 1999-10-15 | 2 이상의 모델들간의 차이점을 결정하는 방법 |
KR1020017004770A KR20010103603A (ko) | 1998-10-16 | 1999-10-15 | 모델의 충격 분석 |
KR1020017004595A KR20010093777A (ko) | 1998-10-16 | 1999-10-15 | Sql 입력을 통해 계층 데이타 기억 장치에 억세스하는방법 |
Country Status (13)
Country | Link |
---|---|
US (3) | US6601023B1 (ko) |
EP (5) | EP1121654A4 (ko) |
JP (6) | JP2002528783A (ko) |
KR (5) | KR20010106514A (ko) |
CN (5) | CN1361891A (ko) |
AT (1) | ATE333125T1 (ko) |
AU (5) | AU775431B2 (ko) |
BR (5) | BR9914553A (ko) |
CA (5) | CA2346928A1 (ko) |
DE (1) | DE69932344T2 (ko) |
HK (4) | HK1040552A1 (ko) |
IL (10) | IL142564A0 (ko) |
WO (5) | WO2000023882A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100611098B1 (ko) * | 2003-12-12 | 2006-08-09 | 한국전자통신연구원 | 인터페이스 표준 모델을 이용한 위성 시뮬레이션 모델링시스템 |
Families Citing this family (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69932344T2 (de) * | 1998-10-16 | 2007-07-05 | Computer Associates Think, Inc. | Zugriff zu hierarchischem datenspeicher via sql-eingabe |
US7734457B2 (en) * | 1999-10-16 | 2010-06-08 | Computer Associates Think, Inc. | Method and system for generating dynamic comparison models |
US7194405B2 (en) * | 2000-04-12 | 2007-03-20 | Activepoint Ltd. | Method for presenting a natural language comparison of items |
US6480970B1 (en) * | 2000-05-17 | 2002-11-12 | Lsi Logic Corporation | Method of verifying data consistency between local and remote mirrored data storage systems |
US6853997B2 (en) * | 2000-06-29 | 2005-02-08 | Infoglide Corporation | System and method for sharing, mapping, transforming data between relational and hierarchical databases |
US7089256B2 (en) * | 2000-07-11 | 2006-08-08 | Knowledge Dynamics, Inc. | Universal data editor |
US7421587B2 (en) * | 2001-07-26 | 2008-09-02 | Mcafee, Inc. | Detecting computer programs within packed computer files |
US7069547B2 (en) | 2001-10-30 | 2006-06-27 | International Business Machines Corporation | Method, system, and program for utilizing impact analysis metadata of program statements in a development environment |
US7194475B2 (en) | 2001-10-30 | 2007-03-20 | International Business Machines Corporation | Method, system, and program for performing an impact analysis of program statements in at least one source code file |
US7069263B1 (en) * | 2002-02-19 | 2006-06-27 | Oracle International Corporation | Automatic trend analysis data capture |
CH703073B1 (de) * | 2003-03-19 | 2011-11-15 | Roland Pulfer | Vergleich von Modellen eines komplexen Systems. |
CH703081B1 (de) * | 2003-03-19 | 2011-11-15 | Roland Pulfer | Analyse eines Modells eines komplexen Systems. |
CH698890B1 (de) * | 2003-03-19 | 2009-11-30 | Roland Pulfer | Modellierung eines komplexen Systems. |
CA2429335A1 (en) * | 2003-05-22 | 2004-11-22 | Cognos Incorporated | System and method of determining impact of reports based on metadata model changes |
WO2005015389A1 (en) * | 2003-07-11 | 2005-02-17 | Computer Associates Think, Inc. | Adding user-defined objects to a modeling tool |
CN1910576B (zh) * | 2003-10-22 | 2010-11-03 | 英特尔公司 | 用于结构化数据转换的设备 |
US8793602B2 (en) | 2004-01-15 | 2014-07-29 | The Mathworks, Inc. | System and method for scheduling the execution of model components using model events |
US7484212B2 (en) * | 2004-02-27 | 2009-01-27 | International Business Machines Corporation | Methods and arrangements for automated change plan construction and impact analysis |
US7555531B2 (en) * | 2004-04-15 | 2009-06-30 | Microsoft Corporation | Efficient algorithm and protocol for remote differential compression |
US20060074980A1 (en) * | 2004-09-29 | 2006-04-06 | Sarkar Pte. Ltd. | System for semantically disambiguating text information |
GB2419700B (en) * | 2004-10-29 | 2010-03-31 | Hewlett Packard Development Co | Methods for indexing data, systems, software and apparatus relng thereto |
EP1684170A3 (en) * | 2005-01-21 | 2007-01-24 | Outsystems, software em redes, S. A. | Software development system and method |
US7735062B2 (en) | 2005-01-21 | 2010-06-08 | Outsystems—Software Em Rede, S.A. | Software development system and method |
US20060168555A1 (en) * | 2005-01-21 | 2006-07-27 | Represas Ferrao Lucio E | Software development system and method |
US20060168577A1 (en) * | 2005-01-21 | 2006-07-27 | Melo Antonio A V | Software development system and method |
JP4755427B2 (ja) | 2005-02-23 | 2011-08-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データベース・アクセス・システム、データベース・アクセス方法 |
US20060259781A1 (en) * | 2005-04-29 | 2006-11-16 | Sony Corporation/Sony Electronics Inc. | Method and apparatus for detecting the falsification of metadata |
US20070006130A1 (en) * | 2005-06-02 | 2007-01-04 | Arnold Stamler | Model oriented method of automatically detecting alterations in the design of a software system |
CN100432999C (zh) * | 2005-06-06 | 2008-11-12 | 上海宝信软件股份有限公司 | Oracle下利用表结构体对整记录进行数据存取的方法 |
US20070250927A1 (en) * | 2006-04-21 | 2007-10-25 | Wintutis, Inc. | Application protection |
US9626161B2 (en) * | 2006-12-12 | 2017-04-18 | Ca, Inc. | Computer readable medium and methods for filtering a dynamic comparison model |
US8156147B1 (en) * | 2007-02-06 | 2012-04-10 | The Mathworks, Inc. | Sharing of instructions across model boundaries |
US8334995B2 (en) | 2007-09-19 | 2012-12-18 | Sharp Laboratories Of America, Inc. | Method and system for adaptive control of imaging node |
US20090094616A1 (en) * | 2007-10-04 | 2009-04-09 | Delima Roberto | Comparing Middleware Configurations |
US20090138846A1 (en) * | 2007-11-23 | 2009-05-28 | Microsoft Corporation | Extended macro recording |
US7962457B2 (en) * | 2008-02-12 | 2011-06-14 | Computer Associates Think, Inc. | System and method for conflict resolution |
US8321407B2 (en) * | 2008-02-24 | 2012-11-27 | Panaya Ltd. | Methods for calculating a combined impact analysis repository |
US8170988B2 (en) * | 2008-04-17 | 2012-05-01 | The Boeing Company | System and method for synchronizing databases |
KR100956921B1 (ko) * | 2008-04-28 | 2010-05-11 | 권순용 | 데이터베이스 액세스 방법 |
US20100088686A1 (en) * | 2008-10-06 | 2010-04-08 | Microsoft Corporation | Programming language with extensible syntax |
CN101587492B (zh) * | 2009-05-11 | 2011-05-11 | 金蝶软件(中国)有限公司 | 定位处理对象的方法和系统 |
KR100921255B1 (ko) * | 2009-05-14 | 2009-10-13 | 주식회사 신시웨이 | Sql 마스킹 장치 및 방법 |
US20110313736A1 (en) * | 2010-06-18 | 2011-12-22 | Bioproduction Group, a California Corporation | Method and Algorithm for Modeling and Simulating A Discrete-Event Dynamic System |
US8316314B2 (en) * | 2010-06-30 | 2012-11-20 | Thermo Electron Scientific Instruments Llc | Intelligent multi-functional macros language for analytical measurements |
US8706744B2 (en) * | 2011-05-31 | 2014-04-22 | Ca, Inc. | Determining dependencies during macro expansion |
US20130139113A1 (en) * | 2011-11-30 | 2013-05-30 | Microsoft Corporation | Quick action for performing frequent tasks on a mobile device |
US8990187B2 (en) | 2012-05-21 | 2015-03-24 | Google Inc. | Efficient top-down hierarchical join on a hierarchically clustered data stream |
KR102270791B1 (ko) | 2014-12-10 | 2021-06-29 | 삼성전자주식회사 | 매크로 명령어를 처리하는 방법 및 장치 |
CN107408113B (zh) * | 2015-03-31 | 2020-03-31 | 华为技术有限公司 | 用于分析预生成数据报告的分析引擎及方法 |
US10585648B2 (en) | 2016-06-01 | 2020-03-10 | The Mathworks, Inc. | Systems and methods for aggregating implicit and explicit event code of executable models |
KR102195838B1 (ko) | 2019-04-10 | 2020-12-28 | 주식회사 티맥스 소프트 | 데이터 베이스 관리 방법 |
US11769489B2 (en) | 2021-01-28 | 2023-09-26 | Samsung Electronics Co., Ltd. | Electronic device and method for performing shortcut command in electronic device |
Family Cites Families (95)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3656178A (en) * | 1969-09-15 | 1972-04-11 | Research Corp | Data compression and decompression system |
US4667290A (en) * | 1984-09-10 | 1987-05-19 | 501 Philon, Inc. | Compilers using a universal intermediate language |
US4787035A (en) * | 1985-10-17 | 1988-11-22 | Westinghouse Electric Corp. | Meta-interpreter |
JPS63181033A (ja) * | 1987-01-23 | 1988-07-26 | Hitachi Ltd | プログラム自動生成方式 |
US5070534A (en) * | 1988-10-17 | 1991-12-03 | International Business Machines Corporation | Simplified cad parametric macroinstruction capability including variational geometrics feature |
US4931928A (en) * | 1988-11-09 | 1990-06-05 | Greenfeld Norton R | Apparatus for analyzing source code |
GB2227339A (en) * | 1989-01-21 | 1990-07-25 | Kashinath Narayan Dandeker | Complex expression generator |
JPH0363581A (ja) | 1989-04-28 | 1991-03-19 | Internatl Business Mach Corp <Ibm> | 電子回路の試験方法 |
US5276880A (en) * | 1989-12-15 | 1994-01-04 | Siemens Corporate Research, Inc. | Method for parsing and representing multi-versioned computer programs, for simultaneous and synchronous processing of the plural parses |
US5257363A (en) | 1990-04-09 | 1993-10-26 | Meta Software Corporation | Computer-aided generation of programs modelling complex systems using colored petri nets |
US5699310A (en) * | 1990-06-29 | 1997-12-16 | Dynasty Technologies, Inc. | Method and apparatus for a fully inherited object-oriented computer system for generating source code from user-entered specifications |
FR2667711B1 (fr) | 1990-10-09 | 1992-11-27 | Thomson Csf | Procede de reconnaissance d'objets dans des images et son application au suivi d'objets dans des sequences d'images. |
US5295256A (en) * | 1990-12-14 | 1994-03-15 | Racal-Datacom, Inc. | Automatic storage of persistent objects in a relational schema |
US5507030A (en) * | 1991-03-07 | 1996-04-09 | Digitial Equipment Corporation | Successive translation, execution and interpretation of computer program having code at unknown locations due to execution transfer instructions having computed destination addresses |
US5596746A (en) | 1991-10-21 | 1997-01-21 | General Electric Company | Method for transforming relational data base schemas into object models using ideal table meta models |
US5421016A (en) | 1991-12-12 | 1995-05-30 | International Business Machines Corporation | System and method for dynamically invoking object methods from an application designed for static method invocation |
FR2688611A1 (fr) * | 1992-03-12 | 1993-09-17 | Bull Sa | Utilisation d'un langage dont le typage porte sur le contenu des variables et permettant de manipuler des constructions complexes. |
US5721895A (en) * | 1992-03-17 | 1998-02-24 | International Business Machines Corporation | Computer program product and program storage device for a data transmission dictionary for encoding, storing, and retrieving hierarchical data processing information for a computer system |
US5517641A (en) | 1992-05-27 | 1996-05-14 | Cdb Software, Inc. | Restartable method to reorganize DB2 tablespace records by determining new physical positions for the records prior to moving using a non sorting technic |
FR2694105B1 (fr) | 1992-07-22 | 1994-11-25 | Bull Sa | Utilisation d'un langage à interprète embarqué pour la réalisation d'un outil interactif de définition d'interface utilisateurs. |
US5295059A (en) * | 1992-09-09 | 1994-03-15 | Allen-Bradley Company, Inc. | Programmable controller with ladder diagram macro instructions |
US5794229A (en) * | 1993-04-16 | 1998-08-11 | Sybase, Inc. | Database system with methodology for storing a database table by vertically partitioning all columns of the table |
JPH06332710A (ja) * | 1993-05-21 | 1994-12-02 | Fujitsu Ltd | オブジェクト指向データ処理システム |
US5550971A (en) | 1993-06-30 | 1996-08-27 | U S West Technologies, Inc. | Method and system for generating a user interface adaptable to various database management systems |
JPH07244605A (ja) * | 1994-03-03 | 1995-09-19 | Fujitsu Ltd | データベースシステム及びその更新方法 |
US5724425A (en) | 1994-06-10 | 1998-03-03 | Sun Microsystems, Inc. | Method and apparatus for enhancing software security and distributing software |
US5742828A (en) * | 1994-08-03 | 1998-04-21 | Microsoft Corporation | Compiler and method for evaluation of foreign syntax expressions in source code |
US5694539A (en) * | 1994-08-10 | 1997-12-02 | Intrinsa Corporation | Computer process resource modelling method and apparatus |
US5495613A (en) * | 1994-08-18 | 1996-02-27 | Unisys Corporation | Method and apparatus for extending the capability of a system editor using high-level language transforms |
US5692195A (en) | 1994-08-31 | 1997-11-25 | International Business Machines Corporation | Parent class shadowing |
US5768564A (en) * | 1994-10-07 | 1998-06-16 | Tandem Computers Incorporated | Method and apparatus for translating source code from one high-level computer language to another |
US5732192A (en) | 1994-11-30 | 1998-03-24 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Global qualitative flow-path modeling for local state determination in simulation and analysis |
US5721915A (en) | 1994-12-30 | 1998-02-24 | International Business Machines Corporation | Interaction between application of a log and maintenance of a table that maps record identifiers during online reorganization of a database |
US5768586A (en) * | 1995-01-10 | 1998-06-16 | Peoplesoft, Inc. | Net change management for object-oriented modeling |
US5513314A (en) | 1995-01-27 | 1996-04-30 | Auspex Systems, Inc. | Fault tolerant NFS server system and mirroring protocol |
US5644764A (en) * | 1995-01-31 | 1997-07-01 | Unisys Corporation | Method for supporting object modeling in a repository |
US5548754A (en) | 1995-02-07 | 1996-08-20 | International Business Machines Corporation | Optimization of SQL queries using early-out join transformations |
US5701487A (en) * | 1995-03-27 | 1997-12-23 | Sun Microsystems, Inc. | Method and apparatus for displaying locations of errors detected inside software macro calls |
EP0823092A1 (en) | 1995-04-24 | 1998-02-11 | Aspect Development, Inc. | Modeling of object-oriented database structures, translation to relational database structures, and dynamic searches thereon |
US5737592A (en) * | 1995-06-19 | 1998-04-07 | International Business Machines Corporation | Accessing a relational database over the Internet using macro language files |
US5717924A (en) * | 1995-07-07 | 1998-02-10 | Wall Data Incorporated | Method and apparatus for modifying existing relational database schemas to reflect changes made in a corresponding object model |
US5790861A (en) * | 1995-07-07 | 1998-08-04 | Sun Microsystems, Inc. | Method and apparatus for generating executable code from object-oriented C++ source code |
US5638381A (en) * | 1995-07-21 | 1997-06-10 | Motorola, Inc. | Apparatus and method for deriving correspondence between storage elements of a first circuit model and storage elements of a second circuit model |
WO1997008634A1 (en) | 1995-08-23 | 1997-03-06 | International Business Machines Corporation | Method and computer system for generating process management computer programs for process models |
US5721929A (en) * | 1995-10-06 | 1998-02-24 | Electronic Data Systems Corporation | Method for extending a fourth generation programming language |
US5855014A (en) * | 1995-11-03 | 1998-12-29 | Application Partners, Inc. | Getfield function for a relational workgroup platform using keyword and workflow databases |
US6003037A (en) | 1995-11-14 | 1999-12-14 | Progress Software Corporation | Smart objects for development of object oriented software |
US5721925A (en) * | 1995-12-01 | 1998-02-24 | Unisys Corporation | Method for generically invoking operation in an object oriented repository |
US5802511A (en) * | 1996-01-02 | 1998-09-01 | Timeline, Inc. | Data retrieval method and apparatus with multiple source capability |
US5815415A (en) * | 1996-01-19 | 1998-09-29 | Bentley Systems, Incorporated | Computer system for portable persistent modeling |
US6091895A (en) | 1996-03-27 | 2000-07-18 | International Business Machines Corporation | Object oriented central maintenance for programs and scripts |
US5715453A (en) * | 1996-05-31 | 1998-02-03 | International Business Machines Corporation | Web server mechanism for processing function calls for dynamic data queries in a web page |
US5987123A (en) | 1996-07-03 | 1999-11-16 | Sun Microsystems, Incorporated | Secure file system |
US5819305A (en) * | 1996-08-23 | 1998-10-06 | Motorola, Inc. | Method and apparatus for configuring operating modes in a memory |
US5974201A (en) * | 1996-10-01 | 1999-10-26 | Siemens Corporate Research, Inc. | Smart image system |
US6112024A (en) | 1996-10-02 | 2000-08-29 | Sybase, Inc. | Development system providing methods for managing different versions of objects with a meta model |
US5761494A (en) | 1996-10-11 | 1998-06-02 | The Sabre Group, Inc. | Structured query language to IMS transaction mapper |
US6065002A (en) | 1996-10-31 | 2000-05-16 | Systems And Computer Technology Corporation | Simplified interface for relational database access using open database connectivity |
US5983016A (en) | 1996-11-12 | 1999-11-09 | International Business Machines Corporation | Execution engine in an object modeling tool |
US5857197A (en) | 1997-03-20 | 1999-01-05 | Thought Inc. | System and method for accessing data stores as objects |
US5905982A (en) | 1997-04-04 | 1999-05-18 | International Business Machines Corporation | Handling null values in SQL queries over object-oriented data |
US6182274B1 (en) * | 1997-05-01 | 2001-01-30 | International Business Machines Corporation | Reusing code in object-oriented program development |
US5978789A (en) * | 1997-05-07 | 1999-11-02 | Lucent Technologies Inc. | Efficient hypothetical query evaluation in a database system |
US5878411A (en) | 1997-06-27 | 1999-03-02 | International Business Machines Corporation | Dependent object class and subclass mapping to relational data store |
US5822750A (en) * | 1997-06-30 | 1998-10-13 | International Business Machines Corporation | Optimization of correlated SQL queries in a relational database management system |
US6513152B1 (en) | 1997-07-23 | 2003-01-28 | International Business Machines Corporation | Object oriented framework mechanism for customization of object oriented frameworks |
US6081774A (en) * | 1997-08-22 | 2000-06-27 | Novell, Inc. | Natural language information retrieval system and method |
US6112304A (en) | 1997-08-27 | 2000-08-29 | Zipsoft, Inc. | Distributed computing architecture |
US6292811B1 (en) | 1997-09-19 | 2001-09-18 | Modernsoft, Inc. | Populating cells of an electronic financial statement |
US5974407A (en) | 1997-09-29 | 1999-10-26 | Sacks; Jerome E. | Method and apparatus for implementing a hierarchical database management system (HDBMS) using a relational database management system (RDBMS) as the implementing apparatus |
US6085120A (en) * | 1997-11-17 | 2000-07-04 | International Business Machines Corporation | Data system processing and method for creating application extension |
US6105043A (en) * | 1997-12-16 | 2000-08-15 | International Business Machines Corporation | Creating macro language files for executing structured query language (SQL) queries in a relational database via a network |
US6247020B1 (en) | 1997-12-17 | 2001-06-12 | Borland Software Corporation | Development system with application browser user interface |
US6374256B1 (en) | 1997-12-22 | 2002-04-16 | Sun Microsystems, Inc. | Method and apparatus for creating indexes in a relational database corresponding to classes in an object-oriented application |
US6243709B1 (en) | 1998-06-29 | 2001-06-05 | Sun Microsystems, Inc. | Method and apparatus for loading stored procedures in a database corresponding to object-oriented data dependencies |
US6114978A (en) | 1998-01-14 | 2000-09-05 | Lucent Technologies Inc. | Method and apparatus for assignment of shortcut key combinations in a computer software application |
US6453356B1 (en) | 1998-04-15 | 2002-09-17 | Adc Telecommunications, Inc. | Data exchange system and method |
US6052720A (en) | 1998-05-14 | 2000-04-18 | Sun Microsystems, Inc. | Generic schema for storing configuration information on a server computer |
US6446109B2 (en) | 1998-06-29 | 2002-09-03 | Sun Microsystems, Inc. | Application computing environment |
US6226792B1 (en) | 1998-10-14 | 2001-05-01 | Unisys Corporation | Object management system supporting the use of application domain knowledge mapped to technology domain knowledge |
DE69932344T2 (de) | 1998-10-16 | 2007-07-05 | Computer Associates Think, Inc. | Zugriff zu hierarchischem datenspeicher via sql-eingabe |
US6859919B1 (en) | 1998-10-16 | 2005-02-22 | Computer Associates Think, Inc. | Object modeling tool with meta model semantic registry (rules) a meta data manager for object(s) properties an object/property interface for instance(s) of objects/properties received via object/property interface of the object factory registry |
US6502234B1 (en) | 1999-01-15 | 2002-12-31 | International Business Machines Corporation | Component based wizard for creating wizards |
US6678882B1 (en) | 1999-06-30 | 2004-01-13 | Qwest Communications International Inc. | Collaborative model for software systems with synchronization submodel with merge feature, automatic conflict resolution and isolation of potential changes for reuse |
KR200258626Y1 (ko) | 1999-06-30 | 2001-12-28 | 윤청목 | 쥬스추출기와 겸용 사용되게 한 믹서 |
US6385767B1 (en) | 1999-09-30 | 2002-05-07 | Unisys Corporation | Method and system for creating and manipulating extensions to version control systems |
EP1247165B1 (en) | 1999-10-01 | 2006-05-03 | Infoglide Corporation | System and method for transforming a relational database to a hierarchical database |
US7734457B2 (en) | 1999-10-16 | 2010-06-08 | Computer Associates Think, Inc. | Method and system for generating dynamic comparison models |
JP2001265361A (ja) | 2000-03-14 | 2001-09-28 | Sony Corp | 情報提供装置および方法、情報処理装置および方法、並びにプログラム格納媒体 |
US7353289B2 (en) | 2000-11-06 | 2008-04-01 | Telecommunication Systems, Inc. | System for an open architecture development platform with centralized synchronization |
US6754671B2 (en) | 2001-05-02 | 2004-06-22 | Sun Microsystems, Inc. | Apparatus for Meta Object Facility repository bootstrap |
US20030014439A1 (en) | 2001-06-20 | 2003-01-16 | International Business Machines Corporation | Defining a markup language representation for state chart data |
US7322025B2 (en) | 2001-07-17 | 2008-01-22 | Tata Consultancy Services Limited | Method and apparatus for versioning and configuration management of object models |
US6904588B2 (en) | 2001-07-26 | 2005-06-07 | Tat Consultancy Services Limited | Pattern-based comparison and merging of model versions |
WO2005015389A1 (en) | 2003-07-11 | 2005-02-17 | Computer Associates Think, Inc. | Adding user-defined objects to a modeling tool |
-
1999
- 1999-10-15 DE DE69932344T patent/DE69932344T2/de not_active Expired - Lifetime
- 1999-10-15 KR KR1020017004671A patent/KR20010106514A/ko not_active Application Discontinuation
- 1999-10-15 IL IL14256499A patent/IL142564A0/xx active IP Right Grant
- 1999-10-15 IL IL14248299A patent/IL142482A0/xx active IP Right Grant
- 1999-10-15 CA CA002346928A patent/CA2346928A1/en not_active Abandoned
- 1999-10-15 CN CN99812038A patent/CN1361891A/zh active Pending
- 1999-10-15 AU AU14452/00A patent/AU775431B2/en not_active Ceased
- 1999-10-15 WO PCT/US1999/024117 patent/WO2000023882A1/en not_active Application Discontinuation
- 1999-10-15 CN CN99812190A patent/CN1129859C/zh not_active Expired - Fee Related
- 1999-10-15 AU AU13154/00A patent/AU761228B2/en not_active Ceased
- 1999-10-15 BR BR9914553-7A patent/BR9914553A/pt not_active IP Right Cessation
- 1999-10-15 BR BR9914551-0A patent/BR9914551A/pt not_active IP Right Cessation
- 1999-10-15 BR BR9914549-9A patent/BR9914549A/pt not_active IP Right Cessation
- 1999-10-15 JP JP2000577541A patent/JP2002528783A/ja active Pending
- 1999-10-15 CN CN99812225A patent/CN1129068C/zh not_active Expired - Fee Related
- 1999-10-15 JP JP2000577559A patent/JP2002528789A/ja active Pending
- 1999-10-15 JP JP2000577558A patent/JP2002528788A/ja active Pending
- 1999-10-15 CA CA002347495A patent/CA2347495A1/en not_active Abandoned
- 1999-10-15 IL IL14257299A patent/IL142572A0/xx active IP Right Grant
- 1999-10-15 BR BR9914552-9A patent/BR9914552A/pt not_active IP Right Cessation
- 1999-10-15 CA CA002346925A patent/CA2346925A1/en not_active Abandoned
- 1999-10-15 EP EP99956567A patent/EP1121654A4/en not_active Ceased
- 1999-10-15 JP JP2000577592A patent/JP2002528794A/ja active Pending
- 1999-10-15 WO PCT/US1999/024118 patent/WO2000023883A1/en not_active Application Discontinuation
- 1999-10-15 WO PCT/US1999/024120 patent/WO2000023863A2/en not_active Application Discontinuation
- 1999-10-15 KR KR1020017004801A patent/KR20010089309A/ko not_active Application Discontinuation
- 1999-10-15 CA CA002347467A patent/CA2347467A1/en not_active Abandoned
- 1999-10-15 KR KR1020017004770A patent/KR20010103603A/ko not_active Application Discontinuation
- 1999-10-15 AT AT99970761T patent/ATE333125T1/de not_active IP Right Cessation
- 1999-10-15 AU AU65180/99A patent/AU6518099A/en not_active Abandoned
- 1999-10-15 BR BR9914427-1A patent/BR9914427A/pt not_active IP Right Cessation
- 1999-10-15 KR KR1020017004595A patent/KR20010093777A/ko not_active Application Discontinuation
- 1999-10-15 IL IL14248499A patent/IL142484A0/xx active IP Right Grant
- 1999-10-15 WO PCT/US1999/024115 patent/WO2000023919A1/en not_active Application Discontinuation
- 1999-10-15 CN CNB998121916A patent/CN1192321C/zh not_active Expired - Fee Related
- 1999-10-15 JP JP2000577590A patent/JP2002528793A/ja not_active Withdrawn
- 1999-10-15 CA CA002346924A patent/CA2346924A1/en not_active Abandoned
- 1999-10-15 CN CN99812224A patent/CN1359489A/zh active Pending
- 1999-10-15 AU AU13152/00A patent/AU772191B2/en not_active Ceased
- 1999-10-15 EP EP99956569.0A patent/EP1121639B1/en not_active Expired - Lifetime
- 1999-10-15 EP EP99970761A patent/EP1121655B1/en not_active Expired - Lifetime
- 1999-10-15 AU AU12071/00A patent/AU1207100A/en not_active Abandoned
- 1999-10-15 IL IL14257199A patent/IL142571A0/xx active IP Right Grant
- 1999-10-15 WO PCT/US1999/023876 patent/WO2000023917A1/en active IP Right Grant
- 1999-10-15 EP EP99953188A patent/EP1129391A4/en not_active Withdrawn
- 1999-10-15 EP EP99970749.0A patent/EP1121640B1/en not_active Expired - Lifetime
- 1999-10-15 KR KR1020017004771A patent/KR20010103604A/ko not_active Application Discontinuation
- 1999-10-16 US US09/419,731 patent/US6601023B1/en not_active Expired - Lifetime
- 1999-10-16 US US09/419,736 patent/US6385610B1/en not_active Expired - Lifetime
- 1999-10-16 US US09/419,749 patent/US7711685B1/en not_active Expired - Fee Related
-
2001
- 2001-04-05 IL IL142484A patent/IL142484A/en not_active IP Right Cessation
- 2001-04-05 IL IL142482A patent/IL142482A/en not_active IP Right Cessation
- 2001-04-12 IL IL142564A patent/IL142564A/en not_active IP Right Cessation
- 2001-04-12 IL IL142572A patent/IL142572A/en not_active IP Right Cessation
- 2001-04-12 IL IL142571A patent/IL142571A/en not_active IP Right Cessation
-
2002
- 2002-01-28 HK HK02100665.2A patent/HK1040552A1/zh unknown
- 2002-01-28 HK HK02100664.3A patent/HK1040441A1/zh unknown
- 2002-01-28 HK HK02100660.7A patent/HK1040440A1/zh unknown
- 2002-03-04 HK HK02101645.5A patent/HK1042140A1/zh unknown
-
2005
- 2005-05-11 JP JP2005138696A patent/JP2005285141A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100611098B1 (ko) * | 2003-12-12 | 2006-08-09 | 한국전자통신연구원 | 인터페이스 표준 모델을 이용한 위성 시뮬레이션 모델링시스템 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20010103604A (ko) | 모델링 도구 제작 장치 및 방법 | |
US5499365A (en) | System and method for controlling versions of objects in an object oriented computing environment | |
US6049673A (en) | Organicware applications for computer systems | |
US7860831B2 (en) | Object graph editing context and methods of use | |
US5926819A (en) | In-line triggers | |
US5832268A (en) | System and method for supporting complex objects in an object oriented computing environment | |
US5497491A (en) | System and method for importing and exporting data between an object oriented computing environment and an external computing environment | |
US6243709B1 (en) | Method and apparatus for loading stored procedures in a database corresponding to object-oriented data dependencies | |
US5644764A (en) | Method for supporting object modeling in a repository | |
US5371675A (en) | Spreadsheet program which implements alternative range references | |
US7263512B2 (en) | Accessing and updating views and relations in a relational database | |
JPH03137730A (ja) | オブジエクト指向コンピユータ・システム | |
US7451434B1 (en) | Programming with shared objects in a shared memory | |
US5513350A (en) | Update constraints in transactions which may abort | |
US6859919B1 (en) | Object modeling tool with meta model semantic registry (rules) a meta data manager for object(s) properties an object/property interface for instance(s) of objects/properties received via object/property interface of the object factory registry | |
US20040019586A1 (en) | Property and object validation in a database system | |
US5794231A (en) | Method for application-program database interface | |
US6324682B1 (en) | Organicware applications for computer systems | |
Timson | The file manager system | |
EP1040432B1 (en) | Method and apparatus for loading stored procedures in a database corresponding to object-oriented data dependencies | |
Domdouzis | SQL/PL-SQL Booklet | |
Van Hoeve et al. | An object‐oriented approach to application generation | |
Albano et al. | Object-Oriented Galileo | |
Mäkelä | USING SQL FROM SMALLTALK 2nd edition | |
Timson | The File Manager System |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |