SlideShare a Scribd company logo
git을 통한 협업 프로세스와
프로젝트 매니징
Yooii Studios 김우성
About me
• 유이스튜디오 CTO (2011. 11 ~ )

• iOS, Android - 4개 앱 개발 & PM(약 4년)

• 경북대 도서관 iOS/Android
경북대 도서관
git + Pull Request + Code Review and Project Management with Agile
경북대 도서관
• iOS - 2012년 졸프. Scrum 처음으로 적용.

• Android - 2014년 후배 졸프 팀에 멘토로 참여,
이후 이어받아 리뉴얼을 통해 출시 이후 업데이트

• 경북대 도서관 페이스북 페이지 관리
개발했던 앱들
• iOS - Morning Kit

• Android - Morning Kit, News Kit, Swish

• 현재 Swish iOS 개발 중
Morning Kit News Kit Swish
Today’s outline
• Part 1: git + github 

• Part 2: Project Management
Part 1:

git, Pull Request, 

Code Review
git?
git?
현존하는 가장 진보적 버전 관리 시스템:

DVCS = Distributed Version
Control System
VCS, CVCS, DVCS
• VCS = 소스 코드 관리 시스템

• SVN = Centralized VCS

• git = Distributed VCS
SVN = CVCS
• 중앙 서버에 오류가 생기면 작업 중지

• 인터넷 없이 커밋 불가능

• 서버 데이터가 날라가면 끝
git = DVCS
• 1 로컬 저장소 / 1 프로그래머

• 인터넷 없이 버전 관리 가능

• 빠르다!

• 복구가 아주 쉬움
한번도 git을 사용해보지 않은 사
람은 있어도 한 번만 사용해 본
사람은 없다!
git + Pull Request + Code Review and Project Management with Agile
Linux
Linus Torvalds
git - Built for Linux
• 대부분의 시절: 원시적인 패치와 압축파일로 관리

• 2002년: 상용 DVCS BitKeeper 사용

• 사이가 틀어진 후 리눅스 커뮤니티에서 2005년
자체 개발에 성공

• 개발 초기엔 리누스 토발즈가 직접 많이 참여
Goals for git
• 빠른 속도

• 단순한 구조

• 비선형적인 개발(수천 개의 동시다발적인 브랜치)

• 완벽한 분산

• 리눅스 커널 같은 초대형 프로젝트도 사용 가능
SVN vs git
+
2011. 3
캐나다:

2012. 1
미국:

2011. 7
인도:

2012. 1
영국:

2011. 10
한국:

2014. 5
일본:

2013. 10
무려 3년 2개월의 차이
무려 3년 2개월의 차이
➤ 이미 전세계에서는 git이 중심
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
Pull Request
Pull Request
Pull Request
독립적인 기능을 독립적인 코드에.
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
Code Review
Code Review
코드 퀄리티 향상, 코드 컨벤션 일치, 지식 공유
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request +
Code Review
+
Agile Dev.
➤ Global Standard
git + Pull Request + Code Review
1부 Q & A
git, Pull Request, Code Review
Part 2:

Project Management
Project Management
• Agile
• Moves like Scrum
• Kanban on the way
1. Agile
Agile Software Development
• 프로세스와 도구보다 각 개인과 상호작용을

• 문서작업보다 실제 작동하는 소프트웨어를

• 계약 협상보다 고객과의 협력을

• 계획에 따르기보다 변화에 반응을
Agile Software Development
• 프로세스와 도구보다 각 개인과 상호작용을

• 문서작업보다 실제 작동하는 소프트웨어를

• 계약 협상보다 고객과의 협력을

• 계획에 따르기보다 변화에 반응을
형식과 겉보기 보다는
정말 중요한 것들에 집중하자!
Agile in projects
• Agile = 기민한, 낭비없는

• Code-oriented

• 지속적인 배포
2. Moves like Scrum
Scrum in Agile
• Agile은 소프트웨어 개발 철학

• Scrum은 Agile의 방법론 중 하나

• Sprint = Scrum의 한 개발 주기 단위
Scrum
• 일을 가능한 작게 나누고 우선순위 정렬

• 각 일에 대해서 소요시간 추정(ex: 2점 = 2시간)

• 한 스프린트 동안 해낼 수 있는 양 추정(ex: 25점)

• 해당 스프린트가 끝나면 배포 가능한 제품 출시
한 스프린트가 끝나면 

스프린트 리뷰 회의,

스프린트 계획 회의 진행
Pivotal Tracker
Redmine, Basecamp, Trac, etc.
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
강력하지만 복잡

스크럼 마스터 필요

시간 소요가 큼
3. Kanban on the way
Scrum의 단점
• 오버헤드: 시간 소요, 스크럼 마스터 필요, 스프린트 회의

• 추정의 미신: 예측을 위해 추정, 하지만 항상 부정확함,
아까운 시간 소모

