Day 7 Summary Codex AI Architect Technical Design

Day 7. 기술설계 (데이터 정규화) 교육 요약서

자연어로 작성된 회의록 내용을 데이터 구조(Mermaid ERD)로 변환하고, 프로젝트 표준 용어 사전을 구축하며, 설계 변경에 따른 영향 분석 및 의사결정을 보존하는 전체 협업 설계 파이프라인의 핵심 정보를 마스터합니다.

Part 1. 도입 배경
Part 2. 실습 목표
Part 3. 따라하기
Part 4. 작동 원리
Part 5. 교육 가이드
Part 6. 최종 Task

기술설계의 병목 현상

프로젝트 현장에서 기획, 디자인, 개발 간의 이해 오차는 데이터베이스의 누락과 정합성 붕괴로 직결됩니다. 설계 단계에서의 정합성 보장이 왜 중요한지 알아봅니다.

이해 오차

동일한 서비스 화면 기획안을 보고 기획자, 디자이너, 개발자가 연상하는 데이터 모델과 관계 설정이 어긋나 결국 누락이나 데이터 불일치(런타임 오류)로 이어집니다.

어휘 오차

'회원, 고객, User, Member' 등 동일한 주체에 대해 서로 다른 명칭을 사용하여 변수명을 네이밍할 때 불필요한 번역 및 커뮤니케이션 리워크 비용이 크게 발생합니다.

공유 오차

급격하게 추가되는 서비스 정책에 맞춰 DB 스키마만 고치고 API나 화면 기획서를 업데이트하지 않음으로써, 시스템 불일치가 눈덩이처럼 불어나 시스템 마비를 유발합니다.

ChatGPT vs Codex Client (Workspace 기반)

단일 대화 컨텍스트에 국한된 ChatGPT와 달리, 폴더 구조 전체와 다중 파일 간 종속 관계를 인지하는 Codex Client의 특성을 비교합니다.

비교 항목 ChatGPT (일반 대화형 AI) Codex Client (Workspace 기반 AI)
컨텍스트 인지 사용자가 붙여넣은 단일 파일/텍스트의 내용만 국소적으로 이해 폴더 내 DDL 스키마, 기획서, API 규격서의 다중 종속 관계를 동시에 지능적으로 인지
용어 표준화 일회성 영작 수준에 머물러 전체 프로젝트 전반의 변수명 일관성 유지 불가 프로젝트 표준 용어 사전을 기반으로 일관된 표준 네이밍 및 DB 컬럼명 자율 추천
영향 범위 분석 단편적인 스키마 오류나 가상의 테이블 수정안 제시 수준 스키마의 미세한 변경(예: 컬럼 추가)에 따른 API 규격과 화면 수정 부위 목록 역추론

오늘 만들 최종 결과물 요약

Day 7 세션 동안 학습자가 생성해 내는 최종 결과물 목록과 해당 산출물의 목적입니다.

Task 01. 데이터 구조화

자연어 기획서에서 엔티티 및 관계를 추출해 렌더링한 Mermaid ERD 스크립트 및 명세서 (출력: erd-schema.md)

Task 02. 용어 표준화

파편화된 한글/영문 기획 용어들을 영문 표준 컬럼 형식으로 정의한 프로젝트 표준 용어 사전 (출력: project-glossary.md)

Task 03. 변경 영향 공유

예약 승인제(WAIT_APPROVE) 추가에 따른 API 및 화면 수정 리스트 변경 영향도 분석서 (출력: change-impact-report.md)

Mission 01. 설계 기록

정규화 및 데이터 설계 결정 사유와 기각된 대안을 아카이빙한 Design Decision Log (DDL) (출력: design-decision-log.md)

Mission 02. 예외 시나리오 발굴

동시성 결제 오류, 참조 무결성 탈퇴 유실, 트랜잭션 롤백에 대한 DB 개선책을 담은 Edge Case 분석 보고서 (출력: edge-case-analysis.md)

Input / Output 데이터 파이프라인

실습 단계에서 활용되는 입력 값과 Codex Workspace 추론을 거쳐 생성되는 결과물의 매핑입니다.

01
데이터구조
02
용어표준화
03
변경영향
M1
의사결정
M2
예외시나리오
Task 01. 데이터 구조 이해 차이 해결
📥 Input (기획 회의록)
• day7_meeting_notes.md (회의록) - 비정형 줄글 형태의 이용자 흐름 시나리오 및 예약 프로세스 내용
Codex Workspace
💾 Output (ERD 명세)
Mermaid ERD 코드가 포함된 erd-schema.md - User, Expert, Reservation, Payment 엔티티의 Primary Key/Foreign Key 관계 시각화

STEP 1. Task 01 - 데이터 구조 이해 차이 해결

회의 시나리오 줄글을 입력하여 정밀 정규화 관계(1:N, 1:1)와 Mermaid 코드를 도출합니다.

🔍 Codex 요청 프롬프트 (데이터 구조화)

제공된 회의록 내용을 데이터 구조 관점에서 분석하여 핵심 엔티티와 관계를 도출하고, 데이터 구조 정의서 및 Mermaid ERD 코드를 작성해 주세요.
  • User, Expert, Reservation, Payment 4대 엔티티의 PK, FK 설정이 시나리오 논리에 어긋나지 않는지 점검합니다.
  • Mermaid 다이어그램 렌더링(`erDiagram`) 시 카디널리티 표기가 올바른지 확인합니다.

STEP 2. Task 02 - 용어 표준화

Figma 기획서 용어와 DB 개발 명세의 격차를 비교 분석해 도메인 용어 마스터 사전을 빌드합니다.

🔍 Codex 요청 프롬프트 (용어 사전 생성)

