시스템 아키텍처
MES, ERP, SCADA 경계: 부서가 아니라 객체 주관으로 선 긋기
MES, ERP, SCADA의 경계를 나누는 직접적인 답은, 업무 객체 하나하나에 '누가 생성하고 누가 수정하며 누가 실행하고 누가 보존하며 누가 대사하는지' 확인하는 것입니다. ERP는 통상 기업 자원과 경영 계획을, MES는 작업장 실행과 공정 협업을, SCADA는 설비 공정 감시와 알람, 이력을 맡으며, PLC와 안전 관련 제어는 검증된 제어 시스템에 남겨 둡니다. 경계는 소프트웨어 이름으로 기능을 추측하는 것이 아니라 객체와 상태, 시간, 책임으로 설계합니다.

세 개 계층 시스템은 서로 다른 질문에 답합니다
ERP는 무엇을 생산할지, 어떤 자원이 필요한지, 경영 결과를 어떻게 회계 처리하는지에 관심을 두고, MES는 작업 지시가 구체적인 라인과 작업장에서 어떻게 실행되며 현재 진행과 이상을 어떻게 협업하는지에 관심을 두며, SCADA는 설비가 지금 어떤 상태인지, 공정량이 어떻게 변하는지, 알람과 이력을 어떻게 재생하는지에 관심을 둡니다.
이런 책임은 겹치지만, 겹친다고 같은 상태를 반복 저장하는 것은 아닙니다. 하나의 작업 지시는 ERP에서 계획 주관을, MES에서 실행 분해와 현장 상태를 가질 수 있고, SCADA에서는 설비 관련 작업 맥락으로만 나타날 수 있습니다. 각 시스템이 저장하는 필드와 상태는 명확해야 하며, 같은 필드를 마음대로 양방향 고쳐 써서는 안 됩니다.
| 계층 | 전형적인 주관 책임 | 기본적으로 맡으면 안 되는 것 | 핵심 시간 척도 |
|---|---|---|---|
| ERP 등 기업 시스템 | 계획, 수주, 자재와 재무 관련 마스터 데이터 | 밀리초급 설비 제어와 원본 공정 수집 | 수주, 교대, 일과 회계 기간 |
| MES 작업장 실행 | 작업 지시 실행, 통과, 오류 방지, 추적과 현장 협업 | 경영 계획 전체나 하위 안전 제어의 대체 | 작업 지시, 배치, 작업장과 이벤트 |
| SCADA 공정 감시 | 실시간 상태, 공정 추세, 알람과 조작 화면 | 기업 원가 계산과 실행 프로세스 전체 | 실시간 신호, 공정 이벤트와 이력 추세 |
| PLC 및 설비 제어 | 설비 논리, 동작과 검증된 제어 인터록 | 기업 마스터 데이터와 작업장 간 업무 협업 | 제어 주기와 즉각적 인터록 |
객체 주관 매트릭스로 '모두가 관리함' 없애기
주관 매트릭스는 최소한 작업 지시, 자재, 제품 또는 배치, 공정 버전, 설비, 품질 결과, 계획 달력을 다뤄야 합니다. 각 객체마다 생성자와 유일 식별자, 수정 허용 상태, 하위 사용자, 삭제 또는 무효화 규칙을 나열합니다.
예를 들어 자재 코드는 ERP가 유지하고, MES는 실행에 필요한 스냅숏과 배치 소비를 저장하며, SCADA는 필요한 설비 맥락만 사용할 수 있습니다. 현장에서 임시 자재 대체를 허용한다면 명확한 업무 절차가 승인하고 회신해야 하며, 작업자가 어느 계층에서든 마스터 데이터를 직접 고칠 수 있게 해서는 안 됩니다.
| 업무 객체 | 흔한 주관 예시 | 하위 사용 방식 | 반드시 합의할 이상 |
|---|---|---|---|
| 작업 지시 | ERP가 생성, MES가 실행 분해 | SCADA는 현재 작업 맥락을 받음 | 취소, 긴급 끼워넣기, 수량 변경과 완료 회신 실패 |
| 자재와 배치 | 기업 마스터 데이터와 창고 주관은 현황에 따라 결정 | MES는 오류 방지, 불출, 배치 관계를 기록 | 대체, 반납, 분할·통합과 식별 누락 |
| 공정 버전 | 공정 주관 시스템 또는 통제된 절차 | MES는 실행 버전을 검증, 설비는 승인 파라미터를 받음 | 버전 효력, 롤백과 현장 임시 조정 |
| 제품 품질 | 품질 판정 주관은 프로세스에 따라 결정 | MES는 발생 공정과 처리를 연결 | 재작업, 재검사, 양보와 결과 철회 |
| 설비 상태 | SCADA 또는 수집 계층이 원본 사실을 기록 | OEE와 MES는 매핑된 업무 상태를 사용 | 단선, 시계 편차, 수동 수정과 상태 충돌 |
APS, WMS, QMS를 MES 안에 기본적으로 넣으면 안 됩니다
APS는 제약 기반 계획과 배치에, WMS는 재고와 저장 위치, 창고 작업에, QMS는 품질 기획과 검사, 품질 프로세스에 중점을 둡니다. 이들은 MES와 긴밀히 협업할 수 있지만 독립 구축 여부는 기존 시스템과 업무 복잡도, 책임 경계에 따르며, MES가 모든 능력을 태생적으로 포함하는 것은 아닙니다.
ORPAON은 프로젝트에 맞춰 생산 배치 알고리즘과 WMS 인터페이스, 품질 추적 등 통합 또는 맞춤 작업을 수행할 수 있지만, 이것이 이미 성숙한 독립 APS, WMS, QMS 제품을 갖추었음을 뜻하지는 않습니다. 제안서에는 각 항목을 고객 기존 시스템, 제3자 시스템 또는 이 프로젝트의 맞춤 범위 중 누가 담당하는지 하나씩 밝혀야 하며, '일체형'이라는 말로 빈 곳을 가려서는 안 됩니다.
- 계획 경계: 누가 생산능력과 자재 제약을 고려하고, 누가 계획을 승인하며, 누가 현장 긴급 주문을 처리하는지.
- 창고 경계: 누가 저장 위치와 재고 장부를 관리하고, 누가 자재 호출과 배송, 반납을 실행하는지.
- 품질 경계: 누가 검사 규격을 유지하고, 누가 판정과 방행을 하며, 누가 발생 과정을 기록하는지.
- 정비 경계: 누가 보전과 수리 주 프로세스를 관리하며, 안돈과 OEE는 필요한 이벤트만 제공하는지.
- 분석 경계: 누가 원본 공정을 보존하고, 누가 업무 지표를 계산하며, 누가 정의 버전을 책임지는지.
인터페이스 설계에는 계약과 보상, 대사가 필요합니다
인터페이스는 필드 표 그 이상입니다. 트리거 시점과 메시지 또는 호출의 유일 식별자, 멱등 규칙, 시간 초과, 재시도, 순서, 권한, 오류 코드, 수동 보상 입구를 정의해야 합니다. 작업 지시 내려보내기와 완료 회신은 특히 중복 실행이나 상태 유실을 방지해야 합니다.
대사는 인터페이스 순환의 일부입니다. 시스템은 양측 핵심 객체의 수량과 상태, 버전을 비교하고 차이를 표시할 수 있어야 하며, 네트워크 단절 시 어느 쪽이 작업을 계속할 수 있는지, 복구 후 어떤 순서로 보내는지도 업무와 제어 리스크가 함께 결정해야 합니다.
| 계약 항목 | 명확히 할 내용 | 실패 시 올바른 처리 |
|---|---|---|
| 트리거와 멱등 | 언제 보내고 중복을 어떻게 막는가 | 유일 업무 키로 조회하거나 안전하게 재시도 |
| 상태와 순서 | 어떤 상태 전이가 허용되고 메시지에 순서가 있는가 | 무효 전이를 거부하고 대기 큐를 보존 |
| 시간 초과와 재시도 | 언제 실패로 판단하고 몇 번 재시도할지는 프로젝트가 정함 | 미지 결과와 확정 실패를 구분하여 맹목적 반복 방지 |
| 버전과 효력 | 마스터 데이터와 공정 버전이 언제 사용 가능한가 | 미효력 또는 철회된 버전의 사용 차단 |
| 대사와 보상 | 누가 차이를 발견하고 누가 처리 권한이 있는가 | 차이 기록, 승인과 완전한 감사 흔적 보존 |
하나의 종단 업무 사슬로 경계 검증하기
전체 아키텍처 그림을 먼저 다 그리고 용도를 찾지 마세요. 작업 지시 내려보내기, 자재 대조, 설비 실행, 품질 판정, 완료 회신 같은 대표성 있는 업무 사슬 하나를 선택해 객체 주관과 상태 변화, 이상 처리를 단계적으로 표시하면 진짜 경계가 보입니다.
테스트는 정상 경로 외에 인터페이스 시간 초과, 중복 메시지, 마스터 데이터 철회, 현장 재작업, 설비 단선, 수동 보입도 다뤄야 합니다. 이상 경로에도 책임과 복구 방법이 있을 때 시스템 경계가 비로소 땅에 떨어집니다.
- 현황 목록 작성: 기존 시스템과 버전, 인터페이스, 데이터 소유자, 운영 제약을 정리합니다.
- 객체 매트릭스 작성: 항목별로 주관을 확인하고 부서 이름으로 시스템 책임을 대체하지 않습니다.
- 최소 인터페이스 정의: 선택한 업무 사슬을 먼저 지원하고 전체 데이터를 한꺼번에 동기화하지 않습니다.
- 이상 경로 연습: 재시도, 보상, 대사, 단선, 수동 승인을 검증합니다.
- 운영 계약 수립: 모니터링과 당직, 변경·버전 관리를 검수와 운영에 포함시킵니다.
일체형, 전면 실시간화, 양방향 동기화의 오류 피하기
'일체형 플랫폼'이 모든 기능을 한 시스템이 맡는다는 뜻은 아니고, '실시간 동기화'가 모든 데이터를 밀리초 단위로 전송해야 한다는 뜻도 아닙니다. 경영 수주와 배치 실행, 빠른 공정 신호는 시간 척도와 일관성 요구가 달라 섞으면 불필요한 복잡도가 생깁니다.
양방향 동기화가 기본 최적은 아닙니다. 같은 객체를 여러 쪽에서 마음대로 고치게 하면 갱신 순환과 책임 불명이 생기기 쉽습니다. 더 안전한 방식은 주관을 명확히 하고 단방향 발행과 통제된 회신을 쓰며, 모든 예외에 승인과 감사를 남기는 것입니다.
- 소프트웨어 이름으로 책임 정의를 대체하지 않습니다.
- 필드 수로 인터페이스 완전성을 재지 않습니다.
- SCADA가 평가되지 않은 기업 업무 트랜잭션을 직접 처리하게 하지 않습니다.
- MES가 기존 제어·안전 경계를 우회해 고위험 동작을 직접 내려보내게 하지 않습니다.
- 미확정 APS, WMS, QMS, TPM 기능을 표준 기존 제품처럼 쓰지 않습니다.
경계가 명확해야 통합도 유지 가능해집니다
ERP, MES, SCADA의 합리적 경계는 소프트웨어 시장 명칭이 아니라 객체 주관과 상태 책임에서 나옵니다. 먼저 누가 생성하고 수정하며 실행하고 대사하는지 정한 뒤 화면과 인터페이스를 결정하면 중복 구축과 상호 덮어쓰기를 줄일 수 있습니다.
구현에서는 하나의 종단 업무 사슬로 정상·이상 경로를 검증하고, APS, WMS, QMS 등 인접 능력의 담당 주체를 항목별로 밝히십시오. 그렇게 만들어진 다중 시스템 협업은 막연한 일체형 약속보다 검수와 운영, 지속적 발전이 쉽습니다.
자주 묻는 질문
MES와 ERP가 모두 작업 지시를 저장하면 중복 구축입니까?
반드시 그렇지는 않습니다. ERP는 계획과 경영 뷰를, MES는 실행 분해와 작업장 진도, 현장 상태를 보유할 수 있습니다. 핵심은 양쪽이 같은 객체를 규칙 없이 수정하게 두는 것이 아니라 각자의 필드와 상태, 동기화 방향을 명확히 하는 것입니다.
SCADA가 MES를 직접 대체할 수 있습니까?
보통 단순 대체는 어렵습니다. SCADA는 설비 공정 감시와 이력에, MES는 작업 지시와 통과, 오류 방지, 배치, 업무 협업에 강합니다. 소규모 시나리오에서 일부 기능을 묶을 수는 있어도 실행 트랜잭션과 데이터 일관성의 책임은 여전히 명확해야 합니다.
ERP도 모든 실시간 설비 데이터를 받아야 합니까?
보통 불필요합니다. ERP에 필요한 것은 업무 정의로 확인된 완료, 소비 또는 상태 결과이며, 원본 고속 공정 데이터는 수집 또는 이력 계층에 남겨 두고 MES나 데이터 서비스가 필요한 요약을 제공하면 됩니다.
기존 WMS나 QMS를 반드시 MES 모듈로 교체해야 합니까?
교체가 기본값이어서는 안 됩니다. 먼저 기존 시스템이 주관과 인터페이스 요구를 충족하는지 평가하고, 안정적인 인터페이스로 협업할 수 있다면 겉모습 통일을 위해 재구축할 필요가 없습니다. 교체는 이전과 프로세스, 운영 리스크를 별도로 평가해야 합니다.
