는 사용자 메소드의 구현을 필요로 이야기 한이 상상 :Agile 시나리오가 맞습니까?
public static void MyMethod(string paramA);
여러 클래스가이 방법을 사용하는 것, 그리고 MyMethod라는 사용자 스토리 1을 완료하는 데 필요한 모든 것을,하지만 아무것도 더 많은 작업을 수행합니다.
당신은 또 다른 이야기 (사용자 스토리 2) 반복 미래에 될 방법을 필요로하는 함께 올 것을 확신하다 : MyMethod라는에
public static void MyMethod(string paramA, int paramB);
이전 호출 리팩토링해야하며, MyMethod에 대한 몇 가지 새로운 호출은 사용자 스토리 2의 요구 사항을 충족시키기 위해 추가되어야합니다 (이야기 2 이후에는 paramA 만 사용하여 MyMethod를 호출하는 것이 좋습니다).
1) 만 구현 :
사용자 스토리 (1) 작업 은 애자 생각 공공 무효 MyMethod라는 (문자열 paramA를);
2) 구현 공용 MyMethod라는 공극 (문자열 paramA, INT의 paramB)를; - 그러나 지금은 두 번째 매개 변수를 사용하지 마십시오. 이 시점에서 호출은 두 번째 매개 변수에 0을 전달합니다.
3) 구현 공용 MyMethod라는 공극 (문자열 paramA, INT의 paramB)를; - 그러나 지금은 두 번째 매개 변수를 사용하지 마십시오. 전화가 올바른 값으로 전달됩니다 (사용자 스토리 2의 예상에 따라)
4) 구현 : public void MyMethod (string paramA, int paramB); - 그리고 모든 호출은 사용자 스토리 1과 2를 완전히 포함합니다.
나는 네가 많이 대답하는 것을 좋아한다. 내가 말할 수있는 유일한 것은 S1이 interation 1에 있고 S2가 iteration 2에 있다는 것입니다. 나는 모든 반복 끝에 항상 배송 가능한 제품을 가져야한다고 믿습니다. 이제 : 한 번 반복 한 후에는 비즈니스가 proudct를 배송하는 것이 행복하지는 않지만 QA를 거쳐 잘 테스트받을 수 있습니다.그렇다면 효율성을 목표로하고 지금해야합니까 (요구 사항 및/또는 설계가 변경 될 수 있으므로 약간의 기회가있을 수 있습니다) 또는 반복 1에 필요한 것만 수행합니까? –
또한 반복 1에 대해 '잘못된'일을하는 것을 믿지 않습니다. 스토리 2가 올 때 완전히 다시 디자인되어야하는 무언가를 구현하는 데는 아무런 포인트가 없습니다. 너 무슨 일이 일어날 지 안다면 미친 짓이야. 그러나 S1에서 여분의 마일을 가야 S2가 발생할 때 최소한의 작업을 할 수 있습니까? 또는 "예측은 매우 어렵습니다. 특히 미래에 관한 것"을 아는 것이 중요합니다. - Niels Bohr (덴마크 물리학 자). –
나는 unsipable 제품을 만들기 위해 S1에서이 매개 변수에 사용되지 않은 매개 변수를 추가하는 것을 고려하지 않았습니다. 불필요하게 비대 해진다고 말할 수는 있지만 여전히 기능적입니다. 배송 전용이란 완료를 의미합니다. 테스트, 문서화, 빌드 및 설치가 가능합니다. – DancesWithBamboo