Backhouse's more playful book, focuses primarily on teaching one how to write and use proofs in the "calculational style" of Dijkstra/Hoare/Lamport/others.
Backhouse's less playful book covers the same topic, but has some more programming examples:
* cyclic code error correction
* simple sorting algorithms
* real number to integer conversion is used to introduce Galois connections
Again, this isn't a lot in terms of "practical examples". No production level software is built here. If you're looking for that sort of stuff, maybe you want to try out L. Lamport's book: http://www.amazon.com/Specifying-Systems-Language-Hardware-E...
I haven't read that book though.