Object Orient Design