2025년 11월 23일

DAP 시험 학습 범위 총정리 + 심화 문제 10선

DAP 시험 학습 범위 총정리 + 심화 문제 10선

by 전우석

DAP(Data Architecture Professional, 데이터아키텍처 전문가)는 전사 관점의 데이터 아키텍처 설계·표준·모델링·DB 설계/활용·품질 관리 역량을 검정하는 자격입니다.
특히 “모델링 결과물을 실제 운영 가능한 설계로 만들 수 있는가?”를 강하게 묻는 시험이라, 필기(개념/이론)실기(논리 모델 + 표준화 정의서 작성)가 한 세트로 움직입니다.

DAP 시험 학습 범위를 보여주는 다이어그램으로, 데이터 아키텍처와 관련된 다양한 요소들(기업 아키텍처, 요구 사항, 데이터 표준화, 데이터 품질, 데이터 모델링, 데이터베이스 설계)과 이를 통해 DAP 시험 시트를 연결하여 60/40 배점 구조를 설명하고 있습니다.

1. DAP 시험 개요 (모델러가 반드시 알아야 할 구조)

1.1 시험 구성(문항/배점/시간) — 공식 기준

공식 안내 기준 DAP 시험은 다음 구조로 운영됩니다.

  • 총 76문항: 객관식 75문항 + 실기 1문항
  • 총점 100점: 필기 60점 + 실기 40점
  • 시험 시간: 240분(4시간)

과목별 문항 수·배점은 아래와 같습니다.

과목필기 문항필기 배점실기 문항실기 배점
전사아키텍처 이해108140
데이터 요건 분석108
데이터 표준화108
데이터 모델링2520
데이터베이스 설계와 이용108
데이터 품질 관리 이해108
합계7560140

전략 포인트

  • 필기에서 데이터 모델링(25문항/20점) 비중이 가장 큽니다.
  • 실기 자체가 “논리 모델 + 표준화 정의서”이므로, 모델링·표준화·DB 설계가 점수의 대부분을 결정합니다.
Infographic illustrating the structure of the DAP exam, including 75 multiple-choice questions worth 60 points and 1 practical modeling task worth 40 points, along with a total time of 240 minutes.

1.2 응시자격·합격기준 — 반드시 체크

응시자격은 “학력/경력 기준” 또는 “자격 보유 기준” 중 하나를 충족해야 하며, 충족 여부는 시험일 기준으로 판단됩니다.

합격기준(과락 포함)은 다음과 같이 안내되어 있습니다.

  • 총점 100점 기준 75점 이상
  • 과락: 필기 과목별 40% 미만, 실기 40% 미만
  • 최종합격은 합격 후 응시자격 증빙 심의 통과가 필요

또한 자격 유효기간 및 보수교육 관련 안내(유효기간/영구 전환 조건 등)도 공식 페이지에서 별도로 고지됩니다.


1.3 실기(모델링 + 표준화 정의서) 출제 방식 — 점수의 절반이 여기서 갈린다

실기는 크게 두 덩어리입니다.

  • 논리 데이터 모델 작성
  • 표준화 정의서 작성(엔터티 정의 + 데이터 표준 정의)

논리 모델은 2가지 유형 중 하나로 출제될 수 있으며, 순서는 고정이 아니고 향후 유형이 추가될 수 있다는 식으로 안내됩니다.

  • 유형 1: 지문 분석 → 엔터티/관계/속성/서브타입 등을 설계
  • 유형 2: 현행 논리모델 + 개선 요구사항 → 목표 논리모델로 개선

실기에서 자주 놓치는 감점 포인트(공식 유의사항 기반 요약):

  • 표기법은 Barker 또는 IE 중 하나로 통일(혼용 시 불리)
  • 관계명 표기 누락 주의
  • 서브타입(슈퍼/서브) 정의의 누락/오류 주의
  • 작성 모델은 최소 3차 정규화(3NF)까지 적용 여부를 점검
