网上购物系统架构设计UML

上传人:汽*** 文档编号:568537615 上传时间:2024-07-25 格式:PPT 页数:44 大小:405.50KB
返回 下载 相关 举报
网上购物系统架构设计UML_第1页
第1页 / 共44页
网上购物系统架构设计UML_第2页
第2页 / 共44页
网上购物系统架构设计UML_第3页
第3页 / 共44页
网上购物系统架构设计UML_第4页
第4页 / 共44页
网上购物系统架构设计UML_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《网上购物系统架构设计UML》由会员分享,可在线阅读,更多相关《网上购物系统架构设计UML(44页珍藏版)》请在金锄头文库上搜索。

1、1处理实例处理实例在线购物:客户定单在线购物:客户定单n 一个计算机制造厂商提供了通过因特网购买计算机的可一个计算机制造厂商提供了通过因特网购买计算机的可能性,客户可以在制造商的能性,客户可以在制造商的WebWeb页面上页面上选择一台计算机选择一台计算机,计,计算机分为服务器、台式机和笔记本。客户可以选择标准配算机分为服务器、台式机和笔记本。客户可以选择标准配置,或者可以在线建立自己希望的置,或者可以在线建立自己希望的配置配置。可配置的构件。可配置的构件(如内存)显示在一个可供选择的列表中。对每个新的配(如内存)显示在一个可供选择的列表中。对每个新的配置,系统可以计算价格。置,系统可以计算价格

2、。n 要发出定单,客户必须填上运送和付款信息,可接收要发出定单,客户必须填上运送和付款信息,可接收的付款方式为信用卡和支票,一旦定单被输入,系统向客的付款方式为信用卡和支票,一旦定单被输入,系统向客户发送一个确认户发送一个确认e-maile-mail消息,并附上定单的细节,在等待消息,并附上定单的细节,在等待计算机送到的时候,客户可以在任何时候在线查到定单的计算机送到的时候,客户可以在任何时候在线查到定单的状态状态。n 后端定单处理包含下面所需的步骤:验证客户的信任后端定单处理包含下面所需的步骤:验证客户的信任度和付款方式、向仓库请求所订购的配置、打印发票并且度和付款方式、向仓库请求所订购的配

3、置、打印发票并且请求仓库将计算机运送给客户。请求仓库将计算机运送给客户。2用例建模用例建模n 参与者参与者: : 与用例交互的任何人或任何事情与用例交互的任何人或任何事情. .要要 得到有用的结果得到有用的结果n用例用例: : 功能的具体化为用例功能的具体化为用例( (功能需求可以直功能需求可以直 接映射到用例接映射到用例) )表示一个完整的给用户表示一个完整的给用户 传值的功能性单元传值的功能性单元. .n用例图用例图: : 将用例赋给参与者将用例赋给参与者. . 是系统行为模型的主要可视化技术是系统行为模型的主要可视化技术. . 图形元素图形元素: :用例、参与者用例、参与者. . n为用

4、例编写文档为用例编写文档: : 用事件流来描述用事件流来描述. . 3第步(在线购物)用例建模:第步(在线购物)用例建模: 寻找系统中参与者寻找系统中参与者 n考虑如下扩展的需求来发现在线购物应用中考虑如下扩展的需求来发现在线购物应用中的的 参与者。参与者。1.1.客户使用制造厂商的客户使用制造厂商的WebWeb页面来查看所选择页面来查看所选择 的服务器、台式机或笔记本的标准配置,价的服务器、台式机或笔记本的标准配置,价 钱也同时显示出来。钱也同时显示出来。2.2.客户选择查看配置的细节,也许带有买它的客户选择查看配置的细节,也许带有买它的 意愿或建立一个更合适的配置。每种配置的意愿或建立一个

5、更合适的配置。每种配置的 价格在客户要求的情况下可以计算出来。价格在客户要求的情况下可以计算出来。3.3.客户可以选择在线订购计算机,或者也可以客户可以选择在线订购计算机,或者也可以 要求销售人员在定单真正发出之前与自己联要求销售人员在定单真正发出之前与自己联 系,解释定单的细节、协商价格等。系,解释定单的细节、协商价格等。4n4.4.要发出定单,客户必须填写在线表格关于运要发出定单,客户必须填写在线表格关于运 送和发票地址以及付款细节(信用卡或支票)。送和发票地址以及付款细节(信用卡或支票)。n5.5.在客户定单输入到系统之后,销售人员发送电在客户定单输入到系统之后,销售人员发送电 子请求给

6、仓库,附上所订购的配置的细节。子请求给仓库,附上所订购的配置的细节。n6.6.事务的细节,包括定单号和客户账号,要事务的细节,包括定单号和客户账号,要e-maile-mail 给客户,使得客户可以在线查看定单的状态。给客户,使得客户可以在线查看定单的状态。n7.7.仓库从销售人员那里获得发票,并给客户运送仓库从销售人员那里获得发票,并给客户运送 计算机。计算机。5第步(在线购物)用例建模:第步(在线购物)用例建模: 寻找参与者寻找参与者n基于以上分析创建以下参与者:基于以上分析创建以下参与者:1.1.客户客户-CustomerCustomer2.2.销售人员销售人员-SalespersonSa

7、lesperson3.3.仓库仓库-WarehouseWarehouse图图1-1 1-1 参与者(在线购物)参与者(在线购物)CustomerSalespersonWarehouse6需求需求号号需需 求求参与者参与者用用例1 1客户使用制造厂商的客户使用制造厂商的WebWeb页面来查看所选择的服务器、台式页面来查看所选择的服务器、台式机或笔记本的机或笔记本的标准配置标准配置,价钱也同时显示出来,价钱也同时显示出来。CustomerCustomerDisplay Standard Display Standard Computer ConfigurationComputer Configur

