Scrum의 이해

Kepler·2020년 3월 1일
0

Scrum이란

소프트웨어 개발 프로젝트 관리를 위한 agile software development의 개발 방법론의 하나이다. 개발 후, 소프트웨어의 유지보수에서도 사용될 수 있다.

초기 SW의 개발은 waterfall 방식, 즉 초기 단계에서 모든 계획을 다 작성하고 그것을 기반으로 개발, 테스트를 순차적으로 진행하는 하나의 큰 process로 이루어졌다.

반면에 최근 사용되는 agile 방식은 1주~4주간의 짧은 간격을 주기로 하나의 기능에 대한 계획/개발/테스트/완료의 process를 완성하는 형식으로 이루어지며,이러한 각각의 process는 스프린트(sprint)라고 부른다.

스크럼은 특정 언어나 방법론에 의존적이지 않아, 어떤 프로젝트에도 적용 시킬 수 있다.

Scrum 진행 순서

scrum은 다음의 일련의 순서를 따른다.

1. Product Backlog 작성 :

사용자 또는 다른 stakeholders의 요구사항을 수집하여 구현해야 할 기능들을 story로 작성한다. 사용자 관점에서 작성되어야 하므로, 사용자가 이해할 수 있는 용어를 사용하여 작성하는것이 포인트다 (개발용어 남발금지).


(Image : https://pmworldnetwork.com/product-management/the-difference-between-sprint-backlog-and-product-backlog/)

2. Sprint Planning Meeting 실행 :

해당 스프린트 주기에서 주어진 기능을 구현하기 위해 필요한 task list를 나열하고, 각각의 task 공수를 산정허여 멤버를 할당 한다. 이 단계에서 sprint backlog가 완성되고, 팀원들은 이에 따라 스프린트 주기 동안 개발을 진행하게 된다.

backlog들은 더 세부적으로 TO-DOs, DOING, DONE 으로 나누어 관리를 하게 된다. 이 때, Trello와 같은 Kanban 형식의 application을 사용할 수 있다 (포스트잇도 가능). 프로젝트를 진행하면서 수정/추가/삭제 해야할 부분이 생기면 반영할 수 있다.


(Image : https://www.projectmanager.com/kanban)

3. Daily Scrum Meeting 실행 :

매일 오전에 팀원 전원이 모여 10분정도 stand up 미팅을 진행하여, 개발 상황을 팀원들에게 공유 한다.

크게 3가지, 어제 한일/오늘 할일/문제점을 이야기(check-in) 한다. 문제점을 이야기 할 때는, 개발에서 어려운 부분이나 이슈 뿐만 아니라, 자신의 건강 상태나 신변에 관련된 일도 공유 할 수 있다. 포인트는 스프린트 진행에 걸림돌이 될 수 있는 부분은 사전에 팀원들과 공유하는 것이다.

4. Sprint Review 실행 :

스프린트 주기 동안 개발한 산출물을 팀원들이 돌아가면서 회고한다. 소스코드를 공유하면서 진행하여, 팀원들과 세세하게 개선사항들을 살펴보는 기회가 된다.

5. Sprint Retrospective 실행 :

스프린트의 전체적인 회고를 한다. 산출물 뿐만 아니라 진행 방식과 같은 부분을 돌아보면서 개선점을 찾아 다음 sprint에 반영하도록 한다.


참고링크: https://brunch.co.kr/@insuk/14

profile
🔰

0개의 댓글