본문 바로가기

Project

[간단한 퀴즈 서비스] Day04 백로그 작성, 기능명세, API명세

백로그 작성

프로젝트 설계, 구현 이전에 주어진 기간 내에 프로젝트를 끝낼 수 있도록 각 작업들과 작업별 예상소요시간, 예상작업일자를 팀원들과 함께 백로그에 남기었다.

 

백로그를 쓰는 방식은 이번에 알게 되어 처음 적용해 보았는데 생각보다 작업들이 한눈에 들어오고 어떤 작업들이 있는지 프로젝트 시작 때부터 알 수 있어 유용하다 생각 들었다.

 

 

 

 

 

기능명세

기획부터 구현, 서비스까지 모든 사이클을 다 경험하는 것은 처음이었어서

우리의 목표는 3주 안에 이용 가능한 서비스를 구현하는 것이 목표였다.

 

그에 알맞게 회원기능은 OAuth 없이 직접 아이디, 비밀번호를 입력받아 회원가입과 로그인이 되도록 구성하였다

 

퀴즈는 국어 어휘를 주제로 10개 문제를 1개 세트로 풀며 진행할 수 있게 하였다. 기존 서비스들을 3~4개가량 참고하였을 때, 몇 개 문제를 제공할지 정하고서 해당 문제에서 몇 개를 맞추었는지 보여주는 방식이 낫다고 판단하여 이와 같이 기능을 정의하였다.

 

랭킹의 경우 모든 유저의 랭킹은 보여주지 않고 1~3위, 나의 순위 위, 아래로 각 각 1개 순위(e.g) 내가 42등이라면 41등, 43등이 누구인지 보여준다)를 보여주도록 정의하였다.

모든 유저의 랭킹을 보여주는 것을 구현한다면 페이지네이션으로 하지만 그 부분은 보너스로 남겨두었다.

 

 

 

 

API명세

아래 이미지처럼 노션에 테이블로 api 명칭, api의 HTTP method 종류와 endpoint, 로그인 필요 여부 등을 작성하였다.

 

api 명세 테이블의 각 행은 페이지로 구성하여 클릭하면 아래와 같이 api 이용에 필요한 파라미터 정보들과 에러메시지 예시들을 명시하였다.

 

 

 

이렇게 팀 노션 페이지에 작성한 백로그, 기능명세, api 명세 등을 통하여해야 할 작업들과 구현해야 할 api들을 보고 

BE, FE에서 어떤 내용을 보고 만들어야 할지, 어떻게 만들어야 할지를 알 수 있게 문서화하였다.

api 명세의 경우 당연하게도 기능명세를 먼저 해야 가능했으며 api 명세 덕분에 BE, FE에서 작업할 때 따로 api에 대해 물어보지 않고 문서만 보고도 구현이 가능하여 협업에도 유용하였다.