Author, Creator of Infinitest
Presently employed as a Senior Software Engineer at DRW Trading Group, Ben is focused on helping teams improve their development practices to support rapid and regular delivery of well crafted software.
One of the barriers to wider adoption of TDD is that it is best taught from within a team, and the technical challenges of writing tests frequently thwart those looking to teach themselves.
This session will be a live demonstration of Test Driven Development in Java, using Eclipse and JUnit, aimed at those new to TDD and looking to learn. Audience members will be encouraged to participate as we walk through common scenarios that frequently discourage new TDDers, and demonstrate some techniques for overcoming them in a live coding session.
Continuous Testing (CT) is a developer practice that shortens the feedback loop established by Test Driven Development. It gives you near instant feedback about the correctness of your code, and helps you find bugs as quickly as syntax errors.
This session will cover how the practice of CT, its benefits, and its limitations. We will also show several demos of the practice using various continuous testing tools, and examine how these tools can be integrated with existing systems and their tests.
One of the hallmarks of a healthy Agile team is its ability to introspect and adapt. Many mature Agile teams have started to experiment with iteration-less development, in which releases occur as each new feature or story is completed. This practice allows for more frequent releases and smaller batch sizes, but can create problems when teams are forced to re-evaluate how they plan. In addition, the technical practices necessary to support this style of development are difficult to master, and some teams find themselves releasing more often at the expense of quality. I
In this session, we'll examine the benefits and common pitfalls of interation-less, value based planning, and walk through a simulated development cycle to give audience members a "feel" of the differences with more traditional Agile planning practices.