본문 바로가기

실체엔터티

[worst practice 4] 요건은 아래와 같습니다. -부서명, 전화번호, 부서장 등의 부서에 대한 기본 정보를 관리한다.-전화번호, 부서장 등의 데이터는 변경될 수 있어 이력 관리한다. 위의 요건을 설계한 모델이 아래와 같습니다.잘못된 부분을 생각해 보세요. [그림 1] -- 이력 데이터를 어떻게 설계할지에 대한 문제입니다. 이력 데이터를 원천 엔터티에 통합해서 관리하면 좋을 때가 있고 그렇지 않을 때가 있습니다. [그림 1]은 그렇지 않을 때에 해당돼서 아래와 같이 관리하는 게 바람직합니다. [그림 2] 실체를 관리하는 엔터티나 기본 정보를 관리하는 엔터티, 기준 정보를 관리하는 엔터티는 이력 데이터를 원천 데이터와 같이 관리하지 않는 것이 좋습니다. 실체 데이터는 한 번 생기면 그대로 존재하는 것이어서, 특성(속성)이 바뀐다고.. 더보기
실체 엔터티의 변경이력 엔터티 설계 원천 엔터티가 실체 엔터티일 때는 변경이력 데이터를 별도의 엔터티에서 관리하도록 설계한다. [그림1] 고객실체 엔터티는 실체인 고객 데이터를 관리하는 실체 엔터티다. [그림1] 만약 고객명 속성이나 전화번호 속성의 변경이력 데이터를 관리할 때, 고객은 실체이기 때문에 아래 모델처럼 별도의 엔터티에서 변경이력 데이터를 관리하도록 설계한다. [그림2] 고객실체 엔터티의 속성 중에서 하나라도 변경되면, 그 시점의 고객실체 엔터티 인스턴스는 고객실체이력 엔터티로 이동한다. 고객실체이력 엔터티는 변경된 과거 데이터이므로 주로 사용되지 않으며, 필요 시에만 참고 용도로 사용하기 위해 보관하는 역할을 한다. 실체 엔터티는 실체에 대한 개별 인스턴스를 관리하는 엔터티다. 실체 엔터티에서 실체의 변경된 데이터까지 관리한.. 더보기
실체 엔터티 설계 보이거나 만질 수 있는 실제의 물체(物體)를 나타내는 데이터는 실체 엔터티로 설계한다. 엔터티를 정의할 때 엔터티에서 관리하는 데이터가 실제로 존재하는 물체인지, 만질 수 있는 물건인지를 가장 먼저 따져서 실체를 나타낸다면 실체 엔터티로 설계한다. 실체 엔터티는 엔터티 명에 ‘실체’ 접미어를 붙인다. [그림1] 서적실체 엔터티는 만질 수 있는 실체인 책을 관리하는 엔터티다. [그림1] 서적실체 엔터티는 실체 엔터티이기 때문에 엔터티 명에 ‘실체’ 접미어를 붙인다. 책을 한 권씩 개별적으로 다룬다면 서적실체 엔터티가 필요하다. 바코드 정보가 있어 해당 책을 관리할 수 있다. 하지만 서적실체 엔터티에는 책에 대한 이름이나 저자 등과 같은 기본 정보가 없다. 이런 정보는 책을 상징하는 정보로서 실체 정보는 아.. 더보기
역할 엔터티의 엔터티 명 실체의 본질적인 성격이나 특성을 관리하는 엔터티가 아닌, 실체가 하는 역할을 관리하는 엔터티의 이름은 ‘대상 실체 엔터티 명+역할 의미+담당 실체 엔터티 명’ 형식으로 정한다. 즉 양쪽 실체 엔터티 명(실체라는 접미어를 제외한 명)과 실체가 하는 역할을 의미하는 단어를 사용해서 엔터티 명을 정한다. 이 엔터티는 실체 자체를 의미하지 않으므로 엔터티 명에 접미어 ‘실체’를 붙이지 않는다. [그림1] 계좌관리사원 엔터티는 계좌를 관리하는 역할을 하는 사원을 관리하는 엔터티다.[그림1] 계좌를 관리하는 사원이든, 사원에게 관리되는 계좌이든 실체 자체를 의미하지 않고, 실체의 역할을 의미한다. 역할을 담당한 실체는 사원이기 때문에 ‘~사원’처럼 엔터티 명을 정하며 ‘관리’라는 역할의 대상은 ‘계좌’다. 따라서 .. 더보기
실체 엔터티의 엔터티 명 실체 엔터티는 실체 엔터티임을 명확하게 구분하기 위해서 엔터티 명에 ‘실체’라는 단어를 접미어(Suffix)로 붙인다. 그리고 접미어 앞에는 엔터티 성격을 나타내는 명사형의 단어를 사용한다. [그림 실체엔터티명] 장비실체 엔터티는 장비를 관리하는 엔터티다. [그림 실체엔터티명] 장비실체 엔터티는 장비라는 만질 수 있는(Tangible) 실제의 물체(物體)를 관리하는 엔터티로 실체 엔터티다. 명사형인 ‘장비’와 접미어인 ‘실체’를 붙여 ‘장비실체’로 엔터티 명을 정한다. 명사형과 동사형의 단어를 구분하는 방법은 ‘~했음’을 붙여 자연스러우면 명사형이 아니라 동사형이다. ‘장비’라는 단어는 명사형이기 때문에 ‘~했음’을 붙이면 의미가 통하지 않는다. ‘~했음’을 붙여 의미가 통하는 동사형의 단어는 행위 엔터.. 더보기