Software Requirement

조성철 (JoSworkS)·2020년 1월 30일
3
post-custom-banner

About

BillyZip은 새로운 개념의 구독형 주거 서비스입니다. 🤗
이사할 때 마다 전세? 월세? 보증금? 계약은 어떻게...? 부동산 매물마다 너무 복잡하지 않으신가요? 🤬
BillyZip을 이용하면 부동산 또는 집 주인과의 번거롭고 복잡한 계약관계 없이 살고 싶은 곳이 있으면 예약 후 마음 편히 거주할 수 있습니다. 🥰

Team Rules

  • 매일 오전 10시 15분에 15분간 진행상황 공유 → 스탠드업 미팅(태스크 관리)
  • 매일 오후 8시에 진행상황 공유 → PR 코드 리뷰
    • 코드 리뷰 OK → Merge
    • 코드 리뷰 NO → 피드백 & 위 과정 반복
  • 매일 각자 dev-log 작성
  • 코드 룰
    • const PORT = 4000;
    • Arrow function 사용
    • 변수명
// Front-End
// component: 첫 글자 대문자인 CamelCase
SignUpInfo

// className: 가운데 언더바 사용
example_example```

```javascript
// Back-End
// 모든 변수: camelCase
const bodyParser = require('body-parser');

// typeORM table name
// 첫 글자 대문자인 단수형태
User, House

// typeORM column name
// 첫 글자 소문자인 camelCase
isPublished, name
  • Git Rules
    commit rule: https://blog.ull.im/engineering/2019/03/10/logs-on-git.html
    • 제목 첫글자 대문자로 작성
    • 끝에 . 금지
  • git flow 사전 준비
    1. upstream repo를 fork 한다.
    2. fork 받은 repo github 페이지에서 default branch를 dev로 변경 해준다
    3. local에 fork받은 repo를 클론한다 : git clone <fork_url>
    4. upstream을 추가해준다 : git remote add upstream <upstream_url>
  • git flow (pull request 협업)
    1. dev 브랜치로 이동한다 : git checkout dev
    2. 브랜치를 만든다 : git checkout -b <branch_name> (: 기능에 따라 다른 branch에서 작업한다.)
    3. code . (기능 구현중인 branch인지 확인!!)
    4. 코딩 해서 기능 구현
    5. 기능 구현이 끝났으면 커밋
      1. git add .
      2. git commit -m "commit message"
    6. 한 개 혹은 여러 개의 커밋이 모여서 해당 브랜치의 기능 구현 완료
    7. git push origin <branch_name>
    8. github로 가서 upstream repo의 dev branch에 PR을 날린다.
    9. 저녁 시간에 다 같이 모여서 코드 리뷰하고, 머지한다.
    10. git checkout dev
    11. git pull upstream dev (: local repo를 최신화한다.)
    12. git push origin dev (: origin dev branch를 최신화 한다.)
    13. 기능 구현이 완료 됐으므로 브랜치를 제거해준다
    14. git branch -D <branch_name>
    15. 끝!
  • ESLint & Prettier
    https://velog.io/@velopert/eslint-and-prettier-in-react#eslint-config-airbnb-적용

Stack

  • Front-End: React Native, TypeScript, React Hooks
  • Back-End: TypeScript, Node.js, express, typeORM, mysql
  • etc: AWS, multer, bcrypt, JWT, passport, dotenv, OAuth, SocketIO, I'mprot, google map API

기능 flow

https://miro.com/app/board/o9J_kvBHiOk=/
200131_1.png

post-custom-banner

0개의 댓글