-
11/9 TIL | 포트폴리오를 위한 준비 (1) 유저 스토리 (with. As-I-So)📝 기록/매일의 기록 2022. 11. 9. 14:36
현재 코딩 도장에서 같이 공부하고 있는 1기분들은 포트폴리오 주간이라 나의 두 달 뒤 미래를 미리 보고 있다. 두 달은 금방 지나가므로 원론적인 내용들은 미리 정리해놓는 게 좋을 거 같아 아샬님의 특강을 통해서 알게 된 유저 스토리 작성법을 알아보고자 한다.
우선 유저 스토리에 대한 정의를 알아보기 전에 이에 관련된 용어부터 정리해보자.
- 이니셔티브(Initiative) or 테마(Theme): 서비스나 제품에서 큰 덩어리로 볼 수 있는 부분을 의미한다. 여러 개의 에픽으로 구성된 단위를 뜻하며, 여러 팀으로부터 진행된 Epic이 취합되어 이룰 수 있는 넓은 의미의 목표(Goal)를 의미한다.
- 에픽(Epic): 완료하기까지 다소 오랜 시간이 걸리거나 몇 번의 스프린트가 요구되는 큰 업무 덩어리를 말한다. 에픽은 여러 개의 스토리 또는 태스크로 쪼개질 수 있다.
- 스토리(Story): 유저 스토리라고 불리며, 엔드 유저의 관점에서 쓰여진 간단한 요구 사항을 말한다. 스토리는 간단한 한 가지 이야기라고 생각하면 되고, 연관된 스토리들이 모여 하나의 에픽을 형성한다.
- 태스크(Task): 스토리를 완료하기 위해 개발자가 작업해야 하는 작업의 단위를 의미한다.
예시를 좀 더 자세히 살펴보자.
'위시리스트'가 테마라고 가정했을 때 에픽, 스토리, 태스크는 아래와 같다.
- 에픽: 고객으로서 나중에 돌아와 제품을 구매할 수 있게 위시리스트가 필요하다.
- 스토리:
1. 고객으로서 위시리스트에 제품을 저장하여 나중에 다시 볼 수 있으면 한다.
2. 고객으로서 위시리스트를 확인하고 이를 이용해 제품을 구매하고 싶다.- 태스크:
1. 모든 페이지에 '위시리스트에 추가하기' 버튼 삽입.
2. 위시리스트 아이템을 저장하기 위한 새로운 DB 생성.
3. 위시리스트 화면 페이지 구성.
4. 홈에 '위시리스트에서 보기' 링크 추가.유저 스토리를 작성하는 법은 다양하지만 그 중에서도 가장 대표적인 것은 위 사례에서 등장한 As - I - So 기법이다. 이는 "As a [type of User], I want to [Action], So that [benefit]"의 줄임말로, 한국어로 말하자면 "[사용자]는 [목적]을 위해 [활동/작업]하기를 원한다"라고 해석할 수 있다. 이렇게 하는 이유는 서비스를 제공하는 입장에서 서비스를 개발하는 것이 아닌 실제 사용자의 입장에서 생각하여 기획하고 개발하기 위함이다.
좋은 유저스토리의 요건으로는 INVEST가 있다. INVEST는 총 6가지 단어의 앞글자를 따서 만든 단어로 내용은 아래와 같다.
1. Independant(독립적인): 유저 스토리는 '독립적'이어야 하며, 서로 다른 유저 스토리에 지나치게 의존하면 안 된다.
2. Negotiable(협상 가능한): 유저 스토리는 규모 측면에서 '협상 가능'해야 하며, 리소스를 고려하여 규모를 유동적으로 해야 한다.
3. Valuable(가치 있는): 유저 스토리는 '가치'가 있어야 한다. 여기서의 가치는 고객 관점에서 평가한 가치를 말한다.
4. Estimatable(측정 가능한): 유저 스토리 개발에 드는 리소스를 '측정 가능'해야 한다.
5. Small(작은): 유저 스토리의 리소스는 범위는 '작아야' 한다. 그래야 리소스를 정확하게 측정할 수 있으며, 다른 스토리에 의존하지 않는다.
6. Testable(테스트 가능한): 유저 스토리가 잘 개발됐는지 확인하기 위해 '테스트가 가능'해야 한다.유저 스토리를 작성할 때의 가장 중요한 점은 그래서 사용자가 이 서비스를 이용할 때 어떤 가치가 있는지를 계속 고민해야 한다! 끊임없는 고민을 통해 서비스 제공자의 입장에서 유저를 생각한 기획과 설계를 진행할 수 있어야 한다. 이점을 명심하고 유저 스토리를 작성해보자!
참고
🔽 참고로 아래의 블로그는 As-I-So의 장단점과 그를 보완한 In order to-As-I 또한 제시하고 있으니 한번 같이 읽어보자!
'📝 기록 > 매일의 기록' 카테고리의 다른 글
11/13 TIL | Flux 패턴이란? (0) 2022.11.13 11/12 TIL | 나만의 메뉴 만들어보기. (0) 2022.11.12 11/8 TIL | 아샬님의 강의를 듣고. (1) 2022.11.08 11/7 TIL | 해시 함수(Hash Function) (0) 2022.11.07 11/6 TIL | 을지로에서 열린 열정 대부흥회🕺🏻 (1) 2022.11.06