[Project] 여행 일정 관리 플랫폼 - 마실가실

프로젝트 개요


🗂️ 프로젝트 목적 및 배경

≈

마실가실 프로젝트는 국내를 겨냥한 여행 일정 관리 및 커뮤니티 플랫폼 입니다.

 

코로나 펜데믹으로 인하여 해외 여행길이 막히고 여행객들의 시선이

국내로 쏟아짐에 따라 국내 여행이 급속도로 성장하는 계기가 되었습니다.
코로나 종식 이후에도 지속적인 국내 여행 활성화를 위해

각 지역의 매력적인 여행지 정보와 이야기를 공유할 수 있는 환경을 기획하고자 하였습니다.

 

 

⚙️ 기술 스택

 

⚙️ 구조

 

 

 


👨‍👩‍👧‍👦 팀 소개 및 구성원

 

팀장

 

JDanmuji - Overview

JDanmuji has 22 repositories available. Follow their code on GitHub.

github.com

 

팀원

 

eunyeoung22 - Overview

eunyeoung22 has 6 repositories available. Follow their code on GitHub.

github.com

 

jihyelisa - Overview

jihyelisa has 7 repositories available. Follow their code on GitHub.

github.com

 

HeeGyeong01 - Overview

HeeGyeong01 has 5 repositories available. Follow their code on GitHub.

github.com

 

HJ0216 - Overview

HJ0216 has 12 repositories available. Follow their code on GitHub.

github.com

 

mintcoffeee - Overview

mintcoffeee has 14 repositories available. Follow their code on GitHub.

github.com

 

jihyunah - Overview

jihyunah has 10 repositories available. Follow their code on GitHub.

github.com

 

6dreamhigh - Overview

6dreamhigh has 16 repositories available. Follow their code on GitHub.

github.com

 

 

 

 

 

 

프로젝트 상세


👀 참고 사이트의 화면 기능 분석

이번 프로젝트의 경우 클론코딩이 아니였고 혼자서 모든 걸 계획하고 개발하기에는

시간적 제약이 있기에 기존에 운영되고 있던 여행 플랫폼 사이트를 참고하여 개발하기로 했습니다.

 

팀원들마다 각자 기능들을 담당하여 트리플과 마이로 사이트를 분석하여 해당 내용을 excel 에 정리하고, 

캡처된 화면을 ppt 로 정리하여 전체적인 프로세스와 기능들을 파악했습니다.

 

 

👨‍👧 화면 설계

색상 및 폰트

프로젝트에 사용될 주요 색상과 폰트를 투표를 통해 결정하여 아래와 같이 사용했습니다.

 

 

 

📚 주요 기능

 

 

1. 메인

 

메인 페이지에서는 국내 여행 코스 api 를 사용한 배너들을 확인할 수 있으며,

4개의 아이콘으로 간단한 국내 여행 정보를 확인할 수 있는 페이지를 볼 수 있습니다. 

마실가실의 주요 기능인 여행일정, 여행이야기 기능을 이용할 수 있으며 사용자들이 등록한 여행이야기 리스트를 확인할 수 있습니다.

 

 

 

2. 비행기 삯 & 버스 삯

국내 비행기 정보 api 와 버스 정보 api를 사용하여

사용자가 이동할 장소 및 날짜를 기준으로 검색하여 정보를 확인할 수 있습니다. 

무한 스크롤 기능을 이용하여 만들었습니다.

 

비행기삯                                                                                                                버스삯

 

 

3. 맛집  & 숙박

국내 맛집 정보 api 와 숙박 정보 api를 사용하여

인기가 많은 맛집과 숙박 정보 리스트를 확인 및 상세 정보를 확인할 수 있습니다.

무한 스크롤 기능을 이용하여 만들었습니다.

 

 

 

 

4. 여행 일정 생성 및 수정

마실가실의 주요 기능인 여행 일정 생성 기능입니다.

 

사용자가 여행하는 국내 도시를 선택하여 일자를 등록합니다.

 

날짜별 숙박 및 장소 팝업창에서 머무를 장소들을 체크하여 저장합니다.

장소별 위치를 변경할 수 있으며 그에 따라 구글 마커 표시도 변경 됩니다.

 

사용자 마이페이지에서 등록한 여행일정을 확인할 수 있으며, 등록했던 여행일정을 다시 편집하여 저장할 수 있습니다.

 

 

5. 여행 일정 장소 리뷰 작성

여행 장소에 대해서 개인적인 리뷰를 남길 수 있습니다.

 

 

 

6. 사용자 여행 이야기 생성

등록했던 여행일정에 대해서 여행 이야기를 생성하여 들렀던 장소에 대한 평점 및 별점을 남길 수 있습니다.

 

 

 

등록된 여행 이야기는 사용자들이 올린 여행이야기 실시간 리스트에서 확인할 수 있습니다.

 

 

6. 챗봇

메인 페이지의 좌측 하단에 있는 아이콘을 누르면 챗봇이 생성되며 해당 챗봇을 통해 간단한 채팅을 진행할 수 있습니다.

 

 

 

 

 

🗣️ 협업방식

 

Jira - 프로젝트 관리 및 버그, 이슈 관리하는 소프트웨어

