52
성성성성 Agile 성 성성 성성 성성성 Scrum 성성성성 2015.07 SK Planet 성성성

성공하는 애자일을 위한 짧은 이야기

  • Upload
    -

  • View
    185

  • Download
    4

Embed Size (px)

Citation preview

Page 1: 성공하는 애자일을 위한 짧은 이야기

성공하는 Agile 을 위한 짧은 이야기Scrum 살펴보기

2015.07SK Planet고종범

Page 2: 성공하는 애자일을 위한 짧은 이야기

들어가기 전에본 발표 내용은 애자일을 도입한다는 전제하에 만들어졌습니다 .

애자일 도입을 왜 해야하는지 ? 애자일을 반드시 도입해야하는지 ?애자일 외에 다른 것을 하면 안되는지 ?

이런 것이 궁금하시다면 발표 후 발표자인 저 SQE 팀 고종범 매니저에게 문의하시면 됩니다 .

( 참고로 ... 발표 자료가 조금 정신 없습니다 .)

Page 3: 성공하는 애자일을 위한 짧은 이야기

들어가기 전에애자일 왜 해야하는지 도움이 될 만한 것들을 살짝 살펴보면 ...

http://j.mp/proc_trends

Page 4: 성공하는 애자일을 위한 짧은 이야기

Agile 도입은 Scrum 으로 ?Scrum 살펴보기

Page 5: 성공하는 애자일을 위한 짧은 이야기

Scrum

Page 6: 성공하는 애자일을 위한 짧은 이야기

Scrum

* 출처 : 애자일 SW 개발 101

Page 7: 성공하는 애자일을 위한 짧은 이야기

SPRINT REVIEW(+RETROSPECTIVE)

DAILY SCRUM

Three Meetings

SPRINT PLANNING

Page 8: 성공하는 애자일을 위한 짧은 이야기

BURNDOWN CHART

TASK BOARD

PRODUCT INCREMENT

SPRINT BACKLOG

PRODUCT BACKLOG

Five Artifacts

Page 9: 성공하는 애자일을 위한 짧은 이야기

Three Roles of a scrum team

PRODUCT OWNER SCRUM MASTER SCRUM TEAM

Page 10: 성공하는 애자일을 위한 짧은 이야기

Product Owner 의 역할PRODUCT OWNER

Stakeholder

UserScrum Team제품의 비전

성공에 대한 책임

제품의 로드맵요구사항 User Story

요구사항 결정권한위임 우선순위

Page 11: 성공하는 애자일을 위한 짧은 이야기

Scrum Team 의 역할SCRUM TEAM

User Story Product

진행 상태이슈 사항

기능 완료 책임기능 구현 권한

Page 12: 성공하는 애자일을 위한 짧은 이야기

Scrum Master 의 역할

SCRUM MASTER

Scrum Leader

Scrum Coach

Facilitator

Change Agent

Scrum Team 에게 Scrum 을 적용하고 유지하기 위해 Scrum 을 leading 하도록 한다 .

Scrum 도입에 어려움을 겪는 팀원들을 위해서 Scrum 적용 및 업무수행에 대하여 coaching 하도록 한다 .

Scrum Team 이 Scrum 을 진행하는 과정에서 팀원간의 의사소통을 중재하고 팀에서 발생하는 이슈에 대하여 해결 방법을 찾도록 한다 .

Scrum 을 적용함에 있어서 발생하는 수많은 변화에 대하여 관리를 하고 변화의 지속성을 위해 끊임없이 변화를 유도하도록 한다 .

Page 13: 성공하는 애자일을 위한 짧은 이야기

Scrum 은 프로세스

Page 14: 성공하는 애자일을 위한 짧은 이야기

Scrum 도입 ?!

이렇게 간단한데 잘 안되는 이유는 무엇일까요 ?

Page 15: 성공하는 애자일을 위한 짧은 이야기

Agile 철학을 알아야 한다 .XP 로 보는 Agile 철학

Page 16: 성공하는 애자일을 위한 짧은 이야기

XP(eXtreme Programing)

1990 년대 후반 켄트 벡 (Kent Beck) 을 중심으로 여러 엔지니어들이 프로젝트를 진행하며 얻었던 교훈을 기반으로 효과적이라 생각되는 개발 기법을 모은 하나의 방법론“ 성공을 준비하라 .

성공에서 한 발짝 뒤로 물러나 자신을 보호하지 말라 . 최선을 다한 다음 결과에 대처하라 .

