8)创建服务模型
服务模型是我们的基于服务的集成的核心。分析和设计执行下面操作的构件是非常有用的:
确定需要被发布的服务。
指定服务提供者和服务客户之间的合约。
指定关系、层次(如果存在的话),及其它服务属性。
指定实现服务所需的组件。
下面的部分简要地描述了如何将我们的创新的服务模型建模并归档。
服务组合:服务清单
该部分以业务功能或业务区域的年月日的次序列出了所有前面确定的服务。
a)服务映射(组合)
服务映射包含我们使用从上到下和从下到上的分析而确定的服务的清单。这里,我们列举了前面步骤中确定的候选服务,以及它们的用法和调用关系。我们创建它来可视化地描述核心业务组件或技术子系统提供及使用的所有服务。图 12 展示了为 SoT 所开发的一个版本。
图 12. 服务映射
b)服务层次
服务层次将服务分类。我们将未分类的服务的候选清单依照业务服务路线、多路业务服务和企业服务将它们组织在一起。我们使用服务层次来说明服务是否可以调用其它服务,它是否是其它现有服务的简单组合。
c)服务发布决策
我们需要确定发布哪些服务,我们可以使用服务最终测试(回答问题:这些服务是否与业务相关以及业务是否要在企业周边发布它们?)来完成。最终测试包括:
业务校准:业务是否同意发布服务?子流程和高级业务用例是服务发布的优秀候选。
透明度:服务提供者对服务客户是否透明?
服务粒度:服务是否以适当的粒度水平来发布?服务不应当发布技术工具除非技术工具对服务客户来说是有价值的。
d)服务流
该部分描述了如何使用确定的服务来将各种应用程序组件绑定在一起以完成业务流程的特定需求。下面的 UML 时序图展示了内部组件的服务与实现购买项目的业务流程的交互。
图 13. 服务流
e)服务组成
服务组成提供了服务的动态视图。它展示了我们如何将这些服务编排进支持业务功能的组合服务中。如服务流部分中所示,我们也设计了组合服务,购买项目,它由许多小的服务组成,如Authenticate、FindInventory 等等,如图 14 中所描述的。
图 14. 服务组合
您可以使用 Application Developer 来执行服务编排(关注该系列文章的第二部分,将讨论如何使用 Business Integration Modeler 和支持的开发工具来创建基于服务的集成层)。
文章来源于领测软件测试网 https://www.ltesting.net/