UML 표준화의 역사와 OMG 모델링 체계
UML이 객체지향 방법론 통합에서 OMG 표준으로 자리 잡기까지의 과정과 메타모델, XMI, 프로파일 기반 활용 방식을 정리한다.
2026-08-14 · 최초 발행 2025-10-14
방법론의 혼선을 공통 모델 언어로 묶다
UML(Unified Modeling Language)은 시스템의 구조와 행위를 시각적으로 명세하고, 설계하며, 문서화하기 위한 범용 모델링 언어다. 객체지향 분석·설계 방법론이 각기 다른 표기와 절차를 내세우던 상황에서, 모델을 공유하고 도구 간 해석 차이를 줄이기 위한 공통 언어로 등장했다.
언어의 기반은 표기법만이 아니다. UML은 구문(Notation), 의미론(Semantics), 메타모델(Metamodel)로 구성된다. MOF(Meta-Object Facility) 위에 정의된 메타모델을 통해 모델 요소를 다루며, XMI(XML Metadata Interchange)는 모델 교환을 위한 표준 형식을 제공한다. OCL(Object Constraint Language)은 모델에 형식적 제약을 표현할 때 사용한다.
도메인별 요구를 수용하는 확장 장치도 갖춘다. 프로파일(Profile), 스테레오타입(Stereotype), 태그드 값(Tagged Value)을 이용하면 기본 UML을 변경하지 않고도 특정 분야의 개념을 덧붙일 수 있다. SysML, MARTE 같은 산업 표준 프로파일은 이 확장 구조를 토대로 형성됐다.
통합 제안에서 OMG 사양으로
1990~1994년에는 Booch, OMT(Rumbaugh), OOSE(Jacobson) 방법론이 병존했다. 방법론마다 모델 표현 방식이 달라 실무 적용과 도구 선택에서 혼선이 생겼고, 도구 생태계도 분절돼 있었다.
1995년 Three Amigos는 UML 0.x를 제안했고, Rational Software 주도로 방법론 통합이 추진됐다. 이후 UML은 OMG(Object Management Group)의 표준화 절차 안으로 들어갔다. 이 절차는 RFP 발행, 컨소시엄 제출, 기술 평가와 투표, Finalization Task Force(FTF), 사양 공표, Revision Task Force(RTF)의 반복으로 이어진다.
사양이 채택된 뒤에는 XMI 스키마와 순응성 가이드가 함께 제공된다. 이는 서로 다른 도구가 같은 모델을 교환하고 사양 해석의 일관성을 유지하기 위한 구조다.
주: 최신 릴리스와 RTF 진행 현황은 시점별 상이 가능, 최신 정보 확인 필요 표기
UML 1.x의 표기 정립과 2.x의 메타모델 확장
UML 1.x는 다이어그램 중심의 표기를 정립하고 사용성을 확보하면서 초기 도구 생태계가 만들어지는 기반이 됐다.
UML 2.x에서는 Infrastructure와 Superstructure를 분리하고, 합성 구조, 인터랙션 프레임, 패키지 머지, 프로파일 체계를 확장했다. 진화의 중심은 다이어그램 종류를 늘리는 데만 있지 않고, 메타모델을 바탕으로 표현력과 확장 방식을 다듬는 데 있었다.
XMI 기반 모델 교환은 OMG IDL 및 MOF와의 정합성을 강화하며 도구 간 모델 교차 사용의 가능성을 넓힌다. OCL 제약은 형식적 명세를 지원해 자동 검증과 코드 생성의 정밀도를 높이는 데 활용할 수 있다.
MDA(Model Driven Architecture)와 결합하면 PIM에서 PSM으로 변환하는 자동화 파이프라인도 구성할 수 있다. UML 프로파일의 확장은 SysML, MARTE, UML for SoC 같은 도메인별 표준의 등장으로 이어졌고, 모델 기반 엔지니어링(MBE) 확산의 기반이 됐다.
모델을 운영 산출물로 다루는 방식
아키텍처 거버넌스에서는 패키지, 컴포넌트, 시퀀스, 상태 다이어그램을 표준 세트로 정하고 리뷰 체크리스트에 반영할 수 있다. 모델 버전을 태깅하고 XMI Diff를 이용해 변경을 추적하면 형상 관리의 대상도 코드에만 머물지 않는다.
임베디드와 시스템 엔지니어링 영역에서는 UML 상태 머신과 활동 다이어그램으로 동작을 명세할 수 있다. SysML 프로파일을 병행하고 요구사항·블록·인터페이스 사이의 트레이스를 구성하는 방식도 가능하다.
모델 기반 개발과 테스트에서는 OCL 제약으로 입력 도메인을 자동 생성하고 테스트 커버리지를 높일 수 있다. 코드 생성 파이프라인을 CI와 연동하면 모델과 코드 사이의 일관성을 유지하는 데 도움이 된다. 레거시 시스템은 소스 기반 역공학으로 클래스·컴포넌트 다이어그램을 생성하고, 설계서와 인터페이스 명세 같은 산출물을 모델 뷰 기준 템플릿으로 표준화할 수 있다.
리뷰와 검증 체계에 기대할 수 있는 변화
트레이스와 모델 리뷰 체계를 도입하면 요구사항 누락률이 2030% 감소할 것으로 추정된다. 표준 뷰와 뷰포인트를 활용하는 경우 설계 리뷰 소요 시간은 2540% 단축될 것으로 추정된다. OCL과 상태 머신 기반 시뮬레이션을 적용하면 결함 조기 검출률은 15~25%p 향상될 것으로 추정된다.
공통 모델 언어는 이해관계자 사이의 의사소통 비용을 줄이는 데도 쓰인다. 도구 상호운용성이 확보되면 벤더 종속성을 완화하고 장기 유지보수를 쉽게 할 수 있으며, 규정된 메타모델 기반 거버넌스는 일관성·추적성·감사 대응성을 강화한다.
프로파일과 거버넌스를 함께 설계한다
도입의 출발점은 설계 커뮤니케이션, 코드 생성, 규제 대응처럼 우선할 목적을 정하는 일이다. 이어서 SysML 등의 표준 프로파일을 선택하고 조직에 필요한 커스텀 확장을 정의한다.
도구 체인에는 모델러, 리포팅 도구, XMI Diff, OCL 검증기, CI 연동 구성이 포함될 수 있다. 운영 단계에서는 다이어그램 템플릿, 리뷰 체크리스트, 명명 규칙, 릴리스 게이트를 정해 거버넌스를 유지한다. XMI 라운드트립, 대형 모델 성능, 충돌 병합 시나리오를 대상으로 상호운용성도 검증해야 한다.
다이어그램은 최소 세트를 우선 운용하고 과도한 표기를 억제하는 편이 낫다. OCL 검증, 리포트, 생성 파이프라인을 연결하면 수작업을 줄일 수 있다. 다만 UML 2.x의 표현력 증가는 학습 비용과 도구 복잡도 상승으로 이어질 수 있으므로, 프로파일로 적용 범위를 제한하는 판단이 필요하다.