프로젝트 전반에 혼용되는 '회원/User/고객/Member', '상담사/Expert/선생님/Counselor' 등의 용어를 전수 분석하여, 프로젝트 표준 용어 사전을 Markdown 표 형태로 작성해 주세요.
  • 비즈니스 도메인에 부합하는 영문 표준 네이밍 및 컬럼 타입 정보가 올바르게 제시되었는지 확인합니다.

STEP 3. Task 03 - 변경 영향 공유

예약 절차에 '승인' 단계가 추가되는 릴리즈 계획 변경 시의 API 및 테이블 영향 범위를 파악합니다.

🔍 Codex 요청 프롬프트 (영향 범위 파악)

예약 확정 프로세스가 '승인 대기' 상태 추가 및 '전문가 승인 후 결제'로 변경됨에 따라 영향을 받는 API 스펙, DB 스키마, 화면 및 변경 공유 리포트를 작성해 주세요.
  • Reservations 테이블의 status 변경 사항과 신규 API 스펙, 기획 화면의 버튼 상태 전이 연쇄 영향이 검출되었는지 확인합니다.

STEP 4. Mission 01 - 설계 의사결정 기록 (Design Decision Log)

정규화 결정, 예약 이력의 물리 분리 결정 등에 관한 기각 사유와 합의를 로그화합니다.

🔍 Codex 요청 프롬프트 (의사결정 기록)

회의 내용에서 정규화 및 데이터베이스 구조 설계 결정을 추출하여, 결정 항목, 배경 사유, 대안 검토, 승인자, 향후 변경 가능성을 포함하는 Design Decision Log를 작성해 주세요.
  • 이력 테이블 분리(DEC-003) 결정 배경과 대안(테이블 단일화 시 성능 저하)이 명확히 로깅되는지 점검합니다.

STEP 5. Mission 02 - 예외 시나리오 발굴 (Edge Case)

참조 무결성 위배(탈퇴) 및 트랜잭션 붕괴를 예방하기 위한 시스템 취약점 오디팅을 진행합니다.

🔍 Codex 요청 프롬프트 (Edge Case 도출)

현재 정의된 User, Expert, Reservation, Payment 테이블 구조에서 발생할 수 있는 데이터 정합성 위배 Edge Case 예외 시나리오를 도출하고 개선 방안을 제시해 주세요.
  • Soft Delete(논리 삭제) 도입을 통한 참조 정합성 유지 방안 및 분산 트랜잭션 롤백 대응을 확인합니다.

작동 원리 및 핵심 메커니즘

스키마 맥락 인지 추론

단순 텍스트 매칭을 넘어 엔티티의 참조 무결성(FK) 관계 및 트랜잭션 수명 주기를 파악하여, 자연어 기획안을 DDL DDL(Data Definition Language) 쿼리 및 상태 기계 규칙으로 자동 역추론해냅니다.

메타 용어 클러스터링

서로 다르게 표기된 용어(고객명 vs Nickname)를 의미론적으로 의미 군집화(Clustering)하여 전사 용어 마스터 사전을 도출하고, 이를 바탕으로 데이터 사전의 정합성을 동기화합니다.

다섯 가지 Task/Mission의 기술설계 시너지

각 단계별로 도출된 데이터와 분석 정보가 기술설계 루프를 돌며 어떻게 품질을 극대화하는지 확인합니다.

[데이터 모델링 합의] (Task 01. 구조화)
[도메인 용어 통일] (Task 02. 표준 사전)
[설계 변경 영향 추적] (Task 03. 변경 통제)
[아키텍처 의사결정 로깅] (Mission 01. Why 보존)
[정합성 및 Edge Case 예외 방지] (Mission 02. 안전 설계)

이 5단계 협업 루프는 기획 설계 단계에서부터 예외 상황을 원천 봉쇄하여 실제 코딩 작업에 착수하는 개발자들의 생산성을 획득하고 휴먼 에러를 제거하는 데 절대적인 이점을 제공합니다.

💡 교육 설계 스펙

  • 난이도: ★★★★☆ (상급 - 데이터베이스 설계 정규화 및 분산 트랜잭션 개념 포함)
  • 예상 실습 시간: 1시간 30분 ~ 2시간 (종합 설계 실습)
  • 실무 활용도: ★★★★★

학습자 질문/토의 주제

교육 과정 중 토의하거나 면접 질문으로 활용하기 좋은 주제 리스트입니다.

Q1. 회원 탈퇴 전략

"회원 탈퇴 처리 시 Hard Delete대신 Soft Delete(논리 삭제)를 선택했을 때의 성능적 단점과 이를 보완할 수 있는 인덱스/DB 파티셔닝 전략은 무엇일까요?"

Q2. 용어 부채 (Terminology Debt)

"용어 표준화 사전을 작성하지 않고 프로젝트를 중반까지 진행했을 때, 개발팀 내부에서 발생하는 '용어 부채' 비용은 실제 일정에 어떤 여파를 주나요?"

기획설계 단계 최종 교육 Task

Day 7에 다루는 전체 실습 과제 및 미션의 구성도입니다.

Task 주제 AI 활용 방안
Task 01 데이터 구조 이해 차이 해결 회의 내용을 데이터 구조로 변환하고 엔티티 및 관계를 정리
Task 02 용어 표준화 프로젝트 전반의 용어를 분석하여 표준 용어 사전 생성
Task 03 변경 영향 공유 설계 변경사항의 영향도를 분석하고 관련 문서 및 기능을 추적
Mission 01 설계 의사결정 기록 Decision Log를 작성하여 설계 근거와 변경 이력 관리
Mission 02 예외 시나리오 발굴 누락된 Edge Case를 분석하고 위험 요소 및 개선 방안 도출
← Day 7 강의실 입장 전체 로드맵 보기