피드로 돌아가기
Why we calibrate the indicator Total, not the raw scores
Dev.toDev.to
Backend

데이터 무결성 보장을 위한 Indicator Total 기반 Calibration 설계

Why we calibrate the indicator Total, not the raw scores

HR Pulsar2026년 6월 2일4intermediate

Context

360도 리뷰 시스템에서 개별 응답 점수를 직접 수정하거나 최종 결과값만 덮어쓰는 기존 방식의 한계 분석. Raw 데이터 변조로 인한 Anonymity 훼손 및 Calibration 근거 추적 불가능한 Audit Trail 부재 문제 해결 필요.

Technical Solution

  • Raw Answer를 보존하고 Indicator 수준의 Total 값을 저장하는 CalibratedIndicatorTotal 테이블 도입
  • 특정 Indicator에 Pinning 된 Total 값과 나머지 Indicator의 Raw Mean을 혼합 계산하는 하이브리드 연산 로직 구현
  • Calibration 진행 중 데이터 일관성 유지를 위해 Assessment 상태를 calibrating으로 전환하고 409 Conflict 응답을 반환하는 Hard-lock 메커니즘 적용
  • Calibration 취소 시 모든 Total 값을 물리적으로 제거하여 Raw Average 상태로 즉시 복구하는 Clean Wipe 전략 채택
  • 응답자 익명성 보장을 위해 개별 응답 수정 경로를 완전히 제거하고 별도의 Calibration 레이어에서 값 결정

- 데이터 수정 시 원본을 유지하고 Override 레이어를 별도로 설계하여 Audit Trail 확보 - 입력 데이터가 변하는 상태에서 연산 결과의 불안정성을 방지하기 위해 상태 기반의 Hard-lock 고려 - 단순 덮어쓰기(Override)보다 원본과 수정값의 혼합 계산(Hybrid Calculation)을 통한 정밀도 제어

원문 읽기