ERP 핵심 코드를 커스터마이징하는 것을 그만둬야 하는 이유
By Mirko Peters ·
Dynamics 365 Business Central과 같은 최신 ERP 시스템이 핵심 코드 수정 대신 확장(extension)에 의존하는 이유를 알아봅니다. 이 아키텍처가 소프트웨어 업데이트 중에도 시스템을 어떻게 보호하고 유지 관리 부담을 최소화하는지 살펴봅니다.
Automatically translated with AI from the original post. Read the English original

Dynamics 365 Business Central과 같은 최신 ERP 시스템이 핵심 코드 수정 대신 확장(extension)에 의존하는 이유를 알아봅니다. 이 아키텍처가 소프트웨어 업데이트 중에도 시스템을 보호하고 유지 관리 부담을 최소화하는 방법을 살펴봅니다.
Business Central 확장 소개
Dynamics 365 Business Central은 재무, 영업, 구매, 재고, 프로젝트 등 핵심 비즈니스 프로세스에 대한 강력한 기능을 이미 제공합니다. 하지만 같은 방식으로 운영되는 조직은 없습니다. 어떤 회사는 전문적인 배송 처리, 지역별 재무 보고서, 추가 승인 규칙, 은행 연동, 전자 송장, 또는 다른 외부 비즈니스 시스템과의 연결이 필요할 수 있습니다. 과거에는 이러한 목표를 달성하기 위해 ERP 시스템의 핵심 소스 코드를 수정하곤 했습니다. 그러나 이 방식은 막대한 기술 부채와 업그레이드 악몽을 만들어 냈습니다. 최신 클라우드 아키텍처는 판도를 바꿔 직접 수정 대신 확장을 선호하게 만들었습니다.
ERP 핵심 코드를 커스터마이징하는 것을 그만둬야 하는 이유
표준 애플리케이션 코드를 직접 변경하면 소프트웨어 공급업체가 업데이트를 출시할 때 심각한 문제가 발생합니다. 업데이트된 표준 애플리케이션은 기반 시스템이 특정 방식으로 동작할 것을 전제하는데, 직접 작성한 커스터마이징은 이러한 기반 변경 사항과 자주 충돌합니다. 그 결과 프로세스가 깨지고, 비용이 많이 드는 업그레이드 프로젝트가 생기며, 시스템이 불안정해집니다. 확장은 완전히 다른 방식으로 접근합니다. 확장의 코드는 표준 Business Central 애플리케이션과 완전히 분리된 상태로 유지됩니다. Microsoft는 핵심 애플리케이션을 원활하게 업데이트할 수 있고, 여러분의 확장은 독립된 패키지로 그대로 남아 있습니다.
ERP를 스마트폰 앱에 비유해 이해하기
ERP 시스템을 최신 스마트폰에 비유해 보십시오. 스마트폰에는 통화, 메시징, 웹 브라우저, 카메라처럼 핵심 기능이 기본으로 들어 있습니다. 그 다음 은행 앱, 내비게이션 도구, 생산성 제품군 등 필요에 따라 추가 앱을 설치합니다. Business Central 확장도 정확히 같은 원리를 따릅니다. Business Central은 표준 ERP 기반을 제공하고, 확장은 기반 하드웨어나 운영체제를 깨뜨리지 않으면서 특定 조직, 산업, 국가 또는 프로세스에 필요한 고유 기능을 더합니다.
확장은 시스템의 무엇을 변경할 수 있을까요?
확장은 필드, 페이지, 보고서, 작업, 규칙, 연동, 비즈니스 로직 등 매우 다양한 시스템 요소를 수정, 추가 또는 개선할 수 있습니다. 예를 들어 확장으로 판매 주문에 새 버튼을 추가하거나, 목록 보기에 열을 하나 더 넣거나, 송장 레이아웃을 바꾸거나, Business Central을 외부 서드파티 서비스와 연결할 수 있습니다. 비즈니스 로직을 통해 확장은 회사 고유의 엄격한 규칙을 적용할 수도 있습니다. 예를 들어 유효한 구매 주문 번호가 입력되기 전에는 주문이 출고되지 않도록 막거나, 주문 금액이 특정 기준을 넘으면 자동으로 승인 프로세스를 시작하도록 설정할 수 있습니다.
표준 애플리케이션 코드를 수정할 때의 위험
개발자가 ERP 시스템의 핵심 애플리케이션 코드를 변경하면 사실상 소프트웨어의 커스터마이즈된 분기(fork)를 만드는 셈입니다. 소프트웨어 게시자가 누적 업데이트, 보안 패치, 또는 메이저 버전 업그레이드를 출시할 때마다 이 커스텀 분기는 수동으로 풀어내고, 테스트하고, 다시 적용해야 합니다. 이 과정은 시간이 많이 걸리고, 사람의 실수가 발생하기 쉬우며, 비용도 매우 큽니다. 시간이 지나면 과도하게 커스터마이즈된 핵심 코드 때문에 업그레이드 비용이 지나치게 높아져, 조직이 구버전 소프트웨어에 묶이게 됩니다.
'표준 우선, 확장 후순위' 원칙
확장 기능이 Business Central 안에 조직의 레거시 ERP 시스템 전체를 다시 만들어 넣는 구실이 되어서는 안 됩니다. Business Central은 이미 상당한 양의 표준 비즈니스 기능을 기본으로 제공합니다. 확장 기능을 만들거나 설치하기 전에, 조직은 실제로 비즈니스 격차가 존재하는지부터 항상 평가해야 합니다. 어떤 경우에는 올바른 확장 기능이 복잡한 통합 전체를 담고 있지만, 다른 경우에는 필드 하나와 간단한 유효성 검사 규칙이 최선의 해결책일 수도 있습니다. 궁극적인 목표는 표준 애플리케이션 기반을 그대로 유지하면서, 효율적으로 운영하는 데 실제로 필요한 것만 추가하는 것입니다.
Business Central 확장 기능의 주요 유형
Business Central 확장 기능은 여러 출처에서 나올 수 있습니다. 일부는 업종을 가리지 않는 일반적인 요구 사항을 위해 설계된 패키지 애플리케이션입니다. 다른 일부는 Microsoft 또는 독립 소프트웨어 공급업체(ISV)에서 직접 제공됩니다. 또한 조직은 고유한 환경에 맞춰 사용자 지정 확장 기능을 직접 만들 수도 있습니다. 확장 기능의 출처를 이해하면 수명 주기 동안 어떻게 평가하고, 지원하고, 유지 관리하고, 업데이트해야 할지 판단하는 데 도움이 됩니다.
앱 확장 기능과 AppSource
앱 확장 기능은 Business Central 내에서 특정 작업을 수행하도록 설계된 패키지형 추가 기능입니다. 배송 앱은 주문을 운송사와 연결할 수 있고, 결제 앱은 결제 공급업체와 통합할 수 있으며, 보고 확장 기능은 전문적인 재무 인사이트를 추가할 수 있습니다. 많은 서드파티 Business Central 앱은 Microsoft AppSource에서 바로 찾을 수 있습니다. AppSource는 조직이 Microsoft 비즈니스 애플리케이션을 안전하고 안정적으로 확장하도록 설계된, 사전에 테스트를 거친 애플리케이션을 찾아볼 수 있는 중앙 마켓플레이스 역할을 합니다.
Microsoft 확장 기능 및 현지화
Microsoft는 모든 고객을 위한 전 세계 표준 애플리케이션에 반드시 포함될 필요는 없는 요구 사항을 위해 직접 확장 기능을 제공합니다. 세금 요건, 전자 세금계산서, 은행 양식, 법정 법률 문서는 국가마다 크게 다릅니다. 한 지역의 조직에 필요한 기능이 다른 곳에서는 전혀 쓸모가 없을 수도 있습니다. 확장 기능을 통해 Microsoft는 국가별 모든 요구 사항으로 핵심 표준 애플리케이션을 어지럽히지 않고도 이러한 필수 기능을 제공할 수 있습니다.
ISV 확장 기능과 테넌트별 확장 기능 비교
ISV는 독립 소프트웨어 공급업체(Independent Software Vendor)를 뜻합니다. 여러 고객이 사용할 수 있는 Business Central 애플리케이션을 만드는 전문 소프트웨어 회사입니다. ISV는 창고 관리, 제조, 유통, 급여 통합 등에 특화될 수 있습니다. 모든 Business Central 고객이 동일한 기능을 처음부터 각자 개발하는 대신, ISV는 재사용 가능한 애플리케이션을 만듭니다. 반면 테넌트별 확장 기능은 한 조직의 비즈니스 요구 사항이 완전히 고유하여 기성 소프트웨어로는 해결할 수 없을 때, 그 조직의 Business Central 환경에 맞춰 특별히 개발됩니다.
사용자 지정 개발과 기존 솔루션 평가
사용자 지정 개발은 내부 프로세스와 정확히 맞출 수 있지만, 결국 그 사용자 지정 코드를 누군가는 책임지고 관리해야 합니다. 문서는 지속적으로 유지 관리해야 하고, 향후 업데이트에는 철저한 테스트가 필요하며, 예상치 못한 문제에는 지속적인 지원이 필요합니다. 기존 ISV 애플리케이션이 이미 요구 사항을 해결하고 있다면, 거의 항상 유지 관리가 더 쉽고 비용 효율적인 선택지가 됩니다. 사용자 지정 개발이 본질적으로 더 낫다고 가정하기보다는, 항상 핵심 비즈니스 요구 사항에서부터 평가를 시작하십시오.
확장 기능이 일상적인 사용자 워크플로를 개선하는 방법
사용자는 이미 익숙하게 매일 사용하는 Business Central 페이지와 화면에서 확장 기능을 직접 경험하는 경우가 많습니다. 확장 기능은 고객 카드에 필드를 하나 더 추가하거나, 판매 주문에 작업 단추를 넣거나, 품목 카드에 재고 지표를 추가할 수 있습니다. 직원들은 중요한 배송 요건이 담긴 별도의 스프레드시트를 오가거나 외부 이메일을 뒤질 필요가 없어졌습니다. 해당 정보가 이제 그들이 매일 업무를 수행하는 익숙한 ERP 작업 공간 안에 바로 들어 있기 때문입니다.
페이지, 보고서 및 권한 집합 확장 기능
페이지 확장(Page extensions)은 표준 페이지 레이아웃 전체를 대체하지 않고도 Business Central 사용자 경험을 수정합니다. 필드, 버튼, 작업을 자연스럽게 추가할 수 있습니다. 보고서 확장(Report extensions)을 사용하면 특수한 법률 문구가 포함된 송장이나 특정 회사 브랜딩 등, 표준 출력과 다른 문서와 보고서를 생성할 수 있습니다. 마지막으로 권한 집합 확장(Permission set extensions)은 새로 추가된 기능이 안전하게 유지되도록 합니다. 새로운 기능을 추가했다고 해서 모든 직원에게 자동으로 액세스 권한을 부여해야 하는 것은 아닙니다. 권한 집합 확장을 사용하면 이러한 새 기능을 누가 보고, 수정하고, 실행할 수 있는지 정확하게 정의할 수 있습니다.
결론
핵심 코드 수정에서 벗어나 확장 모델을 채택하는 것은 Dynamics 365 Business Central을 구현하거나 관리할 때 조직이 내릴 수 있는 가장 중요한 아키텍처 결정 중 하나입니다. 사용자 지정 로직을 Microsoft의 표준 기반과 완전히 분리해 두면, 기업은 업그레이드 시의 마찰을 없애고 장기적인 유지 관리 비용을 줄이며, 안정적이고 확장 가능한 ERP 환경을 보장할 수 있습니다. 이러한 아키텍처 전환을 더 깊이 이해하고 조직들이 이러한 추가 기능을 효과적으로 활용하는 실제 사례를 듣고 싶다면, 관련 팟캐스트 에피소드 Dynamics 365 Business Central Extensions - Simply Explained를 꼭 확인해 보시기 바랍니다.