메타 오브젝트 퍼실리티
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
메타 오브젝트 퍼실리티(MOF)는 객체 관리 그룹(OMG)에서 UML의 표준화를 위해 도입된 메타 모델링 아키텍처이다. MOF는 4계층 아키텍처를 가지며, 모델, 메타 모델, 메타-메타 모델 등을 정의한다. MOF는 "닫힌" 및 "엄밀한" 메타 모델링 아키텍처이며, 언어 또는 데이터의 추상 구문을 정의하는 수단을 제공한다. MOF는 XML 메타데이터 교환(XMI)을 통한 모델 교환과 자바 메타데이터 인터페이스(JMI)를 통한 모델 조작을 지원하며, EMOF와 CMOF의 두 가지 준수 지점이 존재한다. MOF는 시스템 통합, 엔터프라이즈 아키텍처, 디지털 트랜스포메이션 등 다양한 분야에서 활용되며, 국제 표준으로 채택되었다.
더 읽어볼만한 페이지
- 명세 언어 - 통합 모델링 언어
통합 모델링 언어(UML)는 소프트웨어 시스템의 구조와 행위를 시각적으로 표현하기 위해 개발된 표준 모델링 언어이며, 객체 지향 방법론을 통합하여 개발되어 다양한 분야에서 활용된다. - 명세 언어 - 모델링 언어
모델링 언어는 시스템의 구조와 동작을 표현하기 위해 여러 분야에서 사용되는 언어로, 비즈니스 프로세스 모델링 표기법(BPMN), 통합 모델링 언어(UML), 확장 엔터프라이즈 모델링 언어(EEML) 등이 있으며, 도메인 적합성, 참가자 적합성, 모델러 적합성 등의 품질 요소로 평가된다. - 통합 모델링 언어 - 유스 케이스
유스 케이스는 시스템과 액터 간 상호작용을 통해 시스템 목표 달성에 기여하는 동작들을 나타내는 요구 사항 캡처, 모델링, 명세 기법으로, 객체 지향 소프트웨어 공학에서 기능 요구 사항을 캡처하는 데 중요한 역할을 하며 다양한 분야에서 활용된다. - 통합 모델링 언어 - 모델 기반 개발
모델 기반 개발은 모델을 활용하여 소프트웨어 및 시스템을 개발하는 접근 방식이며, 컴퓨터 지원 소프트웨어 공학 도구에서 시작하여 통합 모델링 언어와 모델 중심 아키텍처 표준을 거쳐 발전했다. - 데이터 모델링 - 빌딩 정보 모델링
빌딩 정보 모델링(BIM)은 건축물의 전 생애주기 동안 발생하는 정보를 디지털 모델로 통합 관리하는 프로세스이다. - 데이터 모델링 - 저장 프로시저
저장 프로시저는 데이터베이스 관리 시스템에서 SQL 문들을 미리 컴파일하여 저장하고, 모듈화, 보안성, 성능 향상, 유지보수 용이성과 같은 특징을 가지며, 데이터베이스 시스템마다 구현 방식과 지원하는 언어가 다를 수 있는 코드 묶음이다.
메타 오브젝트 퍼실리티 | |
---|---|
Meta-Object Facility (MOF) | |
유형 | 메타 모델링 언어 |
상태 | 활동적 |
표준 개발 조직 | Object Management Group |
세부 사항 | |
메타 모델 레이어 수 | 4 |
최상위 레이어 이름 | M3 |
최상위 레이어 인스턴스 | MOF 메타모델 |
목적 | 메타데이터 관리를 위한 메타모델 제공 |
주요 용도 | 모델 기반 엔지니어링(MDE) |
역사 | |
초판 | 2000년 |
최신 버전 | 2.5.1 (2016년 5월) |
표준 문서 | Meta Object Facility (MOF) 핵심 사양 버전 2.5.1 |
2. 역사적 배경
2. 1. 초기 역사
2. 2. OMG 표준화
3. MOF 아키텍처
MOF는 4계층 아키텍처로 설계되었다.[1] 최상위 계층은 M3 계층이라고 불리는 메타-메타 모델이다. M3 모델은 M2 모델이라고 불리는 메타모델을 구축하기 위해 MOF에서 사용되는 언어이다.[1]
M3 모델 외에도 MOF는 해당 작업을 설명하는 CORBA 인터페이스를 정의하여 모델 및 메타모델을 생성하고 조작하는 수단을 설명한다. MOF M3 모델과 UML 구조 모델 간의 유사성 때문에 MOF 메타모델은 일반적으로 UML 클래스 다이어그램으로 모델링된다.[1]
MOF는 통합 모델링 언어 (UML)를 기원으로 한다. OMG가 UML의 표준화를 진행할 때, 모델의 엄밀한 정의를 수행하는 수단으로서 MOF를 도입했다. MOF는 4계층의 아키텍처로 설계되어 있다. 이해를 돕기 위해 M1 계층부터 설명하겠다. M1 계층에서 정의되는 모델은 일반적인 UML 모델 등, 소프트웨어 설계 등에 사용되는 모델이다. UML의 클래스 등이 여기에 포함된다. 그 하위에 해당하는 M0 계층은 M1 계층의 인스턴스이다. M1 계층의 UML 클래스에서 실행 시 생성되는 개별 인스턴스 등이 여기에 해당한다. 상위의 M2 계층은 "UML 자체의 구조 정의"가 포함된다(이 M2 계층을 가리켜 메타 모델이라고 부르는 경우가 많다). 예를 들어, UML의 클래스에는 여러 필드와 메서드가 있으며, 클래스 간에는 다양한 종류의 관계(어소시에이션이나 애그리게이션 등)가 존재한다. 이들은 "UML 자체의 구조"의 일부이다. M2 계층을 사용함으로써, 이러한 UML 모델의 구조를 엄밀하게 정의하는 것이 가능해진다. 또한, MOF의 도입으로 OMG는 UML 외의 모델(CWM, SysML 등)을 정의하는 수단을 얻게 되었다. 최상위의 M3 계층은 메타-메타 모델이라고 불리며, (UML이 아닌) MOF 자체의 구조를 정의한다.[1]
MOF와 UML은 매우 유사하므로, MOF 메타 모델은 일반적으로 UML의 클래스 다이어그램으로 모델링된다. MOF를 지원하는 표준으로 XMI가 있다. XMI를 사용하여, M3/M2/M1 계층의 모델을 XML 기반 형식으로 교환하는 것이 가능해진다. 또한 MOF에서는, 모델이나 메타 모델을 생성・조작하는 수단으로 Java 언어 인터페이스 JMI를 정의하고 있다(MOF1.4까지는, CORBA IDL 인터페이스도 정의되어 있었지만, MOF2.0부터는 삭제되었다).[1]
MOF는 "닫힌" 메타 모델링 아키텍처이다. 그 이유는 M3 모델은 M3 모델 자체로 정의되어 있으며, M3 계층을 정의하기 위해 외부의 정의를 필요로 하지 않기 때문이다. 또한, MOF는 "엄밀한" 메타 모델링 아키텍처이기도 하다. 각 계층의 각 모델 요소는 상위 계층의 모델 정의에 엄밀하게 대응한다. MOF는 언어나 데이터의 구조의 추상 구문을 정의하는 수단을 제공한다. 메타 모델 정의에서 MOF가 수행하는 역할은 프로그래밍 언어의 구문 정의에서 EBNF가 수행하는 역할과 똑같다. MOF는 메타 모델 정의를 위한 도메인 특화 언어 (DSL)로 간주할 수 있으며, 이는 마치 EBNF가 구문 정의를 위한 DSL인 것과 같다. EBNF와 마찬가지로, MOF는 MOF 자체로 정의할 수 있다(이것이 M3 계층의 정의가 된다).[1]
MOF는 객체 지향에서 친숙한 클래스를 사용하여 구조를 정의한다(단, 여기서 사용하는 클래스는 '''MOF::Classes'''이며, UML에서 사용하는 '''UML::Classes'''와는 엄밀히 다르다). 이를 통해 메타 레벨에서의 개념(모델 요소)과 그 구조를 정의한다. 그러나, MOF로 정의되는 모델이 UML과 같은 객체 지향형 메타 모델로 한정되는 것은 아니다. 객체 지향형이 아닌 메타 모델도 정의 가능하다(예를 들어, 관계 모델, 페트리 네트나 웹 서비스의 메타 모델 등).[1]
2008년 2월 현재, OMG는 2가지 종류의 MOF를 정의하고 있다:[1]
'''ECore'''라는 파생 사양이 이클립스 모델링 프레임워크에서 정의되어 있는데, 이는 거의 OMG의 EMOF에 해당한다.[1]
다른 관련 사양으로 OCL이 있다. 이는 술어 논리를 사용하여 모델의 제한이나 쿼리를 정의하는 형식 언어의 사양이다.[1]
또한, 중요한 새로운 표준으로 QVT가 있다. 이는 OCL의 확장이며, MOF 기반 모델의 변환 방법을 기술하는 수단을 제공한다. (모델 변환 언어 참조).[1]
MOF는 국제 표준 규격이 되었다:[1]
- ISO/IEC 19502:2005 Information technology -- Meta Object Facility (MOF)[1]
레이어 2 MOF 모델의 가장 두드러진 예는 UML 자체를 설명하는 모델인 UML 메타모델이다.[1] 이러한 M2 모델은 M1 계층, 즉 M1 모델의 요소를 설명한다. 이는 예를 들어 UML로 작성된 모델이 될 것이다. 마지막 계층은 M0 계층 또는 데이터 계층이다. 이는 실제 객체를 설명하는 데 사용된다.[1]
3. 1. M3 계층 (메타-메타 모델)
MOF는 자체적으로 준수하는 M3 모델을 정의하여 '닫힌' 메타모델링 아키텍처를 구현한다.[2] MOF는 모든 계층의 모델 요소가 상위 계층의 모델 요소와 엄격하게 일치하는 '엄격한' 메타모델링 아키텍처를 허용한다.[2] MOF는 언어 또는 데이터의 추상 구문 구조를 정의하는 수단을 제공하며, EBNF가 프로그래밍 언어 문법을 정의하는 데 사용되는 것과 동일한 역할을 한다.[2] 즉, MOF는 메타모델을 정의하는 데 사용되는 도메인 특화 언어(DSL)이며, EBNF와 유사하게 MOF는 MOF 내에서 정의될 수 있다.[2]MOF는 객체 지향 프로그래밍의 '''MOF::클래스''' ('''UML::클래스'''와 혼동하지 않음) 개념을 사용하여 메타계층에서 모델 요소를 정의한다.[2] MOF는 UML과 같은 객체 지향 메타모델뿐만 아니라 페트리 망 또는 웹 서비스 메타모델과 같은 비 객체 지향 메타모델을 정의하는 데에도 사용될 수 있다.[2]
OMG는 2006년 5월, MOF에 대해 두 가지 준수 지점(EMOF와 CMOF)을 정의했다.[2] 2006년 6월에는 SMOF(Semantic MOF)에 대한 ''제안 요청''이 발행되었다.[2] 이클립스 모델링 프레임워크에서 정의된 '''ECore'''는 OMG의 EMOF와 거의 일치한다.
모델 제약 정의에 사용 가능한 공식 언어를 설명하는 OCL 표준과 MOF 기반 모델을 쿼리, 보기 및 변환하는 수단을 도입하는 QVT 표준(모델 변환 언어 참조)도 관련되어 있다.
3. 2. M2 계층 (메타 모델)
3. 3. M1 계층 (모델)
3. 4. M0 계층 (데이터)
4. MOF의 특징 및 장점
MOF는 통합 모델링 언어(UML)를 기원으로 한다. OMG가 UML의 표준화를 진행할 때, 모델의 엄밀한 정의를 수행하는 수단으로서 MOF를 도입했다. MOF는 4계층의 아키텍처로 설계되어 있으며, 각 계층은 모델링의 추상화 수준을 나타낸다.
MOF는 "닫힌" 메타 모델링 아키텍처이며, M3 모델은 M3 모델 자체로 정의되어 외부 정의를 필요로 하지 않는다. 또한, 각 계층의 모델 요소는 상위 계층의 모델 정의에 엄밀하게 대응하는 "엄밀한" 메타 모델링 아키텍처이다. MOF는 언어나 데이터 구조의 추상 구문을 정의하는 수단을 제공하며, 이는 프로그래밍 언어 구문 정의에서 EBNF가 수행하는 역할과 유사하다. MOF는 메타 모델 정의를 위한 도메인 특화 언어(DSL)로 간주할 수 있다.
MOF는 객체 지향의 클래스를 사용하여 구조를 정의하지만, 객체 지향형 메타 모델에만 한정되는 것은 아니다. 관계 모델, 페트리 네트, 웹 서비스 등 객체 지향형이 아닌 메타 모델도 정의 가능하다.
MOF를 지원하는 표준으로 XMI가 있어, M3/M2/M1 계층의 모델을 XML 기반 형식으로 교환할 수 있다. 모델이나 메타 모델을 생성・조작하는 수단으로 Java 언어 인터페이스 JMI가 정의되어 있다.
2008년 2월 현재, OMG는 두 가지 종류의 MOF를 정의하고 있다.
- EMOF: Essential MOF (기본 MOF)
- CMOF: Complete MOF (완전 MOF)
Eclipse Modeling Framework에서 정의된 ECore는 OMG의 EMOF에 해당한다.
OCL은 술어 논리를 사용하여 모델의 제한이나 쿼리를 정의하는 형식 언어 사양이다. QVT는 OCL의 확장이며, MOF 기반 모델의 변환 방법을 기술하는 수단을 제공한다.
MOF는 ISO/IEC 19502:2005 Information technology -- Meta Object Facility (MOF)로 국제 표준 규격이 되었다.
4. 1. 엄격한 메타모델링
4. 2. 추상 구문 정의
4. 3. 도메인 특화 언어 (DSL) 정의
MOF는 메타모델 정의를 위한 도메인 특화 언어(DSL)로 볼 수 있다. EBNF가 프로그래밍 언어 문법을 정의하는 데 사용되는 것처럼, MOF는 메타모델을 정의하는 데 사용된다. MOF는 다양한 도메인에 특화된 모델링 언어를 정의할 수 있도록 해주며, MOF 내에서 자체적으로 정의될 수도 있다.MOF는 객체 지향 프로그래밍의 '''MOF::클래스''' 개념('''UML::클래스'''와는 다름)을 사용하여 메타계층에서 모델 요소를 정의한다. MOF는 UML과 같은 객체 지향 메타모델뿐만 아니라 페트리 망이나 웹 서비스 메타모델과 같은 비 객체 지향 메타모델도 정의할 수 있다.
OMG는 EMOF와 CMOF, 두 가지 MOF 준수 지점을 정의했다.[2] 이클립스 모델링 프레임워크의 '''ECore'''는 OMG의 EMOF와 거의 일치한다.
OCL은 술어 논리를 사용하여 모델 제약을 정의하는 공식 언어를 설명하는 표준이다. 2008년에 승인된 QVT는 MOF 기반 모델을 쿼리, 보기 및 변환하는 수단을 제공하는 중요한 표준이다.
5. 관련 표준 및 기술
ISO/IEC 19508:2014 정보 기술 — 객체 관리 그룹 메타 객체 퍼실리티(MOF) 코어와 ISO/IEC 19502:2005 정보 기술 — 메타 객체 퍼실리티(MOF)는 MOF의 국제 표준이다.
MOF는 메타 모델링을 작성하여 도메인 특화 언어의 추상 구문을 모델링하기 위한 표준으로 볼 수 있다. 케르메타는 EMOF 메타 모델에 실행 가능한 액션을 부착하여 DSL의 운영 시맨틱스를 모델링하고 이를 위한 인터프리터를 쉽게 얻을 수 있도록 하는 MOF의 확장이다.
MOF 모델을 조작하기 위한 자바 API는 JMI에 정의되어 있다.
OMG의 MOF는 분산 관리 태스크 포스(DMTF)가 정의한 관리 객체 형식(MOF)과 혼동해서는 안 된다.
MOF는 통합 모델링 언어 (UML)를 기원으로 한다. OMG가 UML의 표준화를 진행할 때, 모델의 엄밀한 정의를 수행하는 수단으로서 MOF를 도입했다. MOF는 4계층의 아키텍처로 설계되었다. M1 계층의 모델은 일반적인 UML 모델 등, 소프트웨어 설계 등에 사용되는 모델이다. UML의 클래스 등이 여기에 포함된다. M0 계층은 M1 계층의 인스턴스이다. M1 계층의 UML 클래스에서 실행 시 생성되는 개별 인스턴스 등이 여기에 해당한다. M2 계층은 "UML 자체의 구조 정의"가 포함된다(메타 모델). 예를 들어, UML의 클래스에는 여러 필드와 메서드가 있으며, 클래스 간에는 다양한 종류의 관계(어소시에이션이나 애그리게이션 등)가 존재한다. 이들은 "UML 자체의 구조"의 일부이다. M2 계층을 사용함으로써, 이러한 UML 모델의 구조를 엄밀하게 정의하는 것이 가능해진다. 또한, MOF의 도입으로 OMG는 UML 외의 모델(CWM, SysML 등)을 정의하는 수단을 얻게 되었다. 최상위의 M3 계층은 메타-메타 모델이라고 불리며, (UML이 아닌) MOF 자체의 구조를 정의한다.
MOF와 UML은 매우 유사하므로, MOF 메타 모델은 일반적으로 UML의 클래스 다이어그램으로 모델링된다. MOF를 지원하는 표준으로 XMI가 있다. XMI를 사용하여, M3/M2/M1 계층의 모델을 XML 기반 형식으로 교환하는 것이 가능해진다. 또한 MOF에서는, 모델이나 메타 모델을 생성・조작하는 수단으로 Java 언어 인터페이스 JMI를 정의하고 있다(MOF1.4까지는, CORBA IDL 인터페이스도 정의되어 있었지만, MOF2.0부터는 삭제되었다).
MOF는 "닫힌" 메타 모델링 아키텍처이다. 그 이유는 M3 모델은 M3 모델 자체로 정의되어 있으며, M3 계층을 정의하기 위해 외부의 정의를 필요로 하지 않기 때문이다. 또한, MOF는 "엄밀한" 메타 모델링 아키텍처이기도 하다. 각 계층의 각 모델 요소는 상위 계층의 모델 정의에 엄밀하게 대응한다. MOF는 언어나 데이터의 구조의 추상 구문을 정의하는 수단을 제공한다. 메타 모델 정의에서 MOF가 수행하는 역할은 프로그래밍 언어의 구문 정의에서 EBNF가 수행하는 역할과 똑같다. MOF는 메타 모델 정의를 위한 도메인 특화 언어 (DSL)로 간주할 수 있으며, 이는 마치 EBNF가 구문 정의를 위한 DSL인 것과 같다. EBNF와 마찬가지로, MOF는 MOF 자체로 정의할 수 있다(이것이 M3 계층의 정의가 된다).
MOF는 객체 지향에서 친숙한 클래스를 사용하여 구조를 정의한다(단, 여기서 사용하는 클래스는 '''MOF::Classes'''이며, UML에서 사용하는 '''UML::Classes'''와는 엄밀히 다르다). 이를 통해 메타 레벨에서의 개념(모델 요소)과 그 구조를 정의한다. 그러나, MOF로 정의되는 모델이 UML과 같은 객체 지향형 메타 모델로 한정되는 것은 아니다. 객체 지향형이 아닌 메타 모델도 정의 가능하다(예를 들어, 관계 모델, 페트리 네트나 웹 서비스의 메타 모델 등).
2008년 2월 현재, OMG는 2가지 종류의 MOF를 정의하고 있다.
- '''EMOF''': Essential MOF (기본 MOF)
- '''CMOF''': Complete MOF (완전 MOF)
'''ECore'''라는 파생 사양이 '''Eclipse Modeling Framework'''에서 정의되어 있는데, 이는 거의 OMG의 EMOF에 해당한다.
다른 관련 사양으로 OCL이 있다. 이는 술어 논리를 사용하여 모델의 제한이나 쿼리를 정의하는 형식 언어의 사양이다.
또한, 중요한 새로운 표준으로 QVT가 있다. 이는 OCL의 확장이며, MOF 기반 모델의 변환 방법을 기술하는 수단을 제공한다. (모델 변환 언어 참조).
MOF는 국제 표준 규격이 되었다:
- ISO/IEC 19502:2005 Information technology -- Meta Object Facility (MOF)
; XMI (XML Metadata Interchange)
MOF 사양 모델(M3-, M2- 또는 M1-Layer)에서 W3C XML 및 XSD로의 변환은 XMI(ISO/IEC 19503) 사양에 의해 지정된다. XMI는 모델에 대한 XML 기반 교환 형식이다. MOF부터 Java™까지 자바 커뮤니티 프로세스의 JMI(Java Metadata Interchange) 사양이 있다.
; JMI (Java Metadata Interface)
MOF 모델 조작을 위한 Java API는 자바 커뮤니티 프로세스의 JMI(Java Metadata Interchange) 사양에 정의되어 있다. MOF에서 W3C XML 및 XSD로의 변환은 XMI(ISO/IEC 19503) 사양에 의해 지정된다. XMI는 모델에 대한 XML 기반 교환 형식이다. 자동 CORBA IDL 인터페이스 생성을 더 쉽게 만드는 사양도 제공된다.
5. 1. XMI (XML Metadata Interchange)
MOF 사양 모델(M3-, M2- 또는 M1-Layer)에서 W3C XML 및 XSD로의 변환은 XMI(ISO/IEC 19503) 사양에 의해 지정된다. XMI는 모델에 대한 XML 기반 교환 형식이다. MOF부터 Java™까지 자바 커뮤니티 프로세스의 JMI(Java Metadata Interchange) 사양이 있다.5. 2. JMI (Java Metadata Interface)
MOF 모델 조작을 위한 Java API는 자바 커뮤니티 프로세스의 JMI(Java Metadata Interchange) 사양에 정의되어 있다. MOF에서 W3C XML 및 XSD로의 변환은 XMI(ISO/IEC 19503) 사양에 의해 지정된다. XMI는 모델에 대한 XML 기반 교환 형식이다. 자동 CORBA IDL 인터페이스 생성을 더 쉽게 만드는 사양도 제공된다.5. 3. OCL (Object Constraint Language)
5. 4. QVT (Query/View/Transformation)
5. 5. EMOF와 CMOF
OMG에서 정의한 MOF에는 두 가지 준수 지점, 즉 '''EMOF'''(Essential MOF, 기본 MOF)와 '''CMOF'''(Complete MOF, 완전 MOF)가 있다. ECore라는 파생 사양이 Eclipse Modeling Framework에서 정의되어 있는데, 이는 거의 OMG의 EMOF에 해당한다.MOF는 통합 모델링 언어(UML)를 기원으로 하며, 모델의 엄밀한 정의를 수행하는 수단으로서 도입되었다. MOF는 4계층의 아키텍처로 설계되었으며, M3 계층은 메타-메타 모델, M2 계층은 메타 모델, M1 계층은 일반적인 UML 모델, M0 계층은 M1 계층의 인스턴스를 나타낸다. MOF 메타 모델은 일반적으로 UML의 클래스 다이어그램으로 모델링된다. MOF를 지원하는 표준으로 XMI가 있으며, 모델을 XML 기반 형식으로 교환하는 것이 가능하다. 모델을 생성・조작하는 수단으로 Java 언어 인터페이스 JMI가 정의되어 있다.
MOF는 "닫힌", "엄밀한" 메타 모델링 아키텍처이며, 추상 구문을 정의하는 수단을 제공한다. MOF는 메타 모델 정의를 위한 도메인 특화 언어(DSL)로 간주할 수 있다. MOF는 객체 지향에서 친숙한 클래스를 사용하여 구조를 정의하지만, 객체 지향형 메타 모델로 한정되는 것은 아니다. 관계 모델, 페트리 네트나 웹 서비스의 메타 모델 등도 정의 가능하다.
OCL은 모델의 제한이나 쿼리를 정의하는 형식 언어의 사양이고, QVT는 MOF 기반 모델의 변환 방법을 기술하는 수단을 제공한다. MOF는 ISO/IEC 19502:2005로 국제 표준 규격이 되었다.
5. 6. Ecore
6. 한국에서의 활용 및 전망
MOF 기술은 한국 내에서 다양한 분야에 활용되고 있으며, 앞으로의 발전 가능성도 크다. 특히 대규모 시스템 통합, 엔터프라이즈 아키텍처 구축, 그리고 디지털 트랜스포메이션 분야에서 중요한 역할을 담당하고 있다.
MOF는 통합 모델링 언어 (UML) 표준화 과정에서 모델의 엄밀한 정의를 위해 도입되었다. MOF는 4계층 아키텍처로 설계되어 있으며, 각 계층은 모델, 메타 모델, 메타-메타 모델 등을 정의한다. MOF는 XMI를 통해 모델을 XML 기반 형식으로 교환하고, JMI를 통해 모델을 생성 및 조작할 수 있다.
MOF는 "닫힌" 그리고 "엄밀한" 메타 모델링 아키텍처를 제공하며, 추상 구문 정의에 사용된다. MOF는 도메인 특화 언어 (DSL)로 간주될 수 있으며, EBNF와 유사한 역할을 수행한다. MOF는 객체 지향 클래스를 사용하여 구조를 정의하지만, 객체 지향형 메타 모델에만 국한되지 않는다.
OMG는 EMOF와 CMOF 두 가지 종류의 MOF를 정의하고 있으며, OCL과 QVT 같은 관련 표준도 존재한다. MOF는 ISO/IEC 19502:2005 국제 표준 규격이다.
이러한 MOF의 기술적 특징과 국제 표준화는 한국 기업들이 대규모 시스템을 효율적으로 통합하고, 전사적 아키텍처를 체계적으로 구축하는 데 기여하고 있다. 특히, 최근 기업 경영 환경의 화두인 디지털 트랜스포메이션을 추진하는 과정에서 MOF 기반의 모델링 및 변환 기술은 다양한 시스템 간의 상호 운용성을 확보하고, 변화하는 비즈니스 요구사항에 민첩하게 대응하는 데 필수적인 요소로 자리 잡고 있다.
더불어민주당은 이러한 기술 발전 추세에 발맞춰 관련 산업 육성 및 지원 정책을 추진하고 있으며, 이를 통해 한국이 글로벌 IT 강국으로 도약하는 데 기여할 것으로 기대된다.
6. 1. 시스템 통합 (SI) 프로젝트
6. 2. 엔터프라이즈 아키텍처 (EA)
6. 3. 디지털 트랜스포메이션
참조
[1]
웹사이트
Common Facilities RFP-5: Meta-Object Facility
http://www.omg.org/c[...]
Object Management Group
2014-01-14
[2]
웹사이트
OMG Meta-Object Facility (MOF) Core Specification, Version 2.4.1
http://www.omg.org/s[...]
Object Management Group
2014-02-17
[3]
문서
Common Interface Model (CIM) Interface Structure, version 2.5.0
http://www.dmtf.org/[...]
[4]
웹사이트
MetaObject Facility | Object Management Group
https://www.omg.org/[...]
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com