1. 스크럼이란?
- "스크럼"은 본래 럭비 용어인데, 반칙등으로 게임이 중단되었을 때, 공격권을 찾아오기 위한 경쟁대형임
- 8명이 힘을 합쳐서 상대팀을 밀어내는데, 개인이 잘한다고 되는 것이 아니라, 팀이 마치 하나처럼 움직여야함
- 개발프로세스 "스크럼"역시 팀원들이 마치 하나처럼 움직이고 따라줘야 성공할 수 있는 프로세스라는 의미.
2. 스크럼 프레임워크
1) 역할 분배
- Scrum Master (스크럼 마스터) : 프로세스 진행자, 미팅 주재, 장애물제거, 관리자 (감독)
- Product Owner (제품 책임자) : 백로그를 정의하고 투명하게 관리, 유능한 엔지니어 (코치)
- Member (팀원) : 5~9명 정도의 팀으로 구성, 가까운 거리에서 함께 일해야함 (대규모X)
2) 스크럼 과정
int main(){
// 제품 기획 단계
프로덕트 백로그 작성;
동작하는 소프트웨어 = null;
while(프로젝트 완수 == false){
// 스프린트 계회단계
스크럼 백로그 = 스크럼 플래닝 미팅();
소스코드 = null;
// 개발 및 유닛테스팅
for(day=0; day<n_weeks; day++){
데일리 스크럼미팅();
소스코드 += 소스코드 개발();
유닛테스트(소스코드);
}
// 통합 및 릴리즈
동작하는 소프트웨어 += 소스코드
제품 릴리즈(동작하는 소프트웨어);
// 리뷰와 회고
스크럼 리뷰();
스크럼 회고();
}
}
- 프로덕트 백로그 : 제품책임자가 고객에게 요구사항을 받아서 프로덕트 백로그를 작성
- 스프린트 플래닝 미팅 : 이번 스프린트에 어떤 작업들을 수행할지 회의 및 결정
- 스프린트 백로그 작성 : 플래닝 미팅을 바탕으로 스프린트 백로그 작성
- 데일리 스크럼 미팅 : 매일 15 ~ 30분정도 데일리 미팅 수행, 현재 작업정보 확인
- 개발 & 유닛테스트 : 매일 데일리 미팅 -> 개발 -> 데일리 미팅 -> 개발을 반복함
- 소스코드 통합 : 동작하는 소프트웨어 (Working Software)에 소스코드 통합
- 제품 릴리즈 : 스프린트 결과를 제품에 포함하여 새 버전을 릴리즈함.
- 스크럼 리뷰 : 개발내용을 서머리, 다음 스프린트 논의, 백로그 수정, 완성/실패 부분 서머리
- 스크럼 회고 : 이번 스프린트에서 잘못했던 점이나 잘한 점을 회고하여 프로세스를 발전시킴
3) 스프린트 백로그 만드는 방법
- 할일 : 이번 스프린트 때 개발해야할 작업의 목록이다.
- 진행 중 : 사용자스토리 중 개발을 시작하면 진행중으로 옮김. 즉 현재 진행중인 작업을 가리켜 말함.
- 완료 : 개발이 완료되면 진행중에서 개발로 옮김. 즉 개발이 끝난 항목을 가리켜 말함.
- 소멸차트 : 현재 얼마나 많은 작업이 남았는지 아래와 같은 그래프를 그림.
- 소멸차트의 경우 0에 도달하면 프로젝트가 끝난 것이고 위로 올라가면 장애물이 생긴 것.
- 소멸차트 기울기가 가파를 수록 작업을 빠르게 수행하는 팀이라는 것임.
3. Reference
소프트웨어공학 개론
소프트웨어를 개발하고 유지보수하는 데 적용되는 체계적이며 원리적인 접근 방법을 소개한다. 소프트웨어를 개발하는 프로젝트를 계획하는 기법, 사용자의 요구를 분석하는 기법, 소프트웨어
www.kocw.net
'소프트웨어공학' 카테고리의 다른 글
프로세스 (8) - 애자일 프로세스 모델 (2) - 익스트림 프로그래밍(XP) (0) | 2020.05.13 |
---|---|
프로세스 (6) - 애자일 프로세스 모델 (1) - 선언문(Manifesto) (0) | 2020.05.13 |
프로세스 (5) - 점진적 프로세스 모델 (2) - UP / RUP (0) | 2020.05.13 |
프로세스 (4) - 점진적 프로세스 모델 (1) - 증분 / 진화 / 나선형 (0) | 2020.05.13 |
프로세스 (3) - 선형적 프로세스 모델 - 폭포수 / V / 프로토타입 (0) | 2020.04.14 |
프로세스 (2) - 프로세스의 각 단계 (0) | 2020.04.14 |
프로세스 (1) - 프로세스란 무엇인가? (0) | 2020.04.14 |