좋은 데이터 모델을 만드는 일이란?
업무 환경에서의 요구사항이 시스템적으로 잘 구현되어 있는 데이터 모델을 의미한다. 과거의 경우 객관적으로 평가할 수 있는 기준이 없어 품질을 평가하는 것이 어려웠다. 동일한 데이터를 한 번만 정의하고 여러 영역에서 참조, 활용하는 것이 좋다.
데이터 모델을 평가하는 요소들
완전성
업무에 필요한 모든 데이터가 정의되어야 한다. 데이터 모델 검증에 있어 가장 먼저 확인해야 하는 요소다. 완전성 기준을 충족하지 못하면 나머지 평가 기준은 의미가 없다. 그만큼 데이터 모델을 만들 때 가장 중요한 요소로 반드시 확인해야 한다.
중복 배제
데이터베이스 내에 동일한 데이터는 단 한 번만 기록해 중복으로 인한 관리 비용을 최소화한다. 성능 향상 등의 필요에 따라 의도적으로 데이터를 중복시키는 것은 허용되지만 예외적인 상황이다.
비즈니스 규칙
비즈니스 규칙을 데이터 모델에 표현하고 모든 사용자가 해당 1 규칙을 공유하도록 해야 한다. 해당 데이터 모델에 대해 사용자와 이해관계자들은 해당 규칙에 대해 동일한 판단을 하고 데이터를 조작할 수 있다. 비즈니스 규칙은 애플리케이션 개발 단계에서 구현하는 것이 일반적이지만, 구현 가능하다면 데이터 모델 단계에서 우선 진행하도록 한다.
데이터 재사용
데이터의 통합성과 독립성을 충분히 고려하여 데이터의 재사용성을 향상해야 한다. 데이터의 설계 단계에서 데이터 통합 설계를 통해 데이터 재사용성을 향상시킬 수 있어야 한다. 애플리케이션에 대해 독립적으로 설계하여 데이터 재사용성을 향상시키도록 한다.
안정성 및 확장성
데이터 모델은 안정성뿐만 아니라, 추후 데이터 설계를 쉽게 변경하도록 확장성을 고려해야 한다. Null 값을 채워 넣고 비워두더라도 향후 확장될 가능성을 열어두고 설계해야 한다.
간결성 및 통합성
간결한 모델의 기본적인 전제는 통합 모델이다. 정규화 등을 통해 테이블을 분리하는 것이 맞지만, 사용이나 관리 측면에서 필요하다면 합리적인 방법으로 데이터를 통합해 활용할 수 있어야 한다. 데이터를 통합할 때는 이후 업무 변화에 데이터 모델이 받는 영향을 최소화할 수 있도록 고려할 것.
의사소통
데이터 분석 과정에서 도출되는 비즈니스 규칙을 객체, 서브타입, 속성, 관계 등의 형태로 최대한 자세하게 표현하여 의사소통 도구의 역할을 할 수 있도록 해야 한다.
데이터 모델 품질 검증 기준을 만드는 방법
먼저 정확성을 고려한다. 데이터 모델의 요구사항이 표기법에 따라 정확하게 반영되었는지 판단한다. 대상 업무 영역의 업무 개념과 내용이 정확하게 반영되었는지 확인한다.
두 번째로 완전성을 고려한다. 데이터 모델의 요구사항 및 업무 영역 반영에 있어 누락이 없는지 확인한다. 논리 데이터 모델 구성요소들이 업무 영역을 설계하는 데 누락 없이 사용되었는지 확인한다.
세 번째로 준거성을 확인한다. 말이 어려운데, 완전성과 유사하게 데이터 모델 제반 준수요건들이 누락 없이 정확하게 준수되었는지 확인한다. 준수요건이란 데이터 표준, 표준화 규칙, 법적 요건 등을 말한다.
네 번째로 최신성을 고려한다. 현행 시스템의 최신 상태를 적절한 시기에 항상 지체 없이 반영되는지 판단하도록 한다.
다섯째로 일관성을 고려한다. 공통으로 사용되는 데이터 요소가 비즈니스 영역에서 한 번만 정의되어 모델 표현상의 일관성을 유지하고 있는지를 판단한다.
여섯째로 활용성을 고려한다. 모델의 설명이 이해 관계자들에게 충분히 전달되어 업무 변화 시에 설계 변경이 최소화될 수 있도록 설계되어 있는지 확인한다. 오류가 적고 업무 변화에 유연하게 대응하여 구조 변경이 최소화될 수 있도록 설계되었는지 확인한다.
'Programming > 정보처리기사' 카테고리의 다른 글
정보처리기사 C 포인터 개념 이해하기 (0) | 2022.02.06 |
---|---|
정보처리기사 소프트웨어 개발 절차 이해하기 알고리즘이란? (0) | 2022.02.04 |
정보처리기사 SQL이란 DDL DML DCL 트랜젝션이란 (0) | 2022.02.04 |
정보처리기사 데이터베이스 E-R 다이어그램 (0) | 2022.02.03 |
정보처리기사 테스트 기법 (0) | 2022.02.02 |
정보처리기사 선형 자료구조 종류 스택, 큐, 데크, 선형리스트, 링크드리스트 stack, queue, deque, linear list, linked list (0) | 2022.01.31 |
댓글