Akashic Records

User Stories Applied : Chapter 3 사용자 역할 모델링 본문

오래된글/소프트웨어공학

User Stories Applied : Chapter 3 사용자 역할 모델링

Andrew's Akashic Records 2018. 4. 18. 13:33
728x90

많은 프로젝트에서 오직 유형의 사용자만 존재하는 것처럼 스토리를 작성하는 경우가 많다.모든 스토리가 사용자 유형의 관점에서만 작성된다. 그러나 이런 식으로 단순화하는 것은 잘못된 생각이며, 자칫 시스템 주요 사용자 유형에 포함되지 않는 사용자들에게 필요한 스토리를 놓칠 수도 있다. 스토리는 확실히 시각만으로 작성할 없다. 사용자들은 제각기 다른 배경과 목적으로 소프트웨어를 사용하겠지만, 비슷한 유형의 사용자들을 모아사용자 역할(user role)” 부를 있을 것이다. 사용자 역할은 특정 사용자 집단이 시스템과 어떤 상호작용을 하는지 규정하는 속성의 집합이다.


역할 모델링 절차

사용자 역할 목록 초안을 위한 브레인스토밍

  • 사용자 역할 모델링 회의에는 팀의 모든 구성원이 참여하는 것이 이상적이지만 적당한 개발자 대표와 고객이 참여하여 진행된다.

  • 회의는 각자 생각나는 사용자 역할을 카드에 작성하면서 진행된다.


목록 초안작성

  • 브레인스토밍 회의에서 작성된 사용자 역할 카드를 넓은 벽이나 테이블에 붙인다.

  • 카드를 이리 저리 옮겨 역할 사이의 관계에 따라 위치를 조정한다.

  • 중복되는 역할은 카드를 겹쳐 놓는다. 역할이 조금만 중복되면 조금만 겹치도록 하는 식이다.


Tip : 시스템 역할

가능하면 사용자 역할을 정의할 , 시스템과 연동되는 다른 시스템보다는 시스템을 사용하는 사람에 초점을 맞추어야 한다. 하지만 때때로 비인간 사용자 역할이 필요하다고 생각되면 그것을 역할로 식별할 있다.



역할 통합하기

  • 목록 초안작성단계에서 겹쳐진 카드를 작성한 사람들이 차례로 역할 이름으로 나태내고자 것이 무엇인지 설명한다. 간단한 토론을 거쳐 역할들이 정말 동등한 것인지 결정한다.

  • 시스템을 성공적으로 구축하는 중요하지 않을 같은 역할에 대한 카드는 모두 찢어 버린다.

  • 역할 카드들을 통합한 다음에는 역할 사이의 관계가 드러나도록 그것들을 테이블 또는 벽에 정렬한다.


역할 다듬기

역할에 대한 속성을 정의함으로써 역할 모델링을 있다. 역할 속성은 어떤 역할을 수행하는 사용자들에 대한 사실 혹은 사용자와 관련된 유용한 정보다. 다른 역할과 구분할 있는 어떤 정보라도 역할 속성으로 사용할 있다. 다음은 일반적인 역할속성 이다.

  • 소프트웨어를 사용하는 빈도

  • 해당 분야에 관한 전문 지식 수준

  • 컴퓨터 소프트웨어에 대한 일반적인 숙련도

  • 개발 대상 소프트웨어에 대한 숙련도

  • 소프트웨어에 대한 일반적인 사용 목적

  • 편리함을 우선시하는가?, 풍부한 기능을 선호하는가?


Tip : 등장인물

등장인물이란 사용자 역할을 대표할 만한 가상 인물이다.

사용자 역할 중에서 주요 사용자 역할 한두 정도를 등장인물 정의를 작성하는 것이 좋다. 개발 중인 시스템이 절대적으로 어떤 사용자 역할을 만족시켜야만 한다면 그들이 바로 등장인물의 후보가 된다. 등장인물을 정의할 때는 모든 팀원이 등장인물을 알고 있는 것처럼 느낄 있도록 세부사항을 충분히 묘사해야 한다. , 등장인물이 실제 대상 고객을 왜곡하지 않고 나타내도록 시장 인구통계에 근거해 충분한 조사가 선행되어야 함을 명심한다.


728x90
Comments