01. 생산계획 & 작업지시 PLANNING
계획(PLN) 단위로 목표 수량을 등록하고 작업지시로 전개합니다. 계획별·제품별 생산 실적을 목표 대비 달성률과 함께 집계해 진행 상황을 한눈에 보여줍니다.
01. Background & core mission
생산량은 집계되지만 목표 대비 얼마나 달성했는지, 불량이 어느 라인·설비에서 발생했는지는 따로 확인해야 하는 경우가 많습니다. 원인 추적이 끊기는 순간 개선은 감에 의존하게 됩니다.
02. Core modules architecture
계획(PLN) 단위로 목표 수량을 등록하고 작업지시로 전개합니다. 계획별·제품별 생산 실적을 목표 대비 달성률과 함께 집계해 진행 상황을 한눈에 보여줍니다.
작업지시 → 자재투입 → 공정진행 → 품질검사 → 실적완료로 이어지는 실행 단계를 상태 기계로 구현했습니다. 각 단계의 잔여 건수를 실시간으로 노출해 병목 공정을 즉시 식별합니다.
LOT 스캔으로 실적을 등록하고, 치수·외관·조립·자재 등 사유별 불량을 집계합니다. 라인별·설비별 불량률을 함께 산출해 원인이 공정에 있는지 설비에 있는지 구분합니다.
품목, BOM, 공정/라우팅, 설비·작업자를 기준정보로 관리하고, 사용자 권한과 감사 로그로 누가 언제 어떤 실적을 등록했는지 남깁니다.
03. Engineering challenges
교대 종료 시점에 LOT 스캔 실적이 한꺼번에 들어오면서 동기 처리 구조로는 응답이 지연되고 일부 요청이 유실될 위험이 있었습니다.
해결: 실적 등록을 메시지 큐 기반 비동기 처리로 분리하고 소비자 측에서 순차 반영 — 현장 단말은 즉시 응답을 받고 집계는 뒤따르도록 구성
카드별로 조회 시점이 달라 총 생산량과 제품별 합계가 맞지 않게 보이는 문제가 있었습니다.
해결: 모든 카드가 같은 기준 시각의 스냅샷을 공유하도록 응답을 묶고, 집계 결과를 Redis에 캐시해 화면 전체의 정합성을 보장
네트워크 재시도나 스캐너 오작동으로 같은 LOT 실적이 두 번 등록되는 사례가 있었습니다.
해결: LOT과 공정을 조합한 멱등 키를 Redis에 기록해 중복 요청을 걸러내고, 거부된 건은 감사 로그에 남겨 현장에서 확인 가능하도록 처리
Next project or inquiry
상태 기계 설계와 비동기 실적 처리에 대한 의사결정을 더 자세히 이야기할 수 있습니다.