스크럼을 소개 할 때 무엇이 ​​잘못되었는지 보셨습니까?


20

귀사가 현재 프로세스를 SCRUM으로 교체하기로 결정했을 때 발생한 단일 장애 지점은 무엇입니까?

회사가 SCRUM을 도입하려고 할 때 실제로 잘못 된 것들에 대한 예를 들어 주시겠습니까? 나는 당신의 일화, 당신이 경험 한 무언가, 당신이 봤지만 실패 할 수없는 큰 실패 를 듣고 싶습니다 .

구현 세부 사항, 스토리 크기스토리의 세부 수준 에 대한 결정 에 대한 문서 누락 에 대한 우려가 많이 있습니다.

답변:


14

가장 큰 문제는 오해입니다. 일반적인 실패는 다음과 같습니다.

  • 오직 한 팀만이 스크럼을하고 있지만 나머지 회사 (영업, 관리, HR 포함)는 여전히 오래된 방식으로 생각합니다. 예 :

    고객 및 고객의 참여와 지속적인 상호 작용이 매우 중요합니다.

    HR은 팀 성과가 개인의 성과보다 더 중요하다는 것을 이해해야합니다. KPI는 그로 변경해야합니다.

    기능 정의는 지속적인 프로세스입니다. 프로젝트 정의는 고객 피드백에 의해 개발 중에 발전 할 것입니다. 해당 프로젝트 마감일로 인해 필요한 예산 또는 결과 기능 세트가 변경 될 수 있습니다 (이해 관계자의 승인 후).

    변화는 과정의 일부입니다.

    추정은 프로젝트가 시작될 때 5 개월 이내에 모든 기능 (처음에는 알려지지 않은 기능)으로 수행 될 것이라고 말할 수없는 지속적인 프로세스입니다.

    팀은 결정을 내릴 수 있습니다. 팀은 다음 스프린트 동안 제공되는 기능의 양을 약속합니다. 이것은 요구하거나 명령 할 수 없습니다.

    스프린트는 팀에게 안전한 구역입니다. 팀이 정의 된 사용자 스토리를 커밋 한 후에는 커밋을 팀 외부에서 수정할 수 없습니다.

    오래된 조직 구조의 일부는 스크럼으로 이동할 때 의미가 없습니다. 스크럼은 세 가지 역할을 정의합니다 : 스크럼 마스터, 제품 소유자, 팀. 다른 역할이 있지만이 세 가지만으로도 응용 프로그램을 제공하기에 충분합니다. 일반적인 의미는 Scrum 마스터, 팀 리더, 제품 소유자 및 하나 이상의 프로젝트 관리자가 있습니다. 프로젝트 관리자와 팀 리더는 Scrum에서 중복 역할입니다.

  • 할당 된 스크럼 마스터 역할이 스크럼 마스터를 수행하지 않습니다. 스크럼 마스터는 장애를 해결합니다. 팀을 방해하는 것은 최대한 빨리 해결해야하는 장애입니다. 가장 일반적인 실패는 Scrum에 대한 이전 경험이없는 개발자에게이 역할을 할당하는 것입니다. 이 역할은 일반적인 프로젝트 관리자를 부분적으로 대체하지만 Scrum 마스터는 파워 오버 팀이 없으며 Scrum 마스터는 구현할 기능을 요구하지 않습니다. 스크럼 마스터는 실현할 수없는 요구 사항으로 제품 소유자로부터 팀을 보호합니다.

  • 할당 된 제품 소유자 역할이 제품 소유자를 수행하지 않습니다. 제품 소유자는 제품에 대한 재정적 책임이 있습니다. 그것은 매우 구체적이며 성공의 핵심 역할입니다. 이 역할은 분석, 프로젝트 관리자 및 제품 관리자와 공통점이 있습니다. 제품 소유자는 요구 사항을 수집하고 유지 관리합니다 (보통 사용자 스토리 형태). 그의 책임은 팀에 정보를 제공하고 사용자 스토리의 우선 순위를 정의하는 것입니다. PO와 팀 간의 협력이 지속적이기 때문에 팀과 함께 현장에 있어야합니다.
  • 프로세스 이름을 스크럼으로 변경했지만 대부분의 프로세스를 이전 방식으로 그대로 둡니다. 가장 일반적인 시나리오는 워터 폴에서 스크럼으로 변경하는 것이며 가장 중요한 변경은 더 이상 분석 및 문서화를 수행하지 않으며 스크럼이라고 말합니다.
  • 요구 사항 / 사용자 사례에 대한 정의가 없습니다. 매우 일반적입니다. 완료 (수용 기준)에 대한 정의가없는 경우 스프린트 계획 중에 사용자 스토리의 복잡성을 가정 할 수 없습니다. 스프린트 중에 해당 컨텐츠가 없으면 사용자 스토리를 검증 할 수 없으므로 완료된 것으로 표시 할 수 없습니다.
  • 품질은 선택 사항으로 간주됩니다. 스크럼의 품질은 일류 시민입니다. 각 수락 기준은 자동화 된 엔드-투-엔드 테스트에 의해 다루어 져야한다고 말할 수 있습니다. 품질이 떨어지고 테스트되지 않은 기능을 추가하기 시작하면 완료된 것으로 간주되는 기능은 회귀로 인해 언제든지 작동을 멈출 수 있기 때문에 제품에 대한 제어 권한을 상실합니다.
  • 스프린트의 결과는 제품에 선적 가능한 증분 (= 작동 및 테스트)이되어야합니다.

