● 애자일(Agile)
- 기존의 워터폴(water fall)과 대비되는 방법론
- 제품과 서비스를 중심으로 연관된 사람들의 지속적인 쌍방향 소통
- 수정사항 발생 시 즉시 반영
애자일 방법론의 종류
- Scrum
- Kanban
- Lean
- Extreme Programming (XP)
- Feature Driven Development (FDD)
- Dynamic Software Development Method (DSDM)
● 스크럼(Scrum)
- 프로젝트 관리를 위한 상호/점진적 개발 방법론으로 프로덕트 백로그, 스프린트 플래닝, 스프린트 백로그, 데일리 스크럼, 스프린트 리뷰, 프로덕트 릴리즈, 스프린트 회고의 과정을 일정한 주기로 반복하는 것
- 주기가 완료될 때마다 고객에게 가치 있는 제품(소프트웨어)을 전달하는 방식
스크럼 팀
- 스크럼의 기본 단위는 작은 규모의 팀이다.
- 한 명의 스크럼 마스터(Scrum Master), 한 명의 제품 책임자(Product Owner), 그리고 개발자들(Developers)(기획자, 개발자, 테스터 등 개발에 참여하는 모든 구성원)로 구성된다. 스크럼 팀 내에는 하위 팀이나 계층이 없다. 이는 한 번에 하나의 목표 즉, 제품 목표(Product Goal)에 집중하는 응집력을 가진 전문가들의 모임이다.
스크럼 절차
- 스프린트(Sprint) : 점진적 개발을 위한 반복 주기로 1~4주 이내를 권장하고 있으며, 스프린트 계획(Sprint Planning), 데일리 스크럼(Daily Scrums), 스프린트 리뷰(Sprint Review) 및 스프린트 회고(Sprint Retrospective)를 포함하여, 제품 목표(Product Goal)를 달성함에 필요한 모든 작업이 스프린트 동안 이루어진다.
- 스프린트 계획(Sprint Planning) : 스크럼 팀 전체의 공동 작업을 통해 스프린트 기간 동안 수행할 제품 백로그 및 스프린트 백로그 도출
- 데일리 스크럼(Daily Scrums) : 매일 정해진 시간에 팀원 모두가 모여 “어제 한 일, 오늘 할 일, 이슈 사항”을 공유를 통해 업무 진행 사항을 확인
- 스프린트 리뷰(Sprint Review) : 스프린트 기간 동안 완료한 작업의 결과물을 이해관계자들에게 제공 또는 데모하여 진행 상황을 논의
- 스프린트 회고(Sprint Retrospective) : 지난 스프린트가 어떻게 진행되었는지를 되돌아보며, 발생한 문제점들을 확인하고 근본 원인을 탐색한다. 또한, 스프린트 동안 좋았던 점, 좋지 않았던 점, 개선할 내용 등을 논의한다.
스크럼을 간략히 정리하자면,
스크럼은 점진적 개발을 위한 기간(1~4주)을 설정한 후 해당 기간 동안 스크럼 팀 모두가 스크럼 절차를 함께 수행하여 고객에게 가치 있는 증분(Increment) 된 제품을 인도하고, 스프린트를 반복 수행하여 최종적으로는 완성된 제품을 제공하는 것이다.
Jira Software
- 애자일 프로젝트 관리 도구로 스크럼 방법론을 완벽하게 지원한다.
- 현재 프로젝트에서 진행중인 스프린트를 스크럼보드 또는 칸반보드로 확인할 수 있다.
칸반 보드(Kanban board)
- 프로세스의 흐름을 시각적으로 만든 것.
이미지 출처 및 참고 사이트
https://blog.naver.com/PostView.naver?blogId=wisestone2007&logNo=222550059021&categoryNo=0&parentCategoryNo=0&viewDate=¤tPage=1&postListTopCurrentPage=1&from=postView
https://happycloud-lee.tistory.com/261
https://double-tap.tistory.com/61
'MSA' 카테고리의 다른 글
MSA 프로젝트 중 MVP를 만들었던 이유(feat. 일정 딜레이) (0) | 2022.11.23 |
---|---|
CQRS 구현 - Redis, Kafka 적용 (0) | 2022.11.23 |
MSA, Database Architecture - Querying : API Composition, CQRS 패턴 (0) | 2022.10.31 |
MSA, Software Architecture : Layered Architecture (0) | 2022.10.19 |
MSA 설계, DDD(Domain Driven Design), Event Storming (0) | 2022.10.14 |
댓글