• 软件测试技术
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘

您的位置:您的位置:软件测试技术网 >> 软件测试技术 >> 开发语言 >> 中间件 >> 查看资讯

字号: | 推荐给好友 上一篇 | 下一篇

WebSphere Integration Developer 指导教程——第 2 部分 使用 WebSphere Integrati…

发布: 2008-6-19 13:18 | 作者: 不祥 | 来源: developerworks | 查看: 208次 | 进入软件测试论坛讨论

软件领测软件测试网

Pv8H'Q3g~? 软件测试技术网j/w ?q|2A'udY.O

该应用程序需要三个组件:OrderProcessing、Shipping 和 CustomerCheck,如图 8 所示。这些组件将包含在 OrderProcessing 模块中。CustomerCheck 组件依赖于某个企业信息系统以获取客户状态。实际的订单装运为手动处理,因此需要附加的组件来允许员工查看需装运的订单,并允许他们表明订单已于何时装运。图 8 中的编号表示接收到订单之后的执行顺序,这里假设客户已经存在。在下一部分之后,将介绍有关每个组件及其如何工作的细节。接下来的部分列出了组件所需的业务对象。 软件测试技术网 ~;D3[ Z7|'o/u(I\X

软件测试技术网x_X+|i\&kp

Order 业务对象 软件测试技术网@,i"M DfE5A

软件测试技术网 Gs1e'B { W#F

图 9 显示了 Order 业务对象。当该对象类型的实例被传递给 OrderProcessing 模块时,它将包含完成客户检查和装运订单所需的全部信息。在实际的应用中,您可能需要创建独立的 Customer 业务对象来保存客户 ID 字符串之外的客户信息。

(Y/C#C,S*e

o G0X[wW{yj软件测试技术网s*wd$s7ab6b
OrderProcessing 组件

aR,M.t u$K d 软件测试技术网 @w2e;}F4_

OrderProcessing 组件是系统的入口点,它在从客户端应用程序接收到订单之后,驱动 OrderProcessing 模块。该组件接收到一个 Order 业务对象,其中包含订单信息以及客户帐号。OrderProcessing 组件使用该帐号通过 CustomerInformation 组件来确定对应的帐户是否存在。如果存在,它将向 Shipping 组件发送一条消息以装运订单。如果帐户不存在,则整个流程结束。

Vk:dHA3y*Dt

(O wsL*h图 10 显示了 ProcessOrder 组件的接口。客户端调用 placeOrder 操作以开始订单处理。该操作以 Order 业务对象作为输入。我们只要求客户端能提供订单,然后执行其他工作,因此该操作是单向的。注意,外部客户端不能直接调用 placeOrder 操作,因为只有同一模块中的组件才能与其连线。这样,外部客户端必须使用连线到 OrderProcessing 组件的独立引用。当 ShippingProcess 组件需要发送订单已装运的消息时,它将调用 orderShipped 操作。 软件测试技术网 YFa.s)e1S1B

4qDm7G?&PlY
s2J?&|ytmB由于 OrderProcessing 组件是事件驱动的,即由正在处理的订单状态确定所允许的操作,我们将使用业务状态机来进行实现,如图 11 所示。这些事件包括: 软件测试技术网R_xg r u2@ni C `?

S%x9am1~ ^o"Ez订单回执(客户端调用 placeOrder 操作)
gp Lr$fj9t通知订单已装运(装运系统调用 orderShipped 操作)
'\ a.Y5c;lr4^-i这些状态包括:
%x ?s1G1z\等待订单软件测试技术网 G6^&@8ce ~
正在检查客户软件测试技术网`;wo,N*S+v
正在装运订单软件测试技术网,Q S1JI,W
订单完成

\?neE}M

-|"P;^T1Cm,B
g8ht/yj(F在状态机中有多种方式对此应用程序进行建模,由于我们假设当接收到订单时,它将在转移到 CustomerBeingChecked 状态时自动触发客户检查,因此我们选择这种建模方式。检查结果自动触发到 OrderBeingShipped 或 OrderComplete 状态的转换,具体取决于在 CustomerBeingChecked 状态时调用 CustomerCheck 服务返回的结果值。在处于 OrderBeingShipped 状态时,Shipping 组件调用 ShippingProcess 组件的 shipOrder 操作。当接收到来自 Shipping 组件订单已装运通知时,系统自动转换到 OrderComplete 状态。

1B |*Mt@/q!q

P!B,Ilz0] |!fCustomerInformation 组件 软件测试技术网/Pk4pD V8b2J

9hU7]C HB*{K.}图 12 显示了 CustomerInformation 组件的接口。该组件确定具有给定 customerID 的客户是否存在。

(Pf1H0Ez:M:k 软件测试技术网W2o#}4q