2026-09-16
ERP가 최적의 생산 일정을 만들지 못하는 이유

ERP는 생산일을 계산하고, MRP로 수요를 전개하며, 라우팅, 재고, 구매 오더, 생산 오더를 관리할 수 있습니다. 하지만 그렇다고 해서 공장이 실제로 실행할 수 있는 생산 일정을 자동으로 만들어 주는 것은 아닙니다. 이번 에피소드에서는 ERP 계획과 유한 생산 스케줄링(finite production scheduling) 사이의 간극을 짚어보고, 여러 오더가 같은 설비를 같은 시간에 두고 경쟁하고 있는데도 ERP 안에서는 일정이 완벽하게 합리적으로 보이는 이유를 설명합니다.
무한 용량 문제
전통적인 ERP 계획은 실제 설비 시간을 유한한 블록으로 예약하지 않고도 수요를 자원에 배치할 수 있습니다. 이러한 "무한 용량" 가정은 수요 및 자재 계획에는 유용하지만, 계획된 날짜가 현장에서 실행 가능한 약속으로 취급될 때는 문제가 됩니다. 용량 보고서에는 머시닝 센터에 가용 시간 16시간 대비 40시간의 수요가 있다고 표시될 수 있습니다. 이는 과부하를 식별해 주지만, 어떤 오더를 먼저 가동할지, 어떤 오더를 옮길지, 그리고 그 결정이 후공정에 어떤 영향을 미치는지는 결정해 주지 않습니다.
용량은 기계 시간 이상의 의미입니다
실제 생산 용량은 작업장 달력 이상의 많은 요소에 좌우됩니다. 설비에는 다운타임이 있고, 작업자에게는 자격 요건과 교대 근무 패턴이 있습니다. 지그와 공구는 이미 사용 중일 수 있으며, 품질 검사도 자원을 소모합니다. 보전 작업은 용량을 빼앗아 가고, 8시간 교대가 실제로 8시간의 사용 가능한 생산 시간을 제공하는 경우는 드뭅니다. 따라서 실행 가능한 일정은 설비, 인력, 공구, 지그, 달력, 보전, 공정 규칙의 조합을 모두 고려해야 합니다.
순서가 중요한 이유
생산 순서는 결과를 크게 바꿀 수 있습니다. 유사한 제품군을 함께 생산하면 주요 段取り(셋업)가 한 번이면 될 수 있습니다. 제품군을 번갈아 생산하면 반복적인 공구 교체, 세척, 검사, 지그 교체가 발생할 수 있습니다. 따라서 같은 설비에서 같은 오더를 처리하더라도 순서에 따라 소모되는 용량은 크게 달라질 수 있습니다.
병목이 생산 속도를 결정합니다
많은 오더가 하나의 제약 자원에 의존할 때, 상류의 모든 설비를 계속 가동시키는 것은 오히려 성과를 악화시킬 수 있습니다. 작업량이 시스템에 더 많이 유입되고, 대기열이 늘어나며, 재공품(WIP)이 증가하고, 우선순위를 파악하기가 더 어려워집니다. 효과적인 스케줄링은 병목 용량을 보호하고, 작업이 생산에 투입되는 시점을 통제합니다.
자재가 있다고 해서 바로 가동 가능한 것은 아닙니다
MRP는 자재가 존재한다고 보여줄 수 있지만, 그 자재는 품질 보류 상태이거나, 다른 오더에 할당되어 있거나, 검사를 기다리고 있거나, 특정 배치 요건과 호환되지 않을 수 있습니다. 유한 스케줄링은 자재 준비 상태와 자원 가용성을 함께 고려해야 합니다. 수요일에 도착하는 부품은, 자재가 사용 가능해지는 시점에 필요한 설비에도 합법적인 생산 슬롯이 있어야 도움이 됩니다.
라우팅은 용량을 예약하지 않습니다
라우팅은 무엇이 무엇보다 먼저 와야 하는지를 알려 줍니다. 예를 들어 절단 → 가공 → 검사 → 조립과 같이 정의할 수 있습니다. 그러나 라우팅이 그 공정들을 수행하는 데 필요한 실제 자원 시간을 반드시 예약하지는 않습니다. 여러 오더가 완벽하게 유효한 라우팅을 따르면서도 같은 설비나 작업장에서 충돌할 수 있습니다.
엑셀이 계속 살아남는 이유
이 간극 때문에 계획 담당자들은 여전히 스프레드시트, 화이트보드, 메모, 로컬 우선순위 목록을 사용합니다. 그들은 ERP, MES, 보전, 품질, 생산 현장의 지식을 결합하여 공장이 실제로 따르는 일정을 만들고 있습니다. 엑셀이 근본 문제인 경우는 흔하지 않으며, 오히려 ERP 바깥에 존재하는 스케줄링 로직에 대한 임시방편(workaround)인 경우가 많습니다.
유한 스케줄링이 바꾸는 것
유한 스케줄링은 생산 시간을 실제로 예약되어야 하는 대상으로 다룹니다. 어떤 공정이 머시닝 센터에서 4시간을 필요로 한다면, 그 4시간은 실제 슬롯을 점유합니다. 다른 작업은 해당 기간 동안 같은 자원을 사용할 수 없습니다. 같은 논리는 작업자, 공구, 지그, 그 밖의 필요 자원에도 적용될 수 있습니다. 합법적인 슬롯이 없을 때 시스템은 충돌을 다른 계획 날짜 뒤에 숨기는 대신 드러내야 합니다.
유한 스케줄링에서 최적화로
실행 가능한 일정이 여러 개 존재하면, 제약 기반 최적화(constraint-based optimisation)로 이들을 비교할 수 있습니다. 공장은 지연 오더를 최소화해야 할까요? 셋업 시간을 줄여야 할까요? 병목 처리량을 보호해야 할까요? 초과근무를 피해야 할까요? WIP를 줄여야 할까요? 단기 일정의 안정성을 유지해야 할까요? 보편적으로 "최적"인 생산 일정은 거의 없습니다. 최고의 일정은 공장이 위반할 수 없는 제약 조건과, 공장이 우선순위로 선택한 비즈니스 목표에 따라 달라집니다.
ERP vs. MES vs. APS
ERP는 수요, 오더, 재고, 구매, 자재명세서(BOM), 거래 기반 계획에 여전히 필수적입니다. MES는 현장으로부터 실행 사실(execution truth)을 제공합니다. APS는 의사결정 계층을 더합니다. 수요, 자재, 라우팅, 자원 가용성, 제약 조건, 현재 생산 상태를 결합하여 유한하고 제약을 인식하는 일정을 만들고, 대안 시나리오를 테스트합니다.
이번 에피소드에서 다루는 내용
ERP 일정이 과부하에 빠지는 이유, 무한 용량의 실제 의미, 병목과 순서 의존적 셋업이 중요한 이유, 자재 가용성이 생산 준비 상태와 어떻게 다른지, 계획 담당자가 엑셀로 되돌아가는 이유, 그리고 유한 스케줄링과 제약 기반 최적화가 생산 날짜를 실행 가능한 계획으로 바꾸는 방법을 알아봅니다. 핵심 아이디어는 간단합니다. ERP는 무엇이 일어나야 하는지를 알려 줍니다. 생산 일정은 그것이 언제, 어디서 실제로 일어날 수 있는지를 증명해야 합니다.
이 팟캐스트의 후원자가 되어 주세요: https://www.spreaker.com/podcast/m365-fm-a-microsoft-mvp-podcast-by-mirko-peters--6704921/support.
Apple Podcasts · Spotify · YouTube · Deezer
Why Your ERP Can't Build an Optimal Production Schedule (English)