8、ation2 2客户选择查看配置的细节,也许带有买它的意愿或客户选择查看配置的细节,也许带有买它的意愿或建立一个建立一个更合适的配置更合适的配置。每种配置的价格在客户要求的情况下可以计。每种配置的价格在客户要求的情况下可以计算出来。算出来。CustomerCustomerBuild Computer Build Computer ConfigurationConfiguration3 3客户可以选择在线订购计算机,或者也可以要求客户可以选择在线订购计算机,或者也可以要求销售人员销售人员在在定单真正发出之前与自己定单真正发出之前与自己联系联系,解释,解释定单的细节定单的细节、协商价格、协商价格等

9、。等。Customer Customer SalespersonSalesperson Order ConfiguredOrder Configured Computer,Request Computer,Request Salesperson ContactSalesperson Contact4 4要发出定单,客户必须填写在线表格关于运送和发票地址以要发出定单,客户必须填写在线表格关于运送和发票地址以及及付款细节付款细节(信用卡或支票)。(信用卡或支票)。CustomerCustomerOrder ConfiguredOrder Configured Computer,Verify and

10、 Computer,Verify and Accept Accept Customer PaymentCustomer Payment5 5在客户定单输入到系统之后,在客户定单输入到系统之后,销售人员销售人员发送电子请求给发送电子请求给仓库仓库,附上所订购的配置的细节。附上所订购的配置的细节。SalespersoSalesperson n WarehouseWarehouseInform Warehouse Inform Warehouse About OrderAbout Order6 6事务的细节,包括定单号和客户账号,要事务的细节,包括定单号和客户账号,要e-maile-mail给客户,

11、使给客户,使得客户可以在线查看得客户可以在线查看定单的状态定单的状态。Salesperson Salesperson CustomerCustomerOrder Configured Order Configured Computer,Update Order Computer,Update Order StatusStatus7 7仓库从销售人员仓库从销售人员那里获得那里获得发票发票,并给客户运送计算机。,并给客户运送计算机。Salesperson Salesperson WarehouseWarehousePrint InvoicePrint Invoice表1-1 寻找用例(在线购物)第

12、步(在线购物)用例建模:寻找用例第步(在线购物)用例建模:寻找用例 7第步(在线购物)用例建模:第步(在线购物)用例建模: 寻找用例寻找用例图1-2 用例(在线购物)显示标准计显示标准计算机配置算机配置Display Standard Computer Configuration建立计算机建立计算机配置配置Build Computer ConfigurationVerify and Accept Customer Payment验证并接受验证并接受客户付款客户付款订购预先配订购预先配置的计算机置的计算机Order Configured Computer将定单通知将定单通知仓库仓库Inform

13、Warehouse about Order更新定单更新定单状态状态Update Order Status请求销售人请求销售人员联系员联系Request Salesperson Contact打印发票打印发票Print Invoice8第步(在线购物)用例建模:第步(在线购物)用例建模: 画用例图画用例图extendCustomer显示标准计显示标准计算机配置算机配置Display Standard Computer ConfigurationVerify and Accept Customer Payment验证并接受验证并接受客户付款客户付款更新定单状态更新定单状态Update Order

14、Status制定计算机制定计算机配置配置Build Computer Configuration订购预先配订购预先配置的计算机置的计算机Order Configured Computer请求请求销售人销售人员联系员联系Request Salesperson Contact打印发票打印发票Print Invoice将定单通知仓将定单通知仓库库Inform Warehouse about OrderWarehouse 仓库仓库Salesperson 销售人员销售人员图-3 用例图(在线购物)9第步(在线购物)用例建模:编写用例文档第步(在线购物)用例建模:编写用例文档用例用例订购配置的计算机订购配

15、置的计算机简述简述该用例允许该用例允许Customer输入一份购物定单,该定单包括提供运送和发票地址,输入一份购物定单,该定单包括提供运送和发票地址,以及关于付款的情况以及关于付款的情况参与者参与者Customer 前提前提 条件条件 Customer点击一个因特网浏览器进入计算机制造厂商的定单输入点击一个因特网浏览器进入计算机制造厂商的定单输入Web页面,该页面显示已页面,该页面显示已配置计算机及其价格的详细情况配置计算机及其价格的详细情况; 当当Customer 在定单信息已经显示在屏幕上时选择在定单信息已经显示在屏幕上时选择Continue(或相似命名的)功能键来确定订购所配置的计算机时

16、,该用例开始或相似命名的)功能键来确定订购所配置的计算机时,该用例开始主流主流 系统请求系统请求Customer输入购买细节,包括销售人员的名字、运送信息(客户的名字和地址)、输入购买细节,包括销售人员的名字、运送信息(客户的名字和地址)、发票细节(如果与运送地址不同的话)、付款方法(信用卡或支票)以及任何其他注释发票细节(如果与运送地址不同的话)、付款方法(信用卡或支票)以及任何其他注释 Customer选择选择Purchase(或相似命名的)功能来发送定单给制造厂商或相似命名的)功能来发送定单给制造厂商 系统给购买定单赋予一个唯一的定单号码和一个客户账号,系统将定单信息存入数据库系统给购买

17、定单赋予一个唯一的定单号码和一个客户账号,系统将定单信息存入数据库 系统将定单号和客户号与所有定单细节一起系统将定单号和客户号与所有定单细节一起 e-mail给给Customer,作为对接收定单的确认作为对接收定单的确认其他流其他流 Customer在提供所有要求录入的信息之前,激活在提供所有要求录入的信息之前,激活Purchase(或相似命名的)功能,系统显或相似命名的)功能,系统显示错误信息,它要求提供所漏掉的信息示错误信息,它要求提供所漏掉的信息 Customer选择选择Reset(或相似命名的)功能来恢复一个空白的购物表格,系统允许或相似命名的)功能来恢复一个空白的购物表格,系统允许C

