UML 시퀀스 다이어그램: 지침

Visual Studio Ultimate에서는 시퀀스 다이어그램을 그려 상호 작용을 표시할 수 있습니다. 상호 작용은 일반적인 클래스, 구성 요소, 하위 시스템 또는 행위자 인스턴스 간의 메시지 시퀀스입니다. 비디오 데모는 Sketching Interactions by using Sequence Diagrams를 참조하십시오.

UML 시퀀스 다이어그램을 만들려면 아키텍처 메뉴에서 새 다이어그램을 클릭합니다.

시퀀스 다이어그램에는 다음과 같은 두 가지 종류가 있습니다.

이 항목에서는 UML 시퀀스 다이어그램에 대해 설명합니다.

시퀀스 다이어그램에서 볼 수 있는 요소에 대한 자세한 내용은 UML 시퀀스 다이어그램: 참조를 참조하십시오.

항목 내용

UML 시퀀스 다이어그램 사용

시퀀스 다이어그램을 그리는 기본 단계

간단한 시퀀스 다이어그램 만들기 및 사용

클래스 및 수명선

재사용 가능한 상호 작용 시퀀스 만들기

수명선 그룹 축소

조각을 사용하여 제어 구조 기술

코드에서 시퀀스 다이어그램 생성

UML 시퀀스 다이어그램 사용

프로그램 세부 사항 수준에 따라 다양한 목적으로 시퀀스 다이어그램을 사용할 수 있습니다. 일반적으로 다음과 같은 경우 시퀀스 다이어그램을 그립니다.

  • 시스템 사용자 및 사용자의 목표를 요약하는 사용 사례 다이어그램이 있는 경우 각 사용 사례의 목표를 달성하기 위해 시스템의 주요 구성 요소가 상호 작용하는 방식을 기술하는 시퀀스 다이어그램을 그릴 수 있습니다. 자세한 내용은 UML 사용 사례 다이어그램: 지침을 참조하십시오.

  • 구성 요소 인터페이스에 도착하는 메시지를 확인한 경우 들어오는 각 메시지에 필요한 결과를 얻기 위해 구성 요소의 내부 요소가 상호 작용하는 방식을 기술하는 시퀀스 다이어그램을 그릴 수 있습니다. 자세한 내용은 UML 구성 요소 다이어그램: 지침을 참조하십시오.

시퀀스 다이어그램을 그리면 다음과 같은 몇 가지 이점을 얻을 수 있습니다.

  • 구성 요소 간에 작업이 배포되는 방식을 쉽게 확인할 수 있습니다.

  • 소프트웨어 업데이트를 어렵게 하는 상호 작용 패턴을 식별할 수 있습니다.

다른 다이어그램과의 관계

여러 가지 방법으로 UML 시퀀스 다이어그램을 다른 다이어그램과 함께 사용할 수 있습니다.

수명선 및 형식

시퀀스 다이어그램에 그리는 수명선은 시스템의 구성 요소 또는 클래스에 대한 일반적인 인스턴스를 나타낼 수 있습니다. 형식에서 수명선을 만들거나 수명선에서 형식을 만들 수 있으며 UML 클래스 다이어그램 및 UML 구성 요소 다이어그램에서 형식을 표시할 수 있습니다. 자세한 내용은 클래스 및 수명선을 참조하십시오.

매개 변수 형식

수명선 간에 전송되는 메시지에 사용된 반환값 및 매개 변수 형식을 UML 클래스 다이어그램에 기술할 수도 있습니다.

사용 사례 정보

사용 사례는 사용자의 목표와 이 목표를 달성하기 위해 수행하는 일련의 단계를 함께 나타냅니다. 단계를 기술하는 방법에는 여러 가지가 있습니다. 사용자와 시스템 주요 구성 요소 간의 상호 작용을 나타내는 시퀀스 다이어그램을 그리는 것도 한 가지 방법입니다. 자세한 내용은 UML 사용 사례 다이어그램: 지침을 참조하십시오.

소스 코드

소스 코드에서 시퀀스 다이어그램을 생성할 수 있습니다. 다이어그램을 수정하여 다양한 디자인 옵션으로 실험해 볼 수 있으며, 원하는 경우 모델링 프로젝트의 시퀀스 다이어그램에 내용을 복사할 수도 있습니다. 자세한 내용은 코드에서 시퀀스 다이어그램 생성을 참조하십시오.

시퀀스 다이어그램을 그리는 기본 단계

