Intro

 

 파이썬이라는 언어를 처음 익히기 시작할 때 즈음엔 정상적으로 구동되는 .exe 확장자로 표시되는 우리가 흔히 아는 컴퓨터 프로그램 만들기는 그저 꿈이었습니다. 당장 책에서 설명하는 자료형이란 무엇이고 메서드네 모듈이네 하는 용어부터 메모리는 어떻게 차지하는 것이고 하는 말들도 굉장히 낯설었으니까요. 정말 십여년 직장생활을 통해 그저 관세 무역에 관한 업무만 하였다 보니 IT 창작능력이란게 배양될 환경은 아니었습니다.

 

 그럼에도 제 구미에 맞는 프로그램을 갖고 싶은 욕심은 늘 있었던 것 같습니다. 내가 원하는 프로그램만 있다면 내 업무가 좀 더 완벽하게, 단시간 내에, 일정한 주기로, 정해진 기준에 따라, 정확히 완결될 수 있음은 기성 ERP를 보면 알 수 있었으니깐요. 

 

 제 업무의 일부는 기성 ERP의 일부를 사용하는 과정이 포함되어 있었습니다. 제가 경험을 가진 기성 ERP는 SAP 입니다. 아마 많은 분들께서 들어 보셨을 듯 합니다. 꽤 유명한 독일산 ERP.. 심지어, ERP의 제대로된 인터페이스도 본 적 없었던 제가 SAP도입과정에 참여하게 됨으로서 단시간에 ERP의 개념과 작동방식을 들여다 볼 수 있는 다양한 자료를 접할 수 있는 기회를 가졌었습니다. 참으로 고귀한 경험이라 아니할 수 없는게, 통상의 경우에는 이미 도입되어 운용되고 있는 ERP를 선임자로부터 특정 역할 부분만 인계 받아 처리법을 익히게 되기 때문에 그 기초개념부터 이해하고 쓰는 경우는 많다고 할 수가 없습니다. 그래서 늘 하던 업무부분에서 SAP가 특정한 에러코드를 내놓으면 그게 무슨 의미인지 몰라서 헤메다, 많은 시간을 허비한 후에야 해결법에 도달하는 경우도 더러 생겨 나는 듯 합니다.

 

 SAP 초급자 일지언정 흐름상 이런 메시지의 에러코드라면 이 부분이 문제겠구나 하는 귀납적 추론법을 써서 해결법을 찾아나가는데요. 귀납적 추론법이 먹히는 부분은 다양하게 축적된 데이터량이 있는 구간까지 입니다. 그 데이터들로부터 일정 패턴을 찾아내면 해결법은 바로 그 패턴으로부터 얻어내지는 방식이 귀납추론방식이기 때문입니다. 그런데, 기존 데이터가 없거나 그 양이 매우 적어 패턴을 찾기 어려운 경우라면 어떨까요? 

 

 

 

 

 예를 들어본다면,

 

 '막 생산된 재고가 창고로의 재고 적치를 위한 바코드 스캐닝을 하면 해당 정보가 읽혀 서버로 심어져 들어가야 하는데 이상한 에러코드가 뜬다. 이런 경우가 가끔 발생된다. 무엇이 문제일까? 여태껏 이런 경우가 발생했을 때엔 생산 직후 위치 이동과정에서 스캐닝 에러가 생긴 경우 이런 현상이 발생되더라..'

 

 여기까지가 문제가 발생되었을 때, 지난 축적된 경험데이터를 통해 문제의 원인을 파악해 나가는 귀납적 추론의 구간입니다. 누구나 여기까지 도달은 쉽게 하는 것 같습니다. 자기 업무는 늘 겪어왔기 때문이니깐요.

 

 '그런데, 이번에는 그와는 에러코드가 다르다..정말 처음 접하는 에러코드다..' 

 

 위와 같이 처음 접하는 에러코드가 발생되면 문제를 당면한 사용자는 연역적 추론법으로 태세를 전환 해야 합니다. 기존 경험 데이터가 전혀 없기 때문에 귀납추론이 불가하기 때문입니다. ERP 제작자가 정해진 논리에 따라 연산하여 작동하는 시스템이 지금 어떤 연산 부분을 지나고 있는가에 대한 이해는 trouble shooting을 위해서 매우 필요합니다. 바로 이런 논리 이해는 연역추론의 논리뼈대를 이루어 해결법에 도달하게 해주기 때문입니다. 그래서 시스템의 기본적 작동방식과 전후단계 및 가능하다면 처음부터 끝까지 얽혀 들어 있는 각 모듈간의 데이터흐름에 대한 정확한 이해는 SAP 중상급자와 초급자를 가르는 중요한 요소가 되는 것 같습니다.  

 

 그렇기에 SAP라고는 본 적도 없던 제가 그 수많은 자료를 통해 아직 제대로 도입되어 작동하고 있지도 않은 상태의 ERP의 작동흐름부터 익히고 도입회사에 맞게 일부 customizing되는 과정에 참여하게 되었다는 점은 정말 값진 경험이었습니다. 그리고 이 경험이 이번 DIY 미니 ERP를 직접 제작해 보는데 있어 어떤 포인트를 챙겨 나가야 하는가에 대한 넓은 이해를 주었기에 빠른 기간내에 초기버전 완성을 성공할 수 있었던 듯 합니다.

 

 파이썬의 여러 모듈에 대한 이해도나 문법사용에 관한 성숙도가 초급은 벗어난 수준까지 올라간 상태에서 진행해 본 개발 프로젝트라서 본디 제작에 두 달은 족히 걸릴 거라 예상했지만 실제 진행해 보니 보름 정도 밖에 걸리지 않았습니다. 

 

 제가 제작한 GUI를 갖춘 최초의 완성형 프로그램으로 환율, 과세가격안분 및 용적중량계산기인 AlloCal과 수출입신고서 작성 자동화 프로그램인 AutoCC, 구매주문서와 Commercial Invoice를 연계 발행해 주는 JGPO_Manager 그리고 수출입관계된 회계지표를 시각화해주는 JG Data Center를 제작해 본 이후로 이것이 다섯번째인데요.

 

 AutoCal은 구조적으로 매우 간단한 것임에도 처음 만들어 보는 것이라 3주는 걸렸던 것으로 기억합니다. AutoCC는 데이터 핸들링에서 극도로 정교함이 요구되는 프로그램이기에 여전히 Building과정중이지만 GUI까지 갖추고 실무에 써먹는데 쓸 수 있는 수준으로 만들기까지는 두달은 걸렸습니다.

 

 이전 제작 경험들을 토대로, 파이썬 사용 성숙도가 올라왔을지언정 프로그램의 스케일을 감안해 보았을 때 한달은 걸릴 거라 예상했는데 보름 정도로 공기 단축이 가능했는데요.

 

 

 제가 파이썬을 너무나도 사랑하는 이유가 바로 이런데 있는 것 같습니다.

 

 방대한 라이브러리를 통해 원하면 지원되는 모듈을 import 해와서 작성할 수 있다는 것 자체가 초보 개발자에게는 천국과 같은 환경입니다. 제가 모든 코드를 짤 필요가 없습니다. 그저 import만으로 무결성을 갖춘 라이브러리를 활용해 뚝딱뚝딱 만들어지기 때문입니다.

 

 저처럼 IT비전공자이면서 초보개발자로서 프로그램 만들기에 도전 중이신 분들께는 파이썬이라는 언어를 다시 한번 강추 드리는 바입니다. 내 전문분야의 실무에 내가 짜놓은 논리데로 움직여 주는 프로그램을 언제든 만들어 낼 수 있게 되신다면 또다른 신세계를 접하시게 되실 거라 확언 드릴 수 있습니다. 

 

 또한, 이번 프로젝트는 기존 제작 프로그램들이 관세, 통관 및 무역과 법규준수 관련 제 전문분야에 치중해 제작한 것인 반면, 이번에는 1개의 소규모회사가 갖추어야 할 기능적 요소인 구매(조달), 재고관리, 물류관리 및 정산과 세무신고를 위한 회계관리까지 아우르는 형태로 만든 것이라 제게 있어서도 의미가 좀 남다르긴 합니다. 앞으로 사용해 가면서 유저라고는 아직은 저 혼자 뿐이지만 저의 사용경험을 토대로 버전업을 해나가면서 24시간 일하는 직원으로서 이 프로그램을 막 부릴 생각이기에 매우 중요한 녀석이 될 것 같습니다. 

 