편집하다:

중요한 메모를 추가하고 있습니다. 민첩한 접근 방식을 사용할 때 가장 큰 요점은 고객에게 최대한 많은 비즈니스 가치를 제공하는 것입니다. 그러나 고객 (제품 소유자가 나타내는)은 비즈니스 가치가 무엇인지 설명합니다. 따라서 Scrum을 사용할 때 분석이나 문서가 없다는 것이 일반적으로 사실이 아닙니다. 고객이 분석 또는 문서를 요청하고이를 비즈니스 가치로 표시하는 경우 (예 : 향후 몇 년간 개선해야 할 대규모 또는 장기 프로젝트로 인해)이를 생성 할 수도 있습니다. 가장 기본적인 접근 방식은 사용자 사례에 대한 승인 기준에 분석 및 문서를 포함시키는 것입니다. 이러한 경우 분석은 표준화 된 방식으로 제품 소유자와의 통신으로 문서화됩니다.


나는 지속적인 상호 작용과 의사 소통 에 당신의 초점을 좋아합니다 . 내가들은 문제 중 일부는 이야기의 세부 사항이 누락되었거나 문서화되지 않은 결정 (기술적 세부 사항에 대해서도)에 관한 것이며 사람들은 잘못된 결정 (매우 방어적인 관점)의 영향으로부터 보호하기를 원합니다.
굽실 거리다

1
문서화 및 분석은 지속적인 상호 작용 및 커뮤니케이션으로 대체됩니다. 하나를 제거 할 수없고 두 번째를 소개하지 마십시오. 세부 사항이 누락되고 잘못된 결정이 내려집니다.
Ladislav Mrnka

The most basic approach is including analysis and documentation in acceptance criteria for user stories.저의 첫 반응이기도합니다. 스토리에 합격 기준이 있다면, 이것이 가장 좋은 문서입니다. 그러나 팀이 추가 문서를 작성하기로 결정한 경우 (트렁크에있는 README 또는 유용한 정보가있는 Wiki에 대한 생각) 문제가 발생하지 않습니다. 나는 사람들이 SCRUM = 아무것도 기록되어 있지 않다고 두려워한다고 생각합니다.
굽실 거리다

10

제가 10 년 이상 xp와 스크럼에서 발견 한 가장 큰 문제는 아직 민첩하지 않은 팀이 "민첩에 유연하게 대응"하고 사용자 정의를 시작하고 특정 부품을 떨어 뜨리는 등의 결정을 내릴 때입니다. 각 부분의 역할과 그 이유를 명확하게 이해합니다.

나는 팀이 처음에 책을 통해 일을 할 때 아직 "얻지 않은"것을 바꾸는 팀보다 스크럼에서 더 성공적인 것을 보았습니다.

"첫 스프린트, 모든 스프린트, 두 번째 스프린트 모든 디자인 등 마지막 스프린트 모든 테스트"와 같은 것을 얻을 때입니다. 폭포라고도합니다. 또는 "어쨌든 앉아 보자.이 스탠드 업 사업은 어떻습니까?"

