设计含fault,error,failure的代码