[DAP/DASP] 4-1-1 데이터 모델링 개요 요약

    1. 데이터 모델링 정의

    가. 데이터 모델링 탄생 배경

    - 배치 프로세스에서 태동한 프로세스 중심의 데이터 관리 기법(구조적 방법론)에 의한 정보의 고립화 현상으로 정보시스템 유지 관리하는데 막대한 비용 투자

    - 데이터(정보)를 중복없이 정확하게 유지 관리할 수 있을까에 대한 근본적인 안 제시

    - 정확한 업무 파악이 선결되야 한다는 결론 도달, 이러한 환경에서는 관계형 DB나 개체 관계 모델링 기법(ERD)이 중요



    나. 모델 정의

    - 어떤 대상을 의미하는 포괄적 의미

    - 데이터 모델은 현실 세계에 대해 우리가 관심있어 하는 대상을 DB화 하기 위한 개념적 도구


    다. 모델링 정의

    - 실체를 나타내는 일과 모형화라는 의미로 해석, 사용자의 요구사항으로부터 데이터의 실체를 나타내는 일

    - 현실 세계의 추상화된 반영

    - 복잡한 '현실 세계'를 단순화시켜 표현한 것


    라. 데이터 모델이 제공하는 것


    • 시스템을 원하는 모습으로 가시화
    • 시스템의 구조와 행동을 명세화 할 수 있게 함
    • 시스템 구축 틀 제공
    • 결정한 것을 문서화
    • 다른 세부 사항은 숨기는 다양한 관점 제공
    • 특정 목표에 다양한 상세 수준 제공



    2. 데이터 모델링 필요성

    - 프로세스 중심의 설계는 업무 프로세스의 변화에 영향을 많이 받음, 무결성에도 취약함

    - 상대적으로 업무 변화에 영향을 적게 받는 데이터 중심의 설계에 관심


    파급 효과(Leverage)

    - 병행 테스트, 통합 테스트 등 후반 단계에 데이터 구조를 변경하게 되면, 많은 영향 분석이 필요함


    복잡한 정보 요구 사항의 간결한 표현(Conciseness)

    - 구축할 시스템의 정보 요구 사항과 한계를 가장 명확하고 간결하게 표현


    데이터 품질(Data Quality)

    - 데이터는 기업의 중요한 자산, 데이터 품질로 인한 소중한 비즈니스의 기회를 상실하는걸 방지


    가. 애플리케이션과 데이터 통합

    - 코딩 차원의 통합 시도는 많은 비용과 시간 소요, 데이터 기반의 통합은 효과적이면서 저비용


    나. 개발자들의 시스템 이해

    사용자 관점 데이터

    - 사용자가 원하는 것의 논리적 개념과 시스템의 구현 방식의 물리적 개념을 명확히 표현


    물리적 표현 또는 사용에 관계 없는 데이터 그 자체의 본질

    - 물리와 독립되어 조직이 필요로 하는 필수적, 기본적 데이터 정의 가능


    애플리케이션간 데이터 사용

    - 데이터 정의, 생명주기 정보, 데이터 사용 추적 방법 제공


    다. 데이터 모델링시 주의점

    • 중복(Duplication) : DB의 여러 장소에 같은 정보를 저장하는 잘못 방지 필요
    • 비유연성(Inflexibility) : 데이터 정의를 사용 프로세스와 분리하여, 프로세스의 변화에 데이터 변화 가능성 최소화
    • 비일관성(Inconsistency) : 데이터와 데이터간 상호연관 관계에 대한 명확한 정의 필요


    3. 데이터 모델링 단계


    - 개념 데이터 모델링, 논리 데이터 모델링, 물리 데이터 모델링 3단계로 나눔


    가. 개념 데이터 모델링(Conceptual Data Modeling)

    - 조직, 사용자의 데이터 요구사항을 찾고 분석하는데 시작

    - 개체-관계 다이어그램(ERD)은 조직과 사용자에게 어떠한 데이터가 중요한지를 나타나기 위해서 사용

    - 사용자와 개발자의 데이터 요구사항 발견 지원

    - 추상적이며, 상위 문제의 구조화를 쉽게 지원



    나. 논리 데이터 모델링(Logical Data Modeling)

    - 비즈니스 정보의 논리적인 구조와 규칙을 명확하게 표현하는 기법 또는 과정

    - 정규화는 논리 데이터 모델 상세화 과정의 대표적인 활동

    - 논리데이터 모델의 상세화는 식별자 확정, 정규화, M:M 관계 해서, 참조 무결성 규칙 정의 등



    다. 물리 데이터 모델링(Physical Data Modeling)

    - 논리 데이터 모델링이 데이터 저장소로서 어떻게 하드웨어에 표현될 것인지 표현

    - 테이블, 칼럼 등 물리적 저장 구조와 사용될 저장 장치, 자료를 추출하기 위해 사용될 접근 방법등 결정



    4. 모델링 기본원칙

    • 해결해야 할 문제점 선별, 결정
    • 문제점들을 구체화
    • 시스템 구축 및 실제 구현
    - 시스템 개발 실패의 주요요인은 설계자의 무능력이며 요구사항을 완전하고 정확하게 식별하는 것이 중요


    가. 커뮤니케이션 원칙(Communication Principle)

    - 그룹 구성원들과 의사소통을 용이하게 하기 위해서는 두가지의 논리 데이터모델 필요

    - 비즈니스 지향적인 최종 사용자 데이터 모델과 기술적인 상세 데이터 모델


    나. 모델의 상세화 원칙(Granularity Principle)

    - 데이터 상세화 정도 제시, 조직이 사용하는 정보 구조의 '최소 공통 분모' 제시

    - 좋은 설계는 분석 단계(논리 데이터 모델)를 위한 상세 수준이 물리 데이터 모델 수준만큼 상세화

    다. 논리적 표현 원칙(Logical Representation Principle)

    - 최적의 행동은 솔루션에 독립적인 방식으로 규칙을 따르고 문제를 문서화

    - 조급하게 솔루션을 구체화 시키지 말것



    5. 좋은 데이터 모델의 요소

    완전성(Completeness)

    - 업무에서 필요로 하는 모든 데이터는 데이터 모델에 정의 필요


    중복 배제(Non-Redundancy)

    - 저장 공간의 낭비, 중복 관리되어 일관성을 유지하기 위해서 추가적인 데이터 조작이 낭비되고 있는 비용


    비즈니스 룰(Business Rules)

    - 모델링 과정에서 규명되어진 수많은 업무 규칙을 모든 사용자에게 규칙 공유할 수 있게 제공


    데이터 재사용(Data Reusability)

    - 데이터의 통합성과 독립성을 충분히 고려하여 재사용성을 향상 시킴


    안정성 및 확장성(Stability and Flexibility)

    - 비즈니스 변화에 대해 최적으로 적응하도록 확장성과 안정성 필요


    간결성(Elegance)

    - 기업이 관리하고자 하는 데이터를 합리적으로 균형 있고 단순하게 분류


    의사소통(Communication)

    - 데이터 모델링으로 표현되는 업무 규칙은 관련 있는 자들이 설계자가 정의한 업무 규칙들을 동일한 의미로 받아 들이고, 활용할 수 있게 한다


    통합성(Integration)

    - 동일한 데이터는 전체에서 한번만 정의되고, 다른 영역에서 참조, 활용 필요


    데이터 모델링 - 데이터 모델링 이해 - 데이터 모델링 개요

    중요도 (下)


    참고자료



    댓글

    Designed by JB FACTORY