다음을 통해 공유


SDM 문서 간 동기화

업데이트: 2007년 11월

분산 시스템 디자이너는 시스템 정의 모델(SDM) 문서 및 코드를 사용자가 변경한 그대로 동기화합니다. 또한 분산 시스템 다이어그램은 이러한 참조와 관련하여 발생하는 문제를 시각적으로 나타냅니다. 서로 다른 문서 형식 간의 관계 및 동기화 방법을 이해하면 동기화 오류를 해결하는 데 도움이 됩니다.

자세한 내용은 다음 항목을 참조하십시오.

다음 단원에서는 분산 시스템 다이어그램 간의 동기화에 대해 설명합니다.

  • 응용 프로그램 다이어그램을 시스템 다이어그램과 동기화

  • 응용 프로그램 다이어그램을 코드와 동기화

  • 시스템 다이어그램을 다른 시스템 다이어그램과 동기화

  • 배포 다이어그램을 시스템 다이어그램 및 논리 데이터 센터 다이어그램과 동기화

응용 프로그램 다이어그램을 시스템 다이어그램과 동기화

Visual Studio에서는 시스템 다이어그램이 열려 있는 동안 응용 프로그램 다이어그램의 응용 프로그램 정의에 대한 대부분의 변경 내용과 해당 시스템 다이어그램에서의 응용 프로그램 정의 사용을 동기화합니다. 예를 들어 이러한 변경에는 대부분의 속성을 편집하거나, 응용 프로그램 정의에서 끝점을 추가 및 삭제하는 등의 작업이 포함됩니다. 시스템 다이어그램이 열려 있지 않으면 Visual Studio에서는 시스템 다이어그램이 열릴 때 이러한 변경 내용을 동기화합니다.

하지만 응용 프로그램 정의를 삭제하더라도 Visual Studio에서는 참조하는 시스템 다이어그램(열려 있거나 닫혀 있는)에서 해당 사용을 삭제하지 않습니다. 대신 Visual Studio에서는 빨강 파선 윤곽선과 물결 모양의 선을 사용하여 누락된 기본 정의에서 이러한 사용을 "고아"로 식별합니다. 따라서 해당 정의가 삭제되어 미치는 영향을 검토할 수 있습니다. 응용 프로그램 정의를 참조하는 시스템 다이어그램이 닫혀 있는 상태에서 해당 정의의 이름을 바꾸는 경우 사용자가 해당 시스템 다이어그램을 열면 Visual Studio에서는 해당 정의의 사용을 "고아"로 표시합니다.

응용 프로그램 정의를 다시 추가하거나 이름 변경 내용을 되돌리는 경우 Visual Studio에서는 고아로 표시된 사용에서 윤곽선과 물결 모양의 선을 제거합니다. 또한 각각의 고아 사용을 서로 다른 응용 프로그램 정의에 연결하여 해당 사용을 개별적으로 복구할 수도 있습니다.

자세한 내용은 다음 항목을 참조하십시오.

응용 프로그램 다이어그램을 코드와 동기화

분산 시스템 디자이너에서 일부 응용 프로그램 종류는 구현을 지원합니다. 그러나 응용 프로그램 다이어그램에서 이러한 응용 프로그램을 정의하는 것만으로는 해당 프로젝트, 코드 및 구성 파일이 즉시 생성되지 않습니다. 코드를 처음 생성하는 것을 구현이라고 합니다. 자세한 내용은 응용 프로그램 다이어그램에서 응용 프로그램 구현을 참조하십시오.

구현을 지원하는 응용 프로그램의 경우 해당 응용 프로그램이 구현되면 코드는 마스터 정의가 됩니다. 하지만 Visual Studio에서는 응용 프로그램 다이어그램이 열려 있는 동안 응용 프로그램 정의와 코드 간의 지속적인 전체 동기화를 지원합니다. 여기에는 응용 프로그램 다이어그램의 해당 정의뿐만 아니라 코드 파일과 구성 파일도 포함됩니다. 응용 프로그램 다이어그램이 열려 있지 않은 경우에는 응용 프로그램 다이어그램을 다시 열면 코드와 동기화되어 다이어그램이 닫혀 있는 동안 변경된 내용이 적용됩니다.

