added service layer, DefaultModel