프로젝트/슈룹 - 우산 공유 플랫폼

[슈룹] #0 해커톤 개발일지

코코팜 2022. 12. 26. 18:25

방학부터 약 4개월간 앱 개발 해커톤을 진행했다.

 

프로젝트에서 frontend, backend 이후 release까지 개발 전반적인 부분을 담당했다. 초기 설계부터 개발 중간에 발생했던 문제, 해결까지 천천히 정리하면서 글을 작성해볼 예정이다. 애착을 갖고 집중했던 프로젝트였다보니 개발과정, 완성한 서비스의 확장 가능성 등등 고려했던 부분들까지 일반적으로 토이 프로젝트에선 경험해 보지 못했던 부분을 정리해보려고 한다.

 

 

https://play.google.com/store/apps/details?id=com.shuroop 

 

슈룹 - Google Play 앱

우산 공유 플랫폼

play.google.com

 

http://www.k-hackathon.com/info.asp

 

전국 대학생 앱 개발 챌린지 K-해커톤

전국 대학생 앱 개발 챌린지 K-해커톤

www.k-hackathon.com

주제 선정 및 개발 방향

사회 공익성이라는 큰 주제 속에서 우리 팀이 선정한 아이템은 공유 우산 플랫폼이었다. 우산을 어디서든 쉽게 빌릴 수 있게 하여 일회용 우산을 줄이는 자는 것이었다. 슈룹이라는 프로젝트 이름도 우산의 순 우리말을 차용하여 짓게 되었다. 

 

서비스를 개발하기전 가장 신경썼던 부분이

  • 사용자가 쉽게 우리 서비스를 접하게 할 수 있을까 (사용 유도)
  • 기존의 사용자가 꾸준히 사용하게 할 수 있을까
  • 악성 사용자를 어떻게 줄일까 (ex 우산을 반납하지 않는 경우)

이렇게 세 가지였다. 이를 바탕으로 간단한 회원가입, 보증금 제도, QR을 활용한 대여 및 반납을 우리 서비스의 핵심 기능으로 구상하였다. 어플리케이션을 통해 대여소의 QR를 스캔해 우산 대여 및 반납을 가능하게 하고 아두이노를 활용해 자체적으로 대여소를 직접 만들었다.

 

주제 선정부터 아이디어 구체화, 서비스 지속 가능성, 대체 서비스가 있는지에 대해 논의해보고 개발 방향성 및 사용자 Flow를 작성하였다.

 

디자이너 영입

프로젝트를 진행하면서 가장 중요하다고 느꼈던 것이 디자이너의 유무였다. 처음엔 개발자 3명에서 시작했고 후에 디자이너 한분이 합류하셨다. 확실히 추상적이었던 아이디어와 flow를 구체화 시켜준 디자이너분의 피그마 화면을 보니 어떤 부분이 더 필요하고 덜어낼지, 사용자 입장에서 서비스를 객관적으로 평가하기 더 편해졌다.

 

이를 활용해 기술적으로 필요한 명세서 및 API를 작성하는데 큰 도움이 되었다.

화면 설계 Figma 페이지

 

 

명세서로부터 DB 모델 설계

 

파트 배분과  협업

사전에 프로젝트의 파트를 나누어 진행했는데 개발부분은 크게 frontend, backend, rental device , release 이렇게 세개로 이중에 나는 backend 전반적인 부분과 frontend의 퍼블리싱을를 제외한 로직부분과 release 및 CI/CD 부분을 담당했다. 다른 팀원들이 개발을 처음 접했기에 전반적인 설계부터 서비스 개발의 전반적인 부분을 진행했고 협업룰, 스택에 대한 간단한 문서화를 작성했다.

 

작성한 프로젝트 wiki

기존에 알고 있던 개념을 문서로 정리해보며 더욱 확실하게 이해를 다질 수 있었고 협업에서 타인이 읽기 쉬운 문서의 중요성을 다시 한번 느끼게 되었다.

파트 배분에서 조금 아쉬웠던 부분도 있었다. 비록 준비기간이 다소 촉박하고 학기마저 겹쳐서 내가 맡아서 그냥 빠르게 후딱 끝내고자 하는 마음에 급하게 많은 파트를 담당했지만 다음에는 파트를 좀 더 명확하게 나눠서 효율을 높이는 방향을 찾아야겠다.

 

 

다음 포스트부터는 파트별로 하나씩 개발과정을 톺아보며 정리할 예정이다.

 

 

repo

https://github.com/ljy2855/shuroop_client_app

 

GitHub - ljy2855/shuroop_client_app: 우산 공유 서비스 슈룹 모바일 어플리케이션

우산 공유 서비스 슈룹 모바일 어플리케이션. Contribute to ljy2855/shuroop_client_app development by creating an account on GitHub.

github.com

https://github.com/ljy2855/shuroop_server

 

GitHub - ljy2855/shuroop_server

Contribute to ljy2855/shuroop_server development by creating an account on GitHub.

github.com