byidev.com
Project (4)
2023-05-11 23:07:10

1. 서론


해당 내용은 졸업을 목적으로 시작한 졸업 프로젝트로 많은 오점과 부족한 면이 있습니다.

필자도 해당 부분에 대해 충분히 이해하고 있으며, 시간이 생기는대로 리팩토링과 버전관리를 통해

부족한 내용에 대한 수정을 거듭해 부끄럽지 않은 프로젝트로 남기고자 합니다.

이와 같은 목적으로 해당 카테고리의 글을 작성하였습니다.


2. 본론


2-1. 발단

 졸업을 준비하기 위해 2021년 12월 쯔음부터 고민하기 시작했던 것 같습니다. 저를 필두로 세명의 팀원과 함께 다뤄야 하는 졸업 프로젝트는 나 혼자만이 만족하는 것이 아닌 모두를 위한 프로젝트의 주제와 내용을 가지고 있었어야 했으며, 개발 환경도 추후의 우리에게 도움이 될만한 스택이어야 했습니다. 이와 같은 이유로 옷 가게에서 일 해본 경력이 팀원 모두를 합쳐 4~5년이 되었던 우리 BYI 팀은 모두에게 익숙한 많은 이름으로 불리우는 프로그램 "재고 관리 시스템"을 개발하기로 의견을 합쳤습니다.

 

WMS PROJECT - 기획

주제 선정 WMS (Warehouse Management Systems) 개발 배경 현재 시중의 재고 관리 시스템은 각 기업에서 취급하는 물류에 따라 요구하는 기능들이 모두 다르기에 각 요구사항을 모두 수렴할 수 있는 기업

www.byidev.com


2-2. 목적

 졸업 프로젝트로 당차게 시작한 WMS의 목적은 소상공인, 기업, 개인을 위한 간단하고 사용이 편리한 UI/UX 관점의 웹/앱 기반 ERP 시스템 이었습니다. 해당 ERP 시스템을 통해 다양한 클라이언트들이 하나의 툴만으로 다양한 제품을 관리 할 수 있도록 다양한 방면의 고민을 진행하였으며 어떤 것들이 그들에게 실제로 필요하고 어떤 기능들이 그들에게 도움을 줄 수 있을까에 대한 의문을 해결하기 위해 클라이언트들을 대상으로 요구 사항을 수집하였고 분석을 하였습니다. 해당 내용은 다음의 글에 정리되어 있습니다.

 

WMS PROJECT - 요구 분석

이해 기존의 재고 관리 시스템 01 - 엑셀 기반 프로그램의 형태. 02 - 회사 또는 업종 등 맞춤형 프로세스. 03 - 재고 추적을 위한 카테고리와 내용 등 분류 기준이 존재. 04 - PC 환경의 접속. 사용자

www.byidev.com


2-3. 설계

 일전의 단계를 진행할 때만 하더라도 우리는 나름 소박한 수준의 내용과 기능을 반영하는 프로젝트라고 생각하고 있었습니다. 하지만, 프로젝트에 대한 세부 설계를 진행하며 정말 많은 작업과 내용이 필요하다는 것을 알게 되었습니다. 특히나 어려움을 겪었던 부분은 백엔드 파트인 Node.js와 MySQL 이었습니다. 당연하게도 정말 많은 양의 DB의 데이터를 처리해야 했고 다중 사용자 환경에서 효율적으로 데이터를 관리하기 위한 솔루션이 필요하였습니다.

 

WMS PROJECT - 설계

개발 환경 IDE : Visual Studio Code Front-end : React, MUI Back-end : Node.js, MySQL 시스템 구성도 테이블 구성도 와이어 프레임

www.byidev.com


2-4. 개발

 설계 단계가 끝나고 교수님의 컨펌을 받은 BYI는 개발을 진행하였습니다. 실질적인 개발 일정은 22년 3월 여간부터 22년 9월 여간까지 진행되었으며, 문서 작업을 포함한 총 소요 일정은 1년에 달하는 시간이 소요되었습니다.

 개발 일정은 설계를 마친 상태에서 모두가 해당 프로젝트에 대한 요구사항 및 내역을 알고있었기 때문에 Front-end, Back-end 가 같이 시작하였으며 어느정도 유의미한 개발 결과가 도출 된 이후로는, 연동을 시작하였고 서버에 업로드하여 Front-end(React) 서버와 Back-end(Node.js)서버에서 테스트를 진행하며 에자일 모델을 적용하여 상호 피드백을 주고 받으며 목적에 부합하는 프로그램을 만들어 나갔습니다.

 필자가 맡은 Front-end의 프레임워크 MUI에 대한 정보가 많지 않아 난항을 겪기도 하였고, 트러블 슈팅으로 팀원이 중도 이탈하는 사건도 생겼지만 해당 파트에 대한 분업으로 완성단계에 다다를 수 있었습니다.


3. 결론


3-1. 결과

 결과물로서 완벽하지는 않지만 어느정도 완성도가 있는 프로그램이 탄생할 수 있었고, 목적에 부합하는 WMS 시스템을 구축할 수 있었습니다. 요구사항 조사 단에서 만나게 된 클라이언트와 상호 피드백을 주고 받으며 점진적으로 발전시켜 나갈 수 있는 가능성 또한 확인할 수 있었으며 해당 프로젝트를 통해 팀 프로젝트가 어떤 주요한 목표를 가지고 있으며 팀원들과 프로젝트를 기획부터 결과물을 도출하기까지 한 사이클을 무사히 마친 좋은 경험이 되었습니다.