참고:

구현을 지원하는 응용 프로그램의 경우 응용 프로그램 다이어그램을 다시 열 때 응용 프로그램 정의 파일(.sdm)을 사용할 수 없으면 Visual Studio에서 해당 .sdm 파일을 다시 생성합니다. 그러나 .sdm 파일에는 Visual Studio에서 응용 프로그램 구성 파일의 코드 또는 항목에서 리버스 엔지니어링할 수 있는 정보만 포함됩니다. Visual Studio에서는 코드에 소스가 없는 SDM 정보나 설정은 다시 만들지 않습니다. 예를 들어 Visual Studio에서는 ASP.NET 응용 프로그램의 웹 콘텐츠 끝점을 코드에서 리버스 엔지니어링하지 않습니다. Visual Studio에서 ASP.NET 응용 프로그램을 리버스 엔지니어링할 때 이러한 끝점이 응용 프로그램 다이어그램에 있을 경우 해당 끝점은 빨강 파선 윤곽선으로 표시됩니다. 자세한 내용은 응용 프로그램 다이어그램 문제 해결을 참조하십시오.

구현을 지원하지 않는 응용 프로그램의 경우 응용 프로그램 다이어그램의 응용 프로그램 정의 또는 해당 응용 프로그램 정의 파일(.sdm)은 마스터 정의가 됩니다. 파일 삭제와 같이 응용 프로그램 다이어그램이 닫혀 있는 동안 이러한 형식의 .sdm 파일을 변경하는 경우 다이어그램을 다시 열어도 Visual Studio에서는 이러한 .sdm 파일을 다시 생성하지 않습니다. 예를 들어 이러한 형식의 .sdm 파일을 삭제하는 경우 Visual Studio에서는 응용 프로그램 다이어그램의 해당 응용 프로그램 정의 및 시스템 다이어그램에서의 해당 정의 사용이 빨강 파선 윤곽선으로 표시되어 해당 정의가 없음을 나타냅니다. 자세한 내용은 시스템 다이어그램 문제 해결응용 프로그램 정의를 위한 응용 프로그램 종류 및 프로토타입을 참조하십시오.

시스템 다이어그램을 다른 시스템 다이어그램과 동기화

Visual Studio에서는 참조하는 시스템 다이어그램이 열려 있는 동안 시스템 다이어그램의 시스템 정의에 대한 대부분의 변경 내용과 다른 시스템 다이어그램에서의 응용 프로그램 정의 사용을 동기화합니다. 예를 들어 이러한 변경으로는 프록시 끝점 추가 또는 삭제가 있습니다. 참조하는 시스템 다이어그램이 열려 있지 않은 경우 Visual Studio에서는 참조하는 다이어그램이 열릴 때 변경 내용을 동기화합니다. 자세한 내용은 시스템 디자이너를 사용하여 응용 프로그램 시스템 디자인을 참조하십시오.

하지만 시스템 정의를 삭제하더라도 Visual Studio에서는 열려 있거나 닫혀 있는 참조하는 시스템 다이어그램(열려 있거나 닫혀 있는)에서 해당 사용을 삭제하지 않습니다. 대신 Visual Studio에서는 빨강 파선 윤곽선과 물결 모양의 선을 사용하여 해당 기본 정의에서 이러한 사용을 "고아"로 식별합니다. 따라서 해당 정의가 삭제되어 미치는 영향을 검토할 수 있습니다. 시스템 정의를 참조하는 다른 시스템 다이어그램이 닫혀 있는 상태에서 해당 정의의 이름을 바꾸는 경우 사용자가 시스템 다이어그램을 열면 Visual Studio에서는 해당 정의의 사용을 "고아"로 표시합니다. 응용 프로그램 정의를 다시 추가하거나 이름 변경 내용을 되돌리는 경우 Visual Studio에서는 고아로 표시된 사용에서 윤곽선과 물결 모양의 선을 제거합니다. 또한 각각의 고아 사용을 서로 다른 시스템 정의에 연결하여 해당 사용을 개별적으로 복구할 수도 있습니다. 자세한 내용은 시스템 다이어그램 문제 해결방법: 응용 프로그램 시스템의 고아 멤버 복구를 참조하십시오.

