内容


WBM 和 WID 6.1.2 之间的模型同步

了解如何在 WebSphere Business Modeler (WBM) 和 WebSphere Integration Developer (WID) V6.1.2 之间进行循环开发

Comments

为支持迭代开发,跨产品同步支持已经被添加到 WebSphere Business Modeler 和 WebSphere Integration Developer V6.1.2 中。

WBM 提供将业务模型转换为业务流程的功能。业务分析师可以导出将要导入 WID 中的业务流程,以便集成开发人员能够处理业务流程。在以前的版本中,如果业务分析师在 WBM 中持续开发业务模型并决定导出一个新版本,那么集成开发人员无法方便地将新工件与以前的工件关联在一起,或者将更改合并到应用程序中。

从 6.1 版开始,可以在 WBM 中进行持续更改并导出模型的新版本,新版本然后可以与 WID 中的现有业务流程项目合并。另外,集成开发人员可以将 WID 中的更改报告给业务分析师。反过来,业务分析师可以分析更改并手动选择更新业务模型,使其与业务流程同步。

在本文中,我们将通过示例向您展示如何进行这种闭合循环开发(如图 1 所示)。

图 1. 闭合循环模型
闭合循环模型
闭合循环模型

图 1 展示本文使用的场景的步骤,这些步骤总结如下:

  1. 创建 WBM 模型:在这个步骤中,业务分析师根据需求在 WBM 中为流程建模。
  2. 导出 WID 模型:业务分析师将模型导出到 WID 项目交换文件中。
  3. 将 PI 导入 WID:集成开发人员将项目交换文件导入 WID。
  4. 导出更改报告:在 WID 模块中进行修改后,集成开发人员导出更改报告。
  5. 在 WBM 中分析更改:业务分析师分析更改并手动更新业务流程模型。
  6. 在更改 WBM 后导出 WID 模块:如果业务分析师想对模型进行其他修改,那么他可以导出 WID 模块并将其交给集成开发人员。
  7. 同步更改:集成开发人员在当前 WID 模块和从 WBM 导入的 PI 之间同步更改。这个过程是自动完成的。这种能力允许集成开发人员修改从模型导出的流程,而不会在导出一个新流程时丢失那些更改。

创建 WebSphere Business Modeler 模型

这个小节将在 WBM 中创建一个简单的模型,这个模型包含一个简单的任务。然后,这个模型将作为一个项目交换文件导出,以便导入 WID。

  1. 创建一个模型(如图 2 所示),该模型只包含一个任务,该任务拥有一个业务对象 BO1 作为输入和输出。
    图 2. WBM 模型
    WBM 模型
    WBM 模型
  2. 业务对象 BO1 只有一个属性 Name,其类型为 Text,如图 3 所示。
    图 3. 业务对象
    业务对象
    业务对象
  3. 右键单击创建的模型并选择 Export...
    图 4. 导出选项
    导出选项
  4. 将模型作为 WebSphere Integration Developer 导出到 WID。
    图 5. WebSphere Integration Developer 导出向导
    WebSphere Integration Developer 导出向导
    WebSphere Integration Developer 导出向导
  5. 选择 Module + Library 选项并单击 Finish
    图 6. WebSphere Integration Developer 导出向导细节
    WebSphere Integration Developer 导出向导细节
    WebSphere Integration Developer 导出向导细节
  6. 一个项目交换文件(zip 文件)将被创建,并准备被导入到 WID。

将 PI 导入 WebSphere Integration Developer

在这个小节中,从 WBM 导出的项目交换文件将被导入 WID。

  1. 将项目交换文件导入 WID。生成的装配图如图 7 所示。业务流程 Process1 有一个对 Task(一个没有实现的 SCA 组件)的引用,它还链接到 Process1(一个没有绑定的导出)。
    图 7. 装配图
    装配图
    装配图
  2. 生成的业务流程 Process1 如图 8 所示。
    图 8. 业务流程
    业务流程
    业务流程

在 WebSphere Integration Developer 中进行修改