Shuhari와 관련이 있습니다 ( http://c2.com/cgi/wiki?ShuHaRi ).


9

가장 큰 문제는 항상 바이 인입니다. 팀 또는 주요 개인이 프로젝트 관리, QA, 개발 등에서 구매하지 않은 경우 거의 실패 할 수 있습니다.

또 다른 관련 문제는 실제로 관련된 모든 사람들이 실제 스크럼이 무엇인지 아닌지 인식하게 만드는 것입니다.

프로젝트 관리가 실제로 이것을 변경 사항으로 개발자에게 직접 제공하고 내일이 될 것으로 기대하는 티켓으로 사용하는 환경을 보았습니다. 새로운 프로세스를 사용하고 있기 때문입니다. 이 상황에 있거나 스크럼을 구현하려는 다른 시도에 실패하고 입안에서 쓴 맛이 나는 사람. 이 사람들은 때때로 프로젝트를 탈선하려고 할 것입니다.

내가 본 또 다른 문제는 회의를 세우는 것입니다. 당신은 항상 스탠드 미팅 중에 앉고 싶은 사람을 얻을 것입니다 ... "나쁘게 돌아왔다"또는 무엇이든. 그것은 목표가 무엇을지지하는지에 대해 전혀 모르는 같은 사람인 것 같습니다. 그리고 정치 나 그 주말에 무엇을했는지는 말하지 않을 것입니다. 내가 찾은 회의를 세우는 것이 효과적인 의사 소통의 열쇠입니다. 다른 사람이 이러한 회의를 독에 빠뜨리지 않도록하는 것이 중요합니다.


1
Bad Back Boy에게 이야기하는 동안 서 있도록 지시하십시오. 그래도 불평하면 부엌에 도넛이 있다고 발표하십시오.
JeffO

management has actually taken this as a ticket to come directly to developers이것이 SCRUM 프로세스가 이해되지 않는 상황의 좋은 예입니다. 스프린트 도중에 팀은 새로운 이야기를 받아 들일 수 없습니다.
굽실

@cringe, 그렇습니다 ... 정확하게
aceinthehole

2
누군가가 스탠드 대신 앉는 것이 정말로 중요합니까? 진심이야? 이것이 민첩한 방법이 효과가없는 이유입니다. 사람들은 기존의 프로세스가 많이 포함 된 방법보다 더 많은 규칙을 준수합니다!
gbjbaanb

1
@gbjbaanb 궁극적으로 중요하지 않습니다. 그래도 서있는 것이 무엇을 방해하는지 아십니까? 그렇다면 어떻게 방지하려고합니까? 그리고 당신을 위해 일하고 있습니까?
Julio

6

동일한 스프린트에서 개발중인 코드에 대한 모든 분석을 시도하면서 실제로 코드를 작성했습니다.


스토리에 필요한 세부 정보가 없기 때문에 분석이 필요 했습니까? 또는 코드가 명확하지 않거나 테스트로 문서화되지 않았기 때문에?
굽실 거리다

1
효과적으로 이야기는 제품 소유자 (내 용어가 여기에서 실패합니다)가 원하는 것을 알지 못하는 수준까지 엄청나게 높은 수준이었습니다.
Kevin D

우리도 이것도 가지고있었습니다. 그 이후 스프린트가 시작되기 전에 대부분의 분석 부분을 수행했습니다.
Carra

4

우리는 얼마 전에 스크럼으로 옮겼으며 솔직히이 시스템을 운영하는 경영진은 각 스크럼을 2 주 폭포 프로세스로 취급했습니다. 스크럼 규칙에 대한 준수는 그 자체가 프로세스가되었습니다!

이것이 내가 찾은 문제입니다. 모든 민첩한 방법론은 여러분에게 맞는 방식으로 효과적으로 작업 할 수있는 유연성에 관한 것이어야합니다. 프로세스에서 규정 한 방식이 아닙니다. 예를 들어, 우리는 2 주간의 스크럼을 가지고 있었고, 한 팀은 2 주가 좋은 일을하기에 충분하지 않다고 느꼈다고 말했습니다 (스크럼 데모의 종료로 인한 가동 중지 시간과 초기 요구 사항 검토가 아님). 주. 충격 공포! 스크럼 당 2 주가 이상적이며 품질 관리 절차에 문서화되어 있기 때문에 경영진이 거부했습니다.

스크럼은 민첩한 방법 중 가장 민첩하지 않은 방법 일 것입니다. 그 이유는 아마도 그렇게 유명했던 이유입니다. 당신은 당신이 좋아하지 않는 것들을 제거하기로되어 있지만, 나는 그렇게 생각하지 않습니다. 내 조언은 더 유연하고 적은 규칙 기반 규칙을 사용하고 대신 필요한 규칙을 추가하는 것입니다. 이 때문에 Crystal을 선호 합니다.

궁극적으로 절반애자일 선언문을 기억하십시오 .


1
"2 주 워터 폴 프로세스로 스크럼"에 +1. 불행히도 그것은 정말 흔한 것 같습니다
DPD

4

가장 큰 문제는 고객이 SCRUM 프로세스를 수락하고 민첩해야한다는 것입니다. 대부분의 고객은 프로젝트가 시작될 때 이것을 듣고 싶어합니다.

  • 비용이 얼마나 듭니까
  • 어떻게 생겼을까
  • 그것이 이루어질 때

합리적으로 들리지만 애자일과는 절대적으로 호환되지 않습니다. 폭포 대신 애자일이 좋은 이유를 고객에게 설명해야합니다.


1
이것은 모든 개발 방법론과 절대적으로 호환되지 않습니다. 당신은 처음에 이것을 말할 수 없습니다. 이를 정확하게 지정할 수 있으려면 분석 + 디자인의 일부를 수행해야하지만 분석 + 디자인은 프로젝트 시간 / 예산의 절반을 차지할 수 있으며 그 이후에도 분석은 고객이 완전히 이해하는 것이 아니기 때문에 실패 할 수 있습니다.
Ladislav Mrnka

그러나 SCRUM으로 전환 할 때 큰 문제 중 하나입니다. 사람들은이 질문과 답변에 너무 익숙하여 대부분의 답변이 결국 잘못되었다는 것을 더 이상 깨닫지 못합니다. 고객이 제품에 대한 대략적인 비전을 제시하면 고객이 질문을 how much will it cost?하고 자세한 답변을 기대합니다. 이 문제에 대한 나의 대답은 항상 "결국 원하는 것을 정확히 알고 있다면 민첩성이 필요하지 않다는 것입니다. 코드 만 작성하면됩니다." 그러나 우리는 그것이 일어나지 않을 것이라는 것을 알고 있습니다. ;-)
싫증이 나다

