2014-06-16 4 views
1

UML 다이어그램에 문제가 있으며 도와 주시면 기꺼이 도와 드리겠습니다. 제가UML 관계. 집계

오브젝트 A (1) <> ---- (0 .. *) 객체 B

객체 B (1) <> ---- (0 .. *) 대상물 (A)와 같은 관계가

나는 그들을 하나로 묶고 싶습니다. 내가 어떻게 해? 고마워.

+0

그것은 (* .. *)과 동일 아닌가? 어떤 예가 Singe A 객체가 여러 개의 B 객체를 갖고있는 반면, 단일 B 객체는 여러 개의 A 객체를 가질 수 있습니까? – Justinas

+0

예 : 하나의 서버는 분산 기능의 일부가 될 수 있지만 하나의 기능은 하나의 서버의 일부가 될 수 있습니다. – Ivan

답변

2

"단결시키다"라는 용어를 정의 해 주실 수 있습니까? 정확히 무엇을 얻고 싶습니까? 예를 들어 도움이 될 수 있습니다.

한편 나는 두 가지 가능한 해결책을 추측하고 시도 할 수 있습니다. 어쩌면 그들은 당신이 해결책을 찾기 위해 심지어 질문을 바꿔이나하는 데 도움이 : 솔루션 1에서

enter image description here

가, 난 그냥 당신의 모두를 설명하는 하나의 관계를했습니다. 객체들 사이의 연결에 대한 단 하나의 분명한 기준 만있는 경우에 사용할 수 있습니다. 전형적인 n..m 관계. 객체 A는 각각 관련된 객체 B의 모음을 보유하고 그 반대의 경우도 마찬가지입니다.

  • 는 예를 들어, 사람 (다이어그램 A)는 여러 클럽 (B)에 가입 할 수 있으며 클럽은 여러 멤버를 가질 수 있습니다 - 회원 -이 상황 뒤에 하나의 논리 관계가있다.

솔루션 2는 실제로 두 요소가 서로 다른 두 가지 방법으로 연결되어 있습니다. 따라서 A는 Bs 컬렉션을 보유하고 B는 As 컬렉션을 보유하지만 관련이 없습니다.

  • 동일한 예를 확장하면 Person (A)만이 1 개의 Club (B)에만 가입 할 수 있고 클럽은 많은 구성원을 보유 할 수 있으며 참조 (col_a)가 그림에 유지 될 수 있습니다. 같은 시간에 클럽에는 소유자가 1 명 뿐이고 사람은 여러 클럽 (col_b)을 소유 할 수 있습니다. 여기에는 두 개의 서로 다른 논리 관계가 있습니다. 구성원은이고 입니다.

물론 다른 다중성 및 탐색 기능도 가능합니다. 이는 아이디어를 제공하는 예일뿐입니다.

이러한 상황 중 하나가 귀하의 것과 비슷합니까? (1 코멘트 후)

UPDATE : 그래서

, 여기에 업데이트 된 솔루션 1 :

enter image description here

이 여기에 사용되는 집계이며,이 더있다 그룹 구성원 관계. 그것은 거기에 내 첫 번째 솔루션의 설명을 완벽하게 맞습니다. 회원 (B)은 그룹 (A)간에 "공유"할 수 있으며 Gruop은 평생 동안 특별한 통제권을 갖지 않습니다.

진짜 전체 부분 관계는 집합 대신에 구성을 사용합니다 (시각적으로 흰색 대신 검은 색 다이아몬드로 표시).그것의 의미는 전체 객체가 포함 된 객체 (부분)의 수명을 완전히 제어 할 수 있다는 것입니다. 따라서 파트는 여러 Wholes간에 공유 될 수 없으며 Whole 자체가 파괴되면 파괴되어야합니다.

이제는 문제를 가장 잘 설명하는 상황을 찾아서이 솔루션을 선택하고 궁극적으로 다중성을 조정해야합니다.

+0

감사합니다! 예, 저는 첫 번째 해결책을 사용했으나 관계가 "전체적으로"표시되지 않는 것으로 보입니다. 맞아? 이 경우 다른 해결책이 있습니까? – Ivan

+0

맞아, 전체 - 부분 관계 성을 전혀 보여주지는 않습니다. 이를 위해 작곡과 집계가 있습니다. 내 업데이트 된 답변을 참조하십시오. – Aleks

+0

정말 고마워, 너 정말 나를 도와 줬어! – Ivan

1

UML로이 시나리오를 표현할 수있는 방법이 있습니다.

하나의 서버에는 0 개 또는 여러 개의 함수 (예 : 집계 관계)가 포함될 수 있습니다.

각 기능은 하나의 서버에 속해야합니다. 또는 분산 함수 인 경우 많은 서버에 속할 수 있습니다.

enter image description here

+0

도움을 주셔서 감사합니다. – Ivan