# Day 1 스프린트 개발계획 - maong0927 - gitdog01 - Eunbin-Kim - Kangsukmin ## 오늘해야할 것 - Github 저장소 만들기 - 배포 서버 ( 따로 사용 ) , DB 서버는 백엔드 서버에 ( 클라우드 스토리지 ) - 프로젝트가 무엇인지 파악하기 - 어떤 도구, 라이브러리를 사용할지 정하기 - 해야할 일 ( To Do ) 도출하기 - 그라운드 룰 규칙 Wiki ( 커밋 컨벤션, coding convention, github 조건이나 브런치 전략이나 ) - 자기 소개 - 친해지기 ### 자기소개 ### 프로젝트가 무엇인지 파악하기 - 무엇을 만들어야 하는가 ? - Sentry - 퍼포먼스 ( 로딩시간 , 콜스택 ) - Mongo DB ( ORM 까지 할지는 고민 후에 ) - webpack ( 두 경우 나누었으면 좋겠다 ) - React - TypeScript - 무엇을 사용할 것은가 ? ### GitHub 저장소 - 서버 주소 : https://github.com/boostcamp-2020/Project11-A-Web-FE-Performance-Monitoring-Server - Admin 주소 : https://github.com/boostcamp-2020/Project11-A-Web-FE-Performance-Monitoring-Admin - SDK 주소 : https://github.com/boostcamp-2020/Project11-C-Web-FE-Performance-Monitoring-SDK ### 그라운드 룰 - 그라운드 룰 - 데일리 스크럼 - 데일리 회고 - 커밋 및 코딩 컨벤션 [Git - 커밋 메시지 컨벤션](https://doublesprogramming.tistory.com/256)과 [커밋 메시지 템플릿](https://jeong-pro.tistory.com/207) - GitHub 관련 - Coding 관련 # 🔥 11-A팀 - Ground Rule 🔥 ## 📜 6계명 1. 사이좋게 지내기. 2. 피드백을 서로 잘 하자. 3. 밥은 먹고, 잠은 자면서 하자. 4. 코어타임에 최대한 집중하고 쉴 땐 쉬기. 5. 말없이 사라지지 않기. 6. 주말은 코드프리징 ## 👨‍👩‍👧‍👦 스크럼 - 매일 10시, 15분 간 - 오늘의 TMI - 오늘의 계획 ( 다 못하면 야근 ) ## 🌙 데일리 회고 - 매일 6시 45분 , 15분 간 - 야근이 있다면 저녁먹고 오기 ## PR - 템플릿 설정해서 여기에 맞추어서 ## Issue - 템플릿 설정해서 여기에 맞추어서 - 단위는 백 / 프론트 - 백: API 주소 하나씩? - 프론트: Atoms, Molecules, Organisms 요소 등을 나눠 하나 단위로? ## Label - enhancement New feature or request - bug & invalid Something isn't working, it doesn't seem right. - documentation Improvements or additions to documentation - help wanted Extra attention is needed ++ - frontend - backend - deploy server ## Milestone ex) - 이슈 마일스톤 - getIssue - editIssue - deleteIssue ## 커밋 메시지 컨벤션 [Git - 커밋 메시지 컨벤션](https://doublesprogramming.tistory.com/256)과 [커밋 메시지 템플릿](https://jeong-pro.tistory.com/207)을 참고하여 커밋 컨벤션을 정했다. - 커밋 메시지 구조 ``` type : subject body footer ``` - type 종류 | 커밋 타입 | 설명 | | --------- |:------------------------------------ | | feat | 새로운 기능 추가 | | improve | 기존 기능에서 추가적인 향상이 있을때 | | fix | 버그 수정 | | docs | 문서 수정 | | refactor | 코드 리팩토링 | | test | 테스트 코드 추가 | | chore | 빌드 업무 수정, 패키지 매니저 수정 | - subject - 제목은 50자를 넘기지 않고, 한글로 통일한다. - 과거시제를 사용하지 않고 명령어로 작성한다. - "XX화면에서 버그를 수정했음" -> "XX화면 버그 수정" - "테스트 코드 추가했음" -> "테스트 코드 추가" - 제목 끝에 마침표(`.`)를 붙이지 않는다. - 제목과 본문은 띄어쓴다. - body - 선택사항이며, 부연설명이 필요할 경우 작성한다. - 작성할 때는 "What"보다 "Why"를 적도록 한다. - footer - 선택사항이며, issue id를 작성할 때 사용한다. ## 브랜치 관리 - Master - PR 이 끝난 다음에 합쳐져야 합니다. - Develop - PR 이 끝난 다음에 합쳐져야 합니다. - Feature - 기능별로 여러 브랜치를 생성한다. ex) feature/OAuth ``` feature/[기능]-[작성자] -> feature/[기능] --[테스트 진행]--> dev (3명 Approve) ``` - Hotfix - 계획에 없는 버그 발견 시 급하게 처리해야 할 일. --- ## 배포서버 - 백엔드 + DB 서버 - pm2로 프로세스 관리 ( 가능하면 클러스터링도 ) - 프론트 - nginx - SDK - NPM 배포 - ncloud 서버에서 하는 것으로 하고, - CI Jenkins ( ncloud 할 수 있으면 상품으로 ) ## 해야할일 - 공통 - Sentry 오픈소스 분석 [링크](https://github.com/getsentry/sentry) - 문제사항 기록 - SDK - 오류 및 log 수집 백엔드로 보내기 - npm 배포 학습 - 백엔드 - log 데이터를 받아서 DB 에 저장 - log 데이터를 볼 수 있는 REST API 만들기 - MongoDB 구조파악 (ORM 미사용 쪽으로) - 로그인 - 프론트 - 로그인 ( root(모든 계정에 대해 읽기 쓰기) , owner(읽기 쓰기) , member(읽기)) - 에러 그룹핑 - 발생 빈도 시각화 - 브라우저 대응 - Webpack 옵션 구체화 ![](https://i.imgur.com/yoX2WJc.png) ![](https://i.imgur.com/1xSH1NK.png) ## 일정계획 - 1주차 : Sentry 오픈소스 분석 + npm , 오류 및 log 수집 백엔드로 보내기 , 기본설정 - 2주차 : log 데이터를 받아서 DB 에 저장 , log 데이터를 볼 수 있는 REST API 만들기 , 프론트에서 REST API 불러오기 , npm 배포 - 3주차 : 로그인 기능 ( 백 & 프론트 ) , log 백엔드 끝내고 , 프론트 발생 빈도 시각화 , 에러그룹핑 - 4주차 : 브라우저 대응 , Webpack 옵션 구체화 - 5주차 : ////////////////