<사용자스토리>
사용자 스토리는 고객에게 가치를 전달하기 위한 애자일 방법 실천법이다. 이 워크숍에서는 사용자 스토리와 인수 테스트를 작성하는 방법을 익히고, 실습하고, 경험을 나누고 토론한다.
스크럼 전통에서 일하고 있는 박준표와 XP 전통에서 일하고 있는 최보나 역시 사용자 스토리를 도구로 소프트웨어를 개발하고 있다. 두 명의 작업자들은 약 3달 전부터 매 주 샌프란시스코와 서울을 연결하여 공부를 했다. 그리고 사용자 스토리를 쓰고, 인수 테스트를 작성하는 다양한 경험과 교훈을 나누었다.
이 워크숍에서는 두 사람의 '정답'을 공유하는 것이 아니라, 함께 소프트웨어를 뜯어보며 역으로 사용자 스토리를 써보며 고민을 나눈다. 그리고 사용자에게 가치가 전달될 수 있도록 스토리를 쓰고 나누는 서로의 '지혜'와 '경험'을 나눈다. 이들은 워크숍을 통해 더 많은 학습 동료를 만나고 새로운 지평을 발견하길 바라고 있다.
<발표자>
박준표 ScrumMaster @pyopark
고려대학교에서 언론학 석사를 마치고, 연세대학교 청년문화원 연구원으로 웹서비스를 기획했다. 현재는 바닐라 브리즈에서 스크럼 마스터(Scrum Master)로 일하고 있으며, 청(소)년, 다양성, 뉴미디어를 키워드로 PINY라는 Social Venture를 실험하고 있다. 그의 목표는 다양성이 존중받는 즐거운 세상을 만드는 것이다. 10대 시절부터 시민문화, 캠프, 포럼,택틱컬 미디어, 웹서비스 등 다양한 기획과 연출, 실험을 해왔고 청소년 라디오 프로그램의 진행자, 설치미술작가로도 활동 중이다. 계원예술대학교와 건국대학교, 서울대학교 미술관 MoA 에서 아트 프로그래밍을 강의했고, 퍼실리테이팅과 코칭을 수련하고 있다. 역서로는 "헬로! 컴퓨터 프로그래밍!"이 있다.
최보나 ThoughtWorks @iambonna
어려서부터 대륙을 넘나들며 일하는 게 꿈이었는데, ThoughtWorks에 애널리스트로 입사하면서 그 꿈을 제대로 이루게 되었다. 애자일 프로젝트 관리도구인 Mingle 개발팀에 4년간 참여해 미국, 호주, 중국을 오가며 일하다가 한국에서는 애자일이 어떻게 실천되고 있는지 관심을 갖게 되어, XP사용자 모임에서 운영자를 맡아 활동했다. 현재 샌프란시스코에서 컨설턴스로 일하며 고객에게 애자일 도입과 소프트웨어 전달이라는 엄청난 목표를 실현하고자 고군분투 중이다. 한국의 소프트웨어 종사자들이 애자일의 장단점을 잘 활용해 좀 더 인간적으로, 재미있게 소프트웨어를 개발할 수 있도록 하는데 기여하고 싶다는 아름다운(?) 꿈을 꾸며 오늘도 조금씩 내공을 쌓고있다.
1. @pyopark
@iambonna
User Stories Workshop
사용자스토리 쓰고 비교하고 이야기 나누기
2. @pyopark
@iambonna
발표자
박준표 @pyopark
Scrum
Seoul, Korea
Game Development
최보나 @iambonna
XP
San Francisco, USA
IT Consultant
3. @pyopark
@iambonna
워크숍 진행 순서
사용자 스토리 작성법 소개
박준표 / 최보나
사용자 스토리 작성해보기
매직워터 다이어리와 EPIC 소개
사용자스토리, 인수테스트 작성하기
교환하고 토론하기
4. @pyopark
@iambonna
User Story 작성법
As a <Type of user>, I want <some goal> so
that <some reason>.
고객 X 는, ~을 하기위해, ~할 수 있다.
5. @pyopark
@iambonna
User Story 작성법 - 박준
표 <A> 는, ~을 위해서, ~을 할 수 있다.
• 고객
• 인수테스트
• YES/NO 로 코딩
• 인수테스트가 3가지를 넘어갈 경우, 스토리를 분리한다.
• 확인해야 할 사항
6. @pyopark
@iambonna
User Story 작성법 - 박준
표 책임자는,
제품
외부 이해관계자들에게 시연하기 위해,
STABLE 버전이 필요하다.
7. @pyopark
@iambonna
User Story 작성법 - 박준
표
인수테스트 (YES, NO)
1. 터치 홀릭스에 Stable 버전이 따로 있는가?
2. 스테이블 버전 결정을 했는가?
3. 금요일 오후 5시 올렸는가?
8. @pyopark
@iambonna
User Story 작성법 - 박준
표
확인해야 할 사항
1. Stable Version 의 정의가 무엇인가?
1. 정의에 따라 점수가 달라진다.
3. Stable Version 은 언제 결정하는가?
9. @pyopark
@iambonna
User Story 작성법 - 최보
나
• What?
• Why?
• Acceptance Criteria:
• Questions
• Out of Scope
이미지 출처: andrewfuqua.com
10. @pyopark
@iambonna
User Story 작성법 - 최보
나
• What?
Ability to login my email account
• Why?
In order to access my emails, As google email
user, I want to login to my email account using my
credentials.
• Acceptance Criteria:
1. When user proviedes the valid user id and
password, s/he can loing to her email account.
2. If user entered user id and /or password is
incorrect, provide an error.
1. e.g. Please provide a valid user name and password
3. If user enters nothing and hit enter, provide
an error.
15. @pyopark
@iambonna
EPIC
Must be
내가 물을 마시고자 하는 시간에 알람이 온다.
물을 마실 때, 마신 양을 기록할 수 있다.
Should be
내 적정 물 섭취량을 알 수 있다.
현재의 물 섭취량을 알 수 있다.
Nice to have
트위터에 올리기/페이스북에 올리기
테마 알람을 설정할 수 있다
16. @pyopark
@iambonna
내가 물을 마시고자 하는 시간에 알람이 온다.
EPIC을 작은 사용자 스토리를 작성하세요.
스토리마다 ‘인수 테스트’를 작성해주세요.
그 밖에 필요한 스토리 카드에 필요한 것들을 적어주
세요.
17. @pyopark
@iambonna
사용자 스토리 교환하기
옆 테이블의 사용자 스토리를 서로 교환합니다.
사용자 스토리를 읽고, 완벽히 이해가 되는지 살펴보
세요.
혹시 빠진 스토리나 인수테스트가 있는지 서로에게
질문해보세요.
질문들을 포스트-잇에 메모해주세요.
18. @pyopark
@iambonna
내가 물을 마시고자 하는 시간에 알람이 온다.
사용자는, 물을 마시는 시간을 리마인드 하기 위해, 원
하는 시간에 알림을 받을 수 있다.
원하는 시간을 입력할 수 있는가?
원하는 시간에 알람이 오는가?
19. @pyopark
@iambonna
내가 물을 마시고자 하는 시간에 알람이 온다.
What? Questions
Ability to set alarms to drink water
If not, ?
Why?
How long should it alarm?
In order to remind myself to drink
water, as Bonna, I want to set Can user set alarms in minutes/
alarm to drink water. seconds/hours?
Acceptance Criteria: Do we want to limit how many
alarms user can set a day?
1. User can set one or more
alarms any time of the day. Out of Scope
2. Alarm should be turned on at Not deal with the case where
the user specified time. the phone is set to manner
mode