Assignment on Design Patterns