Flowchart illustrating the steps in a practical modeling workflow for data architecture, including reading a scenario, extracting entities, defining relationships, resolving M:N relationships with an associative entity, deciding identifying vs. non-identifying keys, and writing standardization definitions.

2. 과목별 학습 범위 “시험 관점” 핵심 정리

아래는 공식 과목 체계(주요항목/세부항목) 틀을 유지하되, 시험에서 점수로 연결되는 포인트 중심으로 재정리한 버전입니다.

2.1 전사아키텍처 이해 (EA)

목표: “EA에서 데이터 아키텍처가 어디에 놓이는지”를 개념적으로 정리하는 파트

  • EA 정의/구성요소/프레임워크/참조모델/프로세스 개념
  • EA 구축(방향수립, 정보구성 정의, 정보구축)
  • EA 관리/활용(관리체계/관리시스템/활용)

시험에서 먹히는 정리 방식

  • “프레임워크 = 전사 뷰/계층을 정리하는 기준틀”
  • “데이터 아키텍처 = EA 구성 요소 중 정보/데이터 영역의 표준·구조를 담당”

2.2 데이터 요건 분석

목표: “업무 요구사항 → 엔터티/속성”으로 추상화하는 능력

  • 요구사항 수집(인터뷰/문서/설문 등) → 정리/통합 → 분석/상충조정 → 검증
  • 요구사항을 ERD 구성요소(엔터티/관계/속성/규칙)로 변환하는 흐름

시험에서 먹히는 정리 방식

  • 요구사항을 “명사(엔터티 후보) / 동사(관계 후보) / 제약(무결성·업무규칙)”로 분해
  • 충돌 요구는 “정의/범위/시점/우선순위”로 조정

2.3 데이터 표준화 (실기 직결)

목표: 표준 단어/용어/도메인/코드 체계를 “정의서” 형태로 작성할 수 있어야 함

  • 표준화 필요성, 표준 관리(등록/변경/폐기), 준수 점검
  • 표준화 원칙(네이밍, 약어, 단·복수, 접두/접미 등)
  • 표준 도메인(타입/길이/형식/허용값) 정리
  • 코드(코드성 데이터) 분리 및 관리 방식

시험에서 자주 걸리는 함정

  • “용어”와 “속성명(컬럼명)”을 혼동
  • 도메인 정의에서 타입/길이/허용값이 빠짐
  • 코드값을 속성에 하드코딩하고 코드 엔터티 분리를 누락

2.4 데이터 모델링 (필기 최대 비중 + 실기 핵심)

목표: 개념→논리→물리 전환 논리와, 실기에서 요구하는 논리 모델 품질을 확보

  • 개념 모델: 주제영역/핵심 엔터티/고수준 관계
  • 논리 모델: 식별자/비식별자 관계, M:N 해소, 서브타입, 이력/상태, 정규화
  • 물리 모델: 타입 매핑, 반정규화, 성능/운영 고려

실기에서 사실상 필수로 등장하는 능력

  • M:N 해소(관계 엔터티)
  • 코드성 데이터 분리
  • 상태/이력 관리(유효기간/상태코드/발생·변경·종료일 등)
  • 서브타입(배타/포괄) 표현
  • 3NF 점검(특히 부분/이행 종속 제거)

2.5 데이터베이스 설계와 이용

목표: “모델을 DB로 올렸을 때” 무결성/성능/운영이 성립하는지 판단

  • 키/제약조건/참조무결성/체크 제약 개념
  • 인덱스 기본 원리(선택도·카디널리티·복합 인덱스 키 순서)
  • 파티셔닝 개념/목적(대용량 관리 관점)
  • 트랜잭션/백업·복구/성능 개선 절차 개념

2.6 데이터 품질 관리 이해

목표: 품질 차원과 품질 관리 프로세스를 “조직/절차 관점”에서 이해

  • 품질 관리 프레임워크, 데이터 유형(표준/모델/관리/업무 데이터 등)
  • 품질 지표(정확성/완전성/일관성/적시성/유효성 등)
  • 품질 개선 활동(측정→원인→개선→재측정)과 역할 분리

