18주차 First Project 사전준비

lim1313·2021년 11월 7일
0
post-thumbnail

🌈 기획

⚡ 기획 고민

  1. 왜 이 프로젝트를 기획하게 되었는가?

  2. 이 프로젝트에는 어떤 기능을 담을 예정인가?

⚡ 프로젝트 아이디에이션

  • 동일한 아이디어로 이미 서비스되고 있는 프로덕트가 있는지 조사.
  • 프로젝트에 핵심적으로 반영할 기능을 리스트업.

⚡ 주의사항

First Project는 복습에 초점이 맞춰져 있고, Final Project의 연습단계이다. 너무 거창한 아이디어보다는 프로젝트의 기간(2주)을 고려해서 적당한 서비스를 기획하는 것이 중요!


🌈 팀 규칙

⚡ 팀 규칙 작성

팀 규칙 예시

  • 공통 제공 사항

    • 커밋 메시지 규칙
    • Lint 규칙
    • 브랜치 이름 형식
    • PR 형식
    • Issue 형식
    • 팀원들 간 협의를 통해 추가할 사항
  • 의사소통 규칙

    • 휴식 규칙

🌈 First Project TODO LIST

⚡ 프론트엔드 세부 기획

필요 기능 리스트업

ex)
사용자 회원가입 (C)
사용자 프로필 조회 (R)
사용자 정보 변경 (U)
회원 탈퇴 및 콘텐츠 삭제 (D)

1) 페이지 나누기

맨 처음 서비스를 열었을 때 보이는 랜딩 페이지가 있을 것이고, 회원가입 페이지, 환경설정 페이지 외에 서비스 특성에 맞게 다양한 페이지가 만들어지게 될 것

서비스에서 보일 모든 페이지를 리스트업

2) 와이어프레임 (페이지별 기획)

와이어프레임은 웹페이지의 설계도를 뜻한다. 기능을 구현하기 위해 인터페이스 요소(태그 이름, 클래스 이름, 버튼 등)들이 어떻게 배치되어야 하고, 화면상에서 어떻게 보일지 기획


⚡ 백엔드 세부 기획

스키마 작성

API 문서 작성

API 문서는 엔드포인트 요청 방식과 응답 결과를 나타낸 문서이다.

5가지의 기본적인 REST API 디자인 가이드

내부적으로 API를 어떻게 사용할 것인지에 대해 프론트엔드와 백엔드가 서로 약속을 하는 부분이기 때문에, 반드시 두 포지션이 함께 작업해야 한다.

  • Not To Do 리스트에는 API와 관련된 엄격한 기준들을 제시하고 있습니다. 엔드포인트는 실질적으로 여러분의 코드가 노출되는 항목이기도 합니다. 원칙에 맞게 신중하게 이름을 지으세요.
  • 반드시 필요한 헤더를 빼먹거나, 응답을 대강 적어놓는 경우가 있습니다. API를 사용하는 입장에서 구체적이지 않으면 항상 버그에 노출됩니다. 명확한 응답 형식과 키/값의 타입을 꼭 명시하세요.
  • 사용자 정보를 필요로 하는 요청의 경우, 요청 body나 파라미터에 사용자 정보를 넣으면 불필요한 타인의 정보가 노출될 수 있습니다. 보안에 항상 주의하세요.

⚡ 위키 및 기능 To Do 리스트 작성

1. 위키 작성

위키 작성은 프로젝트 Repository의 Wiki 메뉴를 이용하여 작성한다.

위키 문서는 기획을 마무리하고, 코드 작업을 시작하기 전에 작성한다. 기획이 완료되고 각 단계에 대한 이해도가 아직 높을 때 정리를 한다면 가장 좋은 퀄리티의 내용이 나올 것이다. 또한 프로젝트 마무리 단계에 기획의 처음과 구현 내용을 비교해가며 성공적인 프로젝트였는지 회고할 수도 있다. 프로젝트 완료 후에는 다시 한번 이 문서를 점검한다.


⚡ 태스크 카드 작성 및 분배

코딩을 진행하기 전, 가장 중요한 단계가 있는데, 바로 기능별로 태스크 카드를 설정하는 것이다.
To Do 리스트를 바탕으로 추려낸 항목 하나하나가 태스크로 만들어지는 과정이 필요하다.

태스크 카드 설정 Tip

하나의 기능을 세분화해 태스크당 예상 소요 시간을 3시간 이하로 지정해주시는 것이 좋다.
기능별로 세세한 태스크를 미리 생성하지 않으면 프로젝트 방향성을 잃어버리기 쉽다.
팀에 총 4명이 있다면, 여러분들이 팀원들과 작성한 태스크 카드의 총 예상 소요 시간이 100시간이 되어야 할 것이다.
캘린더를 보시면 일주일에 여러분이 코딩을 진행 할 수 있는 시간은 25시간 정도. (ex. 25시간 x 4명 = 100시간)

마일스톤(Milestone) - 태스크 카드를 그룹화하여 관리

Milestone 은 이정표 역할을 하며, 태스크 카드(Issue)들을 그룹화하는데 사용
Milestone에 연결된 태스크 카드(Issue)가 종료되면 Milestone마다 진행 상황이 업데이트되는 것을 볼 수 있다.

profile
start coding

0개의 댓글