배포 다이어그램을 시스템 다이어그램 및 논리 데이터 센터 다이어그램과 동기화

배포 다이어그램은 항상 특정 시스템 다이어그램 및 논리 데이터 센터 다이어그램을 참조하고 일련의 바인딩 참조를 포함합니다. 각 바인딩 참조는 논리 데이터 센터 다이어그램의 논리 서버에 대한 시스템 다이어그램의 응용 프로그램 바인딩에 대해 설명합니다. 논리 데이터 센터 다이어그램, 시스템 다이어그램 또는 기본 응용 프로그램 정의를 변경하면 배포 다이어그램의 무결성에 영향을 줄 수 있습니다. 시스템 다이어그램 또는 논리 데이터 센터 다이어그램을 편집하는 동안 관련 배포 다이어그램이 열려 있는 경우 Visual Studio에서는 이러한 변경 내용을 배포 다이어그램에 즉시 전파합니다. 그러나 배포 다이어그램이 열려 있지 않은 경우 Visual Studio에서는 특정 형식의 변경 내용에 대한 오류 경고 상태를 배포 다이어그램에 표시하여 시스템 또는 논리 데이터 센터 다이어그램이 변경되었음을 나타냅니다. 자세한 내용은 배포 디자이너로 시스템 배포 평가를 참조하십시오.

예를 들어 시스템 다이어그램에서 응용 프로그램 사용이 삭제되었고, 해당 응용 프로그램에 대한 바인딩 참조는 연결되어 있지만 닫혀 있는 배포 다이어그램에 존재하며, 연결된 논리 데이터 센터 다이어그램에서 논리 서버가 삭제되었다고 가정합니다. 이 경우 배포 다이어그램을 열면 이러한 바인딩 참조는 빨강 오류(X) 아이콘으로 표시되고 삭제된 사용은 시스템 뷰 창에 더 이상 표시되지 않습니다. 또한 논리 데이터 센터 다이어그램에서 삭제된 논리 서버는 배포 다이어그램에 남아 있고 빨강 파선 윤곽선이 표시됩니다.

자세한 내용은 배포 보고서 문제 해결을 참조하십시오.

배포 다이어그램을 시스템 다이어그램과 동기화

응용 프로그램 다이어그램에서 배포 다이어그램을 만드는 경우 배포 다이어그램은 자동으로 디자인된 "기본 시스템"을 사용합니다. 기본 시스템은 어떤 시스템 다이어그램에도 없으며 시스템 디자이너를 사용하여 보거나 편집할 수도 없습니다. 그러나 이 기본 시스템은 응용 프로그램 다이어그램에 표시되는 모든 응용 프로그램과 연결을 포함합니다. Visual Studio에서는 이 기본 시스템과 응용 프로그램 다이어그램의 변경 내용을 동기화합니다. 이러한 기본 시스템을 사용하는 배포 다이어그램을 만드는 경우 배포 디자이너의 시스템 뷰 창에는 기본 시스템에서 사용할 수 있는 모든 응용 프로그램이 표시됩니다. Visual Studio에서는 응용 프로그램 다이어그램의 응용 프로그램 정의에 대한 변경 내용을 배포 다이어그램 및 시스템 뷰의 항목과 동기화합니다.