시퀀스 다이어그램의 전체 요소 목록을 보려면 UML 시퀀스 다이어그램: 참조를 참조하십시오.

참고

모델링 다이어그램을 만드는 방법에 대한 자세한 단계는 방법: UML 모델 및 다이어그램 편집에 설명되어 있습니다.

시퀀스 다이어그램을 만들려면

  1. 아키텍처 메뉴에서 새 다이어그램을 클릭합니다.

  2. 템플릿에서 UML 시퀀스 다이어그램을 클릭합니다.

  3. 다이어그램 이름을 지정합니다.

  4. 모델링 프로젝트에 추가에서 솔루션의 기존 모델링 프로젝트를 선택하거나 새 모델링 프로젝트 만들기를 선택하고 확인을 클릭합니다.

    시퀀스 다이어그램 도구 상자와 함께 새 시퀀스 다이어그램이 나타납니다. 이 도구 상자에는 필요한 요소 및 연결선이 포함되어 있습니다.

시퀀스 다이어그램의 일부

시퀀스 다이어그램을 그리려면

  1. 도구 상자수명선(1)을 다이어그램으로 끌어 와 클래스, 구성 요소, 행위자 또는 장치의 인스턴스를 나타냅니다.

    참고

    UML 모델 탐색기의 기존 클래스, 인터페이스, 행위자 또는 구성 요소를 다이어그램으로 끌어 수명선을 만들 수도 있습니다. 이렇게 하면 선택한 형식의 인스턴스를 나타내는 수명선이 만들어집니다.

  2. 특정 목표를 달성하기 위해 수명선이 협력하는 방식을 나타내는 메시지를 작성합니다.

    메시지(3, 4, 6, 7)를 만들려면 메시지 도구를 클릭합니다. 그런 다음 메시지를 시작할 위치에서 보내는 수명선을 클릭하고 받는 수명선을 클릭합니다.

    받는 수명선에 실행 발생(5)이 나타납니다. 실행 발생은 인스턴스가 메서드를 실행하는 시간을 나타냅니다. 실행 발생에서 시작하는 다른 메시지를 만들 수 있습니다.

  3. 알 수 없는 이벤트 소스(9)에서 들어오거나 알 수 없는 수신자(10)로 브로드캐스팅하는 메시지를 표시하려면 다이어그램의 빈 공간에서 또는 다이어그램의 빈 공간으로 비동기 메시지를 끕니다. 이러한 메시지를 찾기 메시지(9)와 손실 메시지(10)라고 합니다.

    참고

    손실 또는 찾기 메시지가 있는 수명선 그룹을 이동하려면 먼저 수명선을 선택해야 합니다. 이렇게 하려면 해당 수명선 주위에 사각형을 그리거나, Ctrl 키를 누른 상태에서 각 수명선을 클릭합니다. 모두 선택 또는 Ctrl+A를 사용하여 모든 수명선을 선택한 후 이동하면 이러한 수명선에 연결된 손실 또는 찾기 메시지가 이동되지 않습니다. 이 경우에는 해당 메시지를 개별적으로 이동할 수 있습니다.

  4. 같은 구성 요소 또는 시스템에 대한 각 주요 메시지의 시퀀스 다이어그램을 그립니다.

메시지 순서를 변경하려면

  • 수명선에서 메시지를 위 또는 아래로 끕니다. 다른 메시지로 끌어 오거나 실행 블록 내부 또는 외부로 끌어 올 수 있습니다.

    -또는-

  • 메시지를 클릭하고 위쪽 화살표아래쪽 화살표 키를 사용하여 메시지 위치를 조정합니다. Shift+위쪽 화살표Shift+아래쪽 화살표를 사용하면 메시지 순서를 변경할 수 있습니다.

시퀀스 다이어그램에서 메시지 시퀀스를 이동하거나 복사하려면

  1. 메시지(3, 4)를 마우스 오른쪽 단추로 클릭하고 복사를 클릭합니다.

  2. 새 메시지를 보낼 원본 실행 발생(5) 또는 수명선(1)을 마우스 오른쪽 단추로 클릭하고 붙여넣기를 클릭합니다. 원하는 경우 새 전송자가 다른 다이어그램에 있을 수도 있습니다.

    해당 메시지 및 모든 보조 메시지의 복사본이 실행 발생 또는 수명선의 끝에 추가됩니다.

    참고

    붙여넣은 메시지는 항상 실행 발생 또는 수명선의 끝에 나타납니다. 메시지를 붙여넣은 후에는 앞쪽에 오도록 위로 끌 수 있습니다.

