칼럼
환경 제어, 인원 배치, 비용 계산까지 대응하는 통합 파일ver2.xlsx
식물공장 현장에서 「사실은 시스템화하고 싶지만, 예산이 없으니 엑셀로 어떻게든 해줘」라는 말을 계속 들어온 이야기입니다.
엑셀로 어떻게든 해줘
「이 시트가 안 움직이는데」
회사 어디선가 들려오는 이 목소리, 여러분의 직장에서도 한 번쯤 들어본 적이 있을지도 모릅니다. 목소리의 주인은 대개 여러 시트가 얽혀 있고, 매크로와 복잡한 함수가 둘러쳐진 엑셀 파일과 씨름하고 있습니다.
그리고 저는, 그런 종류의 파일을 만드는 쪽으로 돌아가기 쉬운 사람이었습니다. 이른바 「엑셀 달인」입니다. 편리한 호칭이지만, 본인으로서는 그다지 으스댈 만한 일은 못 됩니다. 대개 그 뒤에 까다로운 의뢰가 따라오기 때문입니다.
시작은 언제나 똑같습니다.
「사실은 시스템화하고 싶은데, 예산이 없으니까 엑셀로 어떻게든 해줘」
처음에는 저도, 이 정도면 간단하겠지 하고 생각했습니다. 수확 스케줄을 정리하고, 함수를 좀 넣고, 필요하면 매크로를 추가하면 된다. 그렇게 생각하던 시기가, 분명히 있었습니다. 지금 와서 보면, 꽤나 순진했습니다.
파일은 자라난다
오랜 세월에 걸쳐, 저는 수많은 엑셀 파일을 만들어 왔습니다. 그중 하나는, 처음에는 단순한 수확 스케줄 표였습니다.
그것이 어느 사이엔가 환경 제어, 인원 배치, 비용 계산까지 다루게 되었고, 결국 「환경 제어, 인원 배치, 비용 계산까지 대응하는 통합 파일ver2.xlsx」라는 이름이 되어 있었습니다. 이름만 봐도, 열기를 좀 망설이게 됩니다.
동료에게 「이 파일은 내부에서 10장 이상의 다른 시트를 참조하고 있으니, 건드리려면 한마디 해주세요」라고 설명한 적이 있습니다. 그때 동료의 표정을, 저는 지금도 기억합니다. 마우스에 올려놓은 손이 한순간 멈추고, 화면이 아니라 저를 쳐다봤습니다. 아마, 건드려서는 안 되는 것이라고 판단했겠죠.
그날부터 그 파일은 사내에서 「건드려서는 안 되는 엑셀」 같은 취급을 받게 되었습니다. 만든 본인으로서는 편리하게 만들고 싶었을 뿐인데, 결과적으로 작은 블랙박스를 키우고 만 셈입니다.
현실적인 문제로, 이런 파일은 만든 본인밖에 유지보수할 수 없습니다. 아니, 정확히 말하면, 작성하고 나서 3개월 이내의 작성자 본인밖에 유지보수할 수 없습니다.
3개월이 지나면, 작성자인 저조차 「왜 여기서 이 식을 참조하고 있지」 하고 굳어버립니다. 화면의 셀을 따라가다 보면, 시간의 흐름이 이상해집니다. A열에서 시작했을 텐데, 정신을 차려보면 다른 시트의 K열을 보고 있고, 거기서 또 다른 파일을 참조하고 있습니다. 머릿속에서는, 과거의 자신에게 코멘트를 남겨두라고 몇 번이나 외치고 있습니다.
시스템화하고 싶지만
이렇게 되면, 당연히 「사내 시스템화」라는 이야기가 나옵니다.
전용 시스템을 도입하면, 엑셀 관리에서 벗어날 수 있다. 제대로 된 사양서가 있고, 전문가가 설계한 시스템이 있다면, 많은 문제는 해결될 것입니다. 저 자신도, 프로그램이 자동으로 수확량을 예측하고, 최적의 작업자 배치를 계산하고, 발주까지 해주는 미래를 동경했습니다.
다만, 식물공장의 현장 업무는 식물이라는 생물을 상대하고 있습니다. 예상치 못한 변경이 일상적으로 일어납니다.
예를 들어, 어느 날 갑자기 「오늘부터 재배 품목을 늘리고, 작업 공정도 추가하자」라고 듣습니다. 엑셀이라면, 담당자가 그 자리에서 새로운 열을 추가하고, 일단 업무 변경에 대응할 수 있습니다. 보기에는 좀 거칠어지지만, 오늘의 출하에는 늦지 않습니다.
전용 시스템이라면, 그렇게 간단히 되지는 않습니다. 시스템 수정 의뢰를 내고, 예산 승인을 받고, 개발자의 일정이 비기를 기다립니다. 그러는 사이에, 예정했던 출하 시기는 지나가 버립니다.
LED 조명 배치 변경으로 생육 예측 알고리즘을 조정하고 싶을 때도 마찬가지입니다. 엑셀이라면 당일에 수식을 바꿀 수 있지만, 전용 시스템에서는 수정에 시간이 걸립니다. 물론, 엑셀로 당일 대응할 수 있다는 것은, 당일에 망가뜨릴 수도 있다는 의미이기도 합니다. 이 부분이 고민스러운 지점입니다.
한번은, 다른 부서가 시스템화에 성공한 이야기를 듣고 부럽게 생각한 적이 있었습니다. 그런데 반년 후, 그 부서는 「시스템이 현장의 변화에 대응하지 못한다」고 한탄하고 있었습니다. 결국, 전용 시스템을 사용하면서, 병행해서 엑셀로도 관리하는 이중 작업이 되어 있었던 겁니다.
그 이야기를 들었을 때, 부럽다는 마음이 조금 수그러들었습니다. 동경했던 미래가 갑자기 남 일이 아닌 것처럼 느껴졌습니다. 시스템화하면 다 해결, 이라고 할 만큼 현장은 단순하지 않습니다.
끝나지 않는 최종판
이상을 말하자면, 완벽한 시스템을 한 번에 만들 수 있다면 최고입니다. 그러나, 그것을 위해서는 막대한 시간과 예산이 필요합니다. 게다가, 식물공장은 회사마다 설비 사양이 전혀 다릅니다. A사의 성공 사례를 그대로 B사로 가져갈 수 있다고는 할 수 없습니다.
범용적인 식물공장 시스템이 있으면 편리합니다. 다만, 실제로는 품목, 설비, 작업 공정, 인원 배치, 출하처의 조건이 조금씩 다릅니다. 그 조금씩이 쌓이고 쌓여, 마지막에는 꽤 큰 차이가 됩니다.
그리고 얄궂게도, 새 시스템이 완성될 때까지의 잠정 운용으로 만든 엑셀 파일이, 어느 사이엔가 현장의 기간 시스템처럼 되어갑니다. 작성 당시에는 일시적인 대응이었을 텐데, 작성으로부터 5년이 지난 지금도 현장에서 계속 사용되고 있습니다. 그런 파일이, 제 컴퓨터에는 산더미만큼 있습니다.
그렇다고는 해도, 자동화 기술은 확실하게 진보하고 있습니다. 센서 기술과 AI가 발전하면서, 이전에는 인간의 판단이 필요했던 작업도, 조금씩 자동화되고 있습니다.
제가 기대하고 있는 것은, 인간의 유연성과 시스템의 안정성이 잘 맞물린 식물공장입니다. 엑셀을 자유자재로 쓰는 현장의 지혜와, 프로그래머의 지혜가 합쳐지면, 현장의 변화에도 대응할 수 있는 똑똑한 시스템이 실현되는 날이 올지도 모릅니다.
그날까지는, 저는 좀 더 엑셀과 함께 지내게 될 것 같습니다.
그러고 보니 며칠 전, 제가 「최종판_확정판_더 이상 진짜 변경 없음__ver5.3.xlsx」라는 이름으로 저장한 파일이 있었습니다. 오늘 아침에 확인하니, 누군가에 의해 「최종판_확정판_더 이상 진짜 변경 없음ver5.3_수정완료_신.xlsx」라는 이름으로 바뀌어 있었습니다.
이렇게 쓰고 있는 지금도, 그 파일명을 보면 어깨에서 힘이 살짝 빠집니다. 끝나지 않네요, 엑셀과의 싸움은.