이것이 극단 extreme 이다 .”

Page 17: 성공하는 애자일을 위한 짧은 이야기

XP 하면 생각나는 것들

TDD (Test-Driven Development)

CI (Continuous Integration)

Pair Programming / Mob Programming

Page 18: 성공하는 애자일을 위한 짧은 이야기

XP(eXtreme Programing)

익스트림 프로그래밍의 공동저자이자 아내“ 신시아 안드레스”심리학 석사- 조직 행동론- 의사 결정 분석- 여성학

XP 에는 심리학을 포함하고 있다 .

Page 19: 성공하는 애자일을 위한 짧은 이야기

XP(eXtreme Programing) - 가치Communicati

on

Respect Simplicity

Courage Feedback

Page 20: 성공하는 애자일을 위한 짧은 이야기

XP(eXtreme Programing) - 가치• 의사 소통은 단방향이 아니라 양방향이다 .• 우리는 한 팀이라는 느낌을 만들고 효과적으로 협동하려면 의사소통이 중요하다 .• 의사 소통은 가장 기본적인 가치이며 가장 중요한 가치이다 .

Communication

Outside

Inside

행동

감정 지각감정에 대한 감정

기대열망 ( 보편적 소망 )

자기 (Self)

사티어 빙산의사소통

Page 21: 성공하는 애자일을 위한 짧은 이야기

XP(eXtreme Programing) - 가치• 제대로 작동할만한 ( 효과가 있을 법한 ) 가장 단순한 것은 뭘까 ?• 불필요한 복잡성을 제거하는 쪽으로 기울이라는 것이다 .• 단순성을 성취하면 그만큼 의사소통해야 할 것도 줄일 수 있다 .

Simplicity

Simplicity is the ultimate sophistication. ~ Leonardo da Vinci

Page 22: 성공하는 애자일을 위한 짧은 이야기

XP(eXtreme Programing) - 가치• 어떻게 하는 것이 ' 제대로 ' 하는 것인지 모를 수 있다 .• 오늘은 제대로 돌아가던 것이 내일은 그렇지 않을지도 모른다 .• 오늘 모든 것을 ' 제대로 ' 하는 데에 시간이 너무 걸려서 해결책을 다 구현하기도 전에 내일의 바뀐 상황이 그 해결책을 무효로 만들지도 모른다 .

Feedback

돌이킬수 없는늦은 피드백

Sprint 마다 빠른 피드백

Page 23: 성공하는 애자일을 위한 짧은 이야기

XP(eXtreme Programing) - 가치• 실패하는 해결책을 버리고 새로운 해결책을 찾아 나서는 용기는 단순함을 북돋운다 .• 진짜 답변 , 구체적인 답변을 추구하는 용기는 피드백을 낳는다 .• 다른 가치들과 조화를 이룰 때 강력해 진다 .• 진실을 말할 수 있는 용기는 의사소통과 신뢰를 자라게 한다 .

Courage

Page 24: 성공하는 애자일을 위한 짧은 이야기

XP(eXtreme Programing) - 가치• 모든 사람은 인간으로서 동등한 가치를 지닌다 .• 팀에 속한 모든 개인의 기여를 존중해야한다 .• 개인의 경험과 지식에 대해서도 존중할 수 있어야 한다 .• 나도 중요한 사람이고 당신도 중요한 사람이다 .

Respect

개인개인

개인

개인

개인

팀개인

개인개인

개인

개인

Page 25: 성공하는 애자일을 위한 짧은 이야기

XP 에서 말하는 애자일 철학에는

사람과 팀을 중요시하는 심리학이 포함되어 있다 .

Page 26: 성공하는 애자일을 위한 짧은 이야기

Agile 은 ㅇㅇㅇㅇ을 위한 목표가 있다 .삼시세끼로 보는 애자일 철학

Page 27: 성공하는 애자일을 위한 짧은 이야기

삼시 세끼 - 어촌편

* SACT(SK Planet Agile Coach Training) 교육자료 참조

Page 28: 성공하는 애자일을 위한 짧은 이야기

삼시 세끼 - 어촌편

* SACT(SK Planet Agile Coach Training) 교육자료 참조

Page 29: 성공하는 애자일을 위한 짧은 이야기

삼시 세끼 - 어촌편

* SACT(SK Planet Agile Coach Training) 교육자료 참조

Page 30: 성공하는 애자일을 위한 짧은 이야기

삼시 세끼 - 어촌편

