Photo by EqualStock IN on Pexels
1. 왜 ERP 표준 발주점 설정에 감(感)이 아닌 숫자가 필요한가
구매팀이나 생산관리팀을 이끄는 팀장들이 흔히 겪는 고충 중 하나는 창고에 재고가 넘쳐나거나, 반대로 특정 자재가 shortage(품절)되어 생산 라인이 멈추는 극단적인 상황이 반복되는 것입니다. 담당자의 순수한 경험이나 감에 의존해 "이 부품은 보통 한 달에 1,000개쯤 나가니까 500개 남으면 발주하세요"라는 식의 구두 지침으로 업무를 처리할 경우, 계절성 변동이나 공급사의 납기 지연이 발생했을 때 속수무책으로 당할 수밖에 없습니다.
ERP 시스템을 도입해두고도 재고 부족이나 과다 재고 문제가 해결되지 않는다면, 이는 ERP 내의 품목별 발주점(Reorder Point, ROP)과 안전재고(Safety Stock, SS) 파라미터가 비현실적이거나 아예 공란으로 방치되어 있기 때문입니다. ERP는 수불(입출고) 데이터를 쌓는 기능 외에도, 축적된 과거 출고 이력과 공급사 리드타임을 기반으로 정확한 발주 시점과 수량을 자동 계산해주는 강력한 엔진을 가지고 있습니다.
본 글에서는 구매/생산 관리 팀장이 직접 팀원들과 함께 ERP 수불 데이터를 추출하여 적정 안전재고와 발주점을 산출할 수 있는 통계적 계산 공식과 실전 숫자를 적용한 계산 절차를 단계별로 다룹니다.
2. 발주점(ROP)과 안전재고(SS) 산출을 위한 ERP 핵심 데이터 4가지
ERP 수불장 및 발주 이력 모듈에서 적정 발주점과 안전재고를 산출하기 위해 먼저 조회하고 정제해야 하는 핵심 기초 데이터는 다음 4가지입니다.
- 일평균 소요량(d, Daily Demand): 특정 품목의 최근 3개월~6개월간 일평균 출고량 또는 생산 투입량입니다.
- 평균 리드타임(L, Lead Time): Purchase Order(발주서) 발행일부터 창고 입하(GR) 후 사용 가능한 상태로 정산되기까지 걸리는 평균 소요 일수입니다.
- 리드타임의 표준편차($\sigma_L$) 또는 일일 소요량의 표준편차($\sigma_d$): 공급사의 납기 준수 변동성과 영업 수요 변동성을 나타내는 통계적 편차 수치입니다.
- 서비스 수준 계수(Z, Service Level Factor): 품절을 허용하지 않을 확률(안전율)을 뜻하는 Z-Score입니다. 일반적으로 B2B 자재는 95%(Z = 1.65), 핵심 부품은 99%(Z = 2.33)를 적용합니다.
많은 팀장들이 실수하는 대목은 '공급사가 안내한 약속 납기'를 리드타임으로 그대로 사용하는 것입니다. ERP의 실제 구매 입고 이력(Purchasing History)을 조회해 보면, 약속 납기가 7일이더라도 실제 입고까지 평균 10일이 걸리고 3일의 표준편차가 존재하는 경우가 흔합니다. 따라서 반드시 ERP 실제 실적 데이터를 조회해야 합니다.
3. [실전 예시] A사의 ERP 데이터 기반 안전재고(SS) 산출식 계산
전자부품을 제조하는 가상의 기업 'A사'의 메인 원자재인 '칩 저항기(Item Code: RES-100K)'의 최근 6개월 ERP 데이터를 기반으로 안전재고를 산출하는 구체적인 과정을 살펴보겠습니다.
A사의 ERP 기초 데이터 조회 결과
- 지난 120일간의 일일 출고 데이터 분석 결과 일평균 소요량($d$) = 1,000개
- 일일 소요량의 표준편차($\sigma_d$) = 150개 (수요 변동성)
- 지난 20회 발주 입고 이력 분석 결과 평균 리드타임($L$) = 9일
- 리드타임의 표준편차($\sigma_L$) = 2일 (공급사 납기 변동성)
- A사의 목표 자재 서비스 수준(Service Level) = 95% (Z = 1.65)
안전재고(SS) 계산 공식과 단계별 적용
수요 변동성과 리드타임 변동성이 동시에 존재하는 일반적인 제조/유통 환경에서의 표준 안전재고 산출 공식은 다음과 같습니다.
공식: $SS = Z \times \sqrt{(L \times \sigma_d^2) + (d^2 \times \sigma_L^2)}$
위 공식에 A사의 수치를 대입하여 계산을 진행합니다.
- 수요 변동성에 의한 분산 항목 계산: $L \times \sigma_d^2 = 9 \times (150)^2 = 9 \times 22,500 = 202,500$
- 리드타임 변동성에 의한 분산 항목 계산: $d^2 \times \sigma_L^2 = (1,000)^2 \times (2)^2 = 1,000,000 \times 4 = 4,000,000$
- 두 분산의 합산: $202,500 + 4,000,000 = 4,202,500$
- 합산값의 제곱근($\sqrt{}$) 산출: $\sqrt{4,202,500} \approx 2,050$
- 서비스 수준 계수 Z(1.65) 곱셈: $1.65 \times 2,050 = 3,382.5$
계산 결과, RES-100K 품목의 통계적 적정 안전재고(SS)는 3,383개(소수점 올림)로 정밀하게 산출됩니다. 종래 담당자가 '대략 1,000개 정도 놔두자'라고 정했던 방식에 비해, 공급사의 납기 변동성(2일 편차)까지 완벽히 흡수할 수 있는 방어 물량이 도출된 것입니다.
4. [실전 예시] 최종 발주점(ROP)과 적정 발주 수량 산정식
안전재고(SS)가 산출되었다면, 이를 이용해 "재고가 몇 개 남았을 때 구매 발주를 실행해야 하는가?"를 나타내는 발주점(ROP)을 계산합니다.
발주점(ROP) 산출 공식 및 실전 계산
공식: $ROP = (일평균 소요량 \times 평균 리드타임) + 안전재고(SS)$
A사의 RES-100K 수치를 대입하면 다음과 같습니다.
- 리드타임 동안의 예상 소요량 = $1,000개/일 \times 9일 = 9,000개$
- 산출된 안전재고(SS) = $3,383개$
- 최종 발주점(ROP) = $9,000개 + 3,383개 = 12,383개$
이 계산이 뜻하는 바는 명확합니다. ERP 시스템상에서 [현재 가용재고 + 발주 중인 미입고 수량 - 출고 예정 예약 수량]의 가망 재고 합계가 12,383개 이하로 떨어지는 순간, ERP는 자동으로 구매 담당자에게 Purchase Requisition(발주 요청) 알람을 생성해야 합니다.
1회 적정 발주 수량(EOQ / MOQ 반영) 산정
발주점에 도달했을 때 한 번에 얼마만큼 발주할 것인가도 정량화해야 합니다. 경제적 주문수량(EOQ) 공식을 활용하거나, 공급사가 제안한 최소 발주 단위(MOQ) 및 포장 단위(Lot Size)를 조합해 최종 발주 수량을 결정합니다.
| 구분 | 기초 수치 및 산식 | 산출 결과 | 비고 |
|---|---|---|---|
| 연간 총 소요량(D) | 1,000개/일 × 250일 운영 | 250,000개 | 연간 영업/생산 계획 기준 |
| 1회 발주 비용(S) | 행정 처리비 + 운송비 등 산정 | 50,000원 | 구매 건당 발생 고정비용 |
| 개당 연간 보관비(H) | 단가 500원 × 연간 보관비율 20% | 100원/개/년 | 창고 임차료, 자본비용 등 |
| 이론적 EOQ | $\sqrt{(2 \times D \times S) / H}$ | 15,811개 | $\sqrt{(2 \times 250,000 \times 50,000) / 100}$ |
| 공급사 MOQ / Lot Size | 5,000개 단위 포장 | 5,000개 단위 | 공급사 수주 조건 |
| 최종 확정 발주 수량 | EOQ(15,811)를 Lot Size(5,000) 단위 상향 조정 | 20,000개 | 운송/포장 효율화 반영 |
5. ERP 품목 마스터 필드 매핑 및 기준 정보 반영 실무
계산된 숫자들을 엑셀에만 남겨두면 아무런 의미가 없습니다. 주요 ERP 솔루션(SAP, Oracle, 영림원, 더존 등)의 품목 마스터(Item Master) 또는 MRP 기준 정보 화면에 이 값들을 정확히 입력하고 매핑해야 시스템에 의한 자동 발주 제어가 동작합니다.
주요 ERP 모듈별 필드 설정 방법
- Safety Stock (안전재고 수량): 산출된 값 3,383을 해당 필드에 입력합니다. ERP는 재고 평가 시 이 수량 이하로 떨어지면 경고 메시지를 출력합니다.
- Reorder Point (발주점 수량): 산출된 값 12,383을 입력합니다. 재고 계획 실행(MRP Run) 시 이 기준치 아래로 내려가면 자동 발주 권고 수량이 생성됩니다.
- Min Order Qty (최소 발주량): 공급사 제약 조건이나 EOQ 분석으로 도출된 20,000을 입력합니다.
- Fixed Lot Size / Order Multiple (발주 배수): 5,000을 입력하여 ERP가 15,000개, 20,000개 등 5,000의 배수로만 발주서를 끊도록 제어합니다.
- Planned Delivery Time (계획 리드타임): 실적 분석 결과인 9일을 입력합니다. (기존 약속 납기 7일에서 실적 기반 9일로 수정)
6. 안전재고 및 발주점 자동화 후 점검해야 할 실무 체크리스트
수식에 의해 계산된 발주점과 안전재고를 ERP에 입력했다고 해서 관리가 끝나는 것은 아닙니다. 시장 상황과 영업 실적은 끊임없이 변화하므로, 중간관리자인 팀장은 최소 분기 1회 주기적으로 파라미터를 점검해야 합니다.
다음 체크리스트를 통해 현업 팀원들의 ERP 마스터 관리 체계를 점검해보시기 바랍니다.
- [ ] 계절성 및 신제품 효과 반영 여부: 성수기/비수기에 따라 일평균 소요량($d$) 데이터를 분기별로 재산출하여 ERP 마스터에 업데이트하고 있는가?
- [ ] 공급사 평가 결과 연동: 리드타임 표준편차($\sigma_L$)가 갑자기 증가한 지연 공급사에 대해 구매팀이 안전재고 수치를 상향 조정했는가?
- [ ] 장기 미소형(Dead Stock) 품목 제외: 출고 주기가 월 1회 미만인 불용/완만 이동 자재에 대해 안전재고 설정이 '0'으로 변경되어 있는가?
- [ ] ERP 가용재고 산출 로직 검증: ERP 발주점 판정 시 단순 '현재고'가 아닌 '현재고 + 발주 잔량 - 예약 수량' 기준의 '가용재고'로 조건식이 세팅되어 있는가?
- [ ] 법률 및 규제 변경 사항 가이드: 원자재 수입 관련 관세법, 화학물질관리법 등 유통/보관 관련 행정 고시가 변경되어 수입 통관 리드타임이 늘어날 가능성이 있는지 사전 검토하고 반영했는가? (※ 행정 절차 지연 요소 발생 시 최신 관계 부처 고시를 확인하여 리드타임 반영)
7. 팀장이 바로 적용할 4가지 실천 지침
수불 데이터 단순 집계에서 벗어나 통계적 기준을 ERP에 이식하기 위해 이번 주 내로 팀 내에서 실행할 핵심 수칙 4가지입니다.
- A급 핵심 품목 20개 선별: 전체 자재를 한 번에 개편하려 하지 말고, 매출이나 생산 기여도가 높은 파레토 법칙 상위 20% 품목(A-Group)을 먼저 추출하세요.
- ERP 과거 6개월 출고/입고 이력 엑셀 다운로드: 해당 20개 품목의 일별 출고량 데이터와 실제 구매 입고 소요일수 데이터를 ERP에서 추출하세요.
- 엑셀 수식으로 표준편차($STDEV.S$) 산출: 본문 3절, 4절의 공식을 적용해 품목별 통계적 안전재고(SS)와 발주점(ROP)을 자동 계산하는 템플릿을 만드세요.
- ERP 품목 마스터 매산 업데이트 및 효과 측정: 산출된 ROP 수치를 ERP 품목 기준정보에 반영한 뒤, 1달간 품절 발생 횟수와 평균 재고 금액 감소율을 비포/애프터로 측정해 팀 성과로 보고하세요.