태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

엔터티 간의 관계에서 생기는 관계 속성은 한 엔터티에 여러 개가 있을 수 있으며, 그 관계 속성 중에는 유사한 성격의 속성이 있을 수 있다. 이때 유사한 관계 속성이 두 개 이상이며, 추가될 가능성이 조금이라고 있다면 별도의 관계 엔터티로 설계한다.

 

[그림1] 보험계약 엔터티에는 세 개의 관계 속성이 존재한다.

 


[그림1]

 

보험을 계약한 고객과 보험의 피보험자 고객, 보험의 연대보증 고객이 누구인지를 관리하는 속성이 관계 속성이다. 따라서 계약고객번호/피보험고객번호/연대보증고객번호 속성은 관계 속성이며, 관계선이 세 개이므로 관계 속성과 마찬가지로 관계 명에도 역할(Role) 이름을 사용한 모델이다.

 

이미 세 개의 관계 속성이 존재하지만 연대 보증인의 경우에는 여러 명을 관리할 수도 있어서 관계 속성이 더 늘어날 가능성이 있다. 이렇게 관계 속성이 늘어날 가능성이 있을 때는 아래 모델처럼 별도의 엔터티에서 관계를 관리한다.

 

[그림2]

 

보험계약당사자 엔터티는 관계(역할) 엔터티(Relationship Entity). [그림1] 보험계약 엔터티에 있던 관계 속성을 관리하는 엔터티다.

 

이와 같이 엔터티에서 관계를 관리하면 관계가 늘어나더라도 보험계약당사자 엔터티의 인스턴스만 늘어나므로 모델에는 영향을 미치지 않는다. 계약자/피보험자/연대보증인 이외의 다른 유형이 생겨도 당사자유형코드에 인스턴스만 추가하면 된다.

 

[그림2] 모델은 매우 유연한 모델이다. 업무 자체가 변경되지 않는 경우를 제외하면 관계 엔터티와 같은 정규형 엔터티를 사용해야 한다.

 

만약 관계 속성의 수가 완전히 고정적이라면 [그림1] 모델과 같이 관계 속성으로 관리할 수 있다. 업무가 변하지 않아서 계약자/피보험자/연대보증인 고객이 각각 한 명이고, 다른 유형의 고객은 생길 수 없다면 관계 속성으로 관리하는 게 바람직하다.

 


블로그 이미지

블루퍼필

댓글을 달아 주세요

  • 최상운 2017.03.22 01:12  댓글주소  수정/삭제  댓글쓰기

    머라고 불러야 하나...김이사는 좀 그렇고...그냥 이름 부를게 기창!!

    1년만에 소속을 듣네...뉴질랜드에 갔군...

    우리 나이가 되면 '내가 잘 살고 있나?' 라고 한 번쯤은 생각을 하지...삶에 터닝 포인트를 만들고 싶지만 운신의 폭은 그리 넓지 않지...가진건 별로 없지만 그나마 있는 것이라도 지키고 싶어서...

    자네의 결정이 좋을 결정이 되길 바래. 돌아 오는 날까지 자네와 집 사람 그리고 아이들 건강하고

    난 여전히 회사에 있어...나에게도 좀 작은 변화를 주려고 노력 하고 있고...시간되면 연락줘 이메일이 좋겠군 samuelc@empal.com