工件:服务规范
此工件是一个为服务实例提供结构规范和行为规范的模型元素。服务规范还可以确定一组用于对服务的访问或使用进行管理的策略。该规范充当服务客户和服务实施者之间的合同;这样服务客户就能够了解如何与服务进行交互,而服务实施者则能够了解所期望的实施行为。
工作产品类型:模型元素
用途

以下人员使用服务接口:

  • 服务实施者,用于了解服务提供者和服务客户期望的接口。
  • 服务客户的实施者,用于了解服务提供的接口以及服务期望的交互方式。
  • 服务设计人员,用于了解规范之间的关系,以及服务和其实施的规范之间的关系。
  • 系统下个版本的设计人员,用于了解服务模型中的功能。
  • 类的测试者,用于规划测试任务。

服务规范必须通过对以下方面制定合理且完整的规范,提供服务的提供者(实施者)和使用者:

  • 接口规范;这指定了由实现此规范的服务提供的操作集。 每个操作均已命名,且提供了由输入、输出和异常消息构成的签名。
  • 行为规范;这指定了服务与服务使用者之间的协议。服务可以有状态(显式或隐式 - 请参阅指南服务状态管理),或者可以具有某些由客户机实现的会话式需求。
  • 策略规范;这指定了与服务的操作相关的约束和策略。 策略的示例包括:安全性(请参阅任务:确定安全性模式)、可用性、服务质量等,它们还表示解决方案的非功能需求(作为一个整体)。
  • 可变性规范:它指定如何配置服务以供部署,以及服务如何通过其行为中的可变性同时以动态(运行时消息)和静态(通过配置参数)方式支持一般用例。
关系
容器工件
角色负责人: 修改者:
任务输入至: 输出自:
描述
主要描述

接口的使用指示了一组由服务提供的操作。请注意,一个服务可以实施多个接口。按照约定,可以将协议状态机或 UML 2.0 协作附加至此类规范中,以指示操作在服务规范中的调用顺序。 使用这样的行为规范,不仅可以参照实施服务的结构和行为的静态规范对任何实施服务进行验证,还可以参照其动态规范进行验证。

类的使用实现了一种指定,可将一组必需的以及所提供的能力直接指示为完整单元。

请注意,服务规范只能提供公开的特性。这种包含服务规范属性的能力实现了资源建模。

规范具有属性“status”,用于表示公共于各 SOA 方法的概念,是服务描述中与不同生命周期有关的内容。在概要文件中使用了枚举来捕获这些公共的值,如下所列示。

  • Candidate(缺省值)- 表示已从某个确定任务中创建了该服务规范,但是尚待正式验收。验收可能包括通过某些测试(SOMA)、与企业服务组合(RUP/SOA)保持一致,等等。
  • Accepted - 表示服务已从候选状态转为已通过验收状态,尽管这只是意味着将会开发该服务,而服务的范围尚待确定。
  • Exposed - 表示将在服务的直接范围之外显现该服务。这意味着服务将可供复用,它未指定特定范围,例如不能将它理解为“在因特网上公开”。

同样地,属性“source”允许设计人员指示使用了哪个技术或源领域来确定该服务。请参阅任务:业务流程分析任务:数据模型分析任务:现有资产分析任务:业务规则分析任务:业务用例分析(SOA)

定制
说明选项UML 表示:

接口或类,构造型为 <<服务规范>>。规范还应当提供记录其行为规范的协议状态机或协作。

属性:

  • status : SpecificationStatus - 将服务规范表示为候选服务,即已确定但尚未通过资格检查以进行开发的服务。
  • source : String - 该属性用于捕获用来确定服务规范的“方法”或技术。

如果将类用作服务规范的表示方法,则该类不能包含任何行为。


更多信息