시퀀스 다이어그램의 레이아웃을 개선하려면

  • 다이어그램에서 빈 부분을 마우스 오른쪽 단추로 클릭하고 레이아웃 다시 정렬을 클릭합니다.

  • 작업을 실행 취소하려면 편집을 클릭하고 실행 취소를 클릭합니다.

상호 작용을 소유하는 패키지를 변경하려면

  1. UML 모델 탐색기에서 시퀀스 다이어그램에 표시되는 상호 작용을 찾습니다.

    참고

    시퀀스 다이어그램에 첫 번째 수명선을 추가하지 않으면 UML 모델 탐색기에 상호 작용이 나타나지 않습니다.

  2. 상호 작용을 패키지로 끌어 옵니다.

    -또는-

    상호 작용을 마우스 오른쪽 단추로 클릭하고 잘라내기를 클릭한 다음, 패키지를 마우스 오른쪽 단추로 클릭하고 붙여넣기를 클릭합니다.

간단한 시퀀스 다이어그램 만들기 및 사용

수명선과 메시지만 포함된 시퀀스 다이어그램이 가장 간단하면서도 많이 사용되는 형태입니다. 이 유형의 다이어그램을 사용하면 디자인 개체 간의 상호 작용 시퀀스 또는 시스템과 사용자 간의 상호 작용 시퀀스를 명확하게 나타낼 수 있습니다. 이는 디자인을 논의하고 전달하는 데 충분히 유용합니다.

간단한 시퀀스 다이어그램을 그리는 경우 다음과 같은 몇 가지 내용을 고려해야 합니다.

메시지 형식

메시지를 만들 때 다음과 같은 세 가지 도구를 사용할 수 있습니다.

  • 전송자가 수신자의 응답을 기다리는 상호 작용을 기술하려면 동기 도구를 사용합니다(3).

    실행 발생의 끝에 <<return>> 화살표가 표시됩니다. 이는 전송자에게 제어가 반환되었음을 나타냅니다.

  • 전송자가 수신자의 응답을 기다리지 않고 바로 작업을 계속할 수 있는 상호 작용을 기술하려면 비동기 도구를 사용합니다(4).

  • 전송자가 수신자를 만드는 상호 작용을 기술하려면 만들기 도구를 사용합니다(8).

    만들기 메시지는 수신자가 받는 첫 번째 메시지여야 합니다.

상호 작용에 주석 추가

다이어그램에서 원하는 위치에 주석을 추가하여 시퀀스에 대한 자세한 정보를 기술할 수 있습니다.

주석 링크를 사용하면 수명선, 실행, 상호 작용 사용 및 조각에 주석을 연결할 수 있습니다.

경고

시퀀스 내의 특정 위치에 주석을 연결하려면 실행 발생, 상호 작용 사용 또는 조각에 연결해야 합니다. 수명선에 주석을 연결하면 시퀀스에서 정확한 위치에 연결되지 않으므로 이렇게 하면 안 됩니다.

주석을 사용하면 다음을 수행할 수 있습니다.

  • 시퀀스의 주요 지점에서 달성한 내용을 기록합니다. 이렇게 하면 사용자가 상호 작용의 목표를 이해하는 데 도움이 됩니다.

  • 전체 시퀀스의 전반적인 목표를 기술합니다. 최초 실행 발생에 주석을 연결하거나 연결되지 않은 상태로 둡니다. 예를 들면 "고객이 메뉴에서 항목을 선택했고 가격이 제공되었습니다."와 같은 주석을 추가할 수 있습니다.

  • 각 수명선의 책임을 기술합니다. 수명선에 주석을 연결합니다. 예를 들면 "주문 관리자가 고객의 메뉴 선택을 모읍니다."와 같은 주석을 추가할 수 있습니다.

  • 표시된 일반적인 시퀀스 대신 수행할 수 있는 대안 또는 예외를 기록합니다. 예를 들면 "고객은 이 시퀀스의 나머지를 생략하도록 선택할 수 있습니다."와 같은 주석을 추가할 수 있습니다.

    • 조각은 이 유형의 메모 대신 사용할 수 있는 정식 방법입니다. 자세한 내용은 조각을 사용하여 제어 구조 기술을 참조하십시오.

다이어그램의 범위 결정

