资源描述
12处理实例处理实例在线购物:客户定单在线购物:客户定单n 一个计算机制造厂商提供了通过因特网购买计算机的可一个计算机制造厂商提供了通过因特网购买计算机的可能性,客户可以在制造商的能性,客户可以在制造商的WebWeb页面上页面上选择一台计算机选择一台计算机,计,计算机分为服务器、台式机和笔记本。客户可以选择标准配算机分为服务器、台式机和笔记本。客户可以选择标准配置,或者可以在线建立自己希望的置,或者可以在线建立自己希望的配置配置。可配置的构件。可配置的构件(如内存)显示在一个可供选择的列表中。对每个新的配(如内存)显示在一个可供选择的列表中。对每个新的配置,系统可以计算价格。置,系统可以计算价格。n 要发出定单,客户必须填上运送和付款信息,可接收要发出定单,客户必须填上运送和付款信息,可接收的付款方式为信用卡和支票,一旦定单被输入,系统向客的付款方式为信用卡和支票,一旦定单被输入,系统向客户发送一个确认户发送一个确认e-maile-mail消息,并附上定单的细节,在等待消息,并附上定单的细节,在等待计算机送到的时候,客户可以在任何时候在线查到定单的计算机送到的时候,客户可以在任何时候在线查到定单的状态状态。n 后端定单处理包含下面所需的步骤:验证客户的信任后端定单处理包含下面所需的步骤:验证客户的信任度和付款方式、向仓库请求所订购的配置、打印发票并且度和付款方式、向仓库请求所订购的配置、打印发票并且请求仓库将计算机运送给客户。请求仓库将计算机运送给客户。3用例建模用例建模n 参与者参与者:与用例交互的任何人或任何事情与用例交互的任何人或任何事情.要要 得到有用的结果得到有用的结果n用例用例:功能的具体化为用例功能的具体化为用例(功能需求可以直功能需求可以直 接映射到用例接映射到用例)表示一个完整的给用户表示一个完整的给用户 传值的功能性单元传值的功能性单元.n用例图用例图:将用例赋给参与者将用例赋给参与者.是系统行为模型的主要可视化技术是系统行为模型的主要可视化技术.图形元素图形元素:用例、参与者用例、参与者.n为用例编写文档为用例编写文档:用事件流来描述用事件流来描述.4第步(在线购物)用例建模:第步(在线购物)用例建模:寻找系统中参与者寻找系统中参与者 n考虑如下扩展的需求来发现在线购物应用中考虑如下扩展的需求来发现在线购物应用中的的 参与者。参与者。1.1.客户使用制造厂商的客户使用制造厂商的WebWeb页面来查看所选择页面来查看所选择 的服务器、台式机或笔记本的标准配置,价的服务器、台式机或笔记本的标准配置,价 钱也同时显示出来。钱也同时显示出来。2.2.客户选择查看配置的细节,也许带有买它的客户选择查看配置的细节,也许带有买它的 意愿或建立一个更合适的配置。每种配置的意愿或建立一个更合适的配置。每种配置的 价格在客户要求的情况下可以计算出来。价格在客户要求的情况下可以计算出来。3.3.客户可以选择在线订购计算机,或者也可以客户可以选择在线订购计算机,或者也可以 要求销售人员在定单真正发出之前与自己联要求销售人员在定单真正发出之前与自己联 系,解释定单的细节、协商价格等。系,解释定单的细节、协商价格等。5n4.4.要发出定单,客户必须填写在线表格关于运要发出定单,客户必须填写在线表格关于运 送和发票地址以及付款细节(信用卡或支票)。送和发票地址以及付款细节(信用卡或支票)。n5.5.在客户定单输入到系统之后,销售人员发送电在客户定单输入到系统之后,销售人员发送电 子请求给仓库,附上所订购的配置的细节。子请求给仓库,附上所订购的配置的细节。n6.6.事务的细节,包括定单号和客户账号,要事务的细节,包括定单号和客户账号,要e-maile-mail 给客户,使得客户可以在线查看定单的状态。给客户,使得客户可以在线查看定单的状态。n7.7.仓库从销售人员那里获得发票,并给客户运送仓库从销售人员那里获得发票,并给客户运送 计算机。计算机。6第步(在线购物)用例建模:第步(在线购物)用例建模:寻找参与者寻找参与者n基于以上分析创建以下参与者:基于以上分析创建以下参与者:1.1.客户客户-CustomerCustomer2.2.销售人员销售人员-SalespersonSalesperson3.3.仓库仓库-WarehouseWarehouse图图1-1 1-1 参与者(在线购物)参与者(在线购物)CustomerSalespersonWarehouse7需求需求号号需需 求求参与者参与者用用例1 1客户使用制造厂商的客户使用制造厂商的WebWeb页面来查看所选择的服务器、台式页面来查看所选择的服务器、台式机或笔记本的机或笔记本的标准配置标准配置,价钱也同时显示出来,价钱也同时显示出来。CustomerCustomerDisplay Standard Display Standard Computer ConfigurationComputer Configuration2 2客户选择查看配置的细节,也许带有买它的意愿或客户选择查看配置的细节,也许带有买它的意愿或建立一个建立一个更合适的配置更合适的配置。每种配置的价格在客户要求的情况下可以计。每种配置的价格在客户要求的情况下可以计算出来。算出来。CustomerCustomerBuild Computer Build Computer ConfigurationConfiguration3 3客户可以选择在线订购计算机,或者也可以要求客户可以选择在线订购计算机,或者也可以要求销售人员销售人员在在定单真正发出之前与自己定单真正发出之前与自己联系联系,解释,解释定单的细节定单的细节、协商价格、协商价格等。等。Customer Customer SalespersonSalesperson Order ConfiguredOrder Configured Computer,Request Computer,Request Salesperson ContactSalesperson Contact4 4要发出定单,客户必须填写在线表格关于运送和发票地址以要发出定单,客户必须填写在线表格关于运送和发票地址以及及付款细节付款细节(信用卡或支票)。(信用卡或支票)。CustomerCustomerOrder ConfiguredOrder Configured Computer,Verify and Computer,Verify and Accept Accept Customer PaymentCustomer Payment5 5在客户定单输入到系统之后,在客户定单输入到系统之后,销售人员销售人员发送电子请求给发送电子请求给仓库仓库,附上所订购的配置的细节。附上所订购的配置的细节。SalespersoSalesperson n WarehouseWarehouseInform Warehouse Inform Warehouse About OrderAbout Order6 6事务的细节,包括定单号和客户账号,要事务的细节,包括定单号和客户账号,要e-maile-mail给客户,使给客户,使得客户可以在线查看得客户可以在线查看定单的状态定单的状态。Salesperson Salesperson CustomerCustomerOrder Configured Order Configured Computer,Update Order Computer,Update Order StatusStatus7 7仓库从销售人员仓库从销售人员那里获得那里获得发票发票,并给客户运送计算机。,并给客户运送计算机。Salesperson Salesperson WarehouseWarehousePrint InvoicePrint Invoice表1-1 寻找用例(在线购物)第步(在线购物)用例建模:寻找用例第步(在线购物)用例建模:寻找用例 8第步(在线购物)用例建模:第步(在线购物)用例建模:寻找用例寻找用例图1-2 用例(在线购物)显示标准计显示标准计算机配置算机配置Display Standard Computer Configuration建立计算机建立计算机配置配置Build Computer ConfigurationVerify and Accept Customer Payment验证并接受验证并接受客户付款客户付款订购预先配订购预先配置的计算机置的计算机Order Configured Computer将定单通知将定单通知仓库仓库Inform Warehouse about Order更新定单更新定单状态状态Update Order Status请求销售人请求销售人员联系员联系Request Salesperson Contact打印发票打印发票Print Invoice9第步(在线购物)用例建模:第步(在线购物)用例建模:画用例图画用例图extendCustomer显示标准计显示标准计算机配置算机配置Display Standard Computer ConfigurationVerify and Accept Customer Payment验证并接受验证并接受客户付款客户付款更新定单状态更新定单状态Update Order Status制定计算机制定计算机配置配置Build Computer Configuration订购预先配订购预先配置的计算机置的计算机Order Configured Computer请求请求销售人销售人员联系员联系Request Salesperson Contact打印发票打印发票Print Invoice将定单通知仓将定单通知仓库库Inform Warehouse about OrderWarehouse 仓库仓库Salesperson 销售人员销售人员图-3 用例图(在线购物)10第步(在线购物)用例建模:编写用例文档第步(在线购物)用例建模:编写用例文档用例用例订购配置的计算机订购配置的计算机简述简述该用例允许该用例允许Customer输入一份购物定单,该定单包括提供运送和发票地址,输入一份购物定单,该定单包括提供运送和发票地址,以及关于付款的情况以及关于付款的情况参与者参与者Customer 前提前提 条件条件 Customer点击一个因特网浏览器进入计算机制造厂商的定单输入点击一个因特网浏览器进入计算机制造厂商的定单输入Web页面,该页面显示已页面,该页面显示已配置计算机及其价格的详细情况配置计算机及其价格的详细情况;当当Customer 在定单信息已经显示在屏幕上时选择在定单信息已经显示在屏幕上时选择Continue(或相似命名的)功能键来确定订购所配置的计算机时,该用例开始或相似命名的)功能键来确定订购所配置的计算机时,该用例开始主流主流 系统请求系统请求Customer输入购买细节,包括销售人员的名字、运送信息(客户的名字和地址)、输入购买细节,包括销售人员的名字、运送信息(客户的名字和地址)、发票细节(如果与运送地址不同的话)、付款方法(信用卡或支票)以及任何其他注释发票细节(如果与运送地址不同的话)、付款方法(信用卡或支票)以及任何其他注释 Customer选择选择Purchase(或相似命名的)功能来发送定单给制造厂商或相似命名的)功能来发送定单给制造厂商 系统给购买定单赋予一个唯一的定单号码和一个客户账号,系统将定单信息存入数据库系统给购买定单赋予一个唯一的定单号码和一个客户账号,系统将定单信息存入数据库 系统将定单号和客户号与所有定单细节一起系统将定单号和客户号与所有定单细节一起 e-mail给给Customer,作为对接收定单的确认作为对接收定单的确认其他流其他流 Customer在提供所有要求录入的信息之前,激活在提供所有要求录入的信息之前,激活Purchase(或相似命名的)功能,系统显或相似命名的)功能,系统显示错误信息,它要求提供所漏掉的信息示错误信息,它要求提供所漏掉的信息 Customer选择选择Reset(或相似命名的)功能来恢复一个空白的购物表格,系统允许或相似命名的)功能来恢复一个空白的购物表格,系统允许Customer 重新输入信息重新输入信息 后置后置 条件条件如果用例成功,购物定单记录进系统的数据库,否则系统的状态不变如果用例成功,购物定单记录进系统的数据库,否则系统的状态不变表1-21-2 用例“订购配置的计算机”(在线购物)的陈述性规格说明11活动建模活动建模n 用图来表示用例的事件流用图来表示用例的事件流(为用例建模为用例建模,活动状态可根据活动状态可根据 用例文档来建立用例文档来建立).n 活动图填补了系统行为在用例模型中的高级表示和行为活动图填补了系统行为在用例模型中的高级表示和行为 在交互模型在交互模型(序列图和协作图序列图和协作图)中的低级表示之间的空白中的低级表示之间的空白.n 活动图显示了计算的步骤活动图显示了计算的步骤.执行步骤称为活动状态执行步骤称为活动状态.(活动状态要花费时间来完成活动状态要花费时间来完成,行为被看作快到行为被看作快到.活动只能活动只能 在对象状态中定义在对象状态中定义,活动应从系统的角度活动应从系统的角度,而不是从参与而不是从参与 者的观点命名者的观点命名;行为可出现在对象状态的转换中行为可出现在对象状态的转换中).从一个活动状态到另一个活动状态的控制流称为转换从一个活动状态到另一个活动状态的控制流称为转换.n 活动图也可用于在一个高的抽象层次上理解业务进程活动图也可用于在一个高的抽象层次上理解业务进程;在一个低的抽象层次上设计复杂的序列算法在一个低的抽象层次上设计复杂的序列算法;在多线程应用中设计并发算法在多线程应用中设计并发算法.12第步(在线购物)活动建模:找出活动第步(在线购物)活动建模:找出活动n为用例为用例Order Configured Computer(Order Configured Computer(定购配置计算机定购配置计算机)找出活动找出活动编号编号用用 例例 陈陈 述述活活 动动 状状 态态1 1 当当Customer Customer 在定单信息已经显示在屏幕上时选择在定单信息已经显示在屏幕上时选择ContinueContinue(或相似命名的)功能键来确定订购所或相似命名的)功能键来确定订购所配置的计算机配置的计算机时,该用例时,该用例开始开始Display Current Display Current Configura-Configura-tion;Get Order Requesttion;Get Order Request2 2 系统请求系统请求CustomerCustomer输入输入购买细节购买细节,包括销售人员的名字(如,包括销售人员的名字(如果知道的话)、运送信息(客户的名字和地址)、发票细节(如果知道的话)、运送信息(客户的名字和地址)、发票细节(如果与运送地址不同的话)、付款方法(信用卡或支票)以及任何果与运送地址不同的话)、付款方法(信用卡或支票)以及任何其他注释其他注释Display Purchase FormDisplay Purchase Form3 3 Customer Customer选择选择PurchasePurchase(或相似命名的)功能来给制造厂商或相似命名的)功能来给制造厂商发送定单发送定单,得到细节得到细节Get Purchase DetailsGet Purchase Details4 4 系统给购买定单赋予一个唯一的定单号码和一个客户账号,系统给购买定单赋予一个唯一的定单号码和一个客户账号,系统将定单信息系统将定单信息存入存入数据库数据库Store OrderStore Order5 5 系统将定单号和客户号与所有系统将定单号和客户号与所有定单细节定单细节一起一起 e-maile-mail给给CustomerCustomer,作为对接收定单的确认作为对接收定单的确认Email Order DetailsEmail Order Details6 6 CustomerCustomer在提供所有要求录入的信息之前,激活在提供所有要求录入的信息之前,激活PurchasePurchase功功能,系统显示错误信息,它要求提供所漏掉的信息能,系统显示错误信息,它要求提供所漏掉的信息Get Purchase Details;Get Purchase Details;Display Purchase FormDisplay Purchase Form7 7 CustomerCustomer选择选择ResetReset(或相似命名的)功能来恢复一个空白或相似命名的)功能来恢复一个空白的购物表格,系统允许的购物表格,系统允许Customer Customer 重新输入信息重新输入信息Display Purchase FormDisplay Purchase Form表1-31-3 在主要的和附加的流中找出活动13第第6 6步(在线购物)活动建模:活动图步(在线购物)活动建模:活动图Display Display Purchase FormPurchase Form显示购物表格显示购物表格incompleteincomplete 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存储定单存储定单 OKOKEmail Order Email Order DetailsDetailsEmailEmail定单细节定单细节14类建模类建模n 类建模元素包含类建模元素包含:类自身、类的属性、操作、关联、类自身、类的属性、操作、关联、聚合、组合、泛化聚合、组合、泛化,类图提供这些建模元素的组合类图提供这些建模元素的组合 可视化表示可视化表示.n 类建模和用例建模可并行进行类建模和用例建模可并行进行.用例辅助类的发现用例辅助类的发现,类模型可以发现被忽略的用例类模型可以发现被忽略的用例.n 实体类实体类:定义业务对象定义业务对象;边界类边界类:定义定义GUI对象对象;控制类控制类:控制程序逻辑的类控制程序逻辑的类.n 类的结构由它的属性定义类的结构由它的属性定义;对象协作的路径由关联对象协作的路径由关联 表示表示,即关联用于指向所关联类的属性类型即关联用于指向所关联类的属性类型.15第第7步(在线购物)类建模:找出实体类步(在线购物)类建模:找出实体类需求号需求号需需 求求实实 体体 类类1 1客户客户使用制造厂商的使用制造厂商的WebWeb页面来查看所选择的服务器、页面来查看所选择的服务器、台式机或笔记本的标准台式机或笔记本的标准配置配置,价钱也同时显示出来。,价钱也同时显示出来。Customer,Computer(StandardCustomer,Computer(StandardConfiguration,Product)Configuration,Product)2 2客户客户选择查看选择查看配置配置的细节,也许带有买它的意愿或建的细节,也许带有买它的意愿或建立一个更合适的配置。每种配置的价格在客户要求的立一个更合适的配置。每种配置的价格在客户要求的情况下可以计算出来。情况下可以计算出来。Customer,ConfiguredComputer(Customer,ConfiguredComputer(ConfiguredProduct),ConfiguredProduct),ConfigurationItemConfigurationItem3 3客户客户可以选择在线订购计算机,或者也可以要求可以选择在线订购计算机,或者也可以要求销售销售人员人员在定单真正发出之前与自己联系,解释在定单真正发出之前与自己联系,解释定单定单的细的细节、协商价格等。节、协商价格等。Customer,ConfiguredComputer,Customer,ConfiguredComputer,Order,SalespersonOrder,Salesperson4 4要发出要发出定单定单,客户客户必须填写在线表格关于必须填写在线表格关于运送运送和和发票发票地址以及地址以及付付款细节(信用卡或支票)。款细节(信用卡或支票)。Customer,Order,Shipment,Customer,Order,Shipment,Invoice,PaymentInvoice,Payment5 5在在客户定单客户定单输入到系统之后,输入到系统之后,销售人员销售人员发送电子请求发送电子请求给仓库,附上所订购的给仓库,附上所订购的配置项配置项的细节。的细节。Customer,Order,Salesperson,Customer,Order,Salesperson,ConfiguredComputer,ConfiguredComputer,Configuration ItemConfiguration Item6 6把事务的细节,(包括把事务的细节,(包括定单号和客户定单号和客户账号)账号)e-maile-mail给给客户,使得客户可以在线查看客户,使得客户可以在线查看定单的状态定单的状态。Order,Customer,OrderStatusOrder,Customer,OrderStatus7 7仓库从销售人员那里获得仓库从销售人员那里获得发票发票,并给客户,并给客户运送运送计算机。计算机。Invoice,ShipmentInvoice,Shipment表1-41-4 需求到实体类的赋值(在线购物)16第第7步(在线购物)实体类步(在线购物)实体类ConfiguredComputerConfigurationItemComputerOrderInvoice图图1-5 1-5 类(在线购物)类(在线购物)Customer (from Use Case View)客户类(从用例角度客户类(从用例角度)配置的计算机类配置的计算机类定单类定单类Payment付款类付款类发票类发票类配置细节类配置细节类计算机类计算机类17第第8 8步(在线购物)类建模:原始类型的属性步(在线购物)类建模:原始类型的属性 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_method:String -date_received:Date amount_received:CurrencyInvoice -invoice_number:String -invoice_date:Date invoice_total:CurrencyConfiguredComputer -computer_name:String -configured_price:CurrencyComputer -computer_name:String -standard_price:CurrencyConfigurationItem -item_type:String -item_descr:String图1-6 原始属性(在线购物)18第第9 9步(在线购物)类建模:增加关联步(在线购物)类建模:增加关联 Customer (from Use Case View)客户类客户类 (从用例角度)(从用例角度)ConfiguredComputer配置的计算机类配置的计算机类Order定单类定单类Payment付款类付款类Invoice发票类发票类ConfigurationItem配置细节类配置细节类Computer计算机类计算机类1110.*1.*0.*10.1图图1-7 1-7 关联(在线购物)关联(在线购物)19第第10步(在线购物)类建模:增加聚合步(在线购物)类建模:增加聚合 Customer (from Use Case View)客户类客户类 (从用例角度)(从用例角度)ConfiguredComputer配置的计算机类配置的计算机类OrderPayment付款类付款类Invoice发票类发票类1110.*1.*0.*10.11.*ConfigurationItem配置细节类配置细节类Computer1.*图图1-8 1-8 聚合(在线购物)聚合(在线购物)20第第11步(在线购物)类建模:增加泛化步(在线购物)类建模:增加泛化 图1-9 泛化(在线购物)ConfiguredComputer配置的计算机类配置的计算机类Customer (from Use Case View)客户类客户类 (从用例角度)(从用例角度)Order定单类定单类Payment付款类付款类Invoice发票类发票类ConfigurationItem配置细节类配置细节类Computer1.11.11.10.*0.*1.10.11.*1.*StandardComputer标准计算机类标准计算机类21第第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_method: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.10.*1.11.11.10.11.*0.*1.*图1-10 类图(在线购物)配置的计算机类配置的计算机类标准计算机类标准计算机类配置细节类配置细节类发票类发票类22交互建模交互建模n交互建模是需求分析的高级阶级交互建模是需求分析的高级阶级.提供了用例的详细规提供了用例的详细规 格说明格说明,用来捕获执行一个用例的对象之间的交互用来捕获执行一个用例的对象之间的交互.n交互建模是将事件赋予了对象交互建模是将事件赋予了对象,显示了协作对象之间的显示了协作对象之间的 事件事件(消息消息)的次序的次序.n交互模型有交互模型有:(交互是某个行为的一组消息及在对象间的交互交互是某个行为的一组消息及在对象间的交互)序列序列 图图强调时间序列,是二维图强调时间序列,是二维图(水平维表示对象水平维表示对象,垂直维表示消息的次序垂直维表示消息的次序)需求分析中使用需求分析中使用 消息在序列图中出现消息在序列图中出现,规定了在类图中需要一个关联规定了在类图中需要一个关联.协作图协作图强调对象关系强调对象关系.系统设计中使用系统设计中使用n交互和操作交互和操作:检测交互导致操作的发现检测交互导致操作的发现.交互模型中的消息和实现类中的方法之间交互模型中的消息和实现类中的方法之间 是一对一的映射是一对一的映射.THANK YOUSUCCESS2024/5/8 周三23可编辑24第第1313步(在线购物)交互建模:序列图步(在线购物)交互建模:序列图aConfWin:ConfigurationWindowaComp:Computer:Configuration Item:CustomeropenNewopenNewgetConfgetConf*getConfItem(out item_rec)getConfItem(out item_rec)打开新配置窗口打开新配置窗口获取配置获取配置获取配置细节获取配置细节显示计算机显示计算机displayComputer(item_recset)displayComputer(item_recset)图图1-11 1-11 活动活动display current configurationdisplay current configuration的序列图的序列图(在线购物在线购物):配置窗口类:配置窗口类:计算机类:计算机类:配置细节类配置细节类25第第1414步(在线购物)交互建模:步(在线购物)交互建模:显示用操作扩展的类显示用操作扩展的类boundaryConfigurationWindow constructor openNew()displayComputer(item_reset)ComputerComputer-name abstract getConf()ConfigurationItem-item_type:String -item_descr:StringgetConfItem(out item_rec)图图1-12 1-12 用交互关系来给类增加操作(在线购物)用交互关系来给类增加操作(在线购物)边界类边界类 配置窗口类配置窗口类配置细节类配置细节类计算机类计算机类26第第1515步(在线购物)交互建模:步(在线购物)交互建模:简化序列图简化序列图图1-13 活动图Order Configured Computer 的序列图:Customer:OrderWindowopenNew打开新配置窗口getConf获取配置 图1-13 活动图Order Configured Computer 的序列图(在线购物)aConfWin:ConfigurationWindow:配置窗口类aComp:Computer:计算机类:定单窗口类:Order :定单类acceptConf接受配置prepareForOrder准备定单displayOrder显示定单submitOrder提交定单storeOrder存储定单linkComputer链接计算机对象emailOrderEmail定单linkCustomerlinkPayment图图1-13 1-13 活动图活动图Order Configured Computer Order Configured Computer 的序列图的序列图:Customer:OrderWindowopenNewopenNew打开新配置窗口打开新配置窗口getConfgetConf获取配置获取配置 图图1-13 1-13 活动图活动图Order Configured Computer Order Configured Computer 的序列图(在线购物)的序列图(在线购物)aConfWin:ConfigurationWindow:配置窗口类:配置窗口类aComp:Computer:计算机类计算机类:定单窗口类:定单窗口类:Order :定单类定单类acceptConfacceptConf接受配置接受配置prepareForOrderprepareForOrder准备定单准备定单displayOrderdisplayOrder显示定单显示定单submitOrdersubmitOrder提交定单提交定单storeOrderstoreOrder存储定单存储定单linkComputerlinkComputer链接计算机对象链接计算机对象emailOrderemailOrderlinkCustomerlinkCustomerlinkPaymentlinkPayment27(在线购物)交互建模:简化序列图在线购物)交互建模:简化序列图图图1-13 1-13 活动图活动图Order Configured Computer Order Configured Computer 的序列图的序列图 图图1-13 1-13 活动图活动图Order Configured Computer Order Configured Computer 的序列图(在线购物)的序列图(在线购物):Customer:Payment :OrderWindow:Order displayOrderdisplayOrder显示定单显示定单storeOrderstoreOrder存储定单存储定单linkCustomerlinkCustomerlinkPaymentlinkPayment链接客户对象链接客户对象链接付款对象链接付款对象ComputerComputer28状态图建模状态图建模n状态模型给出了类的详细描述状态模型给出了类的详细描述,类的状态的动态变化类的状态的动态变化.这这 些动态变化典型地描绘了对象跨越几个用例时的行为些动态变化典型地描绘了对象跨越几个用例时的行为.n 对象的状态由对象属性的当前值表示对象的状态由对象属性的当前值表示(原始属性及指向原始属性及指向 其他类的属性其他类的属性).n状态模型捕获了类可以具有的状态即捕获了类生命期的状态模型捕获了类可以具有的状态即捕获了类生命期的 历史历史.对象在其生命期间是不变的对象在其生命期间是不变的,它的标识决不变化它的标识决不变化,但但 对象的状态可能发生变化对象的状态可能发生变化.n状态图是状态和由事件引起的变迁状态图是状态和由事件引起的变迁(箭头箭头)现成的二分图现成的二分图.对每个对象状态对每个对象状态,它决定这个对象在接收到一个事件时将它决定这个对象在接收到一个事件时将 采取什么行为采取什么行为,行为的执行将引起状态的变化行为的执行将引起状态的变化.变迁的完整描述变迁的完整描述:event (parameters)guard/action 29第第1616步(在线购物)状态图建模步(在线购物)状态图建模Fully PaidFully PaidPartly PaidPartly PaidUnpaidUnpaid图图1-13 1-13 类类InvoiceInvoice的状态和事件的状态和事件Partial paymentPartial paymentfinal paymentfinal paymentfinal paymentfinal payment未付款状态未付款状态部分付款状态部分付款状态完全付款状态完全付款状态30第第1717步(在线购物)状态图建模:步(在线购物)状态图建模:给类给类OrderOrder画状态图画状态图CancelCancelReady to ShipReady to ShipFilledFilledFuture OrderFuture OrderNew OrderNew OrderBack OrderBack Orderstock not availablestock not availablestock availableship date in futurestock availableship date in fut
展开阅读全文