C++에서 UML로 변환

이 컨텐츠는 버전 7.5.4 이상에 적용됩니다. C++에서 UML로 변환은 C++ 코드를 UML 모델 요소로 변환합니다.

올바른 변환 소스

변환 구성에서 지정하는 소스는 C/C++ 개발 도구(CDT)를 사용하여 작성해야 합니다.

다음 표는 변환 구성에서 지정하는 DCMP(Design Contract Management Protocol)에 따라, 변환에서 UML 요소로 변환될 수 있는 C++ 소스 오브젝트를 나열합니다.
DCMP C++ 소스 오브젝트
개념적 모델 시드 구체적 모델 하나 이상의 C++ 프로젝트에서 다음 항목 중 하나 이상을 선택할 수 있습니다.
  • 프로젝트의 C++ 소스 폴더
  • C++ 소스 파일
개념적 모델 드라이브 개발
조정된 모델링 다음 항목을 선택할 수 있습니다.
  • C++ 프로젝트
  • 단일 C++ 프로젝트에서 하나 이상의 폴더 또는 소스 파일

C++ 프로젝트가 아닌 항목을 선택하는 경우 UML에서 C++로 변환 또는 역변환은 처리하는 첫 번째 항목의 C++ 프로젝트를 판별합니다. 역변환은 이 C++ 프로젝트에서 해당 출력을 생성합니다.

변환 구성 편집기를 사용하는 대신 프로젝트 탐색기 보기에서 C++ 요소를 선택하는 경우, 사용자가 선택하는 소스 요소는 변환 구성에 지정된 소스 프로젝트나 요소를 대체합니다. 변환 구성은 영향을 받지 않으며 변환 구성 편집기의 소스 및 대상 페이지나 새 변환 구성 마법사에서 지정하는 소스는 변경되지 않습니다.

올바른 변환 대상

올바른 변환 대상은 UML 모델, UML 모델 파일 또는 UML 모델의 루트 레벨 패키지입니다.

역변환 출력의 대체 파일 이름

C++에서 UML로 변환에 대한 맵핑 모델은 작성할 수 없습니다. 그러나 변환 구성이 조정된 모델링 DCMP를 구현하는 경우, 변환이 생성하는 출력에 대한 대체 파일 이름을 지정할 수 있는 맵핑 모델을 작성할 수 있도록 UML에서 C++로 변환 또는 역변한을 구성할 수 있습니다.

C++에서 UML로 변환은 맵핑 모델을 사용하여, 변환에서 생성되는 UML 요소에 적절한 이름을 판별합니다. 예를 들어, UML 모델에는 PackageA가, PackageA에는 Class1이 있습니다. UML에서 C++로 변환에 대한 맵핑 모델을 작성할 때 Class1에 대체 파일 이름 MappedClass1이 있는 것을 지정할 수 있습니다. UML에서 C++로 변환을 실행할 때 변환은 이름이 PackageA.MappedClass1.cpp 및 PackageA.MappedClass1.h인 C++ 파일을 생성합니다. C++에서 UML로 변환을 실행할 때 변환은 C++ 요소에 대한 원래의 UML 경로가 PackageA.Class1인지 판별하고 PackageA라는 이름의 UML 패키지에서 Class1 UML 클래스를 생성합니다.

맵핑 모델에서 지정하는 아티팩트 파일 이름이 올바른 C++ 파일 이름이 아니면, 변환은 C++ 코드 요소를 작성할 때 파일의 이름을 수정합니다. 예를 들어, 맵핑 모델이 MappedClass1 대신 대체 파일 이름 "Mapped Class1"을 지정하는 경우, 변환은 C++ 파일 Mapped_Class1.cpp를 생성합니다. 변환은 이 수정사항의 레코드를 보존하지 않으므로 C++에서 UML로 변환은 Mapped_Class1 파일을 원래의 UML 요소에 맵핑할 수 없습니다. 이 예제에서, C++에서 UML로 변환은 Mapped_Class1 C++ 소스 오브젝트를 Class1 대신 Mapped_Class1 UML 클래스로 변환합니다.

변환 출력을 대상 UML 모델과 비교 및 병합

C++에서 UML로 변환은 비교 및 병합 기능을 사용하여 변환에서 생성되는 임시 모델과 대상 모델 사이의 차이를 판별합니다. C++에서 UML로 변환을 실행할 때 병합 편집기는 두 모델 사이의 차이를 표시합니다. 병합 편집기 대화 상자에서 변환이 대상 모델에 병합하는 변경사항을 선택할 수 있습니다.

팀 지원과 통합

변환은 IBM® Rational® Team Concert, CVS, Rational ClearCase®Rational ClearCase LT 버전 제어 시스템(파일을 자동으로 체크아웃하거나 새 파일을 추가할 수 있도록 하는)과의 통합 기능을 제공합니다. 구성 관리 시스템에 대해 작업하려면 팀 기능이 사용 가능해야 합니다.


피드백