18、ustomer 重新输入信息重新输入信息 后置后置 条件条件如果用例成功,购物定单记录进系统的数据库,否则系统的状态不变如果用例成功,购物定单记录进系统的数据库,否则系统的状态不变表1-21-2 用例“订购配置的计算机”(在线购物)的陈述性规格说明10活动建模活动建模n 用图来表示用例的事件流用图来表示用例的事件流 (为用例建模为用例建模,活动状态可根据活动状态可根据 用例文档来建立用例文档来建立).n 活动图填补了系统行为在用例模型中的高级表示和行为活动图填补了系统行为在用例模型中的高级表示和行为 在交互模型在交互模型(序列图和协作图序列图和协作图)中的低级表示之间的空白中的低级表示之间的空

19、白. n 活动图显示了计算的步骤活动图显示了计算的步骤.执行步骤称为活动状态执行步骤称为活动状态. (活动状态要花费时间来完成活动状态要花费时间来完成,行为被看作快到行为被看作快到.活动只能活动只能 在对象状态中定义在对象状态中定义,活动应从系统的角度活动应从系统的角度,而不是从参与而不是从参与 者的观点命名者的观点命名;行为可出现在对象状态的转换中行为可出现在对象状态的转换中). 从一个活动状态到另一个活动状态的控制流称为转换从一个活动状态到另一个活动状态的控制流称为转换.n 活动图也可用于在一个高的抽象层次上理解业务进程活动图也可用于在一个高的抽象层次上理解业务进程; 在一个低的抽象层次上

20、设计复杂的序列算法在一个低的抽象层次上设计复杂的序列算法; 在多线程应用中设计并发算法在多线程应用中设计并发算法.11第步(在线购物)活动建模:找出活动第步(在线购物)活动建模:找出活动n为用例为用例Order Configured Computer(Order Configured Computer(定购配置计算机定购配置计算机) )找出活动找出活动编号编号用用 例例 陈陈 述述活活 动动 状状 态态1 1 当当Customer Customer 在定单信息已经显示在屏幕上时选择在定单信息已经显示在屏幕上时选择ContinueContinue(或相似命名的)功能键来确定订购所或相似命名的)功

21、能键来确定订购所配置的计算机配置的计算机时,该用例时,该用例开始开始Display Current Display Current ConfiguraConfigura- -tion;Gettion;Get Order Request Order Request2 2 系统请求系统请求CustomerCustomer输入输入购买细节购买细节,包括销售人员的名字(如,包括销售人员的名字(如果知道的话)、运送信息(客户的名字和地址)、发票细节(如果知道的话)、运送信息(客户的名字和地址)、发票细节(如果与运送地址不同的话)、付款方法(信用卡或支票)以及任何果与运送地址不同的话)、付款方法(信用卡或

22、支票)以及任何其他注释其他注释Display Purchase FormDisplay Purchase Form3 3 Customer Customer选择选择PurchasePurchase(或相似命名的)功能来给制造厂商或相似命名的)功能来给制造厂商发送定单发送定单, ,得到细节得到细节Get Purchase DetailsGet Purchase Details4 4 系统给购买定单赋予一个唯一的定单号码和一个客户账号,系统给购买定单赋予一个唯一的定单号码和一个客户账号,系统将定单信息系统将定单信息存入存入数据库数据库Store OrderStore Order5 5 系统将定单号

23、和客户号与所有系统将定单号和客户号与所有定单细节定单细节一起一起 e-maile-mail给给CustomerCustomer,作为对接收定单的确认作为对接收定单的确认Email Order DetailsEmail Order Details6 6 CustomerCustomer在提供所有要求录入的信息之前,激活在提供所有要求录入的信息之前,激活PurchasePurchase功功能,系统显示错误信息,它要求提供所漏掉的信息能,系统显示错误信息,它要求提供所漏掉的信息Get Purchase Details;Get Purchase Details;Display Purchase For

24、mDisplay Purchase Form7 7 CustomerCustomer选择选择ResetReset(或相似命名的)功能来恢复一个空白或相似命名的)功能来恢复一个空白的购物表格,系统允许的购物表格,系统允许Customer Customer 重新输入信息重新输入信息Display Purchase FormDisplay Purchase Form表1-31-3 在主要的和附加的流中找出活动12第第6 6步(在线购物)活动建模:活动图步(在线购物)活动建模:活动图Display Display Purchase FormPurchase Form显示购物表格显示购物表格incomp

25、leteincomplete Get Order Get Order RequestRequest获取订购请求获取订购请求Display Current Display Current ConfigurationConfiguration显示当前配置显示当前配置图1-41-4 用例Order Configured ComputerOrder Configured Computer的活动图timeouttimeoutGet Purchase Get Purchase DetailsDetails获取购买细节获取购买细节Store OrderStore Order存储定单存储定单 OKOKEmai

26、l Order Email Order DetailsDetailsEmailEmail定单细节定单细节13类建模类建模n 类建模元素包含类建模元素包含:类自身、类的属性、操作、关联、类自身、类的属性、操作、关联、 聚合、组合、泛化聚合、组合、泛化,类图提供这些建模元素的组合类图提供这些建模元素的组合 可视化表示可视化表示.n 类建模和用例建模可并行进行类建模和用例建模可并行进行. 用例辅助类的发现用例辅助类的发现,类模型可以发现被忽略的用例类模型可以发现被忽略的用例.n 实体类实体类: 定义业务对象定义业务对象; 边界类边界类: 定义定义GUI对象对象; 控制类控制类: 控制程序逻辑的类控制

27、程序逻辑的类.n 类的结构由它的属性定义类的结构由它的属性定义;对象协作的路径由关联对象协作的路径由关联 表示表示,即关联用于指向所关联类的属性类型即关联用于指向所关联类的属性类型.14第第7步(在线购物)类建模:找出实体类步(在线购物)类建模:找出实体类需求号需求号需需 求求实实 体体 类类1 1客户客户使用制造厂商的使用制造厂商的WebWeb页面来查看所选择的服务器、页面来查看所选择的服务器、台式机或笔记本的标准台式机或笔记本的标准配置配置,价钱也同时显示出来。,价钱也同时显示出来。Customer,Computer(StandardCustomer,Computer(StandardCo

28、nfiguration,ProductConfiguration,Product) )2 2客户客户选择查看选择查看配置配置的细节,也许带有买它的意愿或建的细节,也许带有买它的意愿或建立一个更合适的配置。每种配置的价格在客户要求的立一个更合适的配置。每种配置的价格在客户要求的情况下可以计算出来。情况下可以计算出来。Customer,ConfiguredComputerCustomer,ConfiguredComputer( (ConfiguredProductConfiguredProduct),),ConfigurationItemConfigurationItem3 3客户客户可以选择在线

29、订购计算机,或者也可以要求可以选择在线订购计算机,或者也可以要求销售销售人员人员在定单真正发出之前与自己联系,解释在定单真正发出之前与自己联系,解释定单定单的细的细节、协商价格等。节、协商价格等。Customer,ConfiguredComputerCustomer,ConfiguredComputer, , Order, SalespersonOrder, Salesperson4 4要发出要发出定单定单,客户客户必须填写在线表格关于必须填写在线表格关于运送运送和和发票发票地址以及地址以及付付款细节(信用卡或支票)。款细节(信用卡或支票)。Customer,Order,Shipment, C

30、ustomer,Order,Shipment, Invoice,PaymentInvoice,Payment5 5在在客户定单客户定单输入到系统之后,输入到系统之后,销售人员销售人员发送电子请求发送电子请求给仓库,附上所订购的给仓库,附上所订购的配置项配置项的细节。的细节。Customer,Order,SalespersonCustomer,Order,Salesperson , ,ConfiguredComputerConfiguredComputer, ,Configuration ItemConfiguration Item6 6把事务的细节,(包括把事务的细节,(包括定单号和客户定单号

31、和客户账号)账号)e-maile-mail给给客户,使得客户可以在线查看客户,使得客户可以在线查看定单的状态定单的状态。Order,Customer,OrderStatusOrder,Customer,OrderStatus7 7仓库从销售人员那里获得仓库从销售人员那里获得发票发票,并给客户,并给客户运送运送计算机。计算机。Invoice,ShipmentInvoice,Shipment表1-41-4 需求到实体类的赋值(在线购物)15第第7步(在线购物)实体类步(在线购物)实体类ConfiguredComputerConfigurationItemComputerOrderInvoice图图

