이론/DB이론

데이터 베이스의 개발

zelkova 2011. 6. 3. 10:24

개발 과정
요구사항 분석 -> 논리적 설계 -> 물리적 설계->데이터베이스의 구축

1.요구사항 분석
데이터베이스 시스템을 개발할때 가장 중요한 것은 현실 업무를 정확하게 파악하여 필요한 기능들을 표현하고 분석하는 것이다. 업무 파악을 위한 많은 종류의 도구들이 제안되었는데 가장 이해하기 쉽고 많이 사용되는것이 업무 흐름도이다.

업무 분석의 절차
여러가지 요구사항을 면담과 기존 업무 양식 문서를 통해 분석한 자료를 요구명세서로 표현하는데 이후의 모든 설계 구축 작업의 기초가 되는 자료이므로 가장 중요한 단계이다.

▶첫번째(현행시스템 파악:요구 사항 명세서)

▶두번째(현행 논리 시스템 도출:현행 업무 흐름도)

▶세번째(새로운 논리 시스템 입안:신규 업무흐름도)

▶네번째(새로운 시스템 입안:신규 시스템 제안서)


2.논리적 설계
논리적 단계에서는 주로 erd를 사용하는데 특정 데이터베이스에 구애되지 않도록 골격을 구축하는 작업단계이다. ERD로 표현되는 데이터베이스의 논리적 설계는 데이터베이스의 전체 구조를 쉽게 나타낼 수 있으며, 사용자와 함께 업무를 분석하고 검토할 때 이용 할 수 있는 자료가 된다. ERD 기본 용어를 살펴보면 다음과 같다.

엔티티(Entity, 개체)
엔티티는 독립적인 특성을 갖는다. 관리 대상이 되는 정보를 갖고 있는 사람, 사물, 사건개념등을 의미하며 일반적으로 명사형으로 표현된다.
엔티티는 ERD에서 사각형으로 표시된다.

속성(Attribute)
속성은 성질이나 상태 등 엔티티가 가질 수 잇는 세부적인 특성이다. 예를 들면 회원이라는 개체의 엔티티에는 회원 ID, 이름, 주민번호, 주소 등의 속성을 가질 수 있을것이다.

인스턴스(Instance)
인스턴스는 엔티티의 의 하나의 값이라고 볼 수 있다.
엔티티가 회원에 대한 속성의 묶음이라면 속성은 인스턴스의 묶음이라고 볼 수 있다.

기본 키
하나의 엔티티 내에 똑같은 인스턴스가 존재하면 인스턴스를 서로 구별하여 검색할 수 없을 뿐만아니라 데이터가 중복되는 문제가 생긴다. 이를 막기우해 인스턴스를 서로 구별할 수 잇는 유일한 속성 값을 유지해야 하는데 이것이 바로 기본 키다.
기본키는 ERD에서 속성의 이름에 밑줄을 그어주는 것으로 표시된다.

관계
엔티티간의 연관성을 관계라고 하며, 일반적으로 동사형으로 표현된다.
예를 들어 회원 이 도서를 주문한다. 에서 회원과 도서의 관계를 주문관계로 나타낼 수 있다.
관계는 ERD에서 마름모로 표시된다.

일대일 관계,일대 다 관계, 다대다 관계

3.물리적 설계
물리적 설게 단계는 개발에 사용할 데이터베이스를 선정하고, 결정된 특정 데이터베이스로 구현될 수 있도록 구체적으로 설계하는 것을 말한다.

엔티티 집합의 테이블 표현
ERD에서 표현된 엔티티를 하나의 테이블로 나타내고, 각 엔티티 집합의 속성을 테이블 필드로 만든다.

관계 집합의 참조키 표현
ERD에서는 관계가 엔티티 간의 연결로 표현한다. 물리적 설계 단계에서는 이것을 테이블 간의 참조 키 관계에 의해 설정되도록 해야 한다. 따라서 참조키를 어떻게 만들어야 하는 가는 중요한 문제가 된다.

▶일대일 관계
관계에 참여하는 두 테이블이 다른 에티티와 관계에 참여하지 않는다면, 두 테이블을 하나의 테이블로 통합한다. 예를 들어, 논리적 설계 단계에서 인터넷 서점의 회원 정보를 회원 엔티티와 결제 정보 엔티티로 나누어 설계하였다면, 다음 그림과 같이 두 엔티티르 ㄹ하나의 테이블로 통합할 수 있다.

▶일대다 관계
일대 다관계에 있는 두 테이블 중 일에 해당하는 테이블의 기본 PK를 다(N)에 해당하는 테이블에 포함시키고 참조키(FK)로 만든다.

▶다대다 관계
새로운 테이블을 만들어 다대다 관계에 참여한 두 테이블의 기본키를 이 새테이블에 함께 포함시킨다. 새로운 테이블의 참조 키느 ㄴ두개가 된다. 이때 새태이블의 기본키를 만드는 방법에는 두가지가 있는데 첫번째 방법은 두 개의 참조키를 조합하여 새 테이블의 기본키를 만드는 것이고, 두 번째 방법은 새로운 속성을 추가하여 기본키로 만드는 것이다.

테이블 명세
엔티티를 테이블화 하고, 관계를 참조키로 설정하고 나면 테이블 각 필드에 대한 데이터형과 제약조건을 정의해야 한다. 데이터형에 관련된 자세한 설명은 뒤에서 하도록 하자.


반응형

'이론 > DB이론' 카테고리의 다른 글

정규화  (0) 2011.06.03
데이터베이스의 종류와 구조  (4) 2011.06.03
데이터베이스- 데이터베이스의 구성요소  (0) 2011.06.02
데이터베이스이론1 - 데이터베이스란?  (0) 2011.06.02