Besides books (see CategoryBooks), there are articles and pre-publication book drafts that are freely available. Check out these:
[http://www.exampler.com/book/ Driving Software Projects with Examples] by Brian Marick
describes iterative development based on concrete acceptance tests and the collaborative give-and-take with the Product Owner.
"For the product owners, avoiding disappointment requires control. For decades, product owners have been told that control comes with knowing their own mind, expressing themselves exactly and completely at the beginning of the project, and otherwise keeping out of the way. That's silly. Think of pretty much anything important you do: driving a car, raising children, choosing a career. Would you really want to stake everything on getting those right up front?"