다이어그램에 표시할 내용에 대해 명확히 하는 것이 중요합니다.

시작 이벤트

각 다이어그램에는 하나의 시작 이벤트를 실행한 결과로 발생하는 상호 작용 시퀀스가 나타나야 합니다. 예를 들면 다음과 같습니다.

  • 식사 주문을 위해 웹 페이지를 여는 사용 사례를 시작하는 사용자

  • 고객이 원하는 품목의 구매 가능 여부를 쿼리하기 위해 특정 시스템 구성 요소에서 다른 구성 요소로 전달되는 메시지

  • 최저 한도 이하로 떨어지는 항목의 주가와 같이 상태 변화에 의해 트리거되는 이벤트

세부 수준

시퀀스 다이어그램에는 다양한 세부 수준을 표시할 수 있습니다. 다음과 같이 서로 거의 독립적인 두 차원으로 세부 수준을 결정할 수 있습니다.

수명선은 다음과 같은 세부 수준 중 하나를 나타낼 수 있습니다.

  • 이미 있거나 현재 개발 중인 프로그램 코드의 개체

  • 구성 요소 또는 일반적으로 외관, 프록시, 기타 연결 메커니즘 등을 생략하는 하위 구성 요소

  • 시스템 및 외부 행위자

메시지는 다음과 같은 세부 수준 중 하나를 나타낼 수 있습니다.

  • 프로그램 코드, API 또는 웹 인터페이스의 소프트웨어 메시지

  • 트랜잭션 또는 하위 트랜잭션(예: 사용자와 시스템 간의 트랜잭션 또는 코드와 데이터베이스 간의 트랜잭션)

  • 사용 사례 - 사용자와 시스템 간의 주 상호 작용

기존 코드를 탐색하든 아니면 새 디자인을 기술하든 상관없이 세부 수준이 복잡하지 않은 뷰를 논의하고 그리는 것이 유용합니다.

변형 기술

다이어그램에는 일반적인 이벤트 시퀀스 하나가 표시됩니다. 실패 시나리오처럼 일어날 가능성이 있는 다른 경우를 나타내려면 다음 옵션 중 하나를 사용합니다.

  • 이러한 시나리오를 기술하는 별도의 시퀀스 다이어그램을 그립니다.

  • 조각을 사용하여 제어 구조 기술을 참조하여 루프, 대체 방법 등을 나타냅니다.

디자인 평가

다이어그램을 사용하여 개체와 구성 요소 간의 작업 배포를 평가할 수 있습니다. 다음과 같은 패턴이 보이는 경우 리팩터링을 고려해 보십시오.

  • 한 수명선이 나머지 다른 항목을 호출하여 모든 작업을 수행하고 다른 수명선은 수동적으로 응답만 하는 것처럼 보입니다.

  • 많은 메시지가 수명선을 교차합니다. 각 수명선은 몇몇 이웃 항목에만 메시지를 보내야 하고 이웃의 이웃 항목과는 통신하지 않아야 합니다. 대개 몇몇 위치에서만 메시지가 수명선을 교차하도록 수명선을 정렬하는 것은 가능해야 하며, 교차가 발생하는 경우 대상 수명선은 교차된 수명선을 갖는 메시지를 교환해서는 안 됩니다.

  • 일부 수명선이 두 종류 이상의 작업을 처리하는 것처럼 보입니다. 전송되는 각 메시지에 대한 응답으로 수명선이 수행하는 작업을 요약하여 각 수명선의 책임을 기술하는 간략한 문장을 쉽게 찾을 수 있어야 합니다.

클래스 및 수명선

시퀀스 다이어그램의 수명선은 클래스 또는 구성 요소 인터페이스의 인스턴스를 보여 줍니다. 다음과 같은 두 가지 방법으로 수명선 이름을 지정할 수 있습니다.

용도

형식

형식의 익명 인스턴스

각 형식의 수명선이 하나뿐인 경우에 사용합니다.

typeName

형식의 명명된 인스턴스

형식이 같은 인스턴스가 두 개 이상 포함된 시퀀스를 표시하려는 경우에 사용합니다.

objectName:typeName

형식에서 수명선 만들기

예를 들면 클래스 다이어그램에 이미 정의한 클래스에서 새 수명선을 만들 수 있습니다.

참고

이 작업을 수행하려면 기존 시퀀스 다이어그램이 있어야 합니다.

