프로젝트 SR(Software Requirements; 프로젝트 기획)
jhjgit edited this page Oct 12, 2020
·
19 revisions
-
1. 팀장, 팀명, 프로젝트명 정하기
- 팀명과 프로젝트명은 영어로 작성
- 팀명: SAFU
- 프로젝트명: S*FU
- 서비스: 부트캠프 후기 공유 사이트
- 팀장이 결정되면 기수별 general 채널에서 코스 매니저를 태그하여 Github아이디 알려드리기
- 팀명과 프로젝트명은 영어로 작성
-
2. 프로젝트 아이디어 기획
- 프로젝트에 필수 구현 사항이 다 들어갈 수 있는지 확인
- bare minimum, advanced 순서로 프로젝트에 구현하고자 하는 기능 적기
-
3. 팀원 포지션 분배 및 role 설정
- Front - 문상현, 정현정
- Back - 송현주, 박혜인
- 수요일 영후님 피드백 받고 자시 정해보기
-
4. To do list 작성 ( 기능 List Up)
- 구현해야 하는 기능 뿐만 아니라 공부해야 하는 것도 Todo에 포함된다.
-
5. 시스템 아키텍쳐 설계 (페이지 나누기)
-
6. 컴포넌트 구성
-
7. 기능 Flow 작성
- 기능 Flow : 예시
-
8. 데이터베이스 스키마 작성 ⇒ 아무리 고민하고 보충해도 부족함이 없음!! 이제 됐다!! 가 없음
-
9. API 문서 작성
- S*FU API; gitbook
- 어떤 API가 필요할지
- 해당 API가 어떤 입력, 출력이 필요할지, -- 출력부분은 현주님, 혜인님께서 해주시기로,
- 엔드포인트 이름(형식)은 어떤 규칙을 만들지 - DB 테이블에서 가져오는 정보는 DB 테이블 이름을 endpoint에 넣기로 함.
- client와 server가 같은 문서를 보고 하는게 중요하다. ex) camelcase, 대문자/소문자 등과 같은 사소한 문제에서 오는 스트레스가 적지 않음
팀원과 상의해서 기획 시에 어떤 API가 필요할지 논의해주세요 해당 API가 어떤 입력, 출력이 필요할지 팀원 모두와 상의하면서 API docs로 정리해주세요.
-
10. 프로젝트 태스크 카드 작성 & 분배
- 가용시간 ex) 6시간 x 팀원 4명 = 일주일간의 가용시간 24시간
- 가용시간 내에 못했으면 어떻게 해야할까?? ⇒ 팀장에게 말하고 커뮤하며 조율한다. (그 외에 어려운점.. 등도 바로바로 공유하기). 최악의 팀원이 되는 길은 뒤늦게 밝히는 것...
- github 프로젝트 레파지토리에 issue를 생성해서 태스크 카드들을 작성 및 관리
- 각 태스크 카드는 가급적 3시간을 넘지 않도록
- 맡은 role에 따라, 본인의 역량에 따라 태스크 카드들을 분배
-
11. 마일스톤 작성
- 각 스프린트마다 구현하고자 하는 기능들에 대해 목표 정하기
- 각 스프린트에 맞게 Milestone을 설정해주세요.
-
12. 팀 룰 작성
프로젝트를 협업하면서 미리 정해야되는 팀 룰들을 정해주세요. 예시
- commit message 규칙 - 영문 작성? 국문 작성?
영문작성이면
국문작성이면
- branch 규칙
- PR 관리
- 이슈 관리
- 코딩 스타일
- 변수 이름
- 파일, 생성자 이름
- 디자인 패턴 (
MVC 패턴
,Atomic 패턴
,등등) - lint — Airbnb는 너무 힘들어서 1st project 시에는 지양하는게 좋다. (피바다 됨...)
- 버전관리
- TDD 할건지? TDD로 전체 Project 규모가 정해질 수도 있기 때문에 1st project 시에는 지양하는게 좋다.
- 이외에도 필요하다 생각되는 팀 룰들을 자유롭게 정하기
-
13. 수강생 프로젝트 기획 설문조사.
- 10/2 월요일 오피스 아워에 영후님게 여쭤보고 피드백 받기(즉, 한 일주일 정도 시간이 있는 것임)
- 링크: https://forms.gle/Y96q8jhxc6M6tZdf8
-
14. gitflow 연습
- upstream: https://github.com/jhjgit/gitflow-practice
- 팀장: