Product

사용자가 얻을 가치와 목적을 토대로 소통하는 법

heyhyo512 2024. 9. 18. 18:00

 

안녕하세요! 한끼족보 PM 박효진입니다.
'고객 중심의 사고'를 위한 여러 가지 기획 방법론 중, 오늘은 그 첫 번째, 애자일 개발 방법론으로 잘 알려진 사용자 스토리에 대해 이야기 해보고자 합니다. 사용자 스토리가 무엇인지, 언제 어떻게 왜 사용해야 하는지, 저희 팀의 예시를 덧붙여 설명해볼게요 ~!

 

사용자 스토리(User Story)란?

사용자 스토리는 고객의 입장에서 사용자가 원하는 기능을 짧고 간결하게 표현한 것으로, 주로 육하원칙 중 누가, 무엇을, 에 해당하는 항목을 중심으로 작성됩니다. 사용자 스토리는 팀 구성원들에게 무엇을 만들고, 만들어야 하는지를 명확하고 간결하게 전달하는 도구라고 할 수 있어요.

 

*사용자 스토리의 기본 형식은 다음과 같습니다:

출처 - 요즘 IT

[사용자 유형]은 [구체적 목적]을 위해 [활동]하기를 원한다.

또는, Given-When-Then 형식으로 작성할 수 있습니다:
Given: 특정 상황이 주어지면
When: 사용자가 어떤 행동을 하면
Then: 그에 따른 결과가 나타난다.

사용자 스토리는 Epic(큰 목표)에서 출발하여 Story, Task, Sub-task로 세분화됩니다.
- Epic과 Story는 서비스가 해결해야 할 사용자의 행위를 정의하고,
- Task와 Sub-task는 실제 개발 및 디자인팀이 수행해야 할 구체적인 작업을 설명합니다.

 

이처럼, 사용자 스토리는 사용자나 구매자에게 가치를 줄 수 있는 기능을 서술한 것으로, 사용자와 서비스의 이유 목표를 이해할 수 있도록 최종 형태를 알려주는 문장형태를 가지고 있습니다. 기존의 '요구사항정의서' 의 '요구사항'을 사용자의 관점에서 이야기하는 것이죠.

사용자 스토리를 작성한 이후, 서술에 포함되지 않은 상세한 내용을 팀원들과 명확히 정의하고, 기능이 완료 되었다고 말할 수 있는 조건을 정의하여, 테스트를 진행하는 과정을 거칩니다. 

 

사용자 스토리를 ‘왜’ 써야 할까요?

 

출처 - 요즘IT


사용자 중심 사고 가능
: 사용자 스토리는 최종 사용자의 필요와 요구 사항을 반영하여 작성됩니다. 기술적 용어나 제공자의 관점이 아닌, 실제 사용자가 어떤 가치를 얻고자 하는지에 중점을 둡니다. 따라서 사용자 스토리는 기술적 세부사항이 아닌 사용자의 요구와 가치에 집중하여 작성되기 때문에 우선순위 설정목표 달성에 효과적입니다.

 

완벽한 요구사항보다 더 중요한 것은, 적절한 스토리와 잦은 대화를 병행하는 것입니다.

 


커뮤니케이션 도구 역할:
 팀 내 구성원 모두가 공감할 수 있는 공용어 역할을 합니다. 사용자 스토리는 프로젝트의 목표와 구현해야 할 기능을 명확하게 정의하여 합의점을 도출할 수 있습니다.

우선순위 설정 효율화: 기술적 세부사항보다 사용자가 얻는 가치에 초점을 맞추어 작성되므로, 기능의 우선순위를 효율적으로 설정할 수 있습니다. 사용자의 관점을 명확히 함으로써 올바른 작업 방향을 설정하고, 그에 맞는 아이디어를 얻는 데 도움이 됩니다.

커뮤니케이션 비용 절감: 사용자 스토리를 사용하면 보고나 기획에 소요되는 커뮤니케이션 비용을 줄일 수 있으며, 스크럼이나 애자일 조직에서는 빠르고 자주 소통하면서 즉각적인 피드백을 받을 수 있어 효율적인 진행이 가능합니다.

쉽게 말해, 사용자 스토리는 사용자 중심의 팀 전체의 커뮤니케이션 도구로써 기능 구현 목적을 명확히 하고, 사용자에게 제공할 가치에 따라 작업의 우선순위를 정할 수 있다는 점에서 큰 장점이 있습니다!

 

유저 스토리를 '어떻게' 작성해야 할까요? (a.k.a. 좋은 유저 스토리)

한끼족보 서비스의 예시를 들어볼게요,

1. 사용자 정의

먼저, 제품을 사용하는 사용자를 정의하고, 사용자의 특성과 그들의 필요, 동기를 서술합니다.

  • 20대 대학생으로, 외식 비용에 대한 부담을 느끼며 저렴하게 한 끼를 해결하고자 합니다.
  • 주로 학교 근처에서 식사를 해결하며, 수업 전후로 빠르게 한 끼를 해결하고 싶습니다. 
  • 포털 사이트나 추천 서비스는 가성비 식당 정보를 한 번에 찾기 어려워 탐색 과정에서 번거로움을 느낍니다.
  • 학교 근처 저렴한 식당 정보를 보다 효율적으로 공유 및 추천하고 싶습니다.

