728x90
반응형

Model-Driven Architecture (MDA)

MDA는 메타모델 기반의 구현 자동화를 통해 생산성을 향상시키는 아키텍처입니다. MOF를 기반으로 구현 환경에 독립적인 시스템을 설계하고, 구현 자동화를 통해 소프트웨어 개발의 효율성을 높이는 것을 목표로 합니다.

정의

  • MDA: MOF를 기반으로 구현 환경에 독립적인 시스템을 설계하고, 구현 자동화를 통해 생산성을 향상시키는 아키텍처

특징

  • 구현 자동화: 메타모델을 이용하여 구현 공정을 자동화 (Code Generator)
  • 재사용성, 이식성 향상: 기존 모델과 컴포넌트를 재사용하여 개발 효율성 증대
  • UML 2.0 기반: UML 2.0을 기반으로 시스템을 모델링

핵심 기술

  1. UML (Unified Modeling Language): 시스템을 모델링하는 표준 언어
  2. MOF (Meta-Object Facility): 다른 메타모델을 정의하기 위한 메타-메타모델, 모델 저장소 역할
  3. XMI (XML Metadata Interchange): MOF 기반 모델을 XML로 매핑하기 위한 표준, XML 기반 데이터 관리를 위한 표준
  4. CWM (Common Warehouse Metamodel): 데이터 저장소에 대한 표준, OLAP, 마이닝 모델 표준, 데이터 소스, 타겟, 변환을 위한 표준 모델 제시

MDA 개발 절차

  1. 타겟 플랫폼 식별
    • 시스템이 동작할 타겟 플랫폼 식별
  2. 메타모델 식별/정의 (CWM)
    • 필요한 메타모델 식별 및 정의
  3. 매핑 기법 정의/구현 (UML 프로파일)
    • 메타모델과 타겟 플랫폼 간의 매핑 기법 정의 및 구현

MDA 기반 애플리케이션 개발

  1. PIM (Platform Independent Model) 모델 작성
    • 플랫폼에 독립적인 모델 작성
  2. MOF → XMI 매핑 (비즈니스 모델)
    • MOF 기반 모델을 XMI로 매핑
  3. PSM (Platform Specific Model) 모델 작성
    • 플랫폼에 종속적인 모델 작성
  4. 애플리케이션 완성
    • PSM을 기반으로 애플리케이션 구현

MDA 기반 구축 프로세스

  1. CIM (Computation Independent Model)
    • 계산 독립적인 모델 작성
  2. PIM (Platform Independent Model)
    • 플랫폼 독립적인 모델 작성
  3. UML 프로파일
    • UML 프로파일을 사용하여 모델 변환
  4. PSM (Platform Specific Model)
    • 플랫폼 종속적인 모델 작성
  5. Code Generate
    • 코드 생성기를 사용하여 소스 코드 생성

MDD의 모델 변환 방법

  • PIM to PIM: 개발 단계에서 PIM 상세화 (모델 Refinement)
  • PIM to PSM: 기술 종속적 정보 추가
  • PSM to PSM: 실제 구현 정보 추가 (모델 Refinement)
  • PSM to PIM: 기존 시스템 Re-engineering

구축 효과

  • 타 모델을 이용하여 구현 과정 자동화
  • 분석/설계 등 프로젝트 전체 결과를 재사용
  • 테스트 비용 절감 및 기능 변화에 신속한 대응

MDA는 메타모델 기반의 구현 자동화를 통해 소프트웨어 개발의 효율성을 높이고, 재사용성과 이식성을 향상시킵니다.

728x90
반응형

+ Recent posts