2013-07-30 1 views
1

즉, 기본 유스 케이스 A와 두 개의 확장 유스 케이스 A1, A2가 있습니다. 그런 다음 A에 "포함"항목을 추가하고 B라고합시다. 내 질문은 A1입니다. A2에 자동으로이 항목 B가 포함됩니까? 또는 A1, A2에서 점선 화살표 두 개를 B에 추가해야합니까?UML 유스 케이스 다이어그램 <<include>> 및 <<extend>>

여기에 이미지를 게시 할만한 점수가 없으므로이 그림을 사용하여 아이디어를 설명하고 A부터 A1, A2까지 화살표가 없으므로 혼란스럽지 않으시기 바랍니다.

   A ------> B(include) 
      /\ 
     extend/ \extend 
      / \ 
      A1  A2 

감사!

답변

1

실제로 A1과 A2에서 B를 참조하는 경우 해당 요소에서 (ElementImport in UML) B를 포함해야합니다. 그러나 A, A1 및 A2가 포함 된 패키지를 가져 와서이 패키지에서 B를 가져올 수도 있습니다. 따라서 B는이 패키지 내의 모든 요소에서 사용할 수 있습니다.

2

귀하의 사례 연구에서 알 수 있듯이 연장 대신 A1/A2와 A 사이의 일반화가 필요하지 않습니까? 확장은 유스 케이스 A의 선택적 부분을 의미하며 일반화는 유스 케이스의 다른 "버전"을 의미합니다.

일반화의 경우에는 포함 된 유스 케이스가 상속됩니다. 연장의 경우, 그렇지 않습니다.

0

A1 및 A2에는 B가 포함되지 않습니다. 실제로 동작이 무엇인지 (또는 Xaelis가 제안하고 패키지 의미를 사용함에 따라 할 수있는 경우) 각각에 대해 특별히 포함해야합니다. 반면에 A1과 A2가 A의 전문화 (Steph가 지적한대로) 인 경우 A가 포함하기 때문에 B가 포함됩니다. 확장보다는 전문화의 진정한 의도인지에 대한 의문이 생깁니다.

관련 문제