32、1-5 1-5 类(在线购物)类(在线购物)Customer (from Use Case View )客户类(从用例角度客户类(从用例角度)配置的计算机类配置的计算机类定单类定单类Payment付款类付款类发票类发票类配置细节类配置细节类计算机类计算机类16第第8 8步(在线购物)类建模:原始类型的属性步(在线购物)类建模:原始类型的属性 Customer (from Use Case View) -customer_name:String -customer_address:String phone_number:String -email_address:StringOrder -ord

33、er_number:String -order_date:Date ship_address:String -order_total:Currency -order_status:String -salesperson_name:StringPayment -payment_method:String -date_received:Date amount_received:CurrencyInvoice -invoice_number:String -invoice_date:Date invoice_total:CurrencyConfiguredComputer -computer_nam

34、e:String -configured_price:CurrencyComputer -computer_name:String -standard_price:CurrencyConfigurationItem -item_type:String -item_descr:String图1-6 原始属性(在线购物)17第第9 9步(在线购物)类建模:增加关联步(在线购物)类建模:增加关联 Customer (from Use Case View )客户类客户类 (从用例角度)(从用例角度)ConfiguredComputer配置的计算机类配置的计算机类Order定单类定单类Payment付款

35、类付款类Invoice发票类发票类ConfigurationItem配置细节类配置细节类Computer计算机类计算机类1110.*1.*0.*10.1图图1-7 1-7 关联(在线购物)关联(在线购物)18第第10步(在线购物)类建模:增加聚合步(在线购物)类建模:增加聚合 Customer (from Use Case View )客户类客户类 (从用例角度)(从用例角度)ConfiguredComputer配置的计算机类配置的计算机类OrderPayment付款类付款类Invoice发票类发票类1110.*1.*0.*10.11.*ConfigurationItem配置细节类配置细节类C

36、omputer1.*图图1-8 1-8 聚合(在线购物)聚合(在线购物)19第第11步(在线购物)类建模:增加泛化步(在线购物)类建模:增加泛化 图1-9 泛化(在线购物)ConfiguredComputer配置的计算机类配置的计算机类Customer (from Use Case View )客户类客户类 (从用例角度)(从用例角度)Order定单类定单类Payment付款类付款类Invoice发票类发票类ConfigurationItem配置细节类配置细节类Computer1.11.11.10.*0.*1.10.11.*1.*StandardComputer标准计算机类标准计算机类20第第

37、12步(在线购物)类建模:类的属性步(在线购物)类建模:类的属性 Customer (from Use Case View) -customer_name:String -customer_address:String phone_number:String -email_address:StringOrder -order_number:String -order_date:Date ship-address:String -order_total:Currency -order_status:String -salesperson_name:StringPayment -payment_m

38、ethod:String -date_received:Date amount_received:CurrencyInvoice -invoice_number:String -invoice_date:Date invoice_total:CurrencyStandardComputer -standard_price:CurrencyComputer -computer_name:StringConfigurationItem -item_type:String -item_descr:StringConfiguredComputer -configured_price:Currency1

39、.10.*1.11.11.10.11.*0.*1.*图1-10 类图(在线购物)配置的计算机类配置的计算机类标准计算机类标准计算机类配置细节类配置细节类发票类发票类21交互建模交互建模n交互建模是需求分析的高级阶级交互建模是需求分析的高级阶级.提供了用例的详细规提供了用例的详细规 格说明格说明,用来捕获执行一个用例的对象之间的交互用来捕获执行一个用例的对象之间的交互. n交互建模是将事件赋予了对象交互建模是将事件赋予了对象,显示了协作对象之间的显示了协作对象之间的 事件事件(消息消息)的次序的次序.n交互模型有交互模型有: (交互是某个行为的一组消息及在对象间的交互交互是某个行为的一组消息及在

40、对象间的交互) 序列序列 图图强调时间序列,是二维图强调时间序列,是二维图(水平维表示对象水平维表示对象, 垂直维表示消息的次序垂直维表示消息的次序)需求分析中使用需求分析中使用 消息在序列图中出现消息在序列图中出现,规定了在类图中需要一个关联规定了在类图中需要一个关联. 协作图协作图强调对象关系强调对象关系.系统设计中使用系统设计中使用n交互和操作交互和操作:检测交互导致操作的发现检测交互导致操作的发现. 交互模型中的消息和实现类中的方法之间交互模型中的消息和实现类中的方法之间 是一对一的映射是一对一的映射.22第第1313步(在线购物)交互建模:序列图步(在线购物)交互建模:序列图aCon

41、fWin: ConfigurationWindowaComp: Computer: Configuration Item:CustomeropenNewopenNewgetConfgetConf* *getConfItem(outgetConfItem(out item_recitem_rec) )打开新配置窗口打开新配置窗口获取配置获取配置获取配置细节获取配置细节显示计算机显示计算机displayComputer(item_recsetdisplayComputer(item_recset) )图图1-11 1-11 活动活动display current configurationdisp

42、lay current configuration的序列图的序列图( (在线购物在线购物) ):配置窗口类:配置窗口类:计算机类:计算机类:配置细节类配置细节类23第第1414步(在线购物)交互建模:步(在线购物)交互建模: 显示用操作扩展的类显示用操作扩展的类boundaryConfigurationWindow constructor openNew() displayComputer(item_reset)ComputerComputer-name abstract getConf()ConfigurationItem-item_type:String -item_descr:Strin

43、ggetConfItem(out item_rec)图图1-12 1-12 用交互关系来给类增加操作(在线购物)用交互关系来给类增加操作(在线购物)边界类边界类 配置窗口类配置窗口类配置细节类配置细节类计算机类计算机类24第第1515步(在线购物)交互建模:步(在线购物)交互建模: 简化序列图简化序列图图1-13 活动图Order Configured Computer 的序列图:Customer: OrderWindowopenNew打开新配置窗口getConf获取配置 图1-13 活动图Order Configured Computer 的序列图(在线购物)aConfWin: Config

44、urationWindow:配置窗口类aComp: Computer:计算机类:定单窗口类: Order :定单类acceptConf接受配置prepareForOrder准备定单displayOrder显示定单submitOrder提交定单storeOrder存储定单linkComputer链接计算机对象emailOrderEmail定单linkCustomerlinkPayment图图1-13 1-13 活动图活动图Order Configured Computer Order Configured Computer 的序列图的序列图:Customer: OrderWindowopenNe

45、wopenNew打开新配置窗口打开新配置窗口getConfgetConf获取配置获取配置 图图1-13 1-13 活动图活动图Order Configured Computer Order Configured Computer 的序列图(在线购物)的序列图(在线购物)aConfWin: ConfigurationWindow:配置窗口类:配置窗口类aComp: Computer:计算机类计算机类:定单窗口类:定单窗口类: Order :定单类定单类acceptConfacceptConf接受配置接受配置prepareForOrderprepareForOrder准备定单准备定单display

46、OrderdisplayOrder显示定单显示定单submitOrdersubmitOrder提交定单提交定单storeOrderstoreOrder存储定单存储定单linkComputerlinkComputer链接计算机对象链接计算机对象emailOrderemailOrderlinkCustomerlinkCustomerlinkPaymentlinkPayment25(在线购物)交互建模:简化序列图在线购物)交互建模:简化序列图图图1-13 1-13 活动图活动图Order Configured Computer Order Configured Computer 的序列图的序列图 图

47、图1-13 1-13 活动图活动图Order Configured Computer Order Configured Computer 的序列图(在线购物)的序列图(在线购物): Customer:Payment : OrderWindow: Order displayOrderdisplayOrder显示定单显示定单storeOrderstoreOrder存储定单存储定单linkCustomerlinkCustomerlinkPaymentlinkPayment链接客户对象链接客户对象链接付款对象链接付款对象ComputerComputer26状态图建模状态图建模n状态模型给出了类的详细描

48、述状态模型给出了类的详细描述,类的状态的动态变化类的状态的动态变化.这这 些动态变化典型地描绘了对象跨越几个用例时的行为些动态变化典型地描绘了对象跨越几个用例时的行为.n 对象的状态由对象属性的当前值表示对象的状态由对象属性的当前值表示(原始属性及指向原始属性及指向 其他类的属性其他类的属性).n状态模型捕获了类可以具有的状态即捕获了类生命期的状态模型捕获了类可以具有的状态即捕获了类生命期的 历史历史.对象在其生命期间是不变的对象在其生命期间是不变的,它的标识决不变化它的标识决不变化,但但 对象的状态可能发生变化对象的状态可能发生变化.n状态图是状态和由事件引起的变迁状态图是状态和由事件引起的

49、变迁(箭头箭头)现成的二分图现成的二分图. 对每个对象状态对每个对象状态,它决定这个对象在接收到一个事件时将它决定这个对象在接收到一个事件时将 采取什么行为采取什么行为,行为的执行将引起状态的变化行为的执行将引起状态的变化. 变迁的完整描述变迁的完整描述: event (parameters) guard / action 27第第1616步(在线购物)状态图建模步(在线购物)状态图建模Fully PaidFully PaidPartly PaidPartly PaidUnpaidUnpaid图图1-13 1-13 类类InvoiceInvoice的状态和事件的状态和事件Partial pay

