她还说明了实现出色结果的技巧,包括从不完整的模型开始,并且总结了在装配流程和服务时使用的 SoaML 建模实践。
随着企业不断增长,企业要适应行业方向和">技术发展的变化,业务流程架构师必须持续分析和优化当前的解决方案。通过开发新的战略来自动运行各种服务或改进流程,同时跟踪业务愿景和最大限度发挥重用的威力,架构师和开发人员可缩短需求与实现之间的距离,不断地提供更有效、可跟踪、灵活和可用的解决方案来支持业务集成与敏捷性。随着 IBM 推出了 IBM® Business Process Manager Version 7.5 和 IBM® Rational® Software Architect Version 8.0.4 中以业务为中心的功能,软件设计师可在其工具包中采用并集成新的装备。
构建一个业务解决方案首先需要分析当前的业务流程以及支持该流程的 IT 服务。然后确定哪种方法最适合实现您的业务目标,方法是选择面向服务的架构或业务流程管理方法,无论使用 SOA 还是 BPM,要牢记的是,架构和开发生命周期中都需要这两种方法。架构师要了解工具的各种功能、最佳实践以及某种业务相关的基础架构,同时能分析解决方案的缺点并提供解决方案设计战略。开发人员还可以选择不同的技术或工具来满足各种需求,将解决方案带入部署阶段,并对解决方案进行维护治理。开发人员在面对不同的侧重点时可能有不同的选择,比如关注用户界面时要考虑美观的问题,如果产品上市速度很关键,则需要能快速完成开发工作的技术或工具。
图 1 中的概述图展示了两种方法中涉及的工具,包括建模、实现、模拟、部署和治理。首先使用 Rational Software Architect 对业务流程或服务进行建模,然后根据需要使用 Business Process Manager Process Designer 进行分析和优化,使用 Rational Software Architect 转换工具生成代码存根 (stub),然后使用 Business Process Manager Integration Designer 继续实现解决方案。已完成的流程应用程序或服务的目标是 Business Process Manager Process Server。各种服务器和应用程序可存储在 Business Process Manager Process Center 中。图 1 展示了该流程。
图 1. 业务流程设计拓扑结构图
在 SOA 方法中,通过定义需求和功能,各种商业动机和目标驱动着解决方案的设计,这些动机和目标是服务 的候选者。Rational Software Architect 用于将商业目标确定为用例,并定义在服务架构 中实现这些目标的战略,组成这种架构的参与者 使用和提供服务。借助可重用的部件,SOA 允许企业实现更好的互操作性和可分配性,通过将接口与实现分开,提高了适用性。
提示:
要想使用 Rational Software Architect 构建 SOA 解决方案,可使用一个服务设计模板创建 UML 模型,该模板中附带了每个创建步骤的说明。
BPM 架构师首先建模业务流程,识别所涉及的资源 和编排 (orchestration),看看可在何处改进流程。通过从这些协作中提取已提供的所需接口(通过转换 到服务模型)来改进解决方案。然后在参与者和服务的包层次结构中详细制定解决方案的结构。BPM 让流程模型和执行变得更紧密了,通过质量保证要求促使实现更敏捷的解决方案。
提示:
要想使用 Rational Software Architect 构建一个业务流程管理 (BPM) 解决方案,可使用流程模板创建一个 BPMN 项目,或者如果愿意设计多个协作流程,可以使用一个协作模板。要想使用 IBM Business Process Manager Process Designer 构建解决方案,可在 Process Center 中创建一个新的流程应用程序,并在 Process Designer 中打开该应用程序。您需要使用 Business Process Manager 7.5.1 版本导出 Business Process Modeling Notation 2.0 (BPMN 2.0) 模型,该模型将被导入到 Rational Software Architect。(使用 Process Designer 7.5 版时,只能导入 BPMN 2.0 模型。)
进行建模时,两种方法经常会交织在一起。因此,可以将某个流程视为一个服务,反之亦然。一个流程是由引用服务的多个活动组成的;可通过活动图或流程详细描述每个服务。使用 SOA 方法,架构师可以选择使用 BPMN 流程来描述服务架构中的服务合约,并展示参与者如何使用和提供这些合约中指定的服务。调用 BPM 方法的 BPMN 模型中可能包含 IT 服务。如果的确如此,那么架构师会使用 SoaML 模型详细描述流程的活动和服务接口。所以 IT 服务可能仍需要全部或部分人员参与工作。
无论采用哪种方法,在解决方案中涉及各个参与者协作的地方,SOA 和 BPM 方法都要完成设计并开始在 SOA Modeling Language (SoaML) 中装配流程或服务,并将其表示为 Rational Software Architect 产品描述。本文中的示例引用了 SoaML 工件中的装配参与者 (Assemble participant) 任务。