3. “모델러 관점” 최적 학습 전략 (현실적으로 점수 나는 방식)

3.1 우선순위 3축

(1) 데이터 모델링 → (2) 데이터 표준화 → (3) DB 설계/이용
이 3축이 필기 고득점과 실기 완성도를 동시에 끌어올립니다.

  • 용어·프로세스·정의 중심으로 “정리형 학습”을 하고
  • 문제풀이에서 자주 나오는 키워드(정의/단계/목적)를 빠르게 맞추는 방향이 효율적입니다.
An infographic depicting a study roadmap for the DAP (Data Architecture Professional) exam, detailing a 4-6 week plan that includes concepts, practice questions, mock practicals, and reviews, with priority tracks for data modeling, data standardization, and database design.

3.2 실기 답안 품질을 올리는 “작업 순서” (추천 Runbook)

실기는 시간(240분) 안에 완성도가 갈립니다.
아래 순서를 습관처럼 고정해두면 감점 리스크가 크게 줄어듭니다.

1) 지문 구조 분해: 주제/예외/제약조건 표시
2) 명사 추출 → 엔터티 후보
3) 동사/업무행위 추출 → 관계 후보 + 관계명 후보
4) M:N 발견 즉시 관계 엔터티 후보 생성(상태/기간 속성 흡수)
5) 키 설계: 식별자/비식별자 판단(존재 종속/업무 규칙 기반)
6) 정규화 점검(최소 3NF)
7) 코드성 데이터/도메인/용어 표준 정리
8) 표준화 정의서 작성(엔터티 정의 + 단어/용어/도메인/코드 정의)

An illustration showing a logical ERD page with entities, keys, and relationships, alongside a stack of standardization definition sheets detailing entity definitions, term dictionaries, domain specifications, and code tables.

4. 실기용 “정의서 템플릿” (연습할 때 그대로 쓰기)

4.1 엔터티 정의(예시 템플릿)

  • 엔터티명(한글/영문)
  • 정의(데이터 집합의 목적/성격)
  • 주요 속성(핵심 식별자/상태/기간/참조키)
  • 특이사항(발생/변경/종료 기준, 중복/배타 규칙, 서브타입 조건 등)

4.2 데이터 표준 정의(최소 구성)

  • 표준 단어(Word): 의미 단위(예: 고객, 주문, 상태, 일자)
  • 표준 용어(Term): 단어 조합으로 개념을 정의(예: 주문상태, 고객등급)
  • 표준 도메인(Domain): 타입/길이/형식/허용값(예: YN_FLAG CHAR(1), ‘Y’/’N’)
  • 표준 코드(Code): 값 목록(예: 주문상태코드 = {REQ, ING, DONE, CANC})

실기에서는 “정의서의 완벽한 형식”보다
일관된 규칙(네이밍/도메인/코드 분리) + 논리 모델과의 정합성이 점수로 연결됩니다.


5. DAP 심화 연습 문제 10선 (정답·해설 포함)

아래는 출제 경향과 난이도를 반영한 자가제작 문제입니다.
기출을 그대로 복제하지 않고, “개념·함정 포인트”를 학습용으로 재구성했습니다.


문제 1) EA 프레임워크의 목적

다음 중 전사아키텍처(EA) 프레임워크에 대한 설명으로 가장 옳지 않은 것은?

  1. 조직의 업무·데이터·애플리케이션·기술 구조를 체계적으로 표현하는 기준틀이다.
  2. 참조 모델과 아키텍처 프로세스를 포함할 수 있다.
  3. 데이터베이스 성능 튜닝 기법을 상세히 정의하는 것이 주 목적이다.
  4. 전사 관점에서 중복 투자를 줄이고 표준화를 촉진하는 데 활용된다.

정답: 3

해설:
EA 프레임워크는 전사 구조(뷰/계층/원칙)를 정리하는 기준틀이지, DB 튜닝 기법처럼 구현 레벨의 상세 기법을 정의하는 목적이 아닙니다.


