Do you advocate writing all of your interfaces and tests completely first or a more hybrid approach?
While the interface ->test-> code approach provides clarity to a project, I find things crop up that I need to test for after I have started coding a module.
I would go in a sequence. First I will write the find all records test followed by the implementation. This does not have any dependency with other methods in the class. Then I will write the create test and test with find all records method. Next I will write the find with an identifier method test and implementation. The other methods like remove and edit follows. So incrementally I will develop the entire source. Similarly I will write the entity first followed by data access and business service and finally the presentation tier. I will go up the stack one by one. This is described very well in the book.