너무 말도 안되는 주제였지만, 주제 차체는 참신했고, 팀원들도 모두 참신한 주제를 원했다.
주제를 구상하던중 산책을 하며 친구에게 어느 방향으로 갈지 랜덤으로 정해달라고 한 경험을 떠올렸다.
내가 생각할 필요가 없다는 점이 좋았고, 생각지도 못한 길로 갈 수 있으니 재밌었다.
나는 바로 랜덤 산책로 찾기 서비스라는 주제를 던졌고, 모두의 수락을 받을 수 있었다.
이 프로젝트는 다음과 같이 기획했고, 아직 기획 단계이다.
프로젝트 기획 단계
1. 프로젝트 목표 설정 : 앱의 목적과 기대 결과 명시, → 핵심 목표와 왜? 이것을 진행? + 유저플로우 작성
- 시나리오 → 수경님 드라이브 사례, 현욱님 산책 → 리프레쉬한 산책로를 추천 받고 싶었다. 그래서 랜덤 길을 추천해주는 알고리즘을 구현 → 추후에 필터를 거쳐서 다양한 버전의 산책로로 발전 가능
ex) 최적의 친환경 길찾기, 멋진 풍경을 보여주는 길, 관광 명소 드라이브
알고리즘 성능 개선 : 좋아요를 많이 받은 경로 추천, 안좋은 곳은 싫어요
추가 기능 구현 가능성: 자신만의 산책로 저장 및 공유
- 기대 결과
사용자 입장 : 기분 전환, 새로운 길 정보 알아가기, 여행지 마스터
개발자 입장 (백엔드) : 새로운 기술 알아가기 - 길 찾기 알고리즘 공부
, 대용량 트랙픽 트래픽: 교통,필터 데이터 / 특정 시간대, 휴가 시즌
2. 문제 이해 및 설계 범위 확정 : 목표하고자 하는 것의 요구사항, 가이드라인을 작성, 범위 제한
- 요구사항 - 랜덤 길찾기 알고리즘, 프론트→ 모바일 화면 구성
- 최소 범위 - 로그인, 회원 가입, 전국 도로(최적의 길 찾기, 랜덤 길찾기), 경로 저장, 경로 재 추천
- 최대 범위 - 날씨(친환경 미세 먼지), 관광 시즌, 경로 공유, → 좋아요가 많은 경로 추천 검색 가능, 알고리즘 성능 개선(좋아요, 싫어요)
- 예외 처리 - 데이터 불안정성, 경로 찾기 실패, 서버 오류 처리, 네트워크 연결 문제, 존재하지 않은 곳을 입력할 때, API 요청 제한 대비
3. 시스템 아키텍처 설계 : 전체 시스템의 아키텍처를 설계, 기술 스택 고려/ 레이어드 아키텍처,스프링mvc
4. API,기능 명세서 : 시스템 설계를 기반으로 한 기능 명세서 작성, 기능 구현 마감 기한 설정, 노션 api 러프하게 작성, 꼭 Swagger를 적용
→ MVP 구현 범위 설정 : 유저플로우에 따라 우선 순위를 설정하며 스펙 설정, 마감 기한 설정 구현 범위 설정, 추가 기능 명확하게 작성 10/24일까지 목표 (1~3주차)
5. 데이터베이스 설계 : 3,4번을 참고하여 데이터 모델 설계, ERD 작성, RDBMS 선택(mysql, nosql 등)
6. 기술 스택 선정 : 기능 명세서와 시스템 설계에 맞는 기술 스택 선정
7. 팀 구성과 역할 분담 : 역할을 각자 할당하고, 팀 내 협업 방법을 설정, 협업 도구를 활용 → gitproject or +a
'프로젝트 > RanDrive' 카테고리의 다른 글
Docker와 EC2 사용한 배포 (0) | 2023.10.08 |
---|---|
Docker 적용 (1) | 2023.10.07 |
SA 설계 마치기 (0) | 2023.10.06 |
MSA(Microservice Architecture) (0) | 2023.10.05 |
프로젝트 시작(주제, 룰 정하기) (1) | 2023.10.04 |