Building an Application Using TDD
We’re going to learn the practical side of TDD by building the application test first. We are also going to use an approach known as agile software development as we build. Being agile means building our software in small, self-contained iterations instead of building it all at once. These small steps allow us to learn more about the software design as we go. We adapt and refine the design over time, as we become more certain of how a good design might look. We can offer working functionality to early test users and receive their feedback long before the application is complete. This is valuable. As we have seen in earlier chapters, TDD is an excellent approach for providing rapid feedback on self-contained pieces of software. It is the perfect complement to agile development.
To help us build in this way, this chapter will introduce the technique of user stories, which is a way of capturing requirements that fits an agile approach well....