멀리 보는 연습

1차 프로젝트 회고 : 자동 발주 시스템 'AUTOBUY' 본문

프로젝트

1차 프로젝트 회고 : 자동 발주 시스템 'AUTOBUY'

푸실리 2021. 8. 22. 00:08

1. 어떤 프로젝트?


- 학부 시절 대내외 활동을 하면서 나름 공모전도 여러 번 해보고 협업, 프로젝트도 해봤지만, 개발 프로젝트는 처음이었다. 그만큼 시행착오가 많았던 소중한 프로젝트. 팀 이름의 일화를 짧게 소개하자면, Database 선생님께서 'order by 절'을 설명하실 때 항상 귀여운 광주 사투리로 오도바이절 오도바이절 하셨는데, 재밌는 발음 따라 오도바이 타고 부릉부릉 나아가자는 취지에서 오도바이절로 지었다.

 


- 본격적인 프로젝트는 2021년 7월 26일 ~ 2021년 8월 12일 (코로나로 인해 발표가 1주 연장되어 약 3주 가량) 동안 진행되었고, 아이디어 멘토링과 브레인스토밍을 진행한 결과, 우리 팀의 아이디어는 '점포 재고 데이터 기반 자동 발주 시스템'으로 확정되었다. 이 아이디어는 이전에 카페에서 근무했던 팀원이 매일 수동 발주를 하면서 느꼈던 불편함을 토대로 반복 작업을 단순화 해보자는 취지에서 나온 아이디어로, 실제로 매일 발주를 해본 자영업자라면 크게 공감할 만한 아이디어였다.

- 팀 이름은 오도바이절로 확정되었고, 자동 발주 시스템 이름을 짓는 일이 남은 상태에서, 번뜩 좋은 생각이 났다. 자동으로(AUTO) 물건을 사준다(BUY) 해서 오토바이(AUTOBUY) 어떤가! 시스템 이름만큼은 최고로 지었다 자부하면서 힘찬 시작을 하였다.

- 포스기와 연동하여, 판매 데이터를 넘겨 받아 재고를 줄여가면서 부족한 재고를 자동 발주 제안하는 방식으로 진행하였기 때문에, 우리 팀이 구현해야 할 부분은 포스기, 카페 점주 입장에서 보여지는 화면, 거래처(납품 업체) 입장에서 보여지는 화면 이렇게 세가지 파트로 나눠져야 했다. 아이디어를 기획하는 단계에서는 몰랐다. 처음 해보는 개발 프로젝트에서 3가지 파트를 모두 구현하는 것이 얼마나 고된 일이 될 것인지..하하

2. 개발 인원 및 구현한 페이지

- 우리 팀은 4명으로 구성되었고, 나는 팀장을 맡았다. 구현할 페이지는 크게 포스기, 카페 점주 페이지, 거래처(납품 업체) 페이지로 나누었다. 기능 측면에서 나는 포스기 메인 화면과 카페 점주 페이지의 거래처 관리, 그리고 거래처 페이지의 고객 관리, 제품 목록 및 등록 페이지 구현을 담당했다.

3. 가장 기억에 남는 기능 부분은?

자바 스윙을 활용한 포스기 화면 구현

이번 프로젝트를 통해 처음으로 Java swing을 활용해보았다. (프로젝트 전에는 swing이 뭔지도 몰랐다.)
패널을 만들고 나서 그 안에 버튼 넣었고, 버튼을 기본 버튼이 아니라 이미지로 삽입해봤다.
테이블과 텍스트필드도 넣어서 버튼의 값들을 보여주도록 구현했다.

4. 1차 프로젝트를 마치며

- 좋았던 점

팀원 소개에 있는 '불철주야 달려왔다'는 말은 전혀 과장이 아니다. 4명의 팀원들은 3주간 주말과 밤을 가리지 않고 자동발주 시스템을 위해 정말 열심히 달렸다. 같은 온도의 열정을 가진 팀원들과 함께여서 팀장인 나도 마지막까지 지치지 않고 해낼 수 있었다.

그리고 Github을 통해서 커풀커푸(Commit-Pull-Commit-Push)를 할 수 있게 됐다. 커풀커푸만 잘 해도 오류 없이 코드를 주고 받을 수 있다! 그리고 기능의 우선 순위를 정해서 진행한 점도 잘 했다고 생각한다. 안그랬으면 산으로 갈 뻔..

개발 프로젝트라고 해서 개발만 할 것이라는 착각은 금물이었다. 아이디어 기획서부터 요구사항 정의서, 데이터베이스 요구사항 분석서, 테이블 정의서와 같은 문서 작업, 발표를 위한 PPT, 시스템이 잘 굴러가는지 심사위원 분들께 보여줄 시연 영상까지 여러 분야를 직접 해봤다. 그러면서 나는 팀원들과 함께 레벨업 했다고 느꼈다. 과연 보스는 언제 나올지 모르겠지만...

- 아쉬웠던 점

장소 문제를 가장 먼저 말하고 싶다. 프로젝트는 협업이라 서로 의사소통이 중요하지만 그렇다고 매번 카페를 갈 수는 없었다. 얼마나 장소 제공이 절실했냐면, 나주에 사는 팀원이 적절한 장소를 보유(?)하고 있어서 광주에 사는 세명의 팀원이 나주까지 매번 가서 작업을 진행하고 그랬다.

아무래도 처음 해본 프로젝트라 여러가지 부분에서 서툴었다. 프론트엔드와 백엔드를 정확히 나누고 시작했으면 훨씬 수월했을 것 같다는 생각을 끝나고서야 해버리고 말았다. 그리고 포스기, 카페 점주 페이지, 거래처 페이지라도 세 부분으로 나눠서 기능 구현을 했으면 덜 엉켰을텐데 서로 섞여서 기능 구현을 하다보니, 서로 중복 작업과 같은 헛수고(?)를 하기도 하고 DB 테이블을 정말 여러 번 수정했다. 다 피가 되고 살이 되는 경험이 되리라..

ER 다이어그램

 

- 마지막으로

처음 해본 개발 프로젝트.. 기능 구현도 기능 구현이지만, 나는 팀원들이 정말 노력해서 만든 결과물을 어떻게 극대화해서 심사위원분들께 전달할지에 대한 고민도 정말 많이 했다. 수업 시간에 선생님들이 흘려가는 말로 했던 메타버스가 생각나 시연 영상에 메타버스의 대표 주자인 게더타운(https://www.gather.town/)을 맛보기로 넣기도 하고 단조로운 시연 영상을 게임하듯 만들어보자 싶어서 최대한 재밌게 만들려고 노력했다. 그리고 PPT도 효과적으로 전달하기 위해서 중요한 부분 외에 색을 최대한 줄이고 글자도 줄였다. 심사위원의 입장에서 보려고 계속 시각을 바꿨던 것 같다.

물론 과정이 제일 중요하긴 하지만, 운 좋게도 6개 팀 중에서 우리 팀 프로젝트가 1등을 했다. 멀리 보면 이런 등수가 무슨 의미가 있나 싶어도 일단 기분은 좋았다. 회식비 10만 원이 주어지는데 뭘 먹을까 하는 행복한 고민을 하고 있다. 그리고 이제 새로 시작될 2차 프로젝트도 열심히 해서 더 성장하는 기회가 되었으면 좋겠다. 




내가 열심히 만든 시연 영상!





Comments