design patterns adding started