Pattern Languages of Program Design 3 (v. 3)