type design steps