핵심 인사이트 (3줄 요약)
- 본질: 데이터 역공학은 문서 없는 기존 DB의 물리 스키마(테이블·컬럼·인덱스·FK)를 분석하여 ERD·개념 모델·데이터 사전을 복원하는 프로세스다.
- 가치: 레거시 시스템은 설계 문서가 분실·미작성된 경우가 많아, 역공학 없이는 시스템 현행화·마이그레이션·리팩터링이 불가능하다.
- 판단 포인트: CASE 도구(ERwin·DA#)의 자동 역공학 기능으로 물리 스키마를 읽어 ERD를 생성하고, 이후 수동으로 비즈니스 의미(엔터티명·관계 설명)를 부여하는 2단계 프로세스가 필요하다.
Ⅰ. 개요 및 필요성
┌───────────────────────────────────────────────────────┐
│ 정공학 vs 역공학 │
├───────────────────────────────────────────────────────┤
│ [정공학 (Forward Engineering)] │
│ 요구사항 → ERD → 릴레이션 → 물리 DB │
│ │
│ [역공학 (Reverse Engineering)] │
│ 물리 DB → 릴레이션 → ERD → 비즈니스 의미 복원 │
│ │
│ 활용: 레거시 현행화, 마이그레이션, 문서화 │
└───────────────────────────────────────────────────────┘
- 📢 섹션 요약 비유: 정공학은 설계도를 그려서 건물을 짓는 것이고, 역공학은 이미 지어진 건물을 조사해서 설계도를 복원하는 것이다.
Ⅱ. 아키텍처 및 핵심 원리
역공학 프로세스
| 단계 | 활동 | 산출물 |
| 1. 물리 추출 | DDL·메타데이터 수집 | 테이블·컬럼·FK 목록 |
| 2. 논리 복원 | FK 관계 → ERD 생성 | 자동 ERD |
| 3. 의미 부여 | 비즈니스 규칙·엔터티명 | 개념 ERD |
| 4. 문서화 | 데이터 사전 작성 | 데이터 표준 문서 |
- 📢 섹션 요약 비유: 역공학은 완성된 요리를 맛보고 레시피를 추정하는 것이다. 재료(테이블)는 쉽게 알지만, 요리사의 의도(비즈니스 규칙)는 인터뷰가 필요하다.
Ⅲ. 비교 및 연결
| 비교 | 정공학 | 역공학 |
| 방향 | 개념→물리 | 물리→개념 |
| 시점 | 신규 개발 | 레거시 현행화 |
| 문서 | 생성 | 복원 |
Ⅳ. 실무 적용 및 기술사 판단
역공학 도구
- ERwin: DB 연결 → 자동 ERD 생성.
- DA# (다샵): 국내 데이터 모델링 표준 도구.
- DBeaver: 무료 ERD 자동 생성 기능.
Ⅴ. 기대효과 및 결론
데이터 역공학은 레거시 시스템의 현행화·클라우드 마이그레이션·데이터 거버넌스의 필수 사전 작업이며, 자동 추출 + 수동 의미 부여의 2단계 접근이 가장 효과적이다.
📌 관련 개념 맵
| 개념 | 연결 포인트 |
| 정공학 | 역공학의 반대 방향 (개념→물리) |
| ERD | 역공학의 핵심 산출물 |
| 데이터 사전 | 역공학으로 복원하는 메타데이터 문서 |
| CASE 도구 | ERwin, DA# 등 자동 역공학 도구 |
| 레거시 현행화 | 역공학의 주요 목적 |
📈 관련 키워드 및 발전 흐름도
[수동 DB 문서화 (종이·엑셀, 1990s)]
│
▼
[CASE 도구 역공학 (ERwin, 2000s) — DDL→ERD 자동 변환]
│
▼
[메타데이터 관리 (2010s) — 데이터 카탈로그 연동]
│
▼
[자동 문서화 (dbt docs, 2020s)]
│
▼
[현재: AI 기반 역공학 — 테이블 관계·비즈니스 의미 자동 추론]
👶 어린이를 위한 3줄 비유 설명
- 정공학은 레시피를 보고 요리를 만드는 거예요.
- 역공학은 완성된 요리를 맛보고 레시피를 알아내는 거예요.
- 설계도가 없는 옛날 건물(레거시)을 수리하려면 먼저 **설계도를 복원(역공학)**해야 한답니다!