• 사기와 번아웃: 틀린 추정, 우선순위/기획 변경이 있음에
도 푸시, 스프린트 후 사기 저하 및 번아웃
Scrum의 단점
• 시간 기준 반복 개발이 내포하는 문제점

• 짧은 개발 주기: 기간 내에 개발 가능한 개발 항목만

• 실제 작업은 연속적, Scrum은 스프린트 내
끝낼 일만 추가 가능
Kanban = 신호 카드
토요타의 생산 시스템 기법 중 하나
Kanban = 신호 카드
프로세스 뒤쪽 단계에서 앞쪽으로 신호를 보내 생산 요청
Kanban on Software
• Scrum 단점을 개선하기 위한 방법론

• 뒤쪽 공정이 완료되면 앞쪽 공정에 요청

• Scrum보다 협업을 강조

• 만능은 아니다. 장단점이 다를 뿐
Kanban의 특징
• 워크 플로우 시각화

• 진행중인 작업 수(WIP) 제한
• 부드러운 흐름으로 개발 가능
git + Pull Request + Code Review and Project Management with Agile
시각화
트렐로와 유사하게 현재 작업하고 있는 흐름을 한 눈에 파악
진행중인 작업 수 제한
각 열에 할당 가능한 이슈 수가 제한해 품질을 향상. 

이전보다 더 빠른 작업 완료. 재작업이 줄어듬
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
칸반 나라의 하루
도서 ‘칸반과 스크럼’ 에서 발췌
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
Kanban Tools
• Redmine

• Trac

• JIRA - 유료, 하지만 강력
$10 / year on your server
Kanban in JIRA Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
WIP를 정하는 법?
정답은 없습니다.
각 팀원이 협업을 해야할 정도의
병목현상이 생길 정도 조정
중요한 것은 적절한 WIP를 찾기 위해
계속 조정해야 한다는 것
Morning Kit, News Kit,
Swish Boards
➤ Whole Projects Board
git + Pull Request + Code Review and Project Management with Agile
+
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
Best practice: 

Trello
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
To Do(Maybe)
To Do(Must)
In Progress
Done
In Testing
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
git + Pull Request + Code Review and Project Management with Agile
Summary
• git, Pull Request, Code Review

• Trello, Scrum(Pivotal Tracker), Kanban(JIRA)

• Kanban in Trello

• PM 경험은 현업에서도, 면접에서도 중요
2부 Q & A
Agile Dev. - Scrum, Kanban
kwosu87@me.com
Thank you!
김우성

More Related Content

PDF
Pivotal Labs 고객사례 - Coinone
PDF
[오픈소스컨설팅]Session 4. dev ops 구성 사례와 전망
PPTX
신림프로그래머모임_개발프로세스개선기
PDF
꿀밋업시리즈3탄_Spring Boot를 활용한 마이크로서비스 개발과 페어프로그래밍(TDD)
PDF
Online Board(Trello), Scrum(Pivotal Tracker), Kanban(JIRA Agile)
PDF
이클립스 플랫폼
PDF
Atlassian 및 오픈소스를 이용한 DevOps 구축 - 한국정보컨설팅
PDF
깃헙으로 코드리뷰 하기
Pivotal Labs 고객사례 - Coinone
[오픈소스컨설팅]Session 4. dev ops 구성 사례와 전망
신림프로그래머모임_개발프로세스개선기
꿀밋업시리즈3탄_Spring Boot를 활용한 마이크로서비스 개발과 페어프로그래밍(TDD)
Online Board(Trello), Scrum(Pivotal Tracker), Kanban(JIRA Agile)
이클립스 플랫폼
Atlassian 및 오픈소스를 이용한 DevOps 구축 - 한국정보컨설팅
깃헙으로 코드리뷰 하기

What's hot (20)

PPTX
배포
PDF
[오픈소스컨설팅] DevOps 체험교육 소개
PDF
Dev team chronicles
PDF
Kakao meets jira
PDF
Github + Heroku + Circle CI 를 이용한 Django Application 배포 자동화
PDF
[D2CAMPUS] Tech meet up ; iOS 개발편
PDF
04 워터폴모델-개발프로세스
PDF
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
PDF
소프트웨어 개발 프로세스 배경 설명
PDF
[오픈소스컨설팅]Session 6. scrum과 jira 기반의 소프트웨어 개발 프로세스
PDF
[Tech meet up] 2018 프론트엔드 트렌드&인사이트
PDF
Scrum and kanban with jira
PPTX
[해줌] 애자일 스크럼 교육 자료
PDF
제 5회 D2 CAMPUS FEST O.T - billboard.js 차트오픈소스개발기
PDF
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
PDF
[NDC13] 70명이 커밋하는 라이브 개발하기 (해외 진출 라이브 프로젝트의 개발 관리) - 송창규
PDF
[TECHCON 2019: MOBILE - Android]4.쪼개지고 나누어지는 안드로이드
PPT
기획1팀
PPTX
좋은 개발자 되기
PDF
2020년 12월 20일 개발자 이야기
배포
[오픈소스컨설팅] DevOps 체험교육 소개
Dev team chronicles
Kakao meets jira
Github + Heroku + Circle CI 를 이용한 Django Application 배포 자동화
[D2CAMPUS] Tech meet up ; iOS 개발편
04 워터폴모델-개발프로세스
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
소프트웨어 개발 프로세스 배경 설명
[오픈소스컨설팅]Session 6. scrum과 jira 기반의 소프트웨어 개발 프로세스
[Tech meet up] 2018 프론트엔드 트렌드&인사이트
Scrum and kanban with jira
[해줌] 애자일 스크럼 교육 자료
제 5회 D2 CAMPUS FEST O.T - billboard.js 차트오픈소스개발기
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
[NDC13] 70명이 커밋하는 라이브 개발하기 (해외 진출 라이브 프로젝트의 개발 관리) - 송창규
[TECHCON 2019: MOBILE - Android]4.쪼개지고 나누어지는 안드로이드
기획1팀
좋은 개발자 되기
2020년 12월 20일 개발자 이야기
Ad

