业务流程管理解决方案的组件
本部分对业务流程管理解决方案的主要 BizTalk Server 组件进行了说明。 有关源文件的信息,请参阅 业务流程管理解决方案的文件清单。
业务流程
有两个main业务流程:OrderBroker 和 OrderManager。 OrderBroker 业务流程通过 Web 服务或通过 FTP 分批接受客户请求,并通过 Microsoft 消息队列 (MSMQ) 队列发送回复。 请求从 OrderBroker 转到 OrderManager。 这两个业务流程可通过 MessageBox 数据库直接绑定。
OrderManager 使用 CableOrder1 和 CableOrder2 业务流程通过两个异步处理阶段运行请求。 综合起来, CableOrder1 和 CableOrder2 业务流程表示单个业务流程。 但是,该流程已拆分为两个业务流程,以便更改阶段时不必中断订单处理。 有关阶段设计的详细信息,请参阅业务流程 管理解决方案中的一些设计原则中的“划分业务流程”。
CableOrder1 业务流程使用 Validate 业务流程来验证订单并将请求代码转换为操作,调用 Analyze 业务流程以分析顺序,然后根据所需的操作调用 Activate、Cancel 或 Change 业务流程。 CableOrder2 业务流程通过调用 Complete 业务流程来处理订单的完成。 请注意, CableOrder1 和 CableOrder2 使用 调用 形状来调用从属业务流程。
注意
取消业务流程包括一个调用 Activate 业务流程的补偿块。 这可以确保订单正确还原为对取消请求的补偿的一部分。
CableOrder1 和 CableOrder2 业务流程使用直接绑定。 有关这些业务流程的直接绑定的详细信息,请参阅 业务流程管理解决方案的实现亮点。
许多业务流程都是写入的,以便可以使用 中断 业务流程在处理期间中断它们。 有关中断机制的详细信息,请参阅 进程管理器逻辑。
后端应用程序
业务流程管理解决方案可以使用对所有后端应用程序的模拟。 CableOrder1、 CableOrder2 和它们使用的业务流程都使用特殊的 OrderHandler 对象。 OrderHandler 使用 .NET 远程处理来与订单管理系统的模拟通信。 CableProvisioningSystemServer 项目 (CableProvisioningSystemClient 和 BTSScnBPMProvisioning,) 程序集分别模拟订单管理系统的前端和后端。
该解决方案使用 Windows 窗体应用程序 BSTScnBPMFacilities (FacilitiesSimulator 项目) 来模拟处理设施请求的 MSMQ 服务器。
除了这些组件以外,业务流程还在 SQL Server 数据库中生成条目以维护订单及其处理的历史记录。
管道
解决方案只使用通过 BizTalk 管理控制台或绑定文件配置的标准默认管道。 但是,管道可广泛使用基于实例的配置。 由 FTP 发送的订单的接收端口使用基于实例的配置来配置信封。 有关每个实例配置的详细信息,请参阅 如何部署管道。
自定义适配器
该解决方案使用自定义适配器 OpsAdapter 来处理 OrderManager 和 ErrorHandler 业务流程中检测到的某些错误。 解决方案使用为其指定错误报告的端口上的适配器。 该适配器将获取错误,并将它们发送到操作系统。 有关错误报告的详细信息,请参阅 使用失败的消息路由。
客户端应用程序
该解决方案包括由 C# 程序 CSRMain.aspx 支持的 ASP.NET 网页,用于模拟客户服务系统。
其他程序集
该解决方案使用两个附加程序集: 架构 和 实用工具。 架构程序集定义解决方案用于在不同业务流程(如中断消息)之间进行通信的消息。 该解决方案还使用 SchemaClasses 程序集中定义的多个 .NET 消息。
Utilities 程序集包括实用工具类和方法,这些类和方法可帮助处理消息、定义特定于解决方案的异常类型、从 SSO 机密存储读取配置值以及帮助处理错误。 程序集还包括 Recaller 对象。
其他程序集包括映射和架构程序集,例如 OrderBrokerMaps、 OrderBrokerSchemas、 Maps、 MessagingSchemas 和 SchemaClasses。
ServiceLevelTracking 程序集包含用于跟踪订单和处理的 BAM 的常见项目。 阶段使用的顺序处理操作位于 CableOrderActions 程序集中。
另请参阅
业务流程管理解决方案中的模式
业务流程管理解决方案中的处理
业务流程管理解决方案的实施重点
使用 BAM 监视业务流程管理解决方案
对业务流程管理解决方案进行版本控制
业务流程管理解决方案参考
开发业务流程管理解决方案
业务流程管理解决方案中的文件清单