Acceptance test-driven development - Koudelia, Nikolai (2011)
Acceptance Test-Driven Development (ATDD) is meant to bring customers, engineers, testers and software developers together and help them understand each other. ATDD is not an automatic testing technique but rather a precise requirement management and software development convention, which helps to avoid misunderstandings between stakeholders and leads to production of program code satisfying only the real requirements making it more simple and clear. Conclusions about benefits and common problems emerging during adoption of ATDD are based on results of a software project which took place while this work was being written. They also concur very well with other case studies. A large framework of acceptance tests was built during the project. The framework turned out to be a good basement for production of high-quality program code, its maintenance and control of software complexity. Unfortunately, utilization of ATDD as a communication tool between software developers and other stakeholders failed completely.