Microsoft data patterns - Philip Teale (Prentice-Hall, 2003)