설계 재사용을 위한 아키텍처 MDA
11월 19, 2012
1. OMG표준인 MDA(Model Driven Architecture)의 정의
- 표준 Meta Model 을 기반으로 구성요소를 정의하여 환경에 종속되지 않게 시스템을 개발하고 자동 배포하며, 다수의 산업 표준을 이용하여 시스템간 이식성을 향상시키는 아키텍처
- 개별적인 컴포넌트들을 구조적으로 통합시켜 사용 가능하도록 하는 , 컴포넌트 사용에 대한 표준화 방식을 제시하는 아키텍처
- 일반적으로 MDA 를 지원할 수 있는 tool이 사용 됨
2. Component에 기반한 MDA의 특징
- 공정 자동화
- UML을 활용하여 분석,설계 부터 Tool(ex. StarUML)을 이용. Process와 산출물을 표준화시켜 자동화 가능 함
- 이식성
- Cross Platform 및 Cross Language를 지원. 구축 환경과 언어에 종속되지 않고 적용 가능
- 동일한 다이어그램을 이용하여 JAVA, C++, C#등의 언어로 자동 generation 이 가능하도록 자동 매핑되는Tool 사용.
3. MDA의 구성요소
- CWM(Common Warehouse Model)
- 자료 저장소 통합을 위한 산업표준으로 database model(schema), schema 변형 모델, OLAP(On Line Analytical Processing), Data Mining 모델들의 표현방법에 대한 표준 집합
- MOF(Meta Object Facility)
- Meta Model의 필수 요소와 문법, 구조를 정의하는 meta meta Model.
- Meta Model로 부터 Model의 구축, 전개, 탐색 및 갱신을 지원하는 Meta Data Repository
- UML2.0의 profile이 기반이 된 MDA 모델에 대한 표준 저장소로 활용
- UML(http://wp.me/p2tsJv-1G)
- 사용자가 요청한 내용 중 구현 독립적인 모델이나 구현 종속적인 모델 작성시에 사용.
- MOF와 CWM을 표현하기 위한 기호로서의 기반을 제공. 아래 MDA 구현 절차 중 PIM 설계 시 활용
- UML2.0에서 제공하는 표준화 된 UML Profile(UML 기본 모델을 확장하거나 특화하기 위해 제공되는 메커니즘)을 이용하여 구현 독립 모델에서 구현 종속 모델을 생성하거나, 구현 종속 모델에서 코드를 생성하는 규칙을 제공
- XMI(XML Metadata Interchange)
- XML(eXtensible Markup Language)기반 데이터 관리를 위한 표준. MOF 기반 모델을 XML로 매핑하는 표준 사양.
- 매핑 Rule를 표준화 하여 이기종 도구간 호환성이 향상
MDA는 위 구성요소들의 표준화 된 모델을 기반으로 구현 플랫폼에 특화 된 구조 및 분산 시스템에 필요한 Transaction, Event등의 기본 서비스를 정의한다.
4. MDA의 방법론인 MDD
표준화 된 Meta Model을 이용하여 구현 단계의 생산성 향상 뿐 아니라, 표준 Meta Model을 기반으로 하는 시스템들에 대한 호환성 기대. 따라서 customizing 및 배포 시간 단축 가능
- 비즈니스 모델 수립
- ERP, CRM등 비즈니스 모델 수립. 요청사항을 정의
- CIM (Communication Independent Model)
- 다수의 산업표준을 적용하여 Business Model을 표준화 함
- PIM (Platform Independent Model)
- 표준 Meta Model을 기반으로 구현환경에 독립적인 모델을 구축. 표준화
- Directory Service, Event Handling, Persistence, Transaction, Security 를 기본서비스로 규정. 범용적인 기능으로 설계 및 구축
- OMG의 구성요소인 PTC(Platform Technical Committee), DTC(Domain Technical Committee)를 통해 정의 및 표준화. MOF로 저장 됨.
- PSM (Platform Specific Model)
- 각 구현 환경에 적합한 종속 모델이 되도록 PIM을 자동 Deployment.
- PIM에서 정의 된 Model이 저장 된 MOF와 연동. Mapping Tool을 이용하여 PIM을 자동적으로 구현 종속적인 UML모델로 변환
- 표준화 된 확장 메커니즘 집합인 UML Profile 을 이용하여 특정 환경에 맞게 UML Model 특화
- 실제 Application 생성
5. MDA를 지원하는 Open Source Tool인 StarUML 활용
구글에서 starUML이라고 검색하면 다운로드 받을 수 있는 사이트가 여럿 나온다. 나온지 꽤 되는 UML설계 Tool로 MDA도 함께 지원을 한다. 하지만 MDA 전체라기보다는 PIM 작성 후 UML Profile을 지원하여 java, c#, c++ 등의 언어로 generation해 주는 범위 이다. 어쨌든, 동일한 설계 모델을 이용하여 플랫폼과 언어에 종속되지 않고 reuse는 할 수 있도록 지원해 주는 셈이다.
댓글 없음:
댓글 쓰기