문제 2) 정보 요구사항 분석 단계의 산출물

다음 중 정보 요구사항 분석 단계에서 수행할 작업으로 가장 거리가 먼 것은?

  1. 요구사항 간 상충되는 내용을 조정한다.
  2. 분석 대상을 정의하고 우선순위를 부여한다.
  3. 요구사항을 카테고리별로 정리한다.
  4. 인덱스를 설계하여 질의 성능을 검증한다.

정답: 4

해설:
인덱스 설계/성능 검증은 “DB 설계·이용/성능 개선” 단계의 작업입니다. 요구사항 분석은 “무엇을 모델링할지” 확정하는 upstream 단계입니다.


문제 3) 표준 도메인(Domain)의 정의

다음 중 데이터 표준화 관점에서 표준 도메인에 대한 설명으로 가장 적절한 것은?

  1. 특정 테이블 전용 속성의 타입을 임의로 정한 것
  2. 코드값 목록만을 의미하며 길이/타입은 포함하지 않음
  3. 여러 속성이 공통으로 사용하는 데이터 타입·길이·형식·허용값 등을 정의한 추상화 단위
  4. 인덱스를 구성할 때 사용하는 키 컬럼의 집합

정답: 3

해설:
도메인은 “속성의 물리적 표현 규격(타입/길이/포맷/허용값)”을 표준화한 단위입니다. 코드값(값 목록)과는 별개로 관리하는 것이 일반적입니다.


문제 4) 정규화 단계(부분 함수 종속 제거)

다음 설명에 해당하는 정규화 단계는?

부분 함수 종속(Partial Dependency)을 제거하여
기본키 전체에 완전 함수 종속되도록 하는 단계

  1. 1NF
  2. 2NF
  3. 3NF
  4. BCNF

정답: 2

해설:
부분 함수 종속 제거는 2NF, 이행 함수 종속 제거는 3NF입니다.


문제 5) 식별자 관계(Identifying Relationship)

다음 중 식별자 관계에 대한 설명으로 옳지 않은 것은?

  1. 자식 엔터티의 기본키가 부모 엔터티의 기본키를 포함한다.
  2. 부모가 제거되면 자식도 존재 의미가 약해지는 “강한 의존”을 표현할 수 있다.
  3. ERD에서 강한 관계(실선)로 표현하는 경우가 많다.
  4. 비식별자 관계보다 조인 성능이 항상 더 좋다.

정답: 4

해설:
식별자/비식별자 관계는 “업무 규칙과 식별 구조”의 차이입니다. 성능은 데이터량/인덱스/조인 방식에 좌우되며, 관계 유형이 성능을 보장하지 않습니다.


문제 6) 이력 관리(Type 2)

다음 중 Type 2 이력 관리 방식 설명으로 가장 알맞은 것은?

  1. 이력을 관리하지 않고 최신값만 유지
  2. 변경 전 값은 로그 테이블에만 저장하고 본 테이블은 최신값만 유지
  3. 변경 시점마다 레코드를 추가하고 유효기간(시작/종료일)로 관리
  4. 변경 전/후 값을 같은 레코드의 다른 컬럼에 함께 저장

정답: 3

해설:
Type 2는 행을 추가해 이력을 보존하고, 유효기간 컬럼으로 “어떤 시점의 값이 유효한지”를 관리합니다.


문제 7) 인덱스 설계 원칙(선택도)

다음 중 인덱스 설계 원칙에 대한 설명으로 가장 적절하지 않은 것은?

  1. 조회 조건에 자주 쓰는 컬럼은 인덱스 후보가 될 수 있다.
  2. 카디널리티가 매우 낮은 컬럼은 단독 인덱스 효율이 떨어질 수 있다.
  3. 모든 컬럼에 인덱스를 만들면 조회 성능이 항상 향상된다.
  4. 조인에 사용되는 FK 컬럼은 인덱스 생성 여부를 고려해야 한다.

