반응형
안녕하세요 서후아빠입니다. ^_^
지난 세션에서 애자일 방법론에 대해서 알아보았습니다. 이번 세션에는 애자일 방법론의 전체 프로세스에 대해서 세부적으로 알아보도록 하겠습니다.
2023.04.28 - [Business Data] - [업무지식] 애자일(Agile), 스크럼(Scrum) 이해하기 - 1편
1단계 : 요구사항 분석
요구사항 분석은 고객과 프로젝트 팀이 같은 장소에서 함께 참여 추천
- 결과물에 대한 신속한 피드백으로 불필요한 작업 예방
시스템 개발 경우 : 고객사로 출퇴근하면서 같은 장소에서 고객과 함께 제품 백로그 작성 가능
신메뉴 개발, 신규 지점 활성화, 신사업 진출 경우
- 고객과 같은 장소에서 근무 어려움
- 핵심 고객과 요구사항 분석 위한 추가 조치 필요
구분 | 설명 | ||
페르소나 (Persona) |
어떤 제품 혹은 서비스를 사용할만한 목표 인구집단 안에 있는 다양한 사용자 유형을 대표하는 가상 인물 프로젝트 목표 고객을 보다 심층적으로 이해하기 위한 방법으로 활용 - 프로젝트 스폰서, Client와 명확한 커뮤티케이션 하는데 도움 - 제품이나 서비스 사용자가 누구인지 이해관계자들이 공통적으로 떠올릴 수 있도록 도움 - 프로젝트 팀원들이 친근감 가지고 좀 더 사용자 입장에서 결과물 도출하도록 도움 프로젝트와 과련된 구체적인 페르소나 도출 필요 - 실제로 존재할 개연성이 있는 페르소나 설정 ※ 인구통계학적 특징 : 성별, 나이, 가족관계, 직업, 소득수준, 취미 등 ※ 가상인물 유형화를 위한 특징 : 성격, 사고방식, 가치관 등 - 페르소나가 느끼는 불편함과 Needs 파악 페르소나 만들기 위한 질문 : 기존 고객 인터뷰, 설문조사, 고객사 영업/마케팅 등 활용하여 데이터 수집 - 개인적인 배경 : 나이, 가족, 교육수준 - 직업 : 직장, 역할, 스킬, 일과 등 - SNS - 제품 관련 : 선호하는 접촉 방법(메일, 전화), 인터넷 활용 여부 |
||
고객 여정 지도 (User Journey Map) |
특정 페르소나가 어떤 경로로 어떤 심리적 변화를 겪으며 제품이나 서비스에 관련된 경험을 하는지 한눈에 알 수 있도록 작성하는 시각화 자료 고객 여정 지도 항목 예시 - 고객의 행동 - 고객이 하는 말 - 고객의 감정/생각 - 고객이 느끼는 고통 - 고객이 얻고자 하는 기대요소 - 단계별 시사점 - 전체 시사점 |
||
사용자 스토리 작성 | 고객 시사점(단계별 시사점, 전체 시사점) 내용을 이용하여 사용자 스토리 작성 - 고객 입장에서 필요로 하는 기능 및 특성, 가치를 정리하는데 초점 두고 포스티 잇 활용하여 작성 - 프로젝트 팀이 요구사항을 구체적으로 이해하는데 도움 - 사용자 스토리의 완료 조건에 대해서도 함께 작성 : 갈등 해결에 도움 INVEST 원칙으로 작성된 스토리 정리 - Independent : 스토리간 상호 독립적 (2개 스토리에 공통 작업 있다면 일정/투입인력 등을 이중으로 추정) - Negotiable : 해당 스프린터 단계에서 세부 작성하므로 간략히 작성 - Valuable : 고객에게 가치 있는 항목을 고객이 이해하기 쉬운 언어로 작성 - Estimable : 소요일정 및 투입 인력 추정 가능해야 함 - Small : 2주 단위의 적절한 사용자 스토리 크기로 분할 권장 - Testable : 객관적이고 정량적인 표현으로 작성 (ex : 빠른 시간 내 > 2분 내) 제품 백로그에 저장 |
페르소나 예시 : 82년생 김지영 사용자 스토리 예시 - 누가(나는~로서), 어떤 비즈니스 가치를 위해(~목적을 달성하기 위해), 어떤 기능을 원하는가(~이 구현되기 바란다) - "즐겨찾기 기능" 보다는 "나는 웹브라우저 사용자로서 쉽고 빠르게 URL을 찾을 수 있도록 즐겨찾기 기능 구현되기 바란다." 에픽(Epic) : 스토리가 너무 추상적이거나 넓은 범위, 다시 여러 개의 사용자 스토리로 분리해야 하는 것 |
2단계 : 프로젝트 전체 계획 수립 (Release 계획 수립)
구분 | 설명 | ||
사용자 스토리 점수 추정 |
고객요구사항의 크기 및 복잡도 감안하여 정량화, 점수는 프로젝트 팀원 간 공감대 형성 - Step 1. 1점에 해당하는 평균적인 투입 공수 추정 - Step 2. 1점을 부여할 사용자 스토리 선정 - Step 3. 피보나치 수열로 점수 부여 플래닝 포커(Planning Poker)를 통한 점수 부여하는 방법 - 스토리를 보고 팀원들이 동시에 피나보치 수열이 적힌 카드 제출 - 가장 낮거나 높은 번호 제출한 팀원에게 이유 들어본 후, 카드 제출 재시도 반복 - 만장일치 원칙이나, 3회 이상 만장일치 되지 않으면 과반수가 동의한 값 (or 중간 값) 선택 - 40 이상은 분할 검토 : 스토리 분할하여 작성, 기존 스토리 폐기, 플래닝 게임으로 점수 부여 |
||
우선순위 선정 | 구현여부 판단, 선후관계/의존성/고객가치/업무유사성 고려해서 우선순위 도출 4단계 분류법 : 필수, 중요, 선택, 보류 가치 점수 : 4단계 분류법만으로 우선순위 선정 어려운 경우, 스토리의 상대적 가치를 정량적 추정 - 가치가 낮은 것 1, 나머지는 상대 비교로 결정 - 제품 책임자와 고객이 중심 되어 프로젝트 팀원과 협의하여 결정 |
||
전체 일정 추정 | 전체 사용자 스토리 점수와 우선순위를 바탕으로 필요한 스프린트 횟수 판단 및 스토리 할당 - 플래닝 보드(Planning Board, 릴리즈 상황판) 시각화하여 프로젝트 공간에 비치하여 관리하는 것을 권장 - 처음 스프린트 2~3개는 평균적인 프로젝트 업무추진 속도보다 낮은 것으로 배정 (ex : 스프린트별 25점이라면 처음 2~3개는 20점 정도의 스프린트 배치) |
||
예시 |
[가정] - 스프린트 기간 : 2주 - 2주간 투입 가능한 인력 : 50 Man/Day - 평균적인 투입 공수(스토리 1점 수행) : 2 Man/Day [기초 산정 자료] - 스프린트 추진 속도 : 50 / 2 = 25 - 총 스프린트 수 : 100 / 25 = 4 - 전체 일정 : 4 x 2주 = 8주 [최종 산정 결과 : 리스크 고려하여 버퍼 10~20% 이내 설정] - 총 스프린트 수 : 5 - 전체 일정 : 10주 [플래닝 보드] |
도출된 계획이 한번으로 종료되는 것 아니므로 너무 정확하게 추정는 것은 비효율적 - "스프린터 수행 > 실제 한일 측정 > 계획 수정” 과정을 지속적으로 반복 평균적인 투입 공수 : 평균적인 역량을 가진 인력이 스토리를 구현할 때 소요되는 작업 일수 (ex : 1점을 2 Man/Day로 가정) 피나보치 수열 : "1, 2, 3, 5, 8, 13, ...", 규모가 커질수록 예측이 어려우며 불확실성이 크다는 의미 |
3단계 : 스프린트(Sprint) 수행
구분 | 설명 | ||
스프린트 계획 수립 | 프로젝트 팀원과 정보 공유 - 스프린트 기간 내 수행할 목표(백로그 상 우선순위 높은 스토리) - 스프린트 기간 내 완료 조건(스토리의 기능 및 특성) 스프린트 백로그 작성 - 스토리에 대해 구현할 상세 업무, 팀원이 수행할 모든 작업 - 담당자와 예상 작업시간 검토하여 기록 담당자 할당 - 팀원이 원하는 작업 선택을 권장(자발적 동기, 업무 불균형 시 프로젝트 매니저가 업무 조정) - 공동책임(개인업무=팀업무) - 팀원과 상호 협력 중요 할당된 업무량 검토 - 스프린트 기간 내 완료가능한지 파악 (풀타임, 파트타임 구분) 스프린트 계획 상황판 같은 결과물로 정리 - 결과물 리뷰/공유하여 기간 내 완료할 것을 약속 |
||
데일리 스크럼 | 모든 팀원들이 일정한 시간/장소(권장 : 오전, 상황판 앞)에서 간략히 작업현황에 대해 공유하는 회의 - 수행, 미수행, 장애, 이슈 등 - 미수행은 작업완료까지 남은 시간 추정 및 시각화 업데이트 업무 공유와 협력 촉진하는 것이 목적 - 수행할 작업 구분에 대한 논의하여 세분화 - 구분된 각 수행작업 단계들의 의미하는 바 공유하고 이해 - 수행활동(작업 중, 리뷰 중 등)에 대하여 동일하게 인식 프로젝트 매니저 역할 : 이슈와 장애요인 해결 지원만 수행 스크럼 회의 후, 상황판이나 진척률 차트 등 업데이트 운영상 유의사항 - 스탠드업 미팅이나 상태회의와 같이 업무 보고 회의 아님 : 동등한 시간동안 모두 발언하도록 진행 - 20분 이내 : 이슈는 간단히, 이슈 회의는 별도 진행 - 즐거운 분위기 유지 : (어제한 일, 오늘할 일, 이슈) + (개인적인 이야기, 유머) - 별도 보고서 지양 : 상황판(릴리즈 상황판, 스프린트 상황판, 칸반 등)에 상태 표시 |
||
스프린트 리뷰 | 모든 팀원이 결과물을 고객에게 보여주고 피드백을 얻는 활동 - 프로젝트 방향 조정 - 팀원의 성취감 획득, 피드백을 통한 정보 획득 역할 - 스크럼 마스터 : 리뷰 회의 진행과 퍼실리테이션 책임 - 팀원 : 고객/이해관계자에게 결과물 발표 진행 순서 - 리뷰 전 회의 준비 : 참여자 대상으로 회의 공지(시간, 장소), 고객 관점에서 발표 준비 - 리뷰 실시 1) 프로젝트 팀 : 전체 진행상황, 현 스프린트의 목표, 결과물, 현 스프린트 기간 중 고충과 이슈 2) 고객 : 결과물 보며 질의, 보안, 아이디어 제시 - 리뷰 회의 정리 : 고객 제시한 사항을 개선사항으로 기록, 우선순위 따라 제품 백로그에 반영 진행 방식 : 보고서 방식이 아닌 데모로 진행, 4시간 이내 |
||
스프린트 회고 | 프로세스를 개선하여 동일한 문제를 반복하지 않기 위해 오답 노트를 만드는 활동 진행 순서 - 사전 준비 : 참여자 대상으로 공지(시간, 장소, 진행방법) ※ 경직되지 않는 분위기 조성 : 카폐/야외, 고객/서폰서는 참석 제외 권장 - 데이터 모으기 : 효율적 활동, 비효율적 활동, 놓친 부분 - 통찰 이끌어 내기 : 다음 스프린터에서 해야할 행동, 하지 말아야 할 행동, 새롭게 할 행동 - 아이템 결정 : 아이디어 투표로 선정 > 우선순위 설정 > 실행계획 수립 - 마무리 : 다음 회고에 어떻게 하면 좋을지 개선점 듣고 마무리 유의사항 - 비난 회의되지 않도록 : 업무나 프로세스에 더 집중, 강점 극대화 방향으로 진행 - 도출된 아이디는 반드시 실천 : SMART 실천법, 담당자 선정하여 추적관리하여 실행력 강화 - 적절한 변화를 주는 것도 도움 : 장소나 진행 방식 변경, 퍼실리테이션 기법 적극 활용 |
칸반(Kanban, 간판의 영어식 표현) - 도요타 자동차 생산시스템의 일부, 시각화된 작업지시서 - 낭비의 배제 : 필요시, 필요한 물건, 필요양만큼, 짧은 리드타임으로 생산 : 재고 적재 방지, 문제 발생 시 쉽게 파악 가능 - 적용 시 유의사항 1) 모든 팀원 전체 진행상태 확인 가능토록 대시보딩 2) 단계별로 "해야할 일"과 개수 제한 : 업무량 최적화 3) 병목지점 가능성 높은 단계/업무에 대해 공동으로 파악/관리 - 칸반도 자체적으로 원칙과 프로세스가 있는 프로젝트 접근법으로 단순 시각화 실천법은 아님 짝 프로그래밍 - 두명(작업하는 드라이버, 리드하는 네비게이터)의 프로젝트 팀원이 하나의 컴퓨터를 공유하며 작업하는 것, 강요할 필요 없음 - 장점 : 에러 발생 확률/위험 감소, 팀원간 지식/정보/팁 공유 - 방법 : 1대 PC에 2명 (초보자+초보자, 초보자+전문가, 전문가+전문가), 자주 교체 권장 - 활용 : 새로운 기술 학습, 비슷한 팀원끼리 어려운 업무 수행, 팀원을 프로젝트 빠르게 적응 시 전통적인 방법론에서 리뷰 - 단계와 단계 사이에 진행되며, 다음 단계 진행여부에 초점 - Stage Gate or Milestone Gate라고도 함 퍼실리테이션(facilitation) : 다양한 생각을 꺼내고 하나의 결정으로 모아가는 과정이 잘 진행되도록 돕는 일, 빅마우스에 의한 독점 예방 - 좋았던 점/나빴던 점 모으기 : 팀원에게 2개 색상 포스팃(3장씩)에 무기명 작성 > 비슷한 내용끼리 묶어서 벽에 붙여 공유 - 화남/슬픔/기쁨 모으기 : 팀원에게 3개 색상 포스팃(3장씩)에 무기명 작성 > 벽에 붙여 공유 (분위기 밝게 조성) - 팀 만족도 점수 모으기 : 팀원에게 1개 색상 포스팃(1장씩)에 무기명 작성 > 벽에 붙이고 한명씩 결과에 대해 추측 발표 ※ 사전에 1~5점에 대한 척도를 팀원에게 공유 - 점 투표 : 팀원에게 점 스티커 주고, 좋았던 점/나빴던 점에 붙여 우선순위화 > 강화/개선 토론 > 토론 결과 공유 SMART 실천법 : Specific(구체적), Measurable(측정 가능), Attainable(달성 가능), Relative(팀 개선과 관련), Timely(스프린트 기간 내) |
기타 : 프로젝트 진행상황 파악
구분 | 설명 | ||
사용자 점수 진척률 (권고) | 전체 사용자 스토리 점수 대비 현재까지 완료한 스토리 점수를 %로 표현 매주 또는 스프린트 단위 파악 |
||
(제품) 백로그 진척률 | 전체 제품 백로그 대비 현재까지 완료한 제품 백로그 개수를 %로 표현 사용자 스토리 규모가 균일하지 않으면 진척률 의미 왜곡 가능 |
||
번업 차트 (Burn Chart) | 수행한 사용자 스토리 점수를 누계하여 목표 대비 비교한 추세선으로 표현한 그래프 | ||
번다운 차트 (Burn Down Chart) | 수행하고 남은 스토리 점수를 누계하여 목표 대비 비교한 추세선으로 표현한 그래프 |
반응형
'Business Data' 카테고리의 다른 글
[업무지식] 애자일(Agile), 스크럼(Scrum) 이해하기 - 1편 (0) | 2023.04.28 |
---|---|
[업무지식] 프로젝트 수행에 필요한 8가지 관리 포인트 (0) | 2023.04.27 |
[업무지식] EDA (Event Driven Architecture) 이해하기 (0) | 2023.04.14 |
[업무지식] MSA (Micro Service Architecture) 이해하기 (0) | 2023.04.12 |
[업무지식] 신뢰성 지표 (MTTF, MTTR, MTBF) 및 SLA 이해하기 (0) | 2023.04.07 |