50、mentPartial paymentfinal paymentfinal paymentfinal paymentfinal payment未付款状态未付款状态部分付款状态部分付款状态完全付款状态完全付款状态28第第1717步(在线购物)状态图建模:步(在线购物)状态图建模: 给类给类OrderOrder画状态图画状态图CancelCancelReady to ShipReady to ShipFilledFilledFuture OrderFuture OrderNew OrderNew OrderBack OrderBack Orderstock not availablestock n

51、ot availablestock availableship date in futurestock availableship date in futurestock availableship date in futurestock availableship date in futurecanceledcanceledstock availableship date nowstock availableship date now/configureComputerconfigureComputershipacceptedshipaccepted cancellationcancella

52、tion图图1-14 1-14 类类OrderOrder的状态图(在线购物)pendingpending将来的定单将来的定单过去的定单过去的定单没有库存没有库存有库存有库存 将来运送日期将来运送日期 取消预定取消预定准备运送准备运送有库存有库存 现在的运送日期现在的运送日期/配置计算机配置计算机定单信息存入数据库定单信息存入数据库29第第1818步(在线购物):限定关联步(在线购物):限定关联OrderOrder-order_number:Stringorder_number:String- -order_date:Dateorder_date:Date- -ship_address:Stri

53、ngship_address:String- -order_total:Currencyorder_total:Currency- -order_status:Stringorder_status:String- -salesperson_name:Stringsalesperson_name:StringConfiguration_id:IntegerConfiguration_id:IntegerComputerComputerComputer_name:StringComputer_name:StringGetconfGetconf()()0.*0.*1 1图图1-15 1-15 被限定

54、的关联被限定的关联30第第1919步(在线购物):协作图步(在线购物):协作图aCust: CustomerAConfWin: ConfigurationWindowaComp: ComputeraConfItem: ConfigurationItemopenNewgetConfdisplayComputer(item_reset)*getConf(out item_rec)图图1-16 1-16 Display Current Configuration Display Current Configuration 的协作图的协作图获取配置获取配置获取配置细节获取配置细节31第第2020步(在

55、线购物):用例包步(在线购物):用例包图图1-17 1-17 用例包(在线购物)用例包(在线购物)显示标准计算机配置显示标准计算机配置产品产品制定计算机配置制定计算机配置可能的配置可能的配置购买购买请求供货方合同请求供货方合同订购预先配置的计算机订购预先配置的计算机付款付款验证并接受客户付款验证并接受客户付款打印发票打印发票 送货送货将定单通知仓库将定单通知仓库更新定单状态更新定单状态32第第2121步(在线购物):类包步(在线购物):类包控制包定单处理控制包定单处理boundary OrderGUIentityComputersdb interfaceConnection db interf

56、aceCRUDdb interfaceSchema 计划计划entityOrdersentityCustomerscontrolOrderPlacement图图1-18 1-18 类包(在线购物)类包(在线购物)boundaryConfigurationGUI边界包配边界包配 置置controlConfigureProcess控制包配置处理控制包配置处理创建创建- -读读- -更新更新- -删除删除数据库包连接数据库包连接33构件与部署的设计构件与部署的设计n构件是系统的物理部分构件是系统的物理部分,依赖实现平台依赖实现平台.n构件是有清晰边界的功能单元构件是有清晰边界的功能单元.n构件必须被

57、仔细的设计和实现构件必须被仔细的设计和实现.n 支持支持Web应用的部署结构包括四层计算结点应用的部署结构包括四层计算结点: 带浏览器的客户端带浏览器的客户端; Web服务器服务器; 应用服务器应用服务器; 数据库服务器数据库服务器. Web服务器处理来自浏览器的页面请求服务器处理来自浏览器的页面请求,并为客户端上的并为客户端上的 执行和显示动态产生的页面和代码执行和显示动态产生的页面和代码. Web服务器还与用户一起解决活动阶段的客户化和参数化服务器还与用户一起解决活动阶段的客户化和参数化. 若在实现时引入了分布式对象若在实现时引入了分布式对象,使用应用服务器管理业务逻使用应用服务器管理业务

58、逻 辑辑.业务构件将它们的接口通过如业务构件将它们的接口通过如CORBA、DCOM和和EJB等的等的 构件接口向其他结点发布构件接口向其他结点发布. 34 业务构件封装了存储在数据库中的永久对象业务构件封装了存储在数据库中的永久对象,它们与数据库它们与数据库 服务器通过数据库互连协议进行通信如服务器通过数据库互连协议进行通信如JDBC,ODBC. 典型技术典型技术: ODBC(开发数据库互连开发数据库互连) JDBC(Java数据库互连数据库互连) RBO(远程数据对象远程数据对象) ADO(ActiveX数据对象数据对象) DBLib(数据标准库数据标准库) Web服务器技术服务器技术: 脚

59、本化脚本化HTML(超文本超文本Markup语言语言) 页面页面ASP(活动服务器页面活动服务器页面) JSP(Java服务器页面服务器页面) Web页面技术页面技术: 客户机脚本客户机脚本(JavaScript或或VBScript) XML(eXtensible Markup语言语言)文档文档 Java应用程序、应用程序、JavaBean或者或者ActiveX控件控件. 客户使用客户使用HTTP(超文本传输协议超文本传输协议)来从来从Web服务器获得服务器获得Web页面页面, 该页面可以被脚本化或包含己编译的可执行的该页面可以被脚本化或包含己编译的可执行的DLL(动态链接库动态链接库)模块模

