UML-操作契约是什么?
1、例子
发现:
1)、操作契约也是用例模型的一部分。
2)、SSD+用例文本+领域模型----》操作契约
2、定义
1)、契约有哪些部分?
操作:操作的名称和参数(就是SSD中的系统操作)
交叉引用:发送此操作的用例
前置条件:执行操作前,对系统或领域模型对象状态的重要假设。比如:终态的订单不能修改。
后置条件:最重要的部分。完成操作后,领域模型对象的状态。后续会详细讨论。
2)、什么是系统操作?
就是SSD中的操作名称(相当于类中的方法),由此定义操作契约。
3)、后置条件
- 定义:描述了领域模型内对象状态的变化。该状态变化包含:
A、创建或删除实例
B、属性值的变化
C、形成或消除关联(领域模型中的关联)
- 后置条件如何与领域模型相关?
可以创建什么实例?(来自领域模型)
可以形成什么关联?(来自领域模型)
属性值如何变化?(来自领域模型)
- 如何编写后置条件?
A、采用过去时态。
较好:创建了XXX
较差:创建XXX或XXX被创建
B、后置条件不必尽善尽美,只做轻量分析即可
由此可知,后置条件是操作契约的重点,其来自领域模型。