2. 목표 정의

사용자가 우리 제품을 사용함으로써 달성하고자 하는 목표를 정의해요.

  • 외식에 대한 부담을 덜고 싶은 대학생은 학교 근처에서 저렴한 식당을 빠르게 찾고, 가성비 식당 정보를 탐색하는 번거로움을 줄이고 싶습니다.
  • 우리 학교 친구들에게 학교 근처 저렴한 식당 정보를 보다 효율적으로 추천/공유하고 싶습니다.

3. 사용자 스토리

목표를 달성하는 데 필요한 추가 세부 정보나 요구 사항을 사용자 스토리에 추가합니다. 여기에는 특정 기능, 또는 제약 조건이 포함될 수 있는데요, 이때, 사용자 스토리는 단순히 기능을 나열하는 것이 아니라, 사용자가 얻을 가치와 목적을 설명해야 합니다.

 

예를 들어,
"
사용자가 대학교 선택을 통해 학교 근처의 가성비 식당 정보를 찾을 수 있다!"

처럼 단순히 기능을 서술하는 방식이 아닌,

 

"사용자가 학교 근처에서 빠르게 가성비 식당 정보를 찾기 위해 자신의 대학교를 선택하면, 대학교 근처의 가성비 식당 리스트를 통해 원하는 조건에 맞는 식당을 효율적으로 탐색하고 공유할 수 있다." 처럼, 왜 사용자가 해당 기능을 사용하는지, 사용자의 동기를 명확히 표현하여야 합니다.

 

 

더불어, 사용자 스토리를 통해 메이커들은 더 많은 자유도를 가지며, 사용자 중심의 더 나은 결과물을 만들 수 있습니다.

 

예를 들어, 사용자가 내 위치와 가까운 특정거리내  학교 근처 식당을 찾기 위해 식당의 위치정보를 알고자 한다는 목적성을 부여한 사용자 스토리를 기반으로,

레퍼런스 - 배달의 민족 포장서비스 / 네이버 지도

    • 가까운 순 필터링: 사용자가 특정 거리 내의 식당을 손쉽게 찾을 수 있도록, 가까운 순으로 정렬된 리스트 제공
    • 내 위치 기반 거리 및 시간 표기: 식당과의 거리/도보시간을 숫자로 표기하여 사용자가 쉽게 위치를 인식할 수  있게 하는 방법
    • 지도를 활용한 간접적인 위치 정보 제공:
      • 식당 카드 클릭 시 디테일 페이지로 이동하고, 지도를 삽입하여 사용자가 위치 정보를 확인할 수 있도록 하는 방법
      • 또는, 바텀 시트를 사용하여 식당의 디테일 정보와 함께 지도에서 식당 위치를 동시에 보여주는 방법으로, 한 화면에서 정보를 확인할 수 있게 하는 방법
    •  

이처럼 유저스토리에 서술한 사용자의 가치와 목적에 따라, 사용자가 원하는 정보와 이에 따른 사용자 경험을 제공할 수 있는 여러 가지 방법을 보다 구상해볼 수 있어요. 

 

늘, 더 좋은 사용자 경험을 위해 야무진 베리에이션을 해주는 디쟌팀들에게 레전드 감사의 인사를.

 

 

즉, 목적 중심의 의사소통으로, 

  • 사용자 스토리는 기능의 목적에 집중하므로, 다양한 구현 방법을 고려할 수 있는 여지를 제공합니다. 이는 제품의 디자인과 개발 과정에서 창의성을 발휘할 수 있는 기회를 만들어요! 
  • 사용자 스토리를 통해 사용자의 필요와 목표가 명확히 드러나기 때문에, 팀 내에서 의견 차이가 있을 때 기준을 제시하여 논의를 정리할 수 있습니다.
  • 사용자가 실제로 원하는 가치를 고민하게 하므로, 단순히 기능을 나열하는 것에 그치지 않고, 사용자에게 실질적인 도움이 되는 방법을 모색할 수 있습니다.

이처럼, 유저스토리에 기반한 커뮤니케이션은 모로 가도 서울! 이라는 말처럼, 서울로 가는 더 좋은 방법을 마련하기 위해, 우리가 서울로 가야할 이유와 가치를 공감하도록 공유하고,구체적인 완료조건을 제시하는 과정이라고 볼 수 있어요. 

 

그러나 사용자 스토리의 한계..

대규모 프로젝트에서는 수백, 수천 개의 스토리를 관리하기 어려우며, 요구사항의 추적성을 위해 추가적인 문서 작업이 필요할 수도 있습니다. 즉, 대화만으로 문서를 완전히 대체할 수 없는 경우가 존재합니다. 

 

따라서, 어떤 방법론이든, 팀과 제품의 상황과 단계에 따라 적재적소 사용되어야 한다는 점을 언급하며 오늘의 아티클을 마치겠습니다!