TDD에 대해 제품의 총 소유 비용을 측정으로 사용하는 과학적 연구가 있습니까?


11

내가 Bsa D, Dogsa T 에서 이전 작업의 요약을 읽을 때 테스트 중심 개발의 효과 : 산업 사례 연구. 소프트웨어 품질 저널. 2011; 19 (4) : 643-661. TDD에 대한 많은 연구에서 사용 된 측정은 코드 라인, 결함 및 개발에 소요 된 시간과 같은 것들을 기반으로한다는 사실에 놀랐습니다.

TDD를 사용하여 개발 된 제품 기존 총 소유 비용 또는 테스트 최종 제품 에 대한 총 소유 비용에 중점을 둔 연구가 있습니까?

특히 총 구입 비용과 운영 비용에 관심이 있습니다.

답변:


3

TDD 수행의 의미와 이점에 대한 연구가 있지만 그 결과는 모순됩니다. 기능을 변경하는 비용이 크게 줄어들 기 때문에 일부 프로젝트 (이것은 내 경험에 있습니다)는 TDD를 사용하여 버그 율과 소유 비용이 낮습니다. 어떤 사람들은 멈춰 멈춰 있습니다.

일부 연구 ( 여기서는 1 체크 슬라이드 n50 임)에 따르면 버그 수는 적용 범위에 따라 증가했습니다. 더 큰 적용 범위는 TDD를 의미하고 더 많은 수의 버그는 더 높은 소유 비용을 의미한다고 가정합니다.

내 관점에서 볼 때 자체적으로 어떤 메트릭이나 관행도 더 나은 품질이나 낮은 소유 비용과 관련 될 수 없습니다. 상관 관계를 유발할 수있는 여러 요인이 있습니다. 그리고 이러한 요소는 팀과 프로젝트간에 변경됩니다.

TDD를 시작하고 100 줄 테스트 방법을 작성하는 팀에 대한 이야기를 모두 들었다고 생각합니다.이 테스트는 비용이 많이 들기 때문에 소유 비용이 증가합니다.

저의 실용적인 규칙은 배려 하고 배우고 싶어하는 사람들이 자신을 지원하는 환경 에서 일하고 그들의 아이디어 가 더 나은 품질과 소유 비용을 갖는 것입니다.


슬라이드 n50이 매우 잘못되었습니다. "커버가 많을수록 버그가 많을수록"버그가 많을수록 더 많은 버그가 발견됩니다. " 가능하지만 더 많은 적용 범위로 인해 더 많은 결함이 주입 될 가능성이 의심됩니다. 이것은 단순히 커버리지가 많을수록 개발 단계에서 결함 수율이 높다는 것을 나타냅니다. 그렇습니다. 품질 및 소유 비용을 측정 할 수있는 많은 측정 기준이 있습니다. # 단계별 주입 결함, 단계별 결함 수율 및 재 작업은 모두 품질과 비용에 직접적인 영향을 미치는 측정 가능한 것입니다. 이러한 메트릭에 대한 좋은 예는 PSP / TSP를 참조하십시오.
Michael

Michael은이 슬라이드와 관련하여 발표자가 더 높은 버그 밀도와 어떤 관련이 있는지 보여줍니다. 메트릭 중 하나는 테스트 사례 였으므로 클래스에 더 많은 테스트 사례가있을수록 클래스에 버그가 더 높아집니다. 발표자가 말하는 것은 자체적으로 어떤 메트릭도 더 작은 버그 밀도와 관련이 없다는 것입니다.
Augusto

0

구체적인 연구는 없지만 개인 경험과 다른 개발자의 경험을 통해 중대형 프로젝트에 올바르게 적용하면 TDD가 출시 시간을 단축하고 버그 및 결함을 줄이며 코드 품질을 향상시킬 수 있음을 알고 있습니다. .

그것들은은 총알이 아니라고 말하면서 TDD없이 좋은 코드를 작성할 수 있습니까? 예, TDD를 사용하여 잘못된 코드를 작성할 수 있습니까? 또한 프로젝트에 따라 TDD는 코드에 대한 소유 비용을 크게 증가시킬 수 있습니다. 좋은 예는 NASA입니다. 코드 당 비용은 크지 만 소유 비용에 초점이없고 결함이 없습니다.

올바르게 적용하면 TDD가 시작 비용과 코드 기반을 증가 시키지만 회귀 테스트, 초기 버그 감지 및 더 나은 코드 설계의 장기적인 이점을 얻음으로써 결함 및 테스트 비용과 유지 보수 시간을 줄여 전체적인 비용을 줄입니다. 소유권.

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