本小节将对 WID 模块进行一些简单的修改,这些修改将发生在业务对象 BO1、SCA 组件 Task 的接口和业务流程 Process1 中。

  1. 业务对象 BO1 拥有 Name 属性。
    图 9. 业务对象 BO1
    业务对象 BO1
  2. 向业务对象 BO1 添加类型为 string 的属性 Address
    图 10. 修改后的业务对象
    修改后的业务对象
  3. 修改 SCA 组件 Task 的 WSDL,图 11 显示由 WBM 创建的 WSDL。
    图 11. 任务接口
    流程接口
    流程接口
  4. 添加一个新方法 operation1,该方法拥有类型均为字符串的输入 input1 和输出 output1
    图 12. 修改后的任务接口
    修改后的流程接口
    修改后的流程接口
  5. 将一个新的人工任务 Process1Task1 —— 在 Task 调用之后 —— 插入业务流程 Process1 中,如图 13 所示。
    图 13. 修改后的业务流程
    修改后的业务流程

导出更改报告

本小节通过导出更改报告展示同步 WID 模块和 WBM 模型所需的步骤。

  1. 完成上述更改后,通过在项目级别上选择 Synchronize with Modeler Export 与 WBM 模型同步,如图 14 所示。
    图 14. 与建模器同步
    与建模器同步
  2. 浏览到从 WBM 导出的项目交换文件,与当前版本的 WID 模块相比较。
  3. 单击 Synchronize
    图 15. 更改前和更改后
    更改前和更改后
    更改前和更改后
  4. 同步窗口显示在 WID 模块中进行的更改。单击 Commit
    图 16. 更改细节
    更改细节
    更改细节
  5. 一个更改报告被导出为 zip 文件。
    图 17. 更改报告
    更改报告
    更改报告

在 WebSphere Business Modeler 中分析更改

本小节通过分析更改报告介绍执行 WBM 模型上需要的更改的步骤。

  1. 确保您处于 WebSphere Process server 模式。
  2. 在 Project Tree 视图中,右键单击项目并选择 Analyze Model Implementation Changes...
    图 18. 分析更改
    分析更改
    分析更改
  3. 选择要分析的更改报告的路径。
    图 19. 更改报告 Zip 文件
    更改报告 Zip 文件
    更改报告 Zip 文件
  4. 更改分析视图选项卡打开,并且报告以下更改,其中包括在 BO1 中增加新属性 Address
    图 20. 报告更改(BO)
    报告更改(BO)
    报告更改(BO)
  5. WSDL 中的更改已被跟踪,但没有报告更改细节。
    图 21. 报告更改细节(Task)
    报告更改细节(Task)
    报告更改细节(Task)
  6. 这里我们可以从包含 XSD 和 WSDL 的任意文件夹单独导入 WSDL 和业务对象。右键单击项目,选择 Business services and service objects (.wsdl,.xsd),浏览到文件夹。
    图 22. 导入 XSD 和 WSDL
    导入 XSD 和 WSDL
    导入 XSD 和 WSDL

在 WebSphere Business Modeler 中应用新更改

本小节将展示这样一个场景:业务分析师想要在 WBM 模型中进行一些新的修改,然后将这些更新合并到现有 WID 模块中。

  1. 业务分析师根据新的客户需求对 WBM 模型进行更新。
  2. 修改完成后,他从 WBM 导出 WID 项目交换文件,如图 5、图 6 所示。
  3. 集成开发人员同步 WBM 模型中的更新和现有的 WID 模块实现,这需要重复 导出更改报告 中的步骤 1、2、3。
  4. 下面,选择左上角的 Accept All Non-Conflicting Changes 按钮更新 WID 模块实现,然后单击 Commit.
    图 23. 更新 WID 模块
    更新 WID 模块
    更新 WID 模块

结束语

本文详细介绍了如何使用 WebSphere Business Modeler 和 WebSphere Integration Developer V6.1.2 进行迭代开发。它通过一个分步示例展示了闭合循环开发。这个开发模型通过消除 WebSphere Business Modeler 中的业务分析师建模和 WebSphere Integration Developer 中的集成开发人员实现之间的差异极大地便利了软件开发。

致谢

本文作者感谢 Dr. Alaa Youssef、Mohamed Mahmoud Kattaya 和 Ghaly Stefanos 审阅本文并提出宝贵意见。


相关主题


评论

添加或订阅评论,请先登录注册

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=SOA and web services, WebSphere
ArticleID=487161
ArticleTitle=WBM 和 WID 6.1.2 之间的模型同步
publish-date=05042010