피드로 돌아가기
Stop Treating Google Forms Responses as Rows
Dev.toDev.to
Database

단순 Row 기반 수집에서 상태 기반 Workflow Record로의 스키마 전환

Stop Treating Google Forms Responses as Rows

Lovanaut2026년 5월 19일8beginner

Context

Google Forms와 Sheets를 활용한 데이터 수집 구조에서 단순 Row 기반 저장 방식의 한계 발생. 업무 진행 상태가 Slack 스레드나 행 색상 등 비정형 데이터에 파편화되어 Source of Truth가 상실되는 문제 분석.

Technical Solution

  • 데이터 수집 Row를 Workflow Record로 정의하여 상태 관리 필드를 명시적으로 추가한 스키마 설계
  • ResponseStatus를 4가지 고정 값(new, in_progress, done, excluded)으로 제한하여 상태 모호성 제거
  • 소유권(owner)과 진행 상태(status)를 분리하여 필터링 효율성 및 세맨틱 무결성 확보
  • NotificationState를 별도 필드로 분리하여 알림 발송 여부와 업무 진행 상태 간의 의존성 제거
  • 행 색상을 데이터 기반의 Conditional Formatting으로 구현하여 시각적 요소의 데이터 모델화 달성
  • Exclusion Reason 필드 도입을 통한 데이터 분석 대상 제외 사유의 명시적 기록 구조 구축

- 상태 값은 Free Text가 아닌 Fixed Enum 형태로 정의했는가 - Owner 필드와 Status 필드가 논리적으로 분리되어 있는가 - 알림 발송 상태(Notification State)가 업무 상태와 혼재되지 않았는가 - 시각적 표시(색상 등)가 실제 데이터 값에 의해 결정되는 구조인가 - 분석 제외 데이터에 대한 명시적인 사유(Exclusion Reason)가 기록되는가

원문 읽기