Cost-Effectiveness of test-driven development
More Info
expand_more
Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.
Abstract
Test-Driven Development (TDD) is a software development practice in which test cases are written before code implementation. ISM eCompany, who specializes in web solutions, is adapting their development process to become more agile. One of those adaptations is that ISM wants to introduce TDD into their development process, to have projects with a better code quality and a regression test suite. ISM only worries whether the writing of test cases do create too much overhead for the developers and using a TDD approach does not have a large effect on the time spent on fixing bugs and rework. This can cause the projects to overrun and that makes the practice TDD not cost-effective. This thesis will describe a case study of the introduction of TDD in two different projects at ISM. We have proven that TDD can be introduced into the development process of ISM. By introducing TDD in two projects of ISM we tried to determine whether TDD is cost-effective by determining the Return on Investment (ROI). This cost-effectiveness could, due to the insufficient dataset, only be assessed in a limited way. In the monitored projects the developers took 31% more time for developing work items. On the other hand, the developers spent less time on rework and bugs than in projects where no TDD is used. However, it is hard to conclude that this is due to the usage of a TDD approach, because of the low percentage of work items implemented with a TDD approach (17% of the work items). The developers struggled with TDD, because of the lack of experience with writing test cases.