컴포넌트에 대해 정의된 범위는 코드 생성 범위와 라운드트립
범위를 결정합니다. 수정된 요소를 포함하는 파일이
컴포넌트 범위에 포함되는 경우에만 수정된 요소에 대해
코드가 생성되고, 파일의 변경사항은 수정된 파일이 컴포넌트 범위에
포함되는 경우에만 모델로 라운드트립됩니다.
이 태스크 정보
코드 중심 프로젝트의 범위를 수정하려면 다음을 수행하십시오.
- 리버스 엔지니어 파일과 해당되는 모든 파일이 자동으로
범위에 추가됩니다.
- 리버스 엔지니어링 창에서 폴더를 지정한 경우
해당 폴더에서 작성하는 파일은 자동으로 범위에
추가됩니다. 마찬가지로, 해당 폴더에서 파일을 삭제하는 경우
라운드트립을 실행할 때 해당 요소가 모델에서 제거됩니다.
- 파일(C에서) / 클래스(C++에서)를 프로젝트에
추가하고 코드를 업데이트하면, 생성된 파일이 범위에 추가됩니다.
이 구조는 범위의 일부로 정의되지 않은 폴더에 파일을 생성하는
경우에도 발생합니다.
- 범위를 수동으로 수정하려면
/을 사용하여 라운드트립 설정 창에서
파일/폴더를 추가하십시오.
범위를 수정할 때,
코드 중심 모드에서 라운드트립 다음에 IBM® Rational® Rhapsody®에 있는
패키지 구조가 항상 사용자 소스 코드의 디렉토리 구조와 같다는 점을
기억하는 것은 중요합니다. 이 규칙에는 다음과 같은 여러 사항이 내포되어 있습니다.
- 증분으로 파일을 리버스 엔지니어링하려는 경우
코드를 포함하는 모든 디렉토리가 리버스 엔지니어링 고급 옵션 창의 맵핑 탭에서 루트 디렉토리로
지정할 수 있는 단일 디렉토리 아래에 있는지 확인하십시오.
그런 다음 이 루트 디렉토리 아래로 디렉토리를 가져올 수 있으며
Rational Rhapsody는
사용자의 디렉토리 구조와 일치하는 패키지 구조를 작성합니다. 이러한 유형의
증가 접근 방식을 사용하는 경우 리버스 엔지니어링을 수행하기 전에 UseCalculatedRootDirectoryRational Rhapsody의 값을
Never로 설정합니다.
- 루트 디렉토리를 변경하는 경우 모델의 패키지 구조는
다른 추종 라운드트립입니다. 일부 패키지가 모델에서 제거되고
다시 작성될 수 있습니다. 이 패키지 중 하나가 코드에 반영되지 않은
요소를 포함하고 있는 경우(예: 요구사항) 이 요소는 더 이상 모델
추종 라운드트립에 존재하지 않습니다. 라운드트립된 코드에 표시가 없기
때문입니다.
주: 제품에서 패키지 구조에 대한 변경사항의
이러한 결과는 소스 코드를 포함하는 폴더의 계층 구조를 수동으로
변경하는 경우에도 적용됩니다. 이와 같은 폴더 조정 후 코드 변경사항을
라운드트립하기 전에, 코드 없는 요소가 사라지지 않도록 모델에서
패키지 구조에 대해 유사한 변경사항을 작성합니다.
이러한 "제거 후 다시 작성" 접근 방식은 코드에서 클래스와 같은 개별 요소의
이름을 바꾸는 경우에도 사용됩니다. 모델의 클래스는 코드에 표시되지 않는
중요한 정보를 포함할 수 있으므로, 이와 같은 이름 바꾸기로 모델에서 정보가
손실되지 않도록 확인하십시오.
- 바로 위에 공통 상위(ancestor) 디렉토리가 없는
디렉토리에서 코드를 가져오는 경우 다른 제품 컴포넌트로 가져와야 합니다.