수동으로 만든 시스템 다이어그램에서 배포 다이어그램을 만들고 시스템 다이어그램을 변경하면 해당 응용 프로그램이 배포 다이어그램에 바인딩되어 있는 경우 해당 변경 내용이 배포 다이어그램과 시스템 뷰 창에도 영향을 줍니다. 예를 들어 참조되는 시스템 다이어그램에서 응용 프로그램을 삭제하면 Visual Studio에서는 삭제된 응용 프로그램에 대한 배포 다이어그램에서도 해당 바인딩 참조를 삭제합니다.

자세한 내용은 배포 디자이너로 시스템 배포 평가를 참조하십시오.

배포 다이어그램을 논리 데이터 센터 다이어그램과 동기화

논리 데이터 센터 다이어그램에서 논리 서버를 삭제하는 경우 Visual Studio에서는 해당 논리 데이터 센터 다이어그램을 참조하는, 열려 있는 배포 다이어그램과 이러한 변경 내용을 동기화합니다. 또는 Visual Studio에서는 이러한 논리 서버에 바인딩된 응용 프로그램의 바인딩 참조도 제거합니다. 따라서 해당 응용 프로그램을 다른 논리 서버에 다시 바인딩해야 합니다.

논리 서버 또는 영역을 논리 데이터 센터 다이어그램에서 추가하거나 삭제하는 경우 Visual Studio에서는 해당 논리 데이터 센터 다이어그램을 참조하는 모든 열려 있는 배포 다이어그램에서 이러한 논리 서버나 영역을 추가하거나 제거합니다. 또한 Visual Studio에서는 참조되는 논리 데이터 센터 다이어그램에 부모로 재지정되는 배포 다이어그램으로 모든 논리 서버 또는 영역을 이동합니다.

참조되는 시스템 다이어그램 또는 논리 데이터 센터 다이어그램이 변경될 때 연결된 배포 다이어그램이 닫혀 있는 경우에는 해당 배포 다이어그램을 다시 열 때 다음과 같은 상황이 발생합니다.

  • 참조되는 시스템 다이어그램에 추가된 응용 프로그램이 시스템 뷰 창에 바인딩 해제 상태로 표시됩니다.

  • 배포 다이어그램에서 논리 서버에 바인딩된 응용 프로그램은 참조되는 시스템 다이어그램에서 삭제되어도 바인딩 상태로 유지됩니다. 그러나 해당 바인딩 참조는 응용 프로그램이 사용 가능함을 표시합니다.

    참고:

    배포 다이어그램에서 이러한 참조를 삭제해야 합니다.

  • 논리 데이터 센터 다이어그램에서 삭제되는 논리 서버는 배포 다이어그램에 남아 있습니다. 그러나 해당 정의가 없음을 나타내는 빨강 파선 윤곽선이 표시됩니다.

    참고:

    참조의 속성을 검사할 수 없거나 응용 프로그램을 참조에 바인딩할 수 없으므로 배포 다이어그램에서 이러한 참조를 삭제할 수만 있습니다. 이러한 논리 서버에 바인딩된 응용 프로그램을 개별적으로 바인딩 해제할 수 있습니다. 배포 다이어그램에서 논리 서버를 삭제하면 Visual Studio에서는 해당 서버에 바인딩된 응용 프로그램의 바인딩을 해제하여 다른 논리 서버에 바인딩될 수 있도록 합니다.

참조되는 논리 데이터 센터 다이어그램을 변경할 때 배포 다이어그램이 열려 있지 않은 경우 배포 다이어그램을 해당 변경 내용과 동기화해야 합니다. 동기화를 수행하면 바인딩 정보 손실 없이 논리 데이터 센터 다이어그램의 현재 상태가 반영되도록 배포 다이어그램이 업데이트되고 논리 데이터 센터 다이어그램에서 삭제된 논리 서버에 대한 참조가 제거됩니다.

자세한 내용은 다음 항목을 참조하십시오.

참고 항목

개념

분산 시스템 디자이너의 워크플로

분산 시스템 디자이너 용어 개요

기타 리소스

분산 시스템 디자이너 개요