服务设计质量的度量与评估
1. 耦合度量的验证
耦合度量具有以下特性:
- 非负性 :耦合度量值不能为负。
- 零值 :当没有耦合服务或服务操作没有消息时,ISCI、SOCI 和 SMCI 为零。
- 单调性 :添加更多依赖关系时,度量值不会减小。对于 SMCI,只有当服务的消息数量(或服务调用的操作中的消息数量)增加时,它才可能增加。
- 服务合并 :合并两个服务得到的服务耦合度小于或等于两个原始服务耦合度之和。对于合并两个不相交的服务,其耦合度等于两个原始服务耦合度之和。不相交的服务彼此不是消费者,与不同的服务耦合,并且具有不相交的消息集。
2. 服务的可重用性和可组合性
2.1 可重用性的视角
可从两个角度看待实体的可重用性:
- 实体的特征,如耦合和内聚属性,通常是可重用性的良好预测指标。操作内聚且外部依赖较少的服务更易于重用。
- 基于实体的实际使用情况来预测其未来的重用潜力。
2.2 服务重用指数(SRI)
服务的现有消费者数量表明了该服务的可重用性。在服务设计层面,这些消费者可以是与该服务耦合的其他服务或使用该服务的业务流程。定义服务重用指数为:
[SRI(s) = |S_{consumer}(s)| = P + Q]
其中:
[P = { s’ \mid s’ \neq s \land \exists o \in s, \exists o’ \in s’: