일하는 방식
모든 ERP 프로젝트는 순서를 정해야 하는 순간에 이릅니다. 원칙은 반박하기 어렵고 그만큼 믿기도 어렵습니다. 순서를 틀리면 얼마가 드는가, 그리고 그 주장은 어떤 세 숫자에 얹혀 있는가.
필요한 것은 예상되는 맞춤 개발 건수와, 가동이 몇 달 밀리는지뿐입니다. 나머지는 가정 세 가지이고, 셋을 모두 0으로 놓으면 두 길의 비용은 같아집니다 — 그래야 맞습니다.
만들기
나중에 떠안는 것
미뤄진 가치
이것은 추정이지 약속이 아닙니다. 논증 전체가 가정 세 가지에 얹혀 있습니다. 재작업 비율, 저절로 사라지는 요구 비율, 그리고 지연 개월입니다. 셋을 모두 0으로 놓으면 차이도 0이 됩니다 — 귀사에서 그 셋이 정말 0이라면 순서는 문제가 아닙니다.
모든 ERP 프로젝트에는 순서를 정해야 하는 순간이 옵니다. 표준 시스템을 먼저 가동할 것인가, 아니면 부서마다 깊이 맞춤 개발한 뒤에야 가동할 것인가.
답은 대개 원칙의 형태로 이야기됩니다. 표준이라는 척추를 먼저 세우고 부서별 개선은 그다음에, 라고. 그러나 원칙은 반박하기 어렵고, 그만큼 믿기도 어렵습니다. 이 글은 그것을 돈으로 바꿉니다. 순서를 틀리면 얼마가 드는가, 그리고 그 주장은 정확히 어떤 세 숫자에 얹혀 있는가.
프로젝트 팀이 옛 습관을 새 소프트웨어에 그대로 옮겨 모든 부서를 만족시키려 할 때:
혼란을 자동화한다. 밑에 깔린 업무가 표준화되지 않았고, 품목 마스터에 중복이 남아 있고, 기장 규칙이 흐릿한 채라면, 깊은 맞춤 개발은 잘못된 업무를 기술로 전산화하는 것일 뿐입니다. 새 시스템은 더 빠르게, 더 큰 규모로 오류를 만들어 냅니다.
데이터 무결성을 깨뜨린다. 영업에 맞춘 기능은 영업 담당을 무척 빠르게 만드는 한편, 기장 제약을 조용히 건너뛰고, 회계의 전표 흐름을 끊고, 가용 재고를 망가뜨릴 수 있습니다. 한 부서에서의 국소 최적화는 대개 다른 어딘가에 막힘을 만듭니다. 이것이 첫 번째 글이 데이터 분산이라 부른 것입니다 — 다만 여기서는 회사가 스스로 그것을 만들어 내고 있습니다.
기술 부채. 가동 직전에 급히 쓴 수백 줄의 맞춤 코드는 시스템을 누더기로 만듭니다. 업그레이드가 안 되고, 유지비가 올라가며, 나타나는 고장은 조용한 종류입니다.
이 절은 출처가 말하는 원칙에서 편집자가 써낸 것입니다 — 원문은 세 층을 제시하기 직전에 멈춥니다. 저자 자신의 말이 아니라 해석입니다.
세 층은 순서대로 끝내야 합니다. 각 층은 바로 아래 층 위에만 설 수 있기 때문입니다.
이 순서에서 가장 흥미로운 점은 기술적인 것이 아닙니다. '꼭 있어야 한다'던 요구 가운데 상당한 몫이 표준 코어로 몇 달 굴린 뒤에 사라진다 는 것입니다. 누가 논쟁에서 이겨서가 아니라, 진짜 일이 진짜 시스템을 흐르기 시작하면 처음에 요구했던 것이 더는 필요 없다는 것을 사용자 스스로 알게 되기 때문입니다. 먼저 맞춤 개발을 한다는 것은 그 몫까지 값을 치른다는 뜻입니다.

