Design Pattern sample