* SACT(SK Planet Agile Coach Training) 교육자료 참조

Page 31: 성공하는 애자일을 위한 짧은 이야기

삼시 세끼 - 어촌편

* SACT(SK Planet Agile Coach Training) 교육자료 참조

Page 32: 성공하는 애자일을 위한 짧은 이야기

삼시 세끼 - 어촌편

* SACT(SK Planet Agile Coach Training) 교육자료 참조

Page 33: 성공하는 애자일을 위한 짧은 이야기

삼시 세끼 - 어촌편

* SACT(SK Planet Agile Coach Training) 교육자료 참조

Page 34: 성공하는 애자일을 위한 짧은 이야기

애자일 철학Agile 은 불확실성을 낮추는데 목표를 가지고 있다 .

생산성 품질비용

Page 35: 성공하는 애자일을 위한 짧은 이야기

애자일 철학

행동 실수 결과

실수 예방 실수 관리

FAIL 이란 ? ‘배우는 과정의 첫번째 시도’ (First Attempt In Learning)

Agile 에서는 실수 , 실패를 예방하기보다는 관리하는데 목표가 있다 .

Page 36: 성공하는 애자일을 위한 짧은 이야기

Agile 에는 다양한 것들이 있다 .다양성에 대한 이야기

Page 37: 성공하는 애자일을 위한 짧은 이야기

Agile 방법론의 종류

XP(eXtreme

Programming)

Scrum

Kanban

Feature-Driven

Development

Lean Software

Development

Agile 에는 다양한 방법론이 존재한다 .

Page 38: 성공하는 애자일을 위한 짧은 이야기

Agile 방법론의 종류별 도입 Case 예제

XP(eXtreme

Programming)

Scrum

Kanban

불확실성이 높은 경우 , 적은 인원 , Release 일정 없음 , 빠르게 실험할 경우Pair Programming, Mob Programming 등이 가능한 경우

불확실성이 대체로 낮은 경우 , 많은 인원 , 3 개월 이상의 기간 , 납기 준수

잦은 Release 를 수행해야하는 경우기획 , 설계 , 개발 , 테스트 등 절차적으로 수행하고자 하는 경우한 제품 혹은 한 서비스의 주기적 업그레이드가 필요한 운영성 업무

Case 예제어떤 방법이 옳은 것인지 명확한 가이드는 존재하지 않음

Page 39: 성공하는 애자일을 위한 짧은 이야기

조직의 다양성과 Agile 방법론

애자일 한 팀능력 중심의 팀협업 중심의 팀개인별 과제수행 팀팀의 다양성

사업의 다양성

서비스 사업 플랫폼 사업 ConsumerProduct

MerchantProduct

Scrum 과 같이 단일 방법론으로 조직확산이 안되는 이유는 다양성에 있다 .

Page 40: 성공하는 애자일을 위한 짧은 이야기

조직의 다양성과 Agile 방법론복잡한 문제는 복잡한 방식으로 풀수 밖에 없다 . 다양한 방법론 도입으로 접근해야한다 .

XP Scrum Kanban

Agile

Page 41: 성공하는 애자일을 위한 짧은 이야기

Agile 확산 접근 방법개별 팀의 특성을 파악하고 , 적절한 방법론을 찾고 , 변화를 시작해야한다 .그렇게 하기 위해서는 Change Agent 인 Agile Coach 가 수행할 수 있다 .

관찰하기 측정하기 흐름제어 애자일도입하기 지속적변화통제

실제 도입 시점현재

Page 42: 성공하는 애자일을 위한 짧은 이야기

성공하는 애자일 도입을 위한 이야기애자일 실천법과 애자일 코치

Page 43: 성공하는 애자일을 위한 짧은 이야기

변화 모델애자일 팀이 되가는 과정은 멀고도 험한 과정입니다 .

애자일 도입과 함께 혼돈의 시기가 찾아오기 마련입니다 .혼돈의 시기가 끝난후 통합의 시기를 거쳐 새로운 상태로 거듭나기까지 지속적인 노력이 필요합니다 .

Page 44: 성공하는 애자일을 위한 짧은 이야기

전진의 법칙직장내에서 가장 기분 좋은 날 구성원들이 경험한 것은 “작은 성공” 입니다 .

작은 성공촉진제 ( 자율성 보장 , 업무지

원 )영양분 ( 좋은 대인 관계 )

좌절 ( 업무 퇴보 , 목표 상실 )억제제 ( 업무 지원 부족 , 강압적

명령 )독극물 ( 대인 관계 훼손 )

