인문학 감성에 대한 필요성이 높아지면서 스토리텔링에 대한 관심이 점점 높아지고 있다. 소프트웨어 개발에서도 애자일이 도입되면서 사용자 스토리 (User Story)를 정확히 만들기 위한 노력이 높아지고 있고, 사용자의 요구사항을 더 알아보기 쉽고 명확하게 하기 위해 스토리텔링 기법도 동원되고 있다. 이번 회에서는 UX의 한 기법인 사용자 스토리를 만드는 방법에 대해 살펴보도록 한다. 기술적 성향이 매우 높은 개발자들이 사용자가 이해하기 쉬운 형태로 사용자 스토리를 만들 수 있기를 기대한다.
사용자 스토리 (User Story)의 정의
지금까지도 사용자 (고객 )의 요구사항을 정리할 때 , 사용자보다는 개발자 입장에서 작성하게 된다. 그림 1은 사용자의 요구사항을 정리한 문서이다. 개발 프로젝트의 개발자는 사용자와 회의를 하면서 정리하고, 입출력 데이터 등을 정리하여 사용자에게 확인을 받는다.
<그림 1> 요구사항정의서의 예
출처 : http://fixframe.tistory.com/category/웹기획 /분석
그림 1을 가지고 사용자에게 확인을 받으면 사용자는 자신의 요구사항이 얼마나 반영되었는지 알기가 어렵다. 더구나, 사용자는 자신들의 업무나 하는 일에 대해 개발자가 제대로 이해했는지도 알 수가 없다. SI(System Integration) 프로젝트에서 가장 어려운 부분 중 하나가 프로젝트가 다 끝나가는데 요구사항이 변경되는 것이다. 추가적인 요구사항이라면 협상의 여지가 있지만, 요구사항을 잘 못 이해하고 만든 것이라면 분석, 설계부터 개발까지 회귀 결함을 포함해서 재개발해야 하는 문제도 생긴다. 지금까지 개발자들이 가장 놓쳤던 부분이 “사용자는 시스템이나 개발 프로세스를 잘 모른다”는 것이고, 반대로 “개발자들은 사용자가 하는 일을 잘 모른다”는 것이다.이와 같이, 개발 프로젝트 초기에는 과도한 요구사항 수집과 문서화는 프로젝트를 망칠 수 있는 요인일 수 있다.
이러한 문제를 개선하고자 사용자가 하는 일을 사용자나 개발자 모두가 쉽게 이해할 수 있도록 스토리 형태로 정리하는 것이 사용자 스토리이다. 애자일에서 사용자 스토리는 사용되는 소프트웨어의 기능이나 요구사항을 의미하고, 한 두 문장으로 짧게 표현하고, 명세보다는 의사소통을 위한 목적으로 활용된다고 하고 있다.