DIY 미니 ERP (프로그램명 미정) 실행화면 일부. 개인정보와 영업비밀보호를 위해 blur 및 painting 처리하였습니다. 양해 부탁 드립니다.

 

 저는 이 카테고리에 제가 DIY 미니 ERP를 개발하면서 느꼈던 어려운 점이나 파이썬 라이브러리별 사용상의 주의점, 직접 개발하실 경우 접하시게 될 여러가지 상황에서 어떤 논리로, 어떤 계획으로, 어떤 코딩으로 그 상황을 해결해 나갔는지 그 경험을 남겨 향후 참조로 쓰고자 하며, 저처럼 IT비전공인 초급자 프로그램 자체개발자 분들에게 제 경험을 공유드리고자 합니다. 

 

 제 포스팅 읽어 보신 후 생기시는 의문이나 의견공유, 정정 특히, 더 나은 방식으로의 개발관련 조언은 언제나 환영이오니, 언제든 댓글 남겨주세요.

 

 감사합니다! 

 

 

 

NPU(엔피유) 관세사무소

대표관세사 고장주

Tel) 031-986-7190

E-mail) sales@npucus.com

[NPU관세사무소 프로모션 페이지] https://www.tradenpu.com/npu_cus/

[무역비지니스 인텔리전스 서비스 | TradeNPU] https://www.tradenpu.com

[파이썬 실용 예제. 무역과 공공데이터] https://pdatinmylife.tistory.com

Certified Customs Broker JangJu Goh

Executive Customs Broker @ NPU Customs Consulting

CEO @ JG TradePlus

sales@npucus.com

Trade Compliance / Customs clearance management at foreign company

Working experience of Air export freight forwarding

Data Visualization / Independent development of business automation application – copyright of JGPO_Manager, JG Data Center, AutoCC and etc.

B2B consignment & direct export/import, B2C Overseas Buying Office consulting

Alibaba.com B2B trade / taobao B2C trade / Amazon.com global selling etc. Online trade regulation consulting.

Import license / Quarantine

English communication available

[TradeNPU for partnership proposal - JGTP] https://www.tradenpu.com/jgtp/

반응형

+ Recent posts