Viewers also liked (6)

PPTX
Developing iOS with Rx, MVVM
PDF
경북대도서관 스마트앱 최종발표
PDF
Android TV at Google Developers Summit
PDF
Rambler.iOS #5: Разбираем Massive View Controller
PPTX
NDC14 - Rx와 Functional Reactive Programming으로 고성능 서버 만들기
PDF
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Developing iOS with Rx, MVVM
경북대도서관 스마트앱 최종발표
Android TV at Google Developers Summit
Rambler.iOS #5: Разбираем Massive View Controller
NDC14 - Rx와 Functional Reactive Programming으로 고성능 서버 만들기
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Ad

Similar to git + Pull Request + Code Review and Project Management with Agile (20)

PDF
디자인 시스템 반영기 / adiOS / 2021 Oct.
PPTX
제13회컨퍼런스 조대협 서버사이드개발
PDF
ALM과 DevOps 그리고 Azure DevOps
PPTX
애자일 하라
PDF
[네이버오픈소스세미나] egjs-view360 개발기 - 김희재
PPTX
애자일 스크럼과 JIRA
PDF
성장하는 스타트업의 프로세스 개척기
PDF
131 deview 2013 yobi-채수원
PDF
코프링 프로젝트 투입 일주일 전: 주니어 개발자의 코틀린 도입 이야기
PDF
Let'Swift 2023 iOS 애플리케이션 개발 생산성 고찰
- 정시 퇴근을 위해 우리는 어떻게 해야할 것인가?
PPTX
DEVOPS 에 대한 전반적인 소개 및 자동화툴 소개
PDF
DevOps는 원격근무를 추구하면 안되는 걸까?
PPTX
Saturday Azure Live 1701 Azure WebApp 개념원리
PDF
경희대 해커 기술 세미나 - Git hub으로 학교 팀프로젝트 하기(조성수)
PDF
Github 으로 학교 팀 프로젝트 하기
PDF
D2 캠퍼스 세미나 - 학생 개발자에서 신입 개발자로 한단계 업그레이드 하기
PDF
언제 애자일을 써야 좋을까? The better ways of developing software
PDF
AWS와 함께하는 DevOps이야기 :: 박선용 :: AWS Summit Seoul 2016
PDF
Event storming based msa training commerce example add_handson_v3
PPTX
신규 협업도구 사용자 교육(공통 비개발자)
디자인 시스템 반영기 / adiOS / 2021 Oct.
제13회컨퍼런스 조대협 서버사이드개발
ALM과 DevOps 그리고 Azure DevOps
애자일 하라
[네이버오픈소스세미나] egjs-view360 개발기 - 김희재
애자일 스크럼과 JIRA
성장하는 스타트업의 프로세스 개척기
131 deview 2013 yobi-채수원
코프링 프로젝트 투입 일주일 전: 주니어 개발자의 코틀린 도입 이야기
Let'Swift 2023 iOS 애플리케이션 개발 생산성 고찰
- 정시 퇴근을 위해 우리는 어떻게 해야할 것인가?
DEVOPS 에 대한 전반적인 소개 및 자동화툴 소개
DevOps는 원격근무를 추구하면 안되는 걸까?
Saturday Azure Live 1701 Azure WebApp 개념원리
경희대 해커 기술 세미나 - Git hub으로 학교 팀프로젝트 하기(조성수)
Github 으로 학교 팀 프로젝트 하기
D2 캠퍼스 세미나 - 학생 개발자에서 신입 개발자로 한단계 업그레이드 하기
언제 애자일을 써야 좋을까? The better ways of developing software
AWS와 함께하는 DevOps이야기 :: 박선용 :: AWS Summit Seoul 2016
Event storming based msa training commerce example add_handson_v3
신규 협업도구 사용자 교육(공통 비개발자)

git + Pull Request + Code Review and Project Management with Agile