1 장의 목표 #
- 왜 업무 요구사항(Business Requirements)이 추진력인지를 이해한다.
- 어떻게 요구사항이 모든 개발 단계를 추진하는지 논의한다.
- 특히 어떻게 요구사항이 데이터 설계에 영향을 주는지를 배운다.
- 구조에서 요구사항의 영향력을 검토한다.
- ETL과 메타데이터에 대한 특별한 고려사항들을 주의한다.
- 어떻게 요구사항이 정보 전달을 실행하는지를 조사한다.
DW 시스템은 사용자들의 BP(Business Processes)들을 수행하기 위해 필요한 것을 정확하게 반영해야 한다. 사용자들에게 적절한 GUI를 제공해야 한다. 요구사항 정의는 시스템 설계와 개발의 전체 과정을 안내한다. DW를 위한 요구사항 정의는 다른 시스템보다 매우 정밀한 요구사항 정의가 필요하다. 왜냐하면 사용자들이 DW 저장소에 접근할 것이고, 그들 자신의 정형화되지 않은 출력을 직접 생성해 낼 것이 때문이다. 그러므로 DW가 분석을 위한 최적의 포맷으로 적절한 정보의 질을 위한 요소들을 포함하고 있어야 한다. 사용자들이 원하는 방법으로 그들이 필요로 하는 모든 전략 정보를 찾을 수 있어야 한다. 그들은 쉽게 데이터 웨어하우스에 접근할 수 있어야 하고, 그들의 질의를 수행하고, 힘 들이지 않고 결과를 얻고, 문제없이 다양한 유형들의 데이터 분석을 수행할 수 있어야 한다.
DW의 추진력은 오직 사용자들의 업무 요구사항뿐이다. 생명주기동안 모든 작업은 요구사항에 의해 결정된다. 그러므로 요구사항 정의가 개발의 각각의 단계를 지원하기 위해 충분한 상세사항을 포함해야 한다는 것을 특별히 보장할 필요가 있다. 요구사항 정의는 DW 개발 단계에서 가장 중요한 단계임을 명심해야 한다.
2 데이터 설계 #
데이터 설계 단계에서 다음의 두 영역에 대한 데이터 모델이 필요하다.
- 스테이징 영역(ETL 영역)
- 데이터 웨어하우스 저장소
Enterprise Data Model은 소스 시스템들의 전사적인 관점에서의 데이터 모델이다. 소스 시스템의 전사적 관점이므로 요구사항 정의 문서가 소스 시스템 데이터의 구성요소들과의 관계들에 관현 충분한 정보를 포함하는 것을 보장해야 한다.
데이터 설계는 차원, 측정치, 상세수준을 결정하는 작업이다. 정보패키지의 각각의 컬럼이 업무 차원이 딘다. 주요 측정치의 사용처는 다음과 같다.
예를 들어, 자동차 매출에 대해서 실제 판매가격, 옵션, 등이 측정치가 된다. 상세수준은 얼마나 집계된 상태인가를 나타낸다. 결국은 요구사항에 따라서 데이터의 상세수준(Granurality)를 결정되지만, 미래를 생각하여 가장 낮은 상세수준을 유지하는 것이 좋다.
3.2 특별한 고려사항 #
다음의 사항들은 반드시 요구사항 정의에 포함되어야 한다. 이 사항들이 빠진다면 심각한 결과를 초래할 것이다.
- 데이터 추출/변환/적재
- 데이터 품질
- 메타데이터
데이터 추출/변환/적재
시간소비적, 사람집중인 활동이다. 데이터 추출 작업에서는
- 모든 내부 데이터의 명확한 확인 필요
- 소스의 컴퓨팅 플랫폼, 소스 파일에 대한 자세한 조사 필요
- 외부데이터의 경우 호환성 결정
- 데이터 추출 방법에 대한 표기
데이터 변환 작업에서는
- 매핑 규칙을 확인한다.
- 변환규칙에 대한 확인을 한다.
데이터 적재 작업에서는
초기 적재를 정의한다.
얼마나 자주 최신의 데이터를 유지할지 결정한다.
배치처리의 시간을 정의한다.
데이터 품질
나쁜 데이터는 나쁜 결정들로 이끈다. 데이터 품질이 불량하다고 의심된다면 신뢰는 무너지고 사용자로부터 외면을 받는다. 작은 데이터의 품질문제도 전략적 의사결정에 심각한 영향으로 귀착될 수 있다. 요구사항 정의의 초기 단계에서 바로잡고, 소스 시스템들에서 데이터 오염의 잠재적인 원인들을 확인해야 한다.
- 데이터 오염의 원인
- 시스템 전환과 이전
- 이종 시스템의 통합
- 소스 시스템들의 부적당한 데이터베이스 설계
- 데이터 노화
- 고객들로부터 불완전한 정보
- 입력 실수
- 시스템들의 국제화/지역화
- 데이터 관리 정책/절차들의 부족
- 데이터 품질 문제들의 유형
- 소스 시스템 필드들의 더미(Dummy)값들
- 소스 시스템 필드들의 데이터 부재
- 다목적용 필드들
- 숨겨진(Cryptic) 데이터
- 모순되는 데이터
- 이름과 주소 줄의 부적절한 사용
- 업무 규칙들의 위반
- 재사용된 기본키들
- 유일하지 않은 식별자들
메타데이터
메타데이터는 단지 데이터 사전이 아니다. 메타데이터는 데이터 사전이나 데이터 카탈로그보다 훨씬 많은 데이터를 가지고 있다. 메타데이터는 모든 구성요소들을 함께 묶는 아교와 같은 역할을 한다. 데이터가 다른 구성요소로 이동할 경우에도 메타데이터에 의해 관리된다. 메타데이터는 다음과 같이 3가지로 분류된다. 요구사항은 운영에서부터 최종사용자의 영역까지 방대한 영향력을 가진다.
- 운영 메타데이터
- ETL 메타데이터
- 최종사용자 메타데이터
5 정보 전달 전략 #
정보 전달 메카니즘은 업무 요구사항에 직접적으로 영향을 받는다. 그들이 원하는 정보는 DW로부터 검색하기를 원하는 어떤 정보를 말한다. 요구사항 정의 문서에는 이러한 정보가 기록되어야 한다. 정보 전달 구성요소는 사용자들의 비중에 따라서 강화되어야 한다. 만약 파워 유저의 경우 분석을 위한 소프트웨어(예: OLAP 도구들)로 강화되어야 하며, 정형 보고서나 사전에 구성된 질의들을 수행하기를 원한다면 질의와 보고서 구성요소가 강화되어야 한다. 직접적으로 영향받는 정보 전달 구성요소는 다음과 같다.
- 질의와 보고서
- 분석의 유형
- 드릴다운/롤업, 슬라이싱/다이싱 등의 방법
- 분석의 재사용과 분석유형의 복잡도에 대한 정보를 사용자로부터 얻는다
- 정보 분배
- 의사결정 지원 응용
- 성장과 확장