functional modeling in ooad