designing the class usage