정답: 3

해설:
인덱스는 조회에 도움되지만, 과다하면 DML 성능 저하/유지 비용 증가로 전체 성능이 악화됩니다.


문제 8) 데이터 품질 차원(Quality Dimension)

다음 중 데이터 품질 차원으로 보기 어려운 것은?

  1. 정확성(Accuracy)
  2. 완전성(Completeness)
  3. 일관성(Consistency)
  4. 병렬성(Parallelism)

정답: 4

해설:
병렬성은 시스템 처리 구조/성능 영역에 가까우며, 품질 차원은 정확성/완전성/일관성/적시성/유효성 등으로 접근하는 것이 일반적입니다.


문제 9) 코드성 데이터 표준화 대상

다음 설명에 가장 적절한 표준화 대상은?

  • 값의 종류가 제한적이고 자주 추가되지 않는다.
  • 업무에서 특정 의미를 갖는 값들로 구성된다.
  • 참조 무결성과 일관성을 위해 별도 테이블로 관리하는 것이 바람직하다.
  1. 코드성 데이터(Code)
  2. 로그 데이터
  3. 대용량 이력 데이터
  4. 파티션 키 컬럼

정답: 1

해설:
상태/등급/지역 등 값 집합이 고정적이고 의미가 있는 데이터는 코드 엔터티로 분리해 표준화·참조무결성을 확보하는 것이 정석입니다.


문제 10) 실기형 시나리오(텍스트로 설계)

아래 요구사항의 논리 데이터 모델을 작성한다고 할 때, 핵심 엔터티 3개주요 관계 2개를 텍스트로 정의하라.

요구사항:

  • 회원은 여러 강의를 수강할 수 있다.
  • 강의는 여러 회원이 수강할 수 있다.
  • 강의는 한 명의 강사에 의해 개설된다.
  • 회원은 수강 중인 강의에 대해 상태(신청/진행/완료)를 가진다.
  • 강의마다 개설일자, 마감일자를 관리한다.

모범 답안(예시)

정답은 하나가 아니며, 논리적으로 타당한 형태가 복수 가능

1) 엔터티(3개)

  • MEMBER(회원)
  • 속성 예: MEMBER_ID(PK), NAME, EMAIL, JOIN_DT
  • LECTURE(강의)
  • 속성 예: LECTURE_ID(PK), TITLE, OPEN_DT, CLOSE_DT, INSTRUCTOR_ID(FK)
  • ENROLLMENT(수강내역)
  • 속성 예: ENROLL_ID(PK) 또는 (MEMBER_ID+LECTURE_ID) 복합키,
    MEMBER_ID(FK), LECTURE_ID(FK), ENROLL_STATUS_CD, APPLY_DT, COMPLETE_DT

2) 관계(2개)

  • MEMBER 1 : N ENROLLMENT
  • LECTURE 1 : N ENROLLMENT
    → 결과적으로 MEMBER와 LECTURE의 M:N을 ENROLLMENT로 해소

해설 포인트

  • “수강 상태/기간”은 회원-강의 조합마다 달라지므로 관계 엔터티(수강내역)로 흡수하는 것이 자연스럽습니다.
  • 실기에서는 ENROLLMENT에 상태코드를 둘 경우 상태코드 엔터티 분리까지 이어지는지(시간이 허용되면)가 자주 점수 포인트가 됩니다.

6. 마무리 체크리스트 (시험장에 들고 가는 사고방식)

  • 실기: 표기법 통일(Barker/IE), 관계명 누락 방지, 3NF 점검
  • “상태/기간/이력”은 관계 엔터티로 빠지기 쉽다 → 속성 위치를 의식적으로 점검
  • 표준화 정의서는 “예쁘게”가 아니라 일관된 규칙 + 논리 모델과 정합성이 핵심
  • 필기: 모델링/표준화/DB 설계 3축으로 점수 확보 후, 나머지는 용어/프로세스 암기 최적화