Akashic Records

User Stories Applied : Chapter 1 Intro - 2 본문

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

User Stories Applied : Chapter 1 Intro - 2

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

2. 스토리를 이용한 프로젝트 진행 프로세스

스토리는 주로 스토리 작성 워크숍에서 처음 작성하게 되지만, 프로젝트 진행 중에도 아무 때나 추가로 작성할 있다. 스토리 작성 워크숍에서는 참여자들이 브레밍스토밍을 거쳐 가능한 많은 스토리를 찾아낸다. 초기 스토리를 마련하고 나면 개발자는 각각의 크기를 추정한다.

고객 팀과 개발자가 협력하여 이터레이션 길이(Iteration Length) 1~4 정도 범위에서 선택한다. 선택한 이터레이션 길이는 프로젝트가 끝나기 전까지 변경하지 않는다.

  • 개발자들은 이터레이션마다 소프트웨어의 일부 기능만이라도 자체로 쓸모 있는 코드를 인도해야 한다..

  • 고객 팀은 이터레이션 동안 긴밀하게 참여하고 개발자와 해당 이터레이션에서 개발하는 스토리에 대해 대화를 나누어야 한다.

  • 고객 팀은 테스트할 것들을 지정하고 개발자와 함께 테스트를 자동화하고 실행하도록 한다.

개발자는 이터레이션마다 얼마큼 일하수 있을지에 대해 추정해야 한다. 이터레이션 동안의 작업량을 속도(Velocity)라고 부른다.

릴리즈 계획을 세우기 위해서는 먼저 스토리들을 여러 묶음으로 분류하는데, 묶음은 하나의 이터레이션을 나타낸다. 묶음에 포함된 스토리들의 추정치를 더하여 속도 추정치를 넘지 않도록 한다.

  • 가장 우선순위가 높은 스토리들을 번째 묶음에 포함한다.

  • 묶음이 가득 차면, 다음 우선순위가 높은 스토리들로 번째 묶음을 만든다.


릴리즈와 이터레이션 계획

릴리즈 계획 : 프로젝트 일정과 구현할 기능 집합의 균형을 결정하는 .

이터레이션 계획 : 이터레이션에 포함할 스토리를 선택하는일


스토리 우선순위

  • 사용자나 고객 다수가 원하는 기능인가?

  • 다수는 아니지만 중요한 사용자나 고객이 바라는 기능인가?

  • 스토리가 다른 스토리들과 응집성(cohesiveness) 있는가?


스토리 ‘A’ 우선순위가 낮고, ‘B’ 우선순위가 높지만 ‘A’,’B’ 서로 상호 보완적인 관계에 있을 경우는 ‘A’ 우선순위를 높이 평가한다.

스토리 점수(Story Point)

개발자 입장에서 스토리 개발에 드는 비용(난이도, 기간 ..) 고려하여 스토리에 부여하는 추정치, 동일 개발자에서 스토리 점수가 4 스토리는 2 스토리에 비해 2배의 기간이 소요된다.


이터레이션 계획

작업량 속도를 13으로 예측하였다면 이터레이션에서 스토리 점수의 합이 13 넘지 않게 한다.

스토리 점수표

스토리

스토리 점수

스토리 A

3

스토리 B

5

스토리 C

5

스토리 D

3

스토리 E

1

스토리 F

8

스토리 G

5

스토리 H

5

스토리 I

5

스토리 J

2


이터레이션 계획

이터레이션

스토리

스토리 점수

이터레이션 1

A, B, C

13

이터레이션 2

D, E, F

12

이터레이션 3

G, H, J

12

이터레이션 4

I

5


인수 테스트

인수 테스트는 스토리를 개발한 그것이 고객이 기대하는 대로 정확히 동작하는지를 입증하는 과정이다. 이터레이션이 시작되면 개발자는 코드를 작성하고, 고객 팀은 테스트를 작성한다. 고객 팀에는 숙련된 전담 테스터가 포함되어야 한다.


728x90
Comments