60、块 如如:ISAPI(因特网服务器应用程序设计界面因特网服务器应用程序设计界面)、NSAPI(Netscape服服 务器应用程序设计界面务器应用程序设计界面) 、 CGI(公共网关界面公共网关界面)或或Java小服务程序小服务程序. 35第第2222步(在线购物):构件图步(在线购物):构件图ProductListProductList产品列表产品列表ProductDisplayProductDisplay产品显示产品显示Configuration Configuration 配置配置PurchasePurchase购买购买OrderTrackingOrderTracking定单追踪定单追踪图

61、图1-19 1-19 构件包(在线购物)构件包(在线购物)36第第2323步(在线购物):部署图步(在线购物):部署图图1-20 部署图(在线购物)37详细设计详细设计n包、构件、结点属于体系结构的设计包、构件、结点属于体系结构的设计n详细设计集中在协作上。协作定义用例的实现或详细设计集中在协作上。协作定义用例的实现或 复杂操作的实现复杂操作的实现n协作设计导致类图的细化或产生协作设计导致类图的细化或产生;顺序图、状态图顺序图、状态图 的细化的细化 38第第2424步(在线购物):用例规格说明步(在线购物):用例规格说明用例规格说明:用例规格说明:Order Configured Comput

62、erOrder Configured Computer1 1.UC15 Order Configured Computer.UC15 Order Configured Computer1.11.1简述简述 客户填写并提交购买定单表。系统验证细节并确认或拒绝这个定单客户填写并提交购买定单表。系统验证细节并确认或拒绝这个定单. .2.2.事件流事件流2.1.2.1.基本流基本流2.1.1.UC15.1 2.1.1.UC15.1 系统在客户的系统在客户的WebWeb浏览器上显示浏览器上显示Order EntryOrder Entry表格,这个表格表格,这个表格 包含如下项目包含如下项目 UC15.1

63、.1 UC15.1.1 表的标题为表的标题为Order Your ComputerOrder Your Computer。 UC15.1.2 UC15.1.2 解释信息显示在标题下方解释信息显示在标题下方 这段解释信息的正文如下:这段解释信息的正文如下: “ “请填写表格中的项目。要求的项目为红颜色并且是黑体。按请填写表格中的项目。要求的项目为红颜色并且是黑体。按SubmitSubmit 键提交该表,或者如果你决定不继续你的预定时,按键提交该表,或者如果你决定不继续你的预定时,按CancelCancel键。你能够在键。你能够在 提交预定的提交预定的2424小时之内取消你的预定,不用交罚金。你可

64、以用小时之内取消你的预定,不用交罚金。你可以用WebWeb、emailemail、faxfax或电话取消提交的预定。或电话取消提交的预定。” UC15.1.3UC15.1.3运送地址项运送地址项 UC15.1.3.1UC15.1.3.1所要求的运送地址项为:名字、国家、城市、街区、邮政方向所要求的运送地址项为:名字、国家、城市、街区、邮政方向. UC15.1.3.2UC15.1.3.2后选的运送地址项为:郊区、州、邮政编码。后选的运送地址项为:郊区、州、邮政编码。 39第第2424步(在线购物):用例规格说明步(在线购物):用例规格说明 UC15.1.4UC15.1.4不同于运送地址提供的其他

65、联系细节。不同于运送地址提供的其他联系细节。 UC15.1.4.1 UC15.1.4.1 偏好的联系方式:电子邮件、电话、传真、普通邮件、偏好的联系方式:电子邮件、电话、传真、普通邮件、 快递邮件。快递邮件。 UC15.1.4.2 UC15.1.4.2 所要求的联系细节为下列项目之一:电子邮件、电话、所要求的联系细节为下列项目之一:电子邮件、电话、传真。传真。 UC15.1.4.3 UC15.1.4.3 候选的联系细节为:上述三种所要求的联系细节中的任候选的联系细节为:上述三种所要求的联系细节中的任何两种,何两种, 邮件地址(如果与运送项目中提供的不一样的话)。邮件地址(如果与运送项目中提供的

66、不一样的话)。 UC15.1.5 UC15.1.5 账单地址,如果与运送项目中提供的不一样的话。账单地址,如果与运送项目中提供的不一样的话。 UC15.1.6 UC15.1.6 付款方法。付款方法。 UC15.1.6.1UC15.1.6.1客户可以选择用支票或者信用卡付款。客户可以选择用支票或者信用卡付款。 UC15.1.6.2UC15.1.6.2对支票付款,系统提供支票的付款对象信息和应该寄往的对支票付款,系统提供支票的付款对象信息和应该寄往的地址信息。它还要通知客户一旦收到支票将在三天内从账户中取钱。地址信息。它还要通知客户一旦收到支票将在三天内从账户中取钱。 UC15.1.6.3 UC1

67、5.1.6.3 对信用卡付款,系统显示要由客户填写的项。这些项是对信用卡付款,系统显示要由客户填写的项。这些项是可接受的信用卡类型列表、信用卡号、信用卡的过期日期。可接受的信用卡类型列表、信用卡号、信用卡的过期日期。 UC15.1.7UC15.1.7销售代表的名字,如果客户在前面已经知道的话销售代表的名字,如果客户在前面已经知道的话 UC15.1.8 UC15.1.8 两个行为键:两个行为键:SubmitSubmit和和CancelCancel。 2.1.2.2.1.2. UC15.2 UC15.2 系统将光标放在第一个可编辑的域(系统将光标放在第一个可编辑的域(NameName域)上,通过域

68、)上,通过这种方式提示客户输入定单信息。这种方式提示客户输入定单信息。 UC15.3 UC15.3 系统允许按任何次序输入信息。系统允许按任何次序输入信息。 40第第2424步(在线购物):用例规格说明步(在线购物):用例规格说明 UC15.4 UC15.4 如果客户不在如果客户不在1515分钟之内提交或者取消这个表,替换动作分钟之内提交或者取消这个表,替换动作“客户未激客户未激活活”就开始执行就开始执行 2.1.3.2.1.3.UC15.5UC15.5如果客户点击如果客户点击SubmitSubmit按钮,并且所要求的信息都已经提供,则该按钮,并且所要求的信息都已经提供,则该定单就提交给定单就

