많은 기관/단체 또는 개인들이 유기동물을 구조하고 돕기위해 노력하고 봉사하고 있습니다. 하지만 아직 많은 도움의 손길이 필요합니다. 제일 큰 문제는 봉사 요청자와 자원 봉사자를 연결해 주는 전문 매체가 없다는 것입니다. 그래서 저희는 유기동물을 위한 봉사 플랫폼을 만들기로 했습니다.
-
봉사 요청자와 봉사자를 연결할 수 있는 플랫폼을 만들기
- 정보의 시각화로 사용자의 접근성 높이기
- 봉사 요청자와 봉사자를 연결하는 매칭 프로세스 제공하기
- 봉사 진행과정의 정보를 제공하기
-
이동봉사 이후의 기능 추가
- 유기동물에 대한 다른 봉사
- 산책, 미용, 임시보호, 견사 청소 등
- 커뮤니티 기능
- 사용자들이 유기동물 또는 반려생활에 대한 정보를 나누고 활동할 수 있는 기능 제공
- 보호소의 위치 미커로 표시
- 실종된 반려동물을 찾는 사용자 또는 입양을 원하는 사용자가 인근의 유기동물을 쉽게 찾아 볼 수 있도록 하는 기능 제공
- 유기동물에 대한 다른 봉사
Android Studio, Kotlin, Firebase, Git, Github, Figma
- 아키텍쳐 : MVVM, Single Acitivity Architecture
- 비동기화 : Coroutines
- 인증 및 데이터베이스 : Firebase
- 젯팩 라이브러리 : Navigation, LiveData, ViewModel, ViewBinding
- 외부 SDK : Google Map, Firebase
- 외부 API : 공공 데이터 포털 API
- 네트워크 : Retrofit, moshi
-
Google Map - 마커와 클러스터
- 봉사 요청자와 자원자가 선택한 지역을 지도에 표시합니다.
- 사용자가 인근 지역의 글을 쉽게 찾을 수 있는 기능을 제공합니다.
-
봉사에 대한 글 작성 기능
- 봉사 요청글을 등록하는 기능을 제공합니다.
- 봉사 자원글을 등록하는 기능을 제공합니다.
-
대화하기와 약속잡기 기능
- 이동봉사 요청자와 봉사자를 연결하기 위한 채팅방과 약속잡기라는 기능을 제공합니다.
-
공공 데이터 포털로부터 불러온 유기동물 정보 제공
- 유기동물을 입양하려는 사용자에게 유기동물과 보호소 정보를 제공합니다.
-
이동봉사 진행상황 제공 기능
- 이동봉사가 시작되고 봉사자가 동의하면 위치를 제공합니다.
-
회원가입 및 로그인 기능
- 글을 등록하고 대화 및 약속잡기 기능을 사용하려면 로그인이 되어야 합니다.
프로젝트 기간 동안 지켜야 할 규칙과 컨벤션 그리고 데일리 스크럼 등은 wiki에 기록되어 있습니다.
Git-Flow 브랜치 전략에 따라서 화면 또는 기능별로 브랜치를 나누어 작업을 합니다.
모든 브랜치는 Pull Request를 통해 리뷰를 진행한 후 develop 브랜치에 merge 합니다.
- main : 배포 시에 사용하는 브랜치입니다.
- develop : 기능 개발이 끝나고 PR 후 리뷰가 완료된 브랜치들이 Merge 됩니다.
- feature : 화면 또는 기능별로 개발을 진행할 때 사용하는 브랜치입니다.
- realease : 배포를 준비하는 브랜치입니다.
- hotfix : 배포를 진행한 후 발생한 버그를 수정할 때 사용하는 브랜치입니다.
참고 : 우아한 기술블로그 - "우린 Git-flow를 사용하고 있어요"
스프레드시트 - https://docs.google.com/spreadsheets/기능명세서
Figma - https://figma.com/forpets-화면설계서