Design patterns and contracts - Jean-Marc Jezequel, Michel Train, Christine Mingins (Addison-Wesley, Reading, 2000)