협업 프로세스
협업을 어떻게 진행할지에 대해 정리한다.
용어정리
협업에 있어 가장 중요한 것은 의사소통이라고 생각합니다. 따라서 의사소통에 필요한 용어를 우선적으로 이해합니다.
스프린트
스프린트스프린트개발 주기를 의미한다.스프린트의 기본 단위는 1주일로 한다.스프린트는 크게 3가지로 나눠볼 수 있다.개발 계획
개발
테스트
스프린트 계획 회의
스프린트 계획 회의스프린트의 목표와 개발 제품에 대한 요구사항 목록(
backlog)을 정리한다.정리된
backlog에서 우선순위에 따라 이번 스프린트에서 해결할 문제들을todo로 만든다.우선순위는 라벨링과 라벨링에 따른 정렬을 이용한다.
스크럼 회의
스크럼 회의매일 아침 짧게 진행하는 회의.
❗늘어지지 않도록
스탠드업 미팅의 방식으로 진행한다.어제 한 일 / 오늘 할 일 / 새로 추가한
issue에 관한 이야기를 한다.그 외에 공유할 내용이 있다면 공유한다.
스프린트 회고
스프린트 회고스프린트 회고는 스프린트의 종료 시점에 진행한다.
효율적이었던 부분, 비효율이 있던 부분을 분석해서 스프린트 과정을 더 효율적으로 만들도록 노력한다.
issue
issueissue는 처리해야할 일의 가장 작은 단위다.issue는 언제든지 추가할 수 있다.issue는 팀원들과의 회의 도중 바로close될 수 있다.issue는 관련된issue끼리 묶이거나 또는 그issue하나만으로backlog가 된다.
backlog
backlogbacklog란 개발할 제품에 대한 요구 사항 목록이다.스프린트 계획 회의에서 백로그를 작성한다.❗프로젝트 계획 단계 또는
스크럼 회의에서도 작성될 수 있다.하나의
backlog는 규모에 따라 여러개의todo가 될 수 있다.하나 또는 여러 개의
issue가 하나의backlog가 된다.
todo
todotodo는 이번 스프린트에서 완성할 기능이다.backlog를 갈무리해서todo로 만든다.todo는 한PR의 단위가 된다.기본적으로
스프린트 계획 회의에서todo를 정한다.진행상황에 따라
스크럼 회의에서도backlog를todo로 만들 수 있다.
todo는 최대한 자세히 적는다.체크박스의 리스트로 만든다.
체크박스의 리스트 단위는 하나의 커밋 사이즈가 되어야 한다.
In Progress
In Progresstodo에서 현재 진행중인 작업을 칭한다.
Done
Done작업이 마무리 되면
Done상태가 된다.
PR
PRpull request의 약자.PR의 단위는 수정 된line을 기준으로 300 ~ 500 으로 한다.PR에는 해당PR이 해결한issue를link시킨다.PR은 최소 2명이 리뷰를 진행한다.PR이 성공적으로 마무리가 되면PR작성자가merge후 원격저장소에 있는branch를 삭제한다.
스프린트 진행과정
스프린트 계획 회의를 통해 이번주의 목표에 도달하기 위한backlog를 정리하고todo를 작성한다.❗
backlog는 프로젝트 전체에 대한 기능의 목록인 반면todo는 이번스프린트에서 해결할 문제들임팀장은 각 팀원들이 진행할
todo를assign해준다.각 팀원들은 자신이 맡은
todo를 진행한다. 진행함과 동시에In Progress상태로 만든다.❗각 작업들은 새로운 브랜치를 따서 진행해야한다.
작업 도중 버그 또는 추가 되어야할 기능과 같은 생각이 떠오르면
issue를 만든다.매일 아침
스크럼 회의가 진행된다. 이 회의에서는 어제 작업한 내용을 우선적으로 공유한다. 그리고 새롭게 추가된issue에 대한 의견을 나눈다.작업이 마무리 되면
PR를 작성한다.스프린트의 마무리 날에는 리뷰를 진행한다.
하나의 todo 를 해결하는 과정을 예시로 알아보자
todo 를 해결하는 과정을 예시로 알아보자회의 결과 나에게 댓글 기능 추가 가 배정되었다.
기능의 추가와 댓글 이라는 명사가 명확히 주어졌으므로
feat/comment와 같은 브랜치를 만들면 된다.
develop브랜치에서feat/comment라는 브랜치를 만들고 진행한다.새로운
issue가 생겼다면 추가한다.작업 시작 전
스크럼 회의에 참여해 어제 새로 생긴issue를 공유하고, 팀원들의 이야기도 듣는다.다른 팀원이
PR을 마무리하면 현재 작업하고 있는 내용을 마무리 또는git stash한 다음에merge작업을 들어간다.내 작업을 마무리 짓는다면
PR를 작성한다.리뷰가 끝나면
merge와 해당 브랜치의 삭제를 진행한다.다음
todo를 진행한다.
GIT 사용법
GIT이슈트래킹 툴
이슈트래킹 툴은 ZenHub 를 사용합니다.
왜 ZenHub 를 사용하는가?
ZenHub 는 GitHub와 완벽하게 연동된다.
다른 도구(
Jira,Trello,...)와 다르게github와 바로 연동이 된다.내가 계획한 협업 프로세스를 완벽하게 적용할 수 있다.
무료다.
기존에 사용하던 github project 와 ZenHub 의 비교
github project 와 ZenHub 의 비교issues와project의 탭이 분리되어 있어서 한눈에 보는데 불편함. 반면ZenHub는Issue또한 하나의 칸반보드로 관리함sprint라는 개념이 존재하지 않아서milestone으로 스프린트를 관리해야했다. 반면ZenHub는sprint가 있음. 실제로milestone보다sprint기능을 적극 권장함.우선순위를 라벨링으로만 해야한다. 반면
ZenHub는 정말로 우선순위 설정 기능이 존재하고, 자동으로 top - bottom 으로 정렬을 해준다.
Last updated
Was this helpful?