기존 형식에서 수명선을 만들려면

  • UML 모델 탐색기의 클래스, 구성 요소 또는 인터페이스를 시퀀스 다이어그램으로 끌어 옵니다.

    -또는-

    1. 각 다이어그램에서 클래스, 구성 요소 또는 인터페이스를 마우스 오른쪽 단추로 클릭하고 수명선 만들기를 클릭합니다.

    2. 수명선 만들기 대화 상자에서 시퀀스 다이어그램을 선택하고 확인을 클릭합니다.

    끌어 온 형식과 같은 형식의 명명된 새 인스턴스 수명선이 나타납니다.

    참고

    이 작업을 원하는 만큼 반복할 수 있습니다. 그러면 인스턴스 이름이 다른 수명선이 만들어집니다.

수명선 형식을 변경하려면

  1. 수명선을 마우스 오른쪽 단추로 클릭하고 속성을 클릭합니다.

  2. 속성 창에서 형식 속성을 설정합니다. 드롭다운 메뉴에서 형식을 선택하거나 새 이름을 입력할 수 있습니다.

수명선에서 클래스 만들기

시퀀스 다이어그램을 하나 이상 만들었으면 클래스 또는 인터페이스를 만들어 수명선을 요약할 수 있습니다.

수명선에서 클래스 또는 인터페이스를 만들려면

  1. 수명선을 마우스 오른쪽 단추로 클릭하고 클래스 만들기 또는 인터페이스 만들기를 클릭합니다.

    UML 모델 탐색기에 새 클래스 또는 인터페이스가 나타납니다.

  2. 다음과 같이 수명선이 받는 각 메시지에 대해 클래스 또는 인터페이스에서 작업을 만듭니다.

    1. 포함할 메시지를 모두 선택합니다.

    2. 메시지 중 하나를 마우스 오른쪽 단추로 클릭하고 메서드 만들기를 클릭합니다.

      새 클래스 또는 인터페이스에는 선택된 각 메시지에 대한 작업이 있습니다.

      작업 이름은 각 메시지 화살표 아래와 메시지의 작업 속성에 나타납니다.

      메시지에 "(parameter : type)" 형식의 매개 변수가 포함된 경우에는 새 작업의 매개 변수 목록에 매개 변수가 나타납니다.

      참고

      시퀀스 다이어그램에서 새 메시지를 추가하는 경우 이 단계를 반복해야 합니다.

  3. 새 클래스 또는 인터페이스를 자세히 보려면 클래스 또는 구성 요소 다이어그램에 추가합니다.

    1. 클래스 또는 구성 요소 다이어그램을 열거나 만듭니다.

    2. UML 모델 탐색기에서 새 클래스 또는 인터페이스를 클래스 다이어그램으로 끌어 옵니다.

      클래스 또는 인터페이스가 클래스 다이어그램에 나타납니다.

      -또는-

    3. UML 모델 탐색기에서 새 인터페이스를 구성 요소 다이어그램의 구성 요소 또는 포트로 끌어 옵니다.

      인터페이스가 구성 요소에 롤리팝으로 나타납니다.

매개 변수의 클래스 만들기

시퀀스 다이어그램에서 메시지에 매개 변수를 포함할 수 있습니다. UML 클래스 다이어그램을 사용하면 매개 변수 형식을 기술할 수 있습니다.

재사용 가능한 상호 작용 시퀀스 만들기

별도의 다이어그램을 사용하여 따로 분리할 세부 정보 또는 여러 다이어그램에서 공통인 정보를 포함하는 시퀀스를 기술할 수 있습니다.

다른 다이어그램의 세부 정보를 가리키는 상호 작용 사용 사각형(12)을 다이어그램에 만들 수 있습니다.

상호 작용 사용을 두 번 클릭하면 연결된 시퀀스 다이어그램이 열립니다.

