물론 스크럼이 유용합니다. 두 가지 일을하는 방법론입니다.
- 프로젝트가 변화에 적응하고
- 진행 상황을 추적하고 완료 시점에 대한 아이디어를 얻을 수 있습니다.
따라서 그것을 사용하는 데 가치가 있습니다.
나는 당신의 전제 조건 중 일부가 정확하지 않다고 생각합니다.
각 스토리가 어떻게 협상 가능한지 알 수 없습니다. 모두 작동하는 컴파일러에 필요합니다.
사실이 아닙니다. 언어의 하위 집합을 지원할 수 있으며 특정 조건에서 작동하는 컴파일러를 계속 사용할 수 있습니다. 완전한 컴파일러보다 가치가 낮지 만 여전히 가치가 있습니다.
또한 "협상 가능"이 의미하는 바를 오해합니다. 반드시 "선택적"을 의미하는 것은 아니며 INVEST에서 스토리가 선택적 일 필요는 없습니다. 이야기는 귀중한 목표이며 협상은 그 목표에 도달하는 방법에 관한 것입니다. 분명히 각 언어 기능의 백엔드를 구현하는 방법 이상이있을 것입니다. 협상이 필요한 곳이 있습니다.
이야기는 우선 순위가 동일하며 어떤 순서로 전달하든 상관 없습니다.
아래에서 말하는 것처럼 일부 스토리는 "필수"가 아니므로 일부는 덜 가치가 있습니다. 그러나 "필수 항목"범주에서도 일부 언어 기능은 다른 언어 기능보다 훨씬 더 기본적이고 측정 가능합니다.
이를 측정하는 한 가지 방법은 미리 정의 된 테스트 스위트가있는 경우 "기존 코드베이스에서 더 많은 코드 라인을 컴파일 할 수있는 방법"또는 "더 많은 테스트를 통과하는 방법"입니다.
다른 옵션도 있습니다. 당신이하는 C와 같은 언어를 컴파일 엄밀히 말하면 한 경우에만 필요 if
하고 goto
A (거의) 기능 언어를 가지고 당신이 구현할 수있는 루프를 while
, for
그리고 repeat
매크로로. 프리 컴파일러를 사용하는 것이 쉽다고 가정하면 저렴한 스톱 갭 솔루션을 사용할 수 있습니다 (이봐, 우리는 협상 중입니까? :-)
적응성과 관련하여 언어 지원은 상당히 정적 인 요구 사항이지만 언어도 변경되며 요구 사항에 대한 지식 도 변경됩니다. 모든 것을 구현해야합니까? 당신의 목표를 위해 특별히 필요하지 않은 것들이 있습니까? 애자일의 기본 테넌트 중 하나는 불완전한 지식을 보유하고 있다는 지식입니다. 활용할 수 있습니까?
결론적으로, 질문에보다 직접적으로 대답하려면 요구 사항을 변경할 수 없을 때 민첩한 프로세스가 필요합니까? 기필코 아니다! 사용할 수 있습니까? 아마 그렇습니다! 그들은 당신의 시간 가치가 있습니까? 아마도 그렇지는 않지만 요구 사항은 변경되지 않습니까? 과거의 경험에서 "변경 불가능한 요구 사항"=> "게으른 제품 소유자"-규칙은 아니지만 명심할 가치가 있습니다.