69、提交给WebWeb服务器。该服务器。该WebWeb服务器通知数据库服务器在数据库中保存该服务器通知数据库服务器在数据库中保存该定单。定单。 UC15.6 UC15.6 数据库为这次订购赋予唯一的一个编号和一个客户账号。数据库为这次订购赋予唯一的一个编号和一个客户账号。 UC15.7 UC15.7 如果数据库服务器不能创建和存储这个定单,则替换动作如果数据库服务器不能创建和存储这个定单,则替换动作“数据库异数据库异常常”就开始执行。就开始执行。 UC15.8 UC15.8 如果客户提交了信息不完全的定单,则替换动作如果客户提交了信息不完全的定单,则替换动作“不完全信息不完全信息”就开就开始执行。

70、始执行。 2.1.4.2.1.4. UC15.9 UC15.9 如果客户提供如果客户提供emailemail地址作为通信方式,系统将定单和客户编号地址作为通信方式,系统将定单和客户编号以及所有的定单细节以及所有的定单细节emailemail给客户,作为对接收定单的确认。用例终止。给客户,作为对接收定单的确认。用例终止。 UC15.10 UC15.10 否则定单信息将寄给客户,该用例也终止。否则定单信息将寄给客户,该用例也终止。 2.1.5.2.1.5. UC15.11UC15.11如果客户点击如果客户点击CancelCancel键,则替换流键,则替换流CancelCancel就开始执行。就开始

71、执行。 2. 22. 2替换流替换流2.2.1.2.2.1.客户未激活客户未激活 UC15.4.1 UC15.4.1 如果客户在如果客户在1515分钟内没有被激活,则系统中断与浏览器的连接。用分钟内没有被激活,则系统中断与浏览器的连接。用例终止。例终止。 41第第2424步(在线购物):用例规格说明步(在线购物):用例规格说明2.22.2.2.2数据库异常数据库异常 UC15.7.1 UC15.7.1 如果数据库出现异常,系统要进行解释并通知客户错误的性如果数据库出现异常,系统要进行解释并通知客户错误的性质。如果客户的连接已经中断,系统将错误信息质。如果客户的连接已经中断,系统将错误信息ema

72、ilemail给客户和销售人给客户和销售人员。用例终止。如果客户用员。用例终止。如果客户用InternetInternet和和emailemail不能联系,销售人员需要不能联系,销售人员需要用其他方式联系客户。用其他方式联系客户。 2.2.3.2.2.3.不完全信息不完全信息 UC15.8.1 UC15.8.1 如果客户没有填写所要求的项目,系统请求客户提供这些漏如果客户没有填写所要求的项目,系统请求客户提供这些漏掉的信息并显示漏掉项目的列表。用例继续。掉的信息并显示漏掉项目的列表。用例继续。 2.2.4. 2.2.4.取消取消 UC15.11.1 UC15.11.1 如果客户点击如果客户点击

73、CancelCancel键,该表格的域消失,用例继续。键,该表格的域消失,用例继续。 3. 3. 前置条件前置条件3.1. 3.1. 客户将因特网浏览器指向该系统的客户将因特网浏览器指向该系统的WebWeb页面,该页面显示所配置的页面,该页面显示所配置的计算机的细节以及它的价格。客户点击计算机的细节以及它的价格。客户点击PurchasePurchase键。键。3.2. 3.2. 客户要在请求建立后的计算机配置并在浏览器页面上显示出来之后客户要在请求建立后的计算机配置并在浏览器页面上显示出来之后的的1515分钟之内点击分钟之内点击PurchasePurchase键。键。4.4.后置条件后置条件4

74、.1.4.1.如果客户的预定提交成功,该购买定单记录在系统数据库中。否则,如果客户的预定提交成功,该购买定单记录在系统数据库中。否则,系统的状态不变。系统的状态不变。42第第2525步(在线购物):协作的结构步(在线购物):协作的结构client pageb_OrderClientPagerefresh() newOrderClientPage() incompleteSubmit()sever pagec_OrderSeverPagenewOrderServerPage() readClient() writeOrder()client pageb_ConfigurationClientPa

75、gebuttonPurchasedb interfaced_TransactionTrans_cookiebeginTransaction() commitTransaction() rollbackTransaction()entity e_orderOrder_number order_datenewOrder() deleteOrder()entity e_PaymentnewPayment()entity e_Configurationentitye_CustomerCustomer_numbernewCustomer() updateCustomer() emailCustomer(

76、)onPurchaseOn Submitorderconfiguration ordercustomerorderpayment图1-21 用例Order Configured ComputerOrder Configured Computer的结构协作(在线购物)formb_OrderClientFormtitle explanation shipment contactinvoicepayment salesperson cancel submit43第第2626步(在线购物):用例的行为协作步(在线购物):用例的行为协作:c OrderServerPage:b OrderClientFo

77、rm:b OrderClientPage:b ConfigurationClientPage:dTransaction:eOrder:ePayment:eConfiguration:eCustomeron Cancelrefresh取消取消on SubmitincompleteOrder 提交不完整订单提交不完整订单getConfOID(out ConfOID)on PurchasenewOrderClientPageover 15 minrollbackTransaction剩余最小值剩余最小值15,消减业务消减业务CommitTransaction提交业务提交业务beginTransaction开始业务开始业务deleteOrdernewCustomeremailCustomernewPaymentLink(in ConfOID)newOrder(in ConfOID)on SubmitnewOrder提交新订单提交新订单图图1-22 1-22 用例用例Order Configured ComputerOrder Configured Computer的行为协作图的行为协作图( (在线购物)在线购物)) )44

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号