The role of slicing in test-driven development
<|reference_start|>The role of slicing in test-driven development: Test-driven development (TDD) is a widely used agile practice. However, very little is known with certainty about TDD's underlying foundations, i.e., the way TDD works. In this paper, we propose a theoretical framework for TDD, with the following characteristics: 1) Each TDD cycle represents a vertical slice of a (probably also small) user story, 2) vertical slices are captured using contracts, implicit in the developers' minds, and 3) the code created during a TDD cycle is a sliced-based specification of a code oracle, using the contracts as slicing pre/post-conditions. We have checked the connections among TDD, contracts, and slices using a controlled experiment conducted in the industry.<|reference_end|>
@article{dieste2024the,
    title={The role of slicing in test-driven development},
    author={Oscar Dieste, Ayse Tosun, Sira Vegas, Adrian Santos, Fernando
  Uyaguari, Jarno Kyykka and Natalia Juristo},
    journal={arXiv preprint arXiv:2407.13258},
    year={2024},
    archivePrefix={arXiv},
    eprint={2407.13258},
    primaryClass={cs.SE}
}