separing use case and class metamodels