
회사에서 Agile 교육을 받으면서, 나도 Agile 하게!!!!! 개발하고 싶다!!! 그랬는데.. 마침 토이 프로젝트를 시작하면서 배운 것을 써먹어 볼 좋은 기회라고 생각했다. Agile 교육에서 배운 프로세스들을 팀원들과 공유하면서 적용하면 좋겠다, 재밌겠다! 하는 것들을 도입하여 진행해 봤다.
Agile 교육도 받고 이 단어를 참 많이 들었지만, 아직도 나는 Agile이 무엇인지 모른다. 아마 정확하게 설명할 수 있는 사람도 없을 거라 생각한다. 다만 내 기억 속에서 느낀 대로 설명하자면, Agile에서는 다음 세 가지를 강조하는 듯하다.
고객의 입장에서 생각하면서 개발하고, 작은 스프린트로 빠르게 피드백을 받아 더 나은 서비스를 만들자. 정도로 해석해 보았다.
아래는 Agile 교육에서 기억에 남고 유용하면서도 재미있었던 과정들이라 우리 팀에 가져와서 적용해 보았다.
우리는 꿈 일기 공유 플랫폼이라는 주제를 가지고 시작했기 때문에, 주제를 선정하기 위한 단계는 생략하고 페르소나부터 진행하였다.
Persona(페르소나)는 가상의 고객을 가정한다. 고객의 입장이 되어, 우리 서비스를 찾는 과정, 서비스를 이용하면서 얻으려는 것이 무엇인지 예상해 보는 것이다. Confluence에서 괜찮은 Persona Template을 제공하여 이를 변형하여 사용하였다.


꿈 일기 공유 플랫폼을 사용할 법한 10대 ~ 30대로 범위를 정해두고 여러 페르소나를 만들어 보았다. 다양한 가상의 인물을 만들어 보니 다양한 니즈를 예상해 볼 수 있었다.
Customer Journey Map에서는 앞서 만들어둔 페르소나(고객)가 우리 서비스를 이용하는 여정을 여러 단계의 시나리오로 만들어 본다. 단계별로 고객의 감정 변화를 시각화하고 문제점을 예상해 보면서 더 나은 솔루션을 만들어보는 과정이다. 이번에도 Confluence에서 Customer journey mapping Template 을 제공하여 이를 사용했다.


Customer Journey Map을 진행할 때는 각 단계에서의 감정이 어떨지 예상하고, 문제점을 만들어 보는 것이 쉽지 않았다. 그래도 이런 시나리오를 만들고 이입하여 실행해 보니 재밌는 아이디어들을 많이 찾아낼 수 있어서 굉장히 만족스러운 단계였다.
Feature Identification은 Customer Journey Map에서 도출한 문제점, 솔루션들을 토대로 Feature(기능)를 정리해 보는 과정이다.

Customer Journey Map에서 나온 솔루션들이 명확해서 기능을 도출하는 데 큰 어려움은 없었다. 미리 생각하고 있던 기본적인 기능들부터 Persona, Customer Journey Map을 통해 얻은 새로운 아이디어까지 세분화하니 정말 많은 기능들이 나왔다.
점수를 부여하여 기능의 사이즈를 정하는 Feature Estimation 단계도 있지만, 너무 많은 공수가 들면 팀이 지칠 것 같아 생략하였다.
짧은 시간 내에 모든 기능들을 다 구현할 수는 없다. 따라서 Feature Pyramid에서는 기능의 가치, 선행 관계 등을 고려하여 우선순위를 정해서 피라미드 형태로 표현하고 하위에 배치된 일부 기능들은 보류하거나 걷어낸다.

우리는 먼저 Slack에서 Polly라는 기능을 사용하여 팀에서 각 Feature의 중요도를 조사하였다. 팀원들이 각 기능마다 1점~5점으로 중요도(가치)를 투표하고, 평균을 내어 점수를 내었다. (아쉽게도 Polly 무료 플랜에서는 45일이 지난 투표 결과를 보여주지 않는다...)

투표 결과 점수로 선 정렬한 후 토론을 통해서 순서를 재조정하였다. 애플리케이션 형태를 위해 기본적인 기능들이 선순위 작업으로 올라왔다. 중요도가 높지만 유사한 가치를 제공하는 기능이나 사이즈가 너무 큰 기능은 아래로 밀려났다. (겪어 보니 Feature Estimation을 통해 사이즈를 예상해 보면 좋았겠다는 생각도 들었다.)
지금까지 4가지 단계를 거쳐서 기능을 도출하고, 개발 순서도 정해보았다. 처음에는 이 과정들을 우리가 잘 적용할 수 있을까 하는 걱정이 있었는데, 결과도 아주 만족스러웠고 팀원들의 반응도 긍정적이었다. 다음으로는 우리 팀이 협업을 위해 사용하는 도구들과, 협업/개발 과정을 하나씩 소개해 보겠다.