jira를 이용하여 프로젝트 업무 할당 및 진행 현황을 파악했으며 프로젝트의 필요 정보들을 우측에 정리했습니다.

 

구글 스프레드 시트  및 공유 문서

jira에서 최대한 관리하려고 했으나 에디터가 불편한점들이 많아

필요한 파일이나 주요 정보들은 구글 스프레드 시트와 구글 공유 문서를 주로 이용했습니다.

 

Source tree  - git 브랜치와 히스토리를 추적하는 git GUI 무료 툴

Source tree를 이용하여 브랜치 경로와 메인 버전 관리를 진행했습니다.

 

 

기여한 역할


 

프로젝트의 모든 프로세스를 관할하며, 개발, 배포, 관리 등을 진행했습니다.

프로젝트지만 공부에 집중하여 팀원들이 공부하고

프로젝트를 적용할 수 있는 환경을 만들도록 노력했습니다.

 


 

1. Figma 설계

 

프로젝트 개발 착수하기 전, 기존에 존재하는 트리플과 마이로 사이트를 참고하여 전체적인 시스템의 UI/UX 디자인을 했습니다.

 

MSGS | Figma Community

 

www.figma.com

 

 

2. DB ERD 설계 및 DB 서버 구축

 

사용자를 기준으로 여행 일정, 여행 이야기 DB ERD를 설계했으며,

데이터의 동일성과 유동성을 고려하여 공통코드 테이블을 분리하여 전체적인 데이터들의 의미있는 코드화를 진행했습니다.

 

MSGS

Draw ERD with your team members. All states are shared in real time. And it's FREE. Database modeling tool.

www.erdcloud.com

 

 

 

3. jira 및 프로젝트 관리

팀원들이 프로젝트에 집중할 수 있도록 업무 내용을 할당하여 일정관리를 하였으며

회의록과 이슈 등을 정리해 프로젝트의 전체적인 정보를 관리하고 정리했습니다.

 

개발 시 참고 내용 및 공부 자료들을 조사해 정리해놓으며 개발의 능률을 높일 수 있도록 노력했습니다.

 

4. Git 프로젝트 버전 관리

각자 작업 중인 기능 branch를 분리하여 버전 관리를 하였으며,

commit 메세지 규칙을 이용하여 가독성있는 버전관리를 할 수 있도록 힘썻습니다.

 

5. 여행이야기 기능 개발

여행 이야기 기능을 개발했습니다.

 

6. Jenkins CI/CD 환경 구축 및 배포

NCP(Naver Cloud Platform) 을 가지고 Docker를 이용해 Ubuntu OS 를 만들어 Jenkins 환경으로 프로젝트를 배포 했습니다.

또한, GitHub에 Push 했을 때 자동적으로 해당 소스를 받아와 배포할 수 있는 자동화 환경을 구축했습니다.

 

7. Object Storage 생성 및 파일 업로드 기능 추가

Object Storage 를 만들어 사용자의 파일들을 업로드하고 확인 할 수 있는 파일 서버를 구축하고 업로드 기능을 구현했습니다.

 

8. 전체적인 개발 참여

팀원들이 구현하기 힘들거나 어려운 부분들을 같이 도와주며 개발을 진행했습니다.

로그인, jwt, chatbot등 같은 기능들도 같이 찾아보면서 공부하고 개발할 수 있도록 도움을 주었습니다.

 

 

 

결과 및 성과


독창성이 있는 프로젝트가 탄생할 수 있었습니다.

아쉽게도 프로젝트 기능에 집중한 탓으로 발표 준비를 제대로 못한 게 아쉬울 뿐입니다.

 

 

회고록


8명이라는 많은 인원들을 이끌고 프로젝트를 하다보니 많은 우여곡절이 있었습니다.

 

React.js, JPA 를 정말 기초도 안되는 3 ~ 7일을 배운 지식으로 프로젝트를 이끌려고 하니 힘든 부분들이 많았습니다.

팀원들도 많이 힘들어했지만 잘 따라와주고 열심히 해준 덕분에 멋진 프로젝트가 나올 수 있었습니다.

 

다양한 api를 사용하고, 클라우드 기술을 사용하여 파일 서버와 서버 배포를 한 경험은 새로웠습니다.

세상에 많은 기술과 기능들이 있고 이걸 잘 이용하기 위해서는 많은 공부와 실습이 필요하다는 걸 뼈저리게 느끼게 되었습니다.

 

좀 더 시간이 길었더라면 많은 퀄리티가 달라지지 않았을까 생각하지만..

기간도 고려하여 프로젝트를 진행하는 것도 팀장의 능력이기에 해당 부분에서는 능력이 부족했다고 느낍니다.

 

 

 

 

 


 

 

 

프로젝트 시연 영상을 찍던 도중 여러 오류들이 있어서 지금은 남은 팀원 분들과 함께 리팩토링을 진행 중입니다.

수료이후 네이버 클라우드 지원이 끊겼기 때문에 aws 통해서 재구축 진행중입니다.

 

 

 

 

 

 

 

'프로젝트' 카테고리의 다른 글

[Project] 악세서리 온라인 쇼핑몰 - hrhz(하루한줌)  (0) 2023.09.16