3-2. GitHub

 해당 프로젝트의 결과물은 다음의 사이트에서 확인할 수 있으며 점진적인 버전 관리를 통해 리팩토링 및 유지보수를 진행할 예정입니다.

 

GitHub - JenSeop/DASE-TGP-BYI-ERP

Contribute to JenSeop/DASE-TGP-BYI-ERP development by creating an account on GitHub.

github.com

 

2022-10-09 18:12:53

WMS PROJECT

개발 환경

IDE : Visual Studio Code

Front-end : React, MUI

Back-end : Node.js, MySQL

 

 

시스템 구성도

 

테이블 구성도

 

와이어 프레임

2022-10-09 18:05:09

WMS PROJECT

 

이해

 

기존의 재고 관리 시스템

01 - 엑셀 기반 프로그램의 형태.

02 - 회사 또는 업종 등 맞춤형 프로세스.

03 - 재고 추적을 위한 카테고리와 내용 등 분류 기준이 존재.

04 - PC 환경의 접속.

 

사용자 기반 재고 관리 시스템

01 - 웹 브라우저, 애플리케이션 환경의 형태.

02 - 회사 또는 업종을 불문하는 범용 프로세스.

03 - 재고 추적을 위한 카테고리와 내용 등을 설정.

04 장소를 불문하는 웹 환경.

 

기존의 재고 관리 시스템
엑셀 프로그램

 

탐구

 

기존 재고 관리 시스템을 이용하는 이유는 더 효율적인 재고 관리를 위함.

맞춤형 프로세스로 제작된 시스템은 다양한 사용자에게 부적합.

기존 시스템에서 개선된 모델이 필요.

 

다양한 사용자가 이용할 수 있는 범용성을 갖춘 시스템.

분류 기준을 사용자가 직접 설정.

다양한 환경에서 접속이 가능한 웹 기반의 개발 요구.

 

  기존의 재고 관리 시스템 사용자 기반 재고 관리 시스템
재고 추적 O O
재고의 제품화 X O
안전재고 알림 X O
품목별 매출분석 X O
바코드생성 X O
범용성 X O
접속 환경 PC PC, 스마트폰 등

 

분석

 

2022-10-09 17:34:31

WMS PROJECT

주제 선정

WMS

(Warehouse Management Systems)

 

개발 배경

현재 시중의 재고 관리 시스템은 각 기업에서 취급하는 물류에 따라

요구하는 기능들이 모두 다르기에 각 요구사항을 모두 수렴할 수 있는

기업 맞춤형 프로세스로 구성되어 있다.

 

이 때문에 프로세스의 유지 및 보수 비용 그리고 프로그램 사용 방법,

한 번에 이해하기 어려운 가시성 등 각 기업 간 프로세스의 내규도 각각 다르다는 특징을 가진다.

 

이러한 문제로 인해 같은 재고 관리 시스템을 사용하려 하더라도

소상공인과 그 외 기업은 특정 기업에 맞춰져 있어

같은 프로세스라고 하더라도 사용할 수가 없으며

독자적인 재고 관리 시스템을 구축하기에 프로세스의 유지보수 비용도

부담하기 어려운 상황이라면 엑셀로 간단히 제작된 재고 관리 시스템을 사용하고 있는 현실이다.

 

개발 목적

위와 같은 이유를 문제로 들어 맞춤형 프로세스를 제작하는 기업부터 자영업자까지 모두 
사용 가능한 이해가 쉽고 범용성을 갖춘 재고 관리 시스템을 개발하기로 하였다.

 

해당 프로세스를 구축함으로써 각 프로세스의 장점인 기업 또는 거래처 간의 입/출고, 판매와 같은 
기능 또한 사용하기 쉬워지며 사용자 맞춤으로 재고의 속성을 기록할 수도 있다.

 

사용자 기반의 인터페이스, DB, 서비스를 제공할 수 있다.

이는 기존의 재고 관리 시스템을 발전시킨 범용 재고 관리 시스템을 개발하는 것이다. 

 

프로젝트 조직도

구분 인원 역할 비고
팀장 XEOP
(필자)
프로젝트 관리
프로세스 설계
Front-end
Back-end
개발
팀원 익명 Back-end 개발
팀원 익명 데이터 관리 기타
팀원 익명 자료 조사
상태관리
기타

 

참고 문헌

 

https://www.fun-coding.org/mysql_basic1.html
#. RDBMS(Relational Database Management System)의 이해
https://www.forwarder.kr/bbs/board.php?bo_table=menu9_1&wr_id=2042
#. 재고의 정의와 필요성
#. 재고의 종류
#. 재고관리의 목적
#. 재고관리의 비용
#. 재고관리 관련 지표
#. 재고관리 시스템 (재고 관리 기법)
#. 수요예측기법
https://dynamics.microsoft.com/ko-kr/field-service/inventory-management-system/
#. 재고관리 시스템의 문제 및 이점 
https://www.ibm.com/kr-ko/topics/inventory-management
#. 재고관리 정의 및 필요성
#. 재고 가시성
#. 재고관리 시스템
http://www.beautytimes.com/ 

#. 효과적인 재고관리 방법
http://uonit.co.kr/page1000/ 

#. 통합고정자산관리 (EAM - Enterprise Asset Management)