기존 수명선에서 재사용 가능한 상호 작용 시퀀스를 만들려면

  1. 도구 상자에서 상호 작용 사용을 클릭합니다.

  2. 시퀀스 다이어그램에서 마우스 단추를 누른 상태로 재사용 가능한 시퀀스에 포함할 수명선을 끕니다. 이때 상호 작용 사용을 삽입할 세로 위치에서 시작해야 합니다.

    상호 작용 사용이 시퀀스 다이어그램에서 선택한 수명선을 지나 나타납니다.

  3. 상호 작용 사용에서 이름을 두 번 클릭하거나, 이 다이어그램에서 재사용 가능한 시퀀스의 효과를 기술하도록 이름을 바꿉니다.

    -또는-

    매개 변수를 사용하여 함수 호출 같은 이름을 씁니다.

  4. 상호 작용 사용을 다른 시퀀스 다이어그램에 연결합니다. 이렇게 하려면 상호 작용 사용을 마우스 오른쪽 단추로 클릭하고 다음과 같이 합니다.

    새 시퀀스 다이어그램을 만들려면 새 시퀀스 만들기를 클릭합니다.

    -또는-

    기존 다이어그램에 연결하려면 시퀀스에 연결을 클릭합니다.

    Visual Studio에서 상호 작용 사용과 새 상호 작용 시퀀스를 연결하는 링크가 만들어집니다.

    새 시퀀스 다이어그램이 솔루션에 나타납니다. 이 다이어그램에는 상호 작용 사용을 만드는 데 사용한 수명선이 포함되어 있습니다.

    참고

    상호 작용 사용을 만드는 데 사용한 수명선만 포함됩니다. 즉, 상호 작용 사용 이후에 만든 수명선은 지금 해당 상호 작용 사용에 포함되어 있더라도 새 다이어그램에 포함되지 않습니다.

기존 메시지에서 재사용 가능한 시퀀스를 만들려면

  • 이동할 메시지를 마우스 오른쪽 단추로 클릭하고 다이어그램으로 이동을 클릭합니다.

    Visual Studio:

    • 선택한 메시지 및 보조 메시지를 상호 작용 사용으로 바꿉니다.

    • 바꾼 메시지를 새 시퀀스 다이어그램으로 이동합니다.

    • 상호 작용 사용과 새 시퀀스 다이어그램을 연결하는 링크를 만듭니다.

상호 작용 사용에서 참조하는 시퀀스를 탐색하려면

  • 상호 작용 사용을 두 번 클릭합니다.

    -또는-

    상호 작용 사용을 마우스 오른쪽 단추로 클릭하고 시퀀스로 이동을 클릭합니다.

상호 작용 사용으로 자리 표시자 만들기

다른 다이어그램에 연결하지 않고 상호 작용 사용을 만들 수 있습니다. 이 상호 작용 사용을 시퀀스에서 세부 사항을 처리해야 할 부분에 대한 자리 표시자로 사용할 수 있습니다. 원하는 결과를 나타내려면 상호 작용 사용의 이름을 사용하십시오.

수명선 그룹 축소

수명선 집합을 동시에 축소하여 그룹이 수명선 하나로 나타나게 할 수 있습니다. 이렇게 하면 개체 그룹을 단일 구성 요소로 시각화할 수 있습니다. 축소된 그룹에서 수명선 사이의 상호 작용 사용 및 메시지는 숨겨지고 다른 수명선을 포함하는 상호 작용 시퀀스 및 메시지는 표시됩니다.

수명선 그룹을 축소하려면

  1. 수명선을 두 개 이상 선택합니다.

  2. 그 중에서 하나를 마우스 오른쪽 단추로 클릭하고 축소를 클릭합니다.

    개별 수명선이 단일 수명선으로 바뀝니다.

    그룹 멤버만 포함하는 상호 작용 사용 및 메시지는 숨겨집니다.

  3. 그룹 이름을 바꾸려면 이름을 클릭합니다.

    참고

    그룹을 확장하면 그룹 이름이 없어집니다.

축소된 그룹을 확장하려면

  • 축소된 수명선을 마우스 오른쪽 단추로 클릭하고 확장을 클릭합니다.

    참고

    그룹에서 주석 또는 작업 항목으로 연결되는 링크와 함께 그룹 이름이 없어집니다.

조각을 사용하여 제어 구조 기술

결합 조각(13)을 사용하여 루프, 분기 및 동시 처리를 시퀀스 다이어그램에 정의할 수 있습니다. 대신 동작 다이어그램을 사용하는 것도 고려해 보십시오. 동작 다이어그램은 행위자 간의 메시지를 표시할 때는 유용하지 않지만 경우에 따라 루프, 분기 및 동시성을 표시할 때 유용합니다.

전체 조각 형식의 목록을 보려면 UML 시퀀스 다이어그램의 조각으로 제어 흐름 설명을 참조하십시오.

