操作契约用来定义系统行为,根据领域模型中的对象状态变化详细描绘系统的行为;
用例是描述系统行为的模型,但是如果用例没有描述清楚,则在操作契约中补充。
一般一个用例有多个操作,一个操作需要一个操作契约,比如:
SSD中有几个向右的箭头,就需要几个操作契约。
不需要每个操作都写契约,只需要把可能状态会改变或不清晰的操作写清即可;
Operation Contract模板
Operation: Name Cross Reference:此操作所属用例的名字 Precondition:在执行此操作前领域模型的对象的状态 Postcondition:对象状态的变化 Postcondition中可以写: (1)实例的创建; (2)关联的形成; (3)属性的修改;