주제

설명 페이지 맨 위

포함 관계에서는 기본 유스 케이스를 포함 유스 케이스에 연결합니다. 포함 유스 케이스는 항상 추상적인 개념입니다. 여기에서는 기본 유스 케이스를 실행 중인 유스 케이스 인스턴스에 삽입되는 작동 세그먼트를 설명합니다. 기본 유스 케이스에서는 포함 유스 케이스와의 관계를 제어하고 포함을 수행한 결과에 종속됩니다. 하지만 기본 및 포함 유스 케이스는 서로의 속성에 액세스할 수 없습니다. 이러한 의미에서 포함 유스 케이스는 캡슐화되었으며 다른 기본 유스 케이스에서 재사용할 수 있는 작동입니다.

포함 관계를 사용하여 다음을 수행할 수 있습니다.

  • 유스 케이스의 기본 목적을 이해할 때 필요하지 않은 기본 유스 케이스의 작동을 제외할 수 있습니다. 기본 유스 케이스의 결과만 중요합니다.
  • 둘 이상의 유스 케이스에서 공통된 작동을 제외할 수 있습니다.

예:

ATM 시스템에서 현금 인출, 현금 입금 및 자금 이체와 같은 모든 유스 케이스는 시스템에서 고객을 식별하는 방법을 포함해야 합니다. 이 작동은 고객 식별이라는 새 포함 유스 케이스로 추출될 수 있으며 이는 세 개의 기본 유스 케이스에 포함됩니다. 세 개의 기본 유스 케이스는 식별할 때 사용하는 방법과 독립적이므로 이들은 포함 유스 케이스에서 캡슐화됩니다. 기본 유스 케이스의 관점에서 식별 방법으로 자기 은행 카드를 읽거나 망막 스캔을 수행하는 것은 중요하지 않습니다. 기본 유스 케이스는 고객의 ID인 고객 식별의 결과에만 종속됩니다. 반대의 경우 역시 고객 식별 유스 케이스의 관점에서 기본 유스 케이스가 고객 ID를 사용하는 방법 또는 포함을 실행하기 전에 이러한 기본 유스 케이스에서 발생한 상황은 중요하지 않습니다. 이 경우에도 식별 방법은 여전히 동일합니다.

텍스트 설명이 첨부된 다이어그램.

ATM 시스템에서 현금 인출, 현금 예금 및 자금 이체와 같은 모든 유스 케이스는 고객 식별 유스 케이스를 포함합니다.

하나의 기본 유스 케이스가 여러 포함 유스 케이스를 포함할 수 있습니다. 하나의 포함 유스 케이스가 여러 기본 유스 케이스에 포함될 수 있습니다. 이때 기본 유스 케이스 사이의 관계를 표시하지는 않습니다. 포함 유스 케이스가 다른 위치의 기본 유스 케이스에 삽입되는 경우 동일한 포함 유스 케이스와 기본 유스 케이스 사이에 여러 포함 관계가 생길 수도 있습니다. 포함 관계에서는 위치의 개념을 정의합니다. 모든 추가 항목은 중첩될 수 있습니다. 이는 포함 유스 케이스가 다른 포함 관계에서 기본 유스 케이스 역할을 할 수도 있음을 의미합니다.

포함 유스 케이스는 추상적인 개념이므로 포함 유스 케이스를 액터와 연관시키지 않아도 됩니다. 액터와 연관된 의사소통은 포함 유스 케이스의 작동이 액터와 명시적으로 상호 작용하는 경우에만 필요합니다.

포함 실행페이지 맨 위

포함 유스 케이스의 작동은 기본 유스 케이스의 한 위치에 삽입됩니다. 기본 유스 케이스의 설명을 따르는 유스 케이스 인스턴스가 포함 관계를 정의하는 기본 유스 케이스의 위치에 도달하면 대신 포함 유스 케이스의 설명을 따릅니다. 포함을 수행하면 유스 케이스 인스턴스는 기본 유스 케이스에서 중단된 지점부터 재개합니다.

텍스트 설명이 첨부된 다이어그램.

포함 유스 케이스가 있는 기본 유스 케이스의 설명을 따르는 유스 케이스 인스턴스.

포함 관계는 조건부로 실행되지 않습니다. 유스 케이스 인스턴스가 포함 관계를 정의하는 기본 유스 케이스의 위치에 도달하는 경우 항상 포함 관계가 실행됩니다. 조건을 표시하려면 포함 관계를 기본 유스 케이스의 파트로 실행해야 합니다. 유스 케이스 인스턴스가 포함 관계를 정의한 위치에 도달하지 않으면 포함 관계는 실행되지 않습니다.

텍스트 설명이 첨부된 다이어그램.

유스 케이스 인스턴스 #1이 포함 관계를 정의한 기본 유스 케이스의 위치에 도달하면 포함이 실행됩니다. 유스 케이스 인스턴스 #2가 해당 위치에 도달하지 않으면 포함은 해당 인스턴스의 파트로 수행되지 않습니다.

