애자일 방식 협업 팀프로젝트 시작
운이 좋게도 좋은 팀원들과 첫 스터디에서의 첫 프로젝트를 하게 되었다. 엘리스 트랙과 동시에 진행되는 만큼 스터디는 부가적인 느낌이지만 그래도 최선을 다해보자
목표
- 목표는 엘리스에서 진행하는 1차 스터디의 기한 내에 하나의 프로젝트를 완성해 보는 것.
- 실제 현업에서 진행하는 애자일 방식의 프로젝트 진행을 최대한 비슷하게라도 흉내를 내어 협업의 경험도 겪는 것
이번 스터디에서 가장 마음에 드는 것이 2번의 목표이다. 보통 스터디를 하며 프로젝트를 진행할 때 이 정도까지 해야하나 싶은 것들을 경험하며 협업의 경험을 얻는 것이 나에겐 가장 큰 것 같다.
그렇다면 어떻게 흉내를 낼지 보자
지라, 슬랙, 디스코드 등 모든 도구의 활용 와 Pull request
팀 프로젝트를 진행하며 지라를 통해 팀 전체의 스케줄을 관리하고 슬랙과 디스코드를 통해 스크럼을 진행한다. 또 지라의 기능 중 스프린트의 이슈를 만들면 브랜치 키를 발급해주는데 이를 활용해 브랜치를 만들고 Pull request를 한다. 이 때 Pull request가 받아 지려면 모든 팀원이 해당 코드를 이해하면 받아지는 방식이다.
이제 사용할 도구를 알았으니 어떻게 애자일방식의 프로젝트를 진행할지 알아보자
애자일 방법론과 스프린트, 스크럼
애자일은 쉽게 말해서 일하는 방식이다. 먼저 애자일 방법론이 뭔지 알아보자.
애자일 소프트웨어 개발에서 주요한 4가지 특성이 있다.
- 개인과 개인 간의 상호작용이 프로세스 및 툴보다 우선
- 작동하는 소프트웨어가 포괄적인 문서보다 우선
- 고객과의 협업이 계약 협상보다 우선
- 변화에 대응하는 것이 계획을 따르는 것보다 우선
이 중 개인과 개인 간의 상호작용과 작동하는 소프트웨어가 어떻게 보면 우리가 경험할 수 있는 이번 프로젝트에서의 기회이라고 생각이 된다.
우리는 이 쉽게 얻을 수 없는 경험을 위해서 다음과 같은 방식으로 진행하기로 했다.
- 주 단위의 스프린트 및 회고 작성
- 매일 아침의 스크럼
- Pull request는 팀원 전원이 이해해야 merge
- 기술 문서 작성
보통 스프린트는 2주 단위로 구성한다 한다. 하지만 한달여의 시간이 있는 우리는 1주로 잡았고 이 한주동안 하나의 목표를 이뤄내기 위해 다 같이 전력질주를 한다. 물론 엘리스 트랙의 일정에 맞춰서. 또 매일 아침의 스크럼은 팀원 각자가 프로젝트에 대해 의견과 또는 진행 상황을 공유하고 때때론 잡담도 한다. 이를 통해 개인 간의 진행상황과 생각을 공유하며 팀 프로젝트를 진행하는데 서로 지치지않게 하여 팀의 방향을 잃지 않고 나아갈 수 있게 해주었다.
마무리
나에게 있어서 이 프로젝트를 진행하며 가장 얻고 싶은 것은 리액트의 숙련도도 있다. 하지만 개발은 혼자서 하는 것이 아닌 보통 팀을 만들어서 협업한다. 그러므로 협업을 잘하는 것은 필수이며 이를 잘할수 있는 의사소통 능력과 팀 프로젝트에서 소중한 경험을 얻어가고 싶다.
왜 유니콘 기업들과 대기업 들은 이런 애자일 방식의 팀프로젝트를 진행하는 지 그 이유와 근거를 알고 먼 훗날에는 이 첫 프로젝트가 좋은 발판이 되어 나에게 큰 도움을 주리라 믿고 최선을 다해보자