I am a senior developer and development team leader at Diebold Nixdorf, I have got more than 15 years’ experience in software developing and testing. Besides, I am an author or coauthor of several articles in IT magazines, and more than 20 books about programming and Information technologies. I regularly participate to classes of SW testing and developing at several Czech universities.
Workshop: Machine learning-based prediction of a defective code in practice
Test driven development aka TDD is a great development tool that is worthily considered one of main pillars of agile development. There are very few developers and testers, who have never heard of it. Unfortunately, there are also very few people who are using TDD and do not suffer from some of its important issues. Many of those issues are addressed by Acceptance test driven development (ATDD). Despite that, this technique is sometimes overlooked simply because people do not see the difference.
This workshop compares both TDD and ATDD and tries to explain the main differences between them and shows how to solve some TDD issues by introducing ATDD into the current development process. During the workshop attendees will have a change to try some open source tools that allow them to easily use these technics on the everyday basis.
The workshop provides both the theoretical and practical background. Each covered topic starts with a short introduction which helps to get attendees to the problem. This introduction is followed by the discussion moderated by trainer, during which the attendees can share their experience and ideas with the others. The discussion is followed by a block of practice. The attendees are supposed to work on prepared exercises either individually or in small groups. Feedback from the trainer is provided continuously.
- TDD Quick Intro
- TDD Exercise
- TDD in Real Life
- ATDD Introduction
- Value of Acceptance Criteria
- ATDD – Exercise I
- ATDD – using tools
By the end of the workshop attendees should have a clear idea what the difference between TDD and ATDD is, what are the strengths and weaknesses of these methodologies. During the workshop, they have a chance to try some open source tools that help them to adopt TDD or ATDD in their own projects. Last but not least the attendees should be encouraged to use modern agile methods of software development.
4. Target audience
Anyone who is interested in Acceptance Test Driven development. No previous knowledge of ATDD is required. At least knowledge of TDD makes an advantage, but the practical experience with those techniques is not necessary. However, the attendees should be familiar with the basic concepts of software development. Some orientation in testing concepts would be a great advantage.