버그 수정 반복을 설명하는 방법?


9

지난 5 개월 동안 Scrum을 성공적으로 구현했습니다. 비록, 우리는없이 3 주 후 PROD에서입니다 이제까지 어떤 엔드 - 투 - 엔드 통합 테스트를하고. 아야! 도움이 필요합니다. (이 시점에서) 이것의 원인을 다루지 않으면 서, 현재의 반복을 계획 할 필요가 있습니다. 이것은 현재 약간의 개선과 여전히 알려지지 않은 버그 수정으로 구성되어 있습니다. 이 시나리오를 어떻게 설명합니까? 아직 발견되지 않은 버그를 수정하기 위해 반복을 어떻게 계획합니까?


16
"엔드-투-엔드 통합 테스트를 수행하지 않고도 Scrum을 성공적으로 구현했습니다." 잘못해서 죄송합니다. 각 반복이 끝날 때 배송 할 수 있어야했습니다.
xsace

3
@xsAce 6 개월 반복
Bart

3
질문 자체는 좋지만 프로세스 설명은 일이 얼마나 잘 작동하고 있는지에 대해 거부감을 느끼게합니다. 다른 작업을 수행하지 않으면 현재 팀에서 릴리스 날짜를 커밋 할 수 없다고 PO에 알리십시오. 최선을 다하는 것은 다음 반복에서 품질 평가에 중점을 두겠다는 약속입니다. 다음 회고에서 진지한 팀 토론을하십시오.
GuyR

1
이 사이트에서 스크럼 관련 질문의 역사를 살펴보면 회사가 스크럼과 같은 "아무런 일도하지 않고"폭포 개발에 훨씬 더 편안하고 친숙한 사람들의 팀처럼 들린다는 것이 분명합니다. Waterfall은 본질적으로 "나쁜"것이 아니라 경영자가 "Agile", "Scrum", "Sprint", "Backlog"및 "Planning Poker"와 같은 단어를 버즈 단어로 사용하는 것을 좋아하지만 문화에 전적으로 헌신하지는 않습니다. 이러한 일을 수행하는 데 필요한 관리 변경. 그들은 스크럼에 전념하지 않고 스크럼의 이점을 원합니다.
maple_shaft

4
그것은 사람들을 끄는 스크럼 프로세스 순수 주의자입니다. 그가 문제가 있음을 인식하지 못하면 질문을하지 않았을 것입니다. 어디에서 잘못되었는지 파악하고 향후 반복에서 더 나은 조치를 취하는 것이 민첩합니다. 프로세스 및 도구에 대한 개인 및 상호 작용
Karl Bielefeldt

답변:


7

스크럼 여부에 상관없이 버그 수정은 기본적으로 예측하기가 불가능합니다. 내가 할 수있는 최선은 다음과 같습니다.

  • 초기 추정없이 즉시 테스트를 시작하십시오.
  • 각 버그를 발견하면 추정 할 수있을 정도로 초기 분석을 수행하십시오.
  • 버그를 추정하고 수정해야하는지 여부와 초기 릴리스를 위해 수정해야하는지 여부를 결정하십시오.
  • 수정해야하는 경우 반복에 추가하십시오.
  • 번 다운 차트를 플로팅합니다. 언젠가는 감소하기 시작하여 더 이상 버그를 수정하는 것보다 더 빨리 버그를 찾지 않습니다. 이 시점에서 릴리스가 이루어질 때 대략적인 추정 (그리고 점진적으로 더 정확한)을 제공 할 수 있습니다.

다음에 조기에 테스트를 시작하고 버그를 수정해야합니다. 민첩한지 여부에 관계없이 모든 합리적인 방법론은 새로운 기능을 진행하기 전에 알려진 버그를 수정해야합니다. 또한 각 기능을 버그 수정하는 데 소요 된 시간을 고려해야하므로 향후 기능을 디버깅 된 상태로 구현하기위한 예상치를 향상시킬 수 있습니다.

추정 및 버그 수정증거 기반 예약하드 어설트 버그 수정 에서 Joel Spolsky에 의해 잘 다루어집니다 . 스크럼과 관련이 없지만 많은 부분이 적용되는 것이 일반적이라고 생각합니다.


