Skip to content

스토리 맵핑

류성현 edited this page Jun 27, 2023 · 1 revision

스토리

요구사항을 정확히 기술하기 위해 **문서**를 사용하는 전통적인 방식이 소프트웨어 개발에서 매우 큰 문제 중 하나를 초래합니다. 그것은 바로 같은 문서를 읽고도 다른 것을 상상한다는 점입니다. 우리가 같은 것을 생각하지 않았음을 깨닫는 순간은 소프트웨어를 한참 개발하는 도중이거나 소프트웨어를 고객에게 전달한 후 입니다. 이렇게 공유된 이해가 없었던 것을 많은 이들이 **나쁜 요구사항**이리고 부릅니다.

이에 켄트백은 완벽한 문서를 만들기 위해 고생하는 일을 그만두고 스토리를 이야기하자고 이야기합니다. **스토리**라는 이름은 그것의 작성 방식에 대해서가 아니라 그것을 어떻게 사용해야 하는지 알려주기 위해 붙여졌습니다.

스토리의 진정한 목표는 이해한 내용을 공유하는 것입니다. 따라서 요구사항 형태로 쓰지 않습니다. 단어와 그림을 이용한 협업을 통해 **공유된 이해**를 이끌어 내기 위한 장치입니다.

스토리 맵핑

어떻게 스토리를 이야기 할까?

우리는 특별한 도구 없이 이야기를 할 수 있습니다. 하지만 이야기가 끝난 후 금방 잊어버릴 수 있으며 몇일이 지난 뒤 다시 생각해보려하면 기억이 나지 않을 수 있습니다. 기록에 남기는 행위를 통해 조금 더 월활하게 대화를 나눌 수 있습니다. 그럼 어떻게 기록을 남기는게 좋을까요? 단순히 포스트잇에 키워드를 적는 것 만으로 충분할까요? 이번 시간에는 포스트잇을 통해 효과적으로 이야기를 나누고 공유된 이해를 만들어나가는 활동에 대해서 알아봅시다.

요구사항

오늘 아침 제일 처음 일어나서 회사에 들어오기 전 까지 했던 일을 기록하기

1. 작업(Task) 나열하기

이야기를 나누는것은 목표를 달성하기 위해 하는일입니다. 사용자의 작업은 스토리 맵의 기본적인 구성 요소이기 때문에 사용자의 관점에서 작성되면 좋기 때문에 사용자의 작업이라고 생각하고 이야기를 나누는 것이 좋습니다.

실습 #1

  • 오늘 아침 제일 처음 일어나서 무엇을 했는지 생각한다
  • 그다음 무엇을 했는지 포스트잇에 적고 붙인다
  • 이를 반복한다
  • 회사에 들어오기 전 까지 했던 일을 적어보자

2. 활동(Activity) 구성하기

작업 라인 내에서 논리적 그룹을 찾아 사용자가 더 넓은 목표를 달성하는 데 기여하는 모든 작업을 함께 수집합니다.

실습 #2

  • 함께 움직여야 하는 작업 묶음 발견하기
    • 욕실에서 해야하는 일들
    • 아침을 만들기 위해 주방에서 해야하는 일들
  • 큰 목표를 달성하기 위해 함께 움직이는 것 처럼 보인다면 묶기

3. 스토리 나열하기

작업(Task)별로 시나리오를 고려하여 스토리를 작성합니다. 스토리 작성 시 세부 내용이나 대안 스토리를 함께 고려합니다. 사용자 스토리 형태로 작성합니다.

실습 #3

  • 작업(Task)별로 스토리 형태로 작성하기
    • 욕실에서 해야하는 일들
    • 아침을 만들기 위해 주방에서 해야하는 일들
  • 작업별 세부사항 및 대안 스토리를 고려하기
    • 따뜻한 물이 나오지 않았다면?
    • 우유나 시리얼이 다 떨어졌다면?
    • 세부사항, 대안, 벼화 그리고 예외를 스토리맵 본체에 추가하자

서사 흐름 유지

  • 마음을 편하게 먹고 새 작업들을 자연스러워 보이는 곳에 추가하기
  • 가장 공통된 것으로 진행하기
  • 씻기 -> 옷입기 대신 옷입기 -> 씻기 하면 젖은 옷을 입고 출근해야 한다

4. 우선순위에 따라 그룹 나누기

한번에 모든 작업을 동시에 하기는 어렵습니다. 우선순위를 기준으로 작업 단위를 나누어 진행합니다.

실습 #4

  • 우선순위 기준으로 그룹 나누기
  • MVP를 가장 상단으로 배치하기
  • 다음 우선순위의 기준으로 배치하기
  • 우선순위의 기준은 기능이 아니라 성과로 나누기

Clone this wiki locally