Runtale
거리·페이스 기반 러닝 티어 로직을 구현하고 이야기 진행 흐름에 연결했습니다.
- Spring Boot
- MySQL
- AWS
- GitHub Actions
- Nginx
Runtale은 사용자의 러닝 기록을 거리와 페이스 수치로만 보여 주지 않고, 티어와 이야기 진행으로 연결한 팀 프로젝트입니다. 저는 백엔드에서 러닝 티어 계산 로직을 구현하고 GitHub Actions, Nginx와 AWS를 이용한 배포 흐름을 구성했습니다.
이 글은 제가 직접 구현하고 확인한 거리·페이스 기반 티어 판정과 배포 자동화 범위를 중심으로 정리했습니다.
문제의 시작
거리와 페이스는 연속적인 값이지만 서비스의 러닝 티어는 정해진 구간으로 나뉩니다. 따라서 기준값 주변에서도 의도한 티어가 일관되게 선택되도록 판정 규칙을 명확히 구현해야 했습니다.
판정 결과는 사용자의 이야기 진행에 연결되므로 티어 계산과 다음 경험 사이의 데이터 흐름도 함께 맞춰야 했습니다.
설계와 구현
러닝 기록의 거리와 페이스를 티어 기준에 대입해 등급을 결정하고, 그 결과를 이야기 진행 흐름에서 사용할 수 있도록 연결했습니다.
서비스 배포는 GitHub Actions에서 빌드한 결과를 AWS 환경에 전달하고 Nginx를 통해 요청을 받는 흐름으로 구성했습니다.
거리와 페이스를 티어 기준에 대입하고 판정 결과를 이야기 진행에 연결합니다.
러닝 기록의 거리와 페이스를 확인해 경계값 규칙으로 티어를 결정하고 이야기 진행 흐름에 반영합니다.
검증
거리와 페이스의 티어 경계값을 중심으로 입력 시나리오를 만들고 예상한 등급이 선택되는지 테스트했습니다.
배포 흐름에서는 GitHub Actions 빌드와 AWS 전달, Nginx를 통한 서비스 요청 경로를 확인했습니다.
결과와 배운 점
거리·페이스 기반 러닝 티어 로직을 구현하고 판정 결과를 이야기 진행 흐름에 연결했습니다.
연속적인 수치를 구간으로 바꾸는 규칙은 대표값뿐 아니라 경계값을 명시적으로 테스트해야 의도를 유지할 수 있었습니다.