5

버그 수정 반복을 설명하는 방법? 아직 발견되지 않은 버그를 수정하기 위해 반복을 어떻게 계획합니까?

"버그 수정 반복"에 관하여. 발견 된 버그는 스토리와 다르게 취급되지 않아야합니다. 팀과 협력하여 각 버그를 해결하려는 노력 (스토리 포인트)을 추정하고 제품 소유자 / 고객과 협력하여 버그가 다음 반복으로 진행되는지 여부를 결정하십시오.

"아직 발견되지 않은 버그"에 대하여. 팀은 각 반복 문제를 찾아 수정하는 것이 바람직합니다. 그렇지 않은 경우 다음 회고에서이를 논의하십시오. 제품 품질이 너무 낮아서 릴리스 할 수없는 경우 즉시 최고의 " 버그 파인더 "를 버그를 찾는 것으로 옮기십시오 (수정 아님). 사용자를 선정 할 수있는 베타 버전을 제공 할 정도로 품질이 높은 경우이를 수행하십시오. 만약 당신이 할 수 없다면, 최소한 약한 부분을 논의하는 라이브 사용자 데모를 제공해야합니다.


+1. 베타 품질 단계에있을 때 피어 테스트 세션을 고려할 수도 있습니다.
louisgab

2

'버그 수정 반복'은 계획하지 않지만 각 릴리스 전에 시스템 테스트 반복을 계획합니다. 시스템 테스트는 제품의 모든 부분에 대한 통합, 회귀 및 실제 테스트입니다. 테스터는 제품 (꽤 큰 레거시 시스템)을 테스트하고 개발자는 발견 된 모든 버그를 수정합니다. 버그가 발견되지 않으면 다음 프로젝트의 기능 일정을 조사하거나 내부 개선 작업을 시작합니다.

현재 모든 코드가 작동하는지 확인하기 위해 코드 동결 (5 개월 프로젝트, 시스템 테스트 포함) 후 6 주간 시스템 테스트를 계획하고 있습니다. 이는 구현 반복 중에 수행되는 모든 테스트의 최상위에 있습니다.


1

"릴리스"기준 세트를 정의해야합니다. 여기에는 다음이 포함될 수 있습니다.

  • 실패 사이의 평균 시간
  • 하루에 발견 된 결함 수
  • 하루에 발견되는 결함의 심각성
  • 미결 점수

기타

그런 다음 각 반복이 끝날 때마다 (수동으로 또는 자동 테스트를 작성하여) 사람들이 테스트하고 다른 사람들이 기준을 충족하는지 확인하는 검사를합니다. 그런 다음 릴리스 한 경우 그렇지 않은 경우 다른 반복으로 이동하십시오.

이것에 대한 재정의 가능성이 있어야하며 종종 원시 숫자는 응용 프로그램의 현실적인 그림을 나타내지 않습니다. 실제로 몇 가지 심각한 결함이있을 수 있지만 단기간에 살 수있는 드문 조건에서만 나타납니다.


1

이를 수행하는 한 가지 방법은 통합 테스트를위한 스토리를 작성하는 것입니다.이 단계에서 발견 한 버그에 대한 새 스토리를 작성한 후 다음 반복에서 버그 스토리를 수정하십시오.

또 다른 방법은 "통합 테스트에서 발견 된 버그 수정"이라는 스토리를 만드는 것입니다. 이전 릴리스부터는 일반적으로 발견되는 문제 수와 해결하기 어려운 문제에 대해 알고 있어야 지식을 기반으로 스토리 포인트를 할당 할 수 있습니다. 관리하기 쉽도록 구성 요소로 나눌 수 있습니다. 이것에는 항상 피할 수없는 불확실성이 있습니다. 이를 설명하기 위해 추가 스토리 포인트를 추가하십시오.

아마도 가장 좋은 방법은 가능한 경우 모든 반복에 작은 통합 테스트를 통합하는 것입니다. 이를 인식하고 다음 릴리스를 위해 프로세스를 약간 개선 한 것을 축하합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.