free your time

서비스기획, 항공, 장기렌트

유저 시나리오(User Scenario)

유저 시나리오는 사용자가 시스템이나 제품을 사용하는 구체적인 상황을 서술합니다. 이는 사용자의 경험을 중심으로 그들이 어떤 목표를 달성하기 위해 제품을 어떻게 사용하는지에 대한 이야기를 담고 있습니다. 유저 시나리오는 다음을 포함할 수 있습니다.

  • 사용자의 배경: 사용자는 누구인가? 어떤 문제를 해결하려고 하는가?
  • 상황: 사용자가 제품을 사용하게 된 배경은 무엇인가?
  • 목표: 사용자가 달성하려는 구체적인 목표는 무엇인가?
  • 절차: 사용자가 목표를 달성하기 위해 어떤 단계를 거치는가?
  • 기대 결과: 사용자가 기대하는 결과는 무엇인가?

예를 들어, ‘온라인 쇼핑몰에서 새로운 고객이 가입하여 첫 구매를 하는 시나리오’는 사용자가 사이트에 가입하고, 제품을 검색하고, 장바구니에 추가하고, 결제하는 과정을 포함할 수 있습니다.

유스케이스(Use Case)

유스케이스는 시스템이나 소프트웨어가 어떻게 동작해야 하는지를 시나리오 형식으로 기술하는 것입니다. 이는 시스템이 사용자의 요구를 충족시키기 위해 수행해야 하는 구체적인 작업들을 명시합니다. 유스케이스는 일반적으로 다음을 포함합니다.

  • 액터(Actors): 시스템과 상호작용하는 사용자 또는 외부 시스템
  • 트리거(Triggers): 유스케이스를 시작하는 이벤트
  • 기본 흐름(Main Flow): 시나리오의 기본적인 단계들
  • 대안 흐름(Alternative Flows): 예외 상황이나 선택적 경로
  • 후조건(Postconditions): 유스케이스 실행 후의 상태

예를 들어, ‘사용자가 제품을 검색하고 선택하는 유스케이스’는 사용자가 검색창에 검색어를 입력하고, 검색 결과를 확인하고, 원하는 제품을 선택하는 과정을 자세히 기술합니다.

차이점

  • 유저 시나리오는 사용자의 관점에서 그들의 경험과 행동을 서술합니다.
  • 유스케이스는 시스템의 기능적 요구사항을 충족시키는 방식을 명시적으로 서술합니다.

이 두 도구는 개발 과정에서 사용자의 요구와 시스템의 기능을 명확하게 이해하고 설계하는 데 매우 유용합니다.

유저 시나리오 예시: 온라인 음식 주문

시나리오 이름: ‘직장인 소영이가 점심을 주문하는 경우’

  • 사용자: 소영, 30세, 직장인
  • 상황: 회사에서 바쁜 하루를 보내고 있고, 점심 시간이 부족해 빠르게 음식을 주문하고 싶어 함.
  • 목표: 점심시간 내에 맛있고 건강한 음식을 신속하게 주문하고 싶어 함.
  • 절차:
    1. 온라인 음식 주문 앱을 스마트폰에서 열기
    2. 위치 기반으로 근처에 배달 가능한 식당 검색
    3. 리뷰와 평점을 참고하여 음식을 선택
    4. 결제 수단을 선택하고 주문하기
    5. 주문 확인 및 배달 시간 추적
  • 기대 결과: 신속하고 편리하게 음식을 주문하고, 정확한 시간에 배달 받기를 기대함.

유스케이스 예시: 온라인 음식 주문 시스템

유스케이스 이름: ‘음식 주문 처리’

  • 액터: 고객
  • 트리거: 고객이 앱에서 ‘주문하기’ 버튼을 클릭
  • 기본 흐름:
    1. 시스템은 고객의 위치 정보를 요청
    2. 고객이 위치 정보를 제공
    3. 시스템은 제공된 위치 정보를 기반으로 가능한 식당 목록을 표시
    4. 고객은 식당을 선택하고, 원하는 메뉴를 장바구니에 추가
    5. 고객이 결제 정보를 입력하고, 주문을 확인
    6. 시스템은 주문을 식당에 전달하고, 주문 확인 메시지를 고객에게 보냄
  • 대안 흐름:
    • 위치 정보가 불확실한 경우, 고객에게 정확한 위치 입력 요청
    • 결제 실패 시, 고객에게 다시 결제하도록 요청
  • 후조건: 고객은 주문 확인을 받고, 식당은 주문 요청을 받아 처리함.

차이점

  • 유저 시나리오는 사용자의 경험과 상황적 맥락을 중심으로 설계되어, 사용자가 시스템을 사용하는 동기와 목적을 보여줍니다.
  • 유스케이스는 시스템이 수행해야 할 구체적인 기능과 작업을 단계별로 정리하여, 시스템 설계자나 개발자가 시스템의 기능을 구현하는 데 도움을 줍니다.

두 개념을 이런 식으로 구분하여 사용하면 사용자의 요구와 시스템의 기능을 더욱 효과적으로 설계할 수 있습니다.