두 길의 차이는 네 항목에 있고, 그것을 치르는 쪽은 맞춤을 먼저 하는 길뿐입니다.
네 번째가 가장 자주 잊힙니다. 어떤 청구서에도 나타나지 않기 때문입니다. 그러나 다섯 달 동안 가동하지 않는다는 것은, 회사가 아무것도 받지 못한 채 프로젝트 팀에 계속 값을 치르는 다섯 달이라는 뜻입니다.
그리고 여기서 정직함이 필요합니다. 논증 전체가 세 숫자에 얹혀 있습니다. 재작업 비율, 사라지는 비율, 그리고 지연 개월입니다. 셋을 모두 0으로 놓으면 두 길의 비용은 정확히 같아집니다. 위의 계산기로 그렇게 해 볼 수 있습니다. 귀사에서 그 셋이 정말 0이라면 순서는 돈의 문제가 아니게 되고, 이 글은 귀사에 해당하지 않습니다.
이것을 '표준이 먼저냐 맞춤이 먼저냐'로 세우는 것은 질문을 잘못 세운 것이고, 게다가 돈이 드는 방식으로 잘못 세운 것입니다. 실제로 가장 싼 길은 표준 코어를 세우면서 동시에, 업무상 결정적인 몇 개 공정만 깊이 맞춤하는 것입니다. 몇 개, 그리고 정말로 결정적인 것.
이유는 기술이 아니라 사람의 행동에 있습니다. 사람들이 그것으로 살아가는 한 공정이 빠진 시스템은 쓰이지 않습니다. 아무도 소리 내어 반대하지 않습니다. 조용히 옛 스프레드시트를 다시 열 뿐입니다. 그러면 회사는 시스템 값을 온전히 치르면서 옛 도구로 계속 돌아갑니다 — 어떤 청구서에도 나타나지 않지만 실재하고, 측정할 수 있는 손실입니다.
세 가지 표시가 있고, 셋을 모두 만족해야 합니다.
셋 중 하나라도 못 채우는 요구는 3층의 것이고 기다릴 수 있습니다. '꼭 있어야 한다'는 요구의 대부분이 이 시험에 떨어집니다 — 몇 달 뒤에 상당한 몫이 사라지는 이유가 바로 이것입니다.
실제로 그 수는 작습니다. 수십 개가 아니라 몇 개입니다. 귀사의 '업무상 결정적' 목록이 스무 항목에 이른다면, 그것은 거의 틀림없이 걸러지지 않았고, 다른 이름을 달고 '전부 먼저 맞춤'으로 돌아가는 길 위에 있는 것입니다.
위의 계산기는 세 길을 같은 기간 위에서 비교합니다. 기본 가정에서는 둘을 동시에 하는 길이 가장 쌉니다 — 그런데 눈에 띄는 대목은, 표준만 하는 쪽은 근소한 차이로 이기는 반면 맞춤을 전부 먼저 하는 쪽은 압도적인 차이로 이긴다는 점입니다. 바꿔 말하면, '표준만'과 '둘을 동시에' 사이에서 잘못 고르는 것은 작은 실수이고, '맞춤을 전부 먼저'를 고르는 것이 비싼 실수입니다.
그리고 정직한 부분. 결정적인 공정을 건너뛰어도 잃는 것이 없다면 — 잃는 효과 비율을 0으로 놓으면 — 표준만 하는 쪽이 둘을 동시에 하는 쪽보다 쌉니다. 그래야 맞습니다. 몇 개를 일찍 만드는 근거는 통째로, 그것이 빠진 시스템을 사람이 돌아서 간다는 사실에 얹혀 있습니다. 귀사에서 그것이 참이 아니라면, 일찍 만들지 마세요.
어떤 원칙에도 성립하지 않는 영역이 있고, 그 영역을 이름 붙이는 것만이 원칙을 믿을 만하게 만듭니다.
순서는 규율의 문제도, 설계가 옳은지의 문제도 아닙니다. 돈의 문제입니다. 틀리면, 그것을 요구했던 사람들이 머지않아 원하지 않게 될 맞춤에 값을 치르고, 아무도 아무것도 받지 못한 달수만큼 값을 치르게 됩니다.
여기의 수치는 예시이며 어떤 고객사의 시스템이나 프로젝트에서 가져온 것도 아닙니다. 위의 계산기에서 귀사의 숫자로 바꿔 보세요.
이어서 읽기
유통의 출고 계획은 거의 언제나 공유 스프레드시트로 시작하고, 실제로 잘 돌아갑니다. 문제는 하루 수백 건을 넘어야 드러납니다. 해법은 스프레드시트를 버리는 것이 아니라 그 조작감을 시스템 안으로 옮기는 것입니다.
견적서와 계약서는 고객에게 직접 닿는 접점이자 수작업이 가장 많이 남은 공정입니다. 고객마다 양식을 지정하면 중견 회사는 한 달 안에 본전을 뽑습니다.
ERP에서 사무직의 시간을 가장 많이 먹는 동작은 손이 키보드를 떠나는 일입니다. 한 번 한 번은 불평하기에 너무 작습니다 — 하루 8,000칸을 곱하기 전까지는.