포함 유스 케이스는 하나의 연속된 작동 세그먼트로 모두 기본 유스 케이스의 한 위치에 포함됩니다. 다른 위치에 삽입해야 하는 별도의 작동 세그먼트가 있는 경우 대신 확장 관계(가이드라인: 확장 관계 참조) 또는 유스 케이스 일반화(가이드라인: 유스 케이스 일반화 참조)를 고려해야 합니다.

포함 관계 설명페이지 맨 위

포함 관계의 경우 포함 유스 케이스를 삽입할 기본 유스 케이스의 작동 순서 안에서 해당 위치를 정의해야 합니다. 기본 유스 케이스의 이벤트 플로우에 있는 특정 단계 또는 서브플로우를 참조하여 위치를 정의할 수 있습니다.

예:

ATM 시스템에서 현금 인출 유스 케이스는 고객 식별 유스 케이스를 포함합니다. 현금 인출에서 고객 식별까지의 포함 관계를 다음과 같이 설명할 수 있습니다.

고객 식별은 현금 인출의 이벤트 플로우의 섹션 1.1 유스 케이스 시작 및 1.2 금액 요청 사이에 삽입됩니다.

명확히 하려면 기본 유스 케이스의 이벤트 플로우를 설명하는 텍스트에도 포함을 언급해야 합니다.

사용법 예 페이지 맨 위

유스 케이스가 수행 방법과는 독립적이지만 기능한 결과에 종속됨을 볼 수 있는 유스 케이스에 작동 세그먼트가 있는 경우 이 작동을 포함 유스 케이스에 추출하여 유스 케이스를 단순화할 수 있습니다. 포함 유스 케이스는 여러 기본 유스 케이스에 포함될 수 있습니다. 이는 모델에 있는 여러 유스 케이스 사이에서 작동을 재사용할 수 있음을 의미합니다. 단순한 전화 시스템의 유스 케이스에 대한 다음 단계별 개요를 생각해봅시다.

전화걸기

  1. 호출자가 수화기를 듭니다.
  2. 시스템에서 발신음이 들립니다.
  3. 호출자가 번호를 누릅니다.
  4. 시스템에서 발신음이 끊깁니다.
  5. 통화자가 나머지 번호를 누릅니다.
  6. 시스템에서 번호를 분석하고 수신측의 네트워크 주소를 판별합니다.
  7. 시스템에서 호출자 및 수신측 사이에 가상 회선을 설정할 수 있는지 판별합니다.
  8. 시스템에서 가상 회선에 모든 자원을 할당하고 연결을 설정합니다.
  9. 시스템에서 수신측에 전화를 겁니다.
  10. 기타.

시스템 시작

  1. 조작원이 시스템을 활성화합니다.
  2. 시스템이 모든 컴포넌트에서 진단 테스트를 수행합니다.
  3. 시스템에서 모든 인접한 시스템의 연결을 테스트합니다. 인접한 시스템마다 시스템에서 해당 시스템과 인접 시스템 사이에 가상 회선을 설정할 수 있는지 판별합니다. 시스템에서 가상 회선에 모든 자원을 할당하고 연결을 설정합니다.
  4. 시스템에서 조작 준비가 되었음을 응답합니다.
  5. 기타.

파란색으로 나열된 텍스트는 매우 유사하므로 두 경우 모두 이유는 달라도 동일한 작동을 수행하고 있습니다. 이 유사성을 이용하여 공통된 작동을 새 유스 케이스인 가상 회선 관리에 추출할 수 있습니다.

공통된 작동을 추출한 후의 유스 케이스는 다음과 같습니다.

전화걸기

  1. 호출자가 수화기를 듭니다.
  2. 시스템에서 발신음이 들립니다.
  3. 호출자가 번호를 누릅니다.
  4. 시스템에서 발신음이 끊깁니다.
  5. 통화자가 나머지 번호를 누릅니다.
  6. 시스템에서 번호를 분석하고 수신측의 네트워크 주소를 판별합니다.
  7. 가상 회선 관리 유스 케이스를 포함하여 네트워크에서 연결을 설정하십시오.
  8. 시스템에서 수신측에 전화를 겁니다.
  9. 기타.

시스템 시작

  1. 조작원이 시스템을 활성화합니다.
  2. 시스템이 모든 컴포넌트에서 진단 테스트를 수행합니다.
  3. 시스템에서 모든 인접한 시스템의 연결을 테스트합니다. 인접한 시스템(루프)마다 가상 회선 관리를 포함하여 네트워크에서 연결을 설정하십시오.
  4. 시스템에서 조작 준비가 되었음을 응답합니다.
  5. 기타.

유스 케이스 다이어그램에서 작성된 포함 관계는 다음과 같이 표시됩니다.

텍스트 설명이 첨부된 다이어그램.

전화걸기 및 시스템 시작 유스 케이스는 모두 가상 회선 관리 추상 유스 케이스의 작동을 포함합니다.



Rational Unified Process   2003.06.15