티스토리 뷰

1️⃣  애자일 스크럼 방법으로 5일간의 솔로프로젝트 진행하기

 

1. 프로젝트 요구사항 명세서 분석하기

프로젝트 요구사항 및 기능명세서, API문서, 피그마 디자인 도큐먼트를 제공받았다. 이것을 읽어보며 프로젝트를 분석한다.



2. 프로젝트 설계하기

프로젝트를 분석한 후, 팀원과 프로젝트를 설계한다. 이 과정에서 애자일 스크럼 방법을 이용했다.

플래닝

스프린트 기간동안 작업할 수 있는 총 작업시간을 책정하고, 작업들을 정한다.
프로젝트 기간은 5일이고, 코딩에 집중할 수 있는 시간을 하루에 5시간으로 잡는다. 총 작업시간은 25시간이다.
github의 project board기능을 이용한다. Backlog swimlane추가하여 이곳에 작업들을 기능단위로 추가한다. 이 때, 팀원과 입코딩으로 브레인스토밍하듯이 많은 고려 사항들을 모두 적는다.

 

@hahagarden's untitled project • hahagarden

@hahagarden's untitled project

github.com

 

플래닝 포커

전체 프로젝트에 필요한 기능들을 기능단위로 티켓을 만들었다면, 이제 Todo로 옮길, 실제 스프린트 기간동안 진행할 작업들을 선별할 차례이다. 기능별로 자신이 해당 작업을 맡는다면 얼마나 걸릴지 시간을 각자 정한 후, 팀원과 협의하여 만장일치로 정한다. 
플래닝 단계에서 작성한 입코딩 내용들을 정리한다.

스프린트 진행

Todo에서 In progress로 옮겨 작업을 진행한다. 이 때 갑자기 생긴 이슈들은 작업에 추가하는 것이 아니라, Backlog에 추가해 놓은 후 해당 다음 스프린트 기간에 고려한다.

 

3. 구현

설계한 내용을 바탕으로 작업을 진행한다.

 

2️⃣ 깃 사용하기

git pull origin main # remote main에서 변경내역 pull
git push origin 브랜치명 # remote 해당 브랜치로 push
git checkout -b 브랜치명 # 브랜치 생성 후 이동
git branch # 브랜치 목록 및 현재 브랜치 확인
git branch -d 브랜치명 # 브랜치 삭제
git branch -m 기존브랜치명 바꿀브랜치명 # 브랜치 이름 변경
git stash -u # 현재 변경된 파일 stash에 저장
git stash pop # stash에 저장되어있는 최신 파일 불러옴

- main에서 작업하지 않는다. 브랜치를 만들어서 main에 merge하는 것이다.

- 기능 작업할 때마다 branch 생성하여 작업하고 PR을 하고 작업이 완료되면 merge한다. merge한 브랜치는 더이상 사용하지 않는다. 수정사항이 생겨도 새로운 브랜치를 생성해서 작업한다.

- main에 머지된 브랜치가 있으면 로컬에서 pull을 받은 후에 main을 base로 새 브랜치를 생성하고 작업한다.

- 다른 기능인데 브랜치끼리 의존성이 있는 경우 충돌이 날 수 있다. 이 경우에는 충돌을 해결한다. 그래서 의존성이 없도록 플래닝 단계에서 기능을 잘 나누어야 한다.

 

반응형
댓글