2

SCRUM에 처음 갈 때 두 가지 큰 문제가있었습니다.

1) 실제로 제품 소유자가 없었습니다. 제품 소유자였던 사람은 그렇게하지 않기 때문에 우리의 상사는 역할을 수행해야했습니다. 그는 항상 실제로 답을 알지 못했기 때문에 이런 종류의 물건에 압착을 넣었습니다.

2) 우리는 외부 구성 요소를 설명하는 데 좋지 않았습니다. 처음 몇 번의 스프린트는 완전 자동화 된 테스트를 시작하고 실행하는 것과 관련이 있었으며, 사용중인 시뮬레이터를 자동화하는 데 반복적으로 어려움을 겪었습니다. 어쨌든 우리는 이것이 일어날 것이라는 것을 깨닫는 데 결코 능숙하지 않았습니다.


"제품 소유자가없는 경우"+1 우리는 같은 문제에 부딪 쳤습니다. 때로는 피할 수 없지만 문제를 인정하고 그에 따라 계획해야합니다.
sleske

2

프로젝트에서 직면 한 주요 문제는 다음 스프린트에 대해 예상 한 후에 요구 사항 수집이 발생한다는 것입니다. 수락 기준에 따라 추정합니다. 요구 사항을 수집하는 동안 미세 조정 된 AC가 훨씬 더 커져 8 시간 동안 계획된 작업이 실제로 24 시간이라는 것을 알게되었습니다! 스프린트 백 로그를 변경하고 추정치를 수정하여 스토리를 줄일 수 있습니까? 아닙니다! 민첩한 스프린트 백 로그를 변경할 수 없습니다! 그것이 내 TL이 말하는 것입니다. 따라서 시간을 8 시간으로 추정 한 원래의 허용 기준에 따라 코딩하지 않아야합니다! 하나님! 아니! 당신은 그렇게 할 수 없습니다! 그것은 민첩하지 않을 것입니다!


이 문제를 어떻게 해결 했습니까? 아니면 SCRUM의 전체 도입에 실패한 이유입니까? 팀이 더 많은 경험을 쌓으면 스프린트 계획과 포커가 빠진 요구 사항을 조기에 밝히고 견적이 점점 나아질 것이라고 생각했습니다.
굽실 거리다

아직 해결하지 못했습니다. 그리고 우리는 여전히 SCRUM을 사용하고 있습니다. 유일한 차이점은 추가 작업이 너무 많아서 TL이 동의하면 스토리를 따로 보관할 수 있다는 것입니다. 우리는 더 많은 시간을 투입하게됩니다.
DPD
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.