0 20 40 60 80

작은 성공 긍정적 직장생활

전진의 법칙 : 테레사 에머빌 , 스티븐 크레이머

Page 45: 성공하는 애자일을 위한 짧은 이야기

프로젝트 성공의 요소

The Standish Group 의 CHAOS MANIFESTO 2013

Page 46: 성공하는 애자일을 위한 짧은 이야기

프로젝트 성공의 요소작은 프로젝트가 성공률이 높다 . 큰 프로젝트를 작게 나누어서 하는 것이 성공률이 높다 .

The Standish Group 의 CHAOS MANIFESTO 2013

Page 47: 성공하는 애자일을 위한 짧은 이야기

성공하는 애자일을 위한 이야기사람과 팀을 중요시하는 애자일 철학을 알아야 한다 .

Agile 은 불확실성을 낮추는데 목표를 가지고 있다 .Agile 에서는 실수 , 실패를 예방하기보다는 관리하는데 목표가 있다 .

개별 팀의 특성을 파악하고 , 적절한 방법론을 찾고 , 변화를 위해서는 Change Agent 인 Agile Coach 가 필요하다 .

“ 작은 성공” 작게 나누어서 하는 것 지속적

Page 48: 성공하는 애자일을 위한 짧은 이야기

우리는 어떻게 준비하고 있는가 ?애자일 코치 기반 애자일 확산 방법론

Page 49: 성공하는 애자일을 위한 짧은 이야기

Agile Coach 와 Agile 확산

SACT(SKP Agile Coach Training)

Scrum Master - Practices

Scrum Master - Coaching

애자일 SW 개발 101 워크숍Agile 의 가치가 무엇이고 , 어떤 애자일 방법론들이 있는지 학습하며 , 애자일을 SW 개발에 실제로 적용하기 위해 어떤 노력을 해야하는지 배우게 되는 과정으로 가장 널리 사용되는 스크럼 기반의 프로젝트 진행방법을 경험하는 과정

AgileCoach전문가 과정

ScrumMaster과정

ScrumTeam전사 과정

Scrum 에 대한 상세한 방법에 대하여 학습하고 Scrum Master 의 역할에 대하여 학습하는 과정- 애자일 개론 및 실천방안- 스크럼 마스터의 역할

Scrum Master 가 갖추어야한 Coaching 방법에 대하여학습하고 연습하는 과정- 애자일 코칭 기법- 애자일 코칭 연습

Agile 개론과 철학에 대하여 깊이있게 탐구하고 Agile Coach 가 갖추어야 하는 Coaching 방법에 대하여 학습하고 연습함으로써 개인과 조직이 더 효과적이 될 수 있게 코치가 되는 과정- 조직문화 , 습관설계 , 코칭 기법 , 퍼실리테이션 , 측정과 실험- 애자일 개론과 철학 , 애자일 기술적 실천법

Agile CoachCommunity

Improvement

전사적으로는 “애자일 SW 개발 101 워크숍”을 통해 Scrum 을 학습하고 , SACT 와 Scrum Master 과정을 통해 Agile Coach 를 양성하고 , 적극적인 관심을 같은 Agile Coach 들이 서로 커뮤니케이션 하면서 애자일 확산을 점진적으로 진행하도록 한다 .

Page 50: 성공하는 애자일을 위한 짧은 이야기

Agile Coach Community

애자일 사례 학습 이슈 연구 및 해결안 모색친선을 통한 회복 코칭 연습

Agile Coach 간의 다양한 활동을 통해 점진적 애자일 전파

학습 지식 및 이슈 사례에 대한 공유 및 발표

@Tech SocialCastReadmeSeminar

Page 51: 성공하는 애자일을 위한 짧은 이야기

Agile Coach 를 기반으로 한 Agile 확산 방법론

Agile 확산은 매우 복잡한 문제이다 . 때문에 복잡한 방법으로 접근해야한다 .또 복잡한 문제를 점진적으로 풀어나가기 위해서는지속력있는 Agile Coach 가 점진적으로 수행하여야 한다 .

Page 52: 성공하는 애자일을 위한 짧은 이야기

Scrum Master / Agile Coach 모집중

당장 팀의 변화를 이끌어 내는 사람을 모집하는 것이 아닙니다 .자신을 변화시키고 싶은 사람을 찾고 있습니다 .자신을 변화시키지 못하는 사람이 팀을 변화 시킬수 있기 때문입니다 .