Pattern Design Techniques