결합 조각을 만들려면

  1. 특정 메시지 또는 같은 실행 발생이나 수명선에서 모두 시작하는 메시지 시퀀스를 선택합니다.

    참고

    메시지가 가리키는 실행 발생이 아니라 메시지 화살표를 선택합니다.

  2. 메시지 중 하나를 마우스 오른쪽 단추로 클릭하고 코드 감싸기를 가리킨 다음, 필요한 조각의 형식을 클릭합니다.

    새 조각이 나타납니다. 이 조각에는 선택한 메시지가 포함되어 있습니다.

    결합 조각 형식이 여러 조각을 허용할 경우에는 비어 있는 조각도 나타납니다.

  3. 조각의 가드를 설정하려면 조각 테두리를 마우스 오른쪽 단추로 클릭하고 속성을 클릭합니다. 그런 다음 가드 속성을 설정합니다.

    가드는 분기 또는 루프의 조건을 정의하는 데 사용됩니다.

  4. 여러 조각을 허용하는 형식에 새 조각을 추가하려면 조각 경계를 마우스 오른쪽 단추로 클릭하고 추가를 가리킵니다. 그런 다음 앞에 상호 작용 피연산자 추가 또는 뒤에 상호 작용 피연산자 추가를 클릭합니다.

  5. 조각에 새 메시지를 추가하려면 메시지 도구를 사용하거나 복사하여 붙여넣습니다.

코드에서 시퀀스 다이어그램 생성

Visual C# 또는 Visual Basic 코드 파일의 메서드 정의에서 시퀀스 다이어그램을 생성할 수 있습니다.

생성된 시퀀스 다이어그램은 모델링 프로젝트에서 만든 시퀀스 다이어그램과 매우 비슷합니다. 그러나 생성된 시퀀스 다이어그램의 요소는 UML 모델 탐색기에 나타나지 않습니다.

코드에서 시퀀스 다이어그램을 생성하려면

  1. Visual Studio에서 메서드 정의를 포함하는 코드 파일을 엽니다.

  2. 메서드 정의 내에서 아무 곳이나 마우스 오른쪽 단추로 클릭하고 시퀀스 다이어그램 생성을 클릭합니다.

    자세한 내용은 방법: 시퀀스 다이어그램을 사용하여 코드 탐색을 참조하십시오.

    참고

    다이어그램을 생성한 후에는 다이어그램 변경 내용이 코드에 나타나지 않으며 코드 변경 내용도 다이어그램에 나타나지 않습니다. 이러한 변경 내용을 표시하려면 새 시퀀스 다이어그램을 생성해야 합니다. 같은 메서드에서 원하는 만큼 새 시퀀스 다이어그램을 생성할 수 있습니다.

수명선과 메시지에서 이들이 나타내는 클래스 및 메서드의 코드 정의로 탐색할 수 있습니다.

생성된 수명선과 메시지에서 코드로 탐색하려면

  • 생성된 수명선 또는 메시지를 마우스 오른쪽 단추로 클릭하고 정의로 이동을 클릭합니다.

생성된 시퀀스를 UML 모델에 복사

생성된 시퀀스의 수명선, 메시지 및 다른 부분을 모델링 프로젝트의 시퀀스 다이어그램에 복사할 수 있습니다.

생성된 시퀀스 다이어그램을 UML 모델에 복사하려면

  1. 시퀀스 다이어그램에서 복사할 요소(예: 수명선, 메시지)를 선택합니다. 다이어그램의 모든 요소를 복사하려면 편집 메뉴에서 모두 선택을 클릭합니다.

  2. 편집 메뉴에서 복사를 클릭합니다.

  3. 모델링 프로젝트에서 시퀀스 다이어그램을 만들거나 엽니다. 이 작업을 수행하는 방법을 보려면 시퀀스 다이어그램을 그리는 기본 단계를 참조하십시오.

  4. 편집 메뉴에서 붙여넣기를 클릭합니다.

    선택한 요소의 복사본이 다이어그램에 나타납니다.

    참고

    붙여넣은 요소의 색을 조정해야 할 수도 있습니다. 이렇게 하려면 요소를 선택하고 속성 창에서 색을 설정합니다.

참고 항목

참조

UML 시퀀스 다이어그램: 참조

개념

방법: UML 모델 및 다이어그램 편집

UML 사용 사례 다이어그램: 참조

UML 클래스 다이어그램: 참조

UML 구성 요소 다이어그램: 참조

UML 구성 요소 다이어그램: 참조

기타 리소스

Video: Sketching Interactions by using Sequence Diagrams