Design patterns for object-oriented saftware development. 1995 - Pree Wolfgang Ed. (2000)