UML建模网上购物_第1页
UML建模网上购物_第2页
UML建模网上购物_第3页
UML建模网上购物_第4页
UML建模网上购物_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2010 2011 学年第一学期信息技术学院软件系统建模与UM综合设计实验UML 建模班 级 学 号 姓 名 任课教师2010 年 12 月 30 日目录第1 章系统需求 2第2 章需求分析 32.1 识别参与者 32.2 识别用例 32.3 用例的事件流描述 4第 3 章静态结构模型 103.1 定义系统对象 103.2 定义用户界面类 103.3 建立类图 11第 4 章动态行为模型 174.1 创建系统顺序图(协作图) 184.2 创建系统的状态图 224.3 创建系统的活动图 23第 5 章物理模型 275.1 创建系统组件图 275.2 创建系统部署图 28第 1 章系统需求一个客户

2、通过因特网购买所需要的商品, 客户可以在商品列表的 Web页面上选择订购商品。要发出定单,客户必须填上运送和付款信息,可接收的付款方 式为信用卡、支票或者其他付款方式,一旦定单被输入,系统向客户发送一个确认e-mail 消息,并附上定单的细节,在等待计算机送 到的时候,客户可以在任何时候在线查到定单的状态。后端定单处理包含下面所需的步骤:验证客户的信任度和付款 方式、送给客户1. 客户使用商品列表的 Web 页面来查看所需要的商品,商品 价格也 同时显示出来。2. 客户可以通过留言板向我们提出需要什么样的商品, 需要什 么样的服务,对我们提出一些意见和建议。3. 客户可以选择在线订购商品,或者

3、也可以要求销售人员在定单真正发出之前与自己联系,解释定单的细节、协商价格等。4. 要发出定单,客户必须填写在线表格关于运送和发票地址以及付款细节(信用卡、支票或者其他付款方式)。5. 在客户定单输入到系统之后,销售人员发送电子请求给仓库,附上所订购的商品的细节。6. 事务的细节,包括定单号和客户账号,要e-mail 给客户,使得客户可以在线查看定单的状态。7. 仓库从销售人员那里获得发票,并给客户运送商品。第 2 章需求分析采用用例驱动的分析方法分析需求的主要任务是识别出系统中的参与者和用例,并建立用例模型。在本系统中,Customer客户Salesperson销售人员Warehouse仓库2

4、.1 识别参与者-Customer八SalespersonsWarehouse*图 1 参与者(网上购物)2.2 识别用例系统总用例图SalespersonInform WareHouse about Order(from送货)SelfConfigurationVerify and Accept Payment Update Order Status(from付款)(from自选部件);?f L?<<extend>>Standardconfiguration(from标准产品)Customer、( JRequest Salesperson ContactPrint In

5、voice(from 购买)(from付款)Warehouse (from 送货)Order2.3用恻的事叫流描述购简 述:Standardconfiguration意筮鬻望 该用例允许用片查询选择标准配置计算机, 前提条件:Customer包括价格及部件清单。Customer点击一个因特网浏览器进入计算机制造厂商的选购标准配置计算机的Web页面,该页面显示标准配置计算 机的价格以及部件清单。用例开始。流:用户查询标准计算机配置,将选中的计算机标准配置加入购物车,用户可随时增减购物车内商品,web 页面动态对累积价格进行更新其他流:后 无置条件:临时数据库。价格。定义配置计如果用例成功,将购物

6、车内已配置计算机型号及数M存入SelConfiguration该用例允许用尸自定义计算机配置,包括部件清单及总计CustomerCustomer点击一个因特网浏览器进入计算机制造厂商的自算机及部件的 Web页面,该页面显示计算机部件 清单及价格。用例开始。主 流:用片查询选择计算机部件,将选中的计算机标准配置加入购物车,用片可随时增减购物车内商品,web页面动态对累积价格进行更新。其他流:后 无置条件:如果用例成功,将购物车内已配置计算机部件及数M存入临时数据库。Verify and Accept Payment该用例验证并接受客尸付款,并将付款信息通知销售人员Customer, Salesp

7、ersonCustomer收到定单确认信息后,通过信用卡或支票完成转帐。用例开始。检查用尸帐号及付款金额, 若金额无误,将付款成功信息 通知销售人员。若金额不足,向用尸发送通知。如果用例成功,将付款成功信息通知销售人员,并将客尸订购信息及交付金额存入数据库用 例: Request Salesperson Contact间 述:该用例允许Customer请求Salesman在定单真正发出之前 与自己联系,解释定单的细节、协商价格等。参与者:Customer, Salesma n前提条件:Customer需要对定单页面显示已配置计算机及其价格的详细情况咨询。Customer在填写完定单后选择 Co

8、n tact (或相似命名的)功能来 主流:发送消息给Salesman要求咨询,此时该用例开始。Salesman在专门的服务窗口接收到 Customer请求联系的 列表并 选择到该客片的请求。Salesman4得到Customer在定单上的联系方式信息。Salesman按照提供的信息选择方式联系Customer ,对定单细节其他流:解释,并协商价格。后置条件:无如果用例成功,Salesman #按协商后的配置及价格信息修 改原定单, 将新的定单信息存入数据库中。用例:何述:Order该用例允许Customer输入一份购物定单,该定单包括提供运送和参与者:发票地址,以及关于付款的情况。前提条件:

9、CustomerCustomer点击一个因特网浏览器进入计算机制造厂商的定单输入 Web页面,该页面显示已配置计算机及其价格的详细情况。当Customer在定单信息已经显示在屏幕上时选择Continue (或相似命名的)功能键来确定订购所配置的计算机时,该用例开始。其他流:后置条件:用 例:简 述:参?者: 前提条件:T 流:系统请求Customer输入购头细节,包括销售人员的名子(如 果知 道的话)、运送信息(客片的名字和地址)、发票细节(如果与运送地址不同的话)、付款方法(信用卡或支票)以及任 何其他注释。Customer选择Purchase (或相似命名的)功能来发送定单给制造厂商。系统

10、给购买定单赋予一个唯一的定单号码和一个客片账号,系统将定单信息存入数据库。系统将/£单号和客六号与所有/£单细节一起e-mail给Customer ,作为对接收定单的确认。Customer在提供所有要求录入的信息之前,激活 Purchase(或相似命名的)功能,系统显示错误信息,它要求提供所 漏掉的 信息。Customer选择Reset (或相似命名的)功能来恢复一个空白的购物表格,系统允许 Customer重新输入信息。如果用例成功,购物定单记录进系统的数据库,否则系统的状态不变。Update Order Status该用例用于描述定单状态(定单交付状态,定单确认状态,付

11、款状态)。Customer, Salespers onCustomer交付定单,查询定单状态,Salesperson修改定单 状态, 该用例开始。Customer填写定单订购商品成功,进入定单交付状态。Salesman检查定单,发送 e-mail给客片,进入定单确认状 八态。Customer付款成功,进入已付款状态。其他流 :后置条件 :用 例: 简述 : 参与者 :前提条件:流:其他流 : 后置条件 :用 例: 简述:参与者 : 前提条件 :流:若定单不符合要求,则向用户发送定购失败信息。若销售人员检查定单有误,则向用户发送定购失败信息。 若用户付款金 额不对,则向用户发送付款失败信息。如果

12、用例成功,则将定单所处状态存入数据库。Print Invoice客户从销售人员处得到发票Customer Salesman验证和接收客户付款成功。Salesman 选择 In voice (或相似命名的)功能键来生成发 票,此时 该用例开始。Salesman 利用系统从数据库中提取订购信息和收到的付款信息生成发票。系统将该发票提供给SalesmanSalesman 发 Email 给 Customer ,并付上发票。无如果用例成功,客户将收到发票。Inform Warehouse about Order在客户定单输入到系统之后,销售人员发送电子请求给仓 库,附上所 订购的配置的细节。Sales

13、ma n Warehouse验证和接收客户付款成功。Salesman 选择系统提供的订购清单中该客户的订购信息, 并点击Refer (或相似命名的)功能键来将订购信息提交给Warehouse 时,该用例开始。Salesman 利用系统从数据库中提取该成一份订购信息列表。Customer 的订单信 息和个人资料,生系统将该列表提供给WarehouseWarehouse 根据提供的信息配置计算机商品。其他流:无后置条件:如果用例成功,Warehouse发货给客片,修改定单状态为 已送货。第3章静态结构模型进一步分析系统需求,发现类以及类之间的关系,确定它们的静态 结构和动 态行为,是面向对象 分析

14、的基本任务。系统的静态结构模型 主要用类图和对象 图描述。3.1 定义系统对象系统对象的识别可以通过寻找系统域描述和需求描述中的名词来进行。3.2 定义用户界面类性。通过对系统的不断分析和细化可识别出下述界面类、类的操作和属Stan dardC on figurationSelfC on figurati on tactRequest Salespers on Con(from购买)Order(Irom购买)Verify and Accept Payme nt(from付款)Update Order Status(Irom送货)Inform WareHouse about Order(from

15、送货)Pri nt Invoiceom 付款)3.3 建立类图识别出了系统中的类后,还要识别出类间的关系,然后就可 以建立类图了。从需求中找出候选实体类:需求需求候选实体类号1 客户使用制造厂商的 Web 页面来查看所选Customer, 择的服务器、台式机或笔记本的标准配置, Sta ndard Computer 价钱也同时显示出来。2 客户选择查看配置的细节, 也许带有买它的 Customer, 意愿或建立一个更合适的配置。每种配置的 Component 价格在客户要求的情况下可以计算出来。Mercha ndiseList3 客户可以选择在线订购计算机,或者也可以 Customer,要求销

16、售人员在定单真正发出之前与自己 Computer,联系,解释定单的细节、协商价格等。 Order,Salespers on4 要发出定单,客户必须填写在线表格关于运Customer,送和发票地址以及付款细节(信用卡或支 Order,票)。 Invoice,Payme nt5 在客户定单输入到系统之后,销售人员发送 Customer,电子请求给仓库,附上所订购的配置的细 Order,节。 Salespers on,Con figured Computer,Mercha ndiseList6 把事务的细节, (包括定单号和客户账号) Order, e-mail 给客户,使得客户可以在线查看定单Cu

17、stomer,的状态。Order StatusWare House7仓库从销售人员那里获得发票,并给客六运Invoice,送计算机。表1需求到实体类的赋值(网上购物)Coiiponent(from实体类包)'A>item_type : String'八ileirLdescr: StringAGetConAoneiitInfo()Component类:计算机自选部件类 属性:item_type 自选部件型号item_descr 自选部件描述 方法:GetComponentlnfo()SelfConfigurationWindow 类调用此方法从 Component类中得到计

18、算机自选部件的详细信息。Customer(from实体类包)1iAcustoinerAnaiQe : StiingSAcustomeiAaddicS=Ting JAphoiie numberSiring "S<>ernail_address : StringAEnnailCustoniei'O%inkCustoiiieiO ASendlnvoice() ApayMoneyOAContactingCustomerO客户名字Customer 类:客户类属性:customer namecustomer address客户地址phone_number客户电话号码email

19、_address 方 客户电子邮件法:EmailCUstOmer()息通 InputOrderWindow调用此方法将定单成功存入数据库信知给客户LinkCustomer() Salesma调用此方法联系客户ContactingCustomer() 调用此方法 Customer完成与 Salesman的接触活动。PayMoney()调用此方法 Customer完成付款活动Sendlnvoice()使用 PrintInvoice()生成的发票发送给 Customer 。Invoice(from实体类包'八invoice: String'八invoice_date: Date

20、9;S( >invoice_total: Currency*Print()Invoice 类:发票类属性:invoice_number发票号invoice_date发票打印日期invoice_total已付款金额方法:Print()调用OrderServerWindow 类的Printinvoice()产生的发票打印出来。Merc han dis eList(iom实体类包)八TotalCost?A d dM ere handisef)八DeleteMerchandiseQ八ConputerFotalCo st()八ModiiyM ere hndis eList 0Merchandise

21、List :商品列表类属性:TotalCost商品总价格方法:AddMerchandise() 将AddToCar()方法中加入购物车的商品增加到商品列表。DeleteMerchandise() 删除列表中某商品ComputerTotalCost()调用此方法计算商品列表中商品的总价ModifyMerchndiseLise()修改商品列表的方法,有修改商品数量,删除商品等方法Order(torn实体类包)border date : Date rder_number: String必 o rd er_s tatus : St rin g 八ordertotal: Currency A>sa

22、ksperson_name : Siring addresString A>order_paynKnt Paymciit?denerateCus lomerA n dOrderlDO AGetOrderOANewOrdetf) AModify Order() ASetOrdciStatusO AGetOrderStatusOOrder类:定单类属性:order_date定单日期order_number定单号order_status定单状态order_total定单总价salesperson_name售货人员姓名s hip_address发送地址方法:CenerateCustomerAnd

23、OrderlD()产生客户帐号和定单流水号GetOrder()取得当前定单信息NewOrder() 生成新定单对象ModifyOrder() 修改/删除当前定单,该方法由SelfCo nfiguratio nWin dow 或者由用户使用 StandardComputerWindow 类调用。SetOrderStatus() 设置定单状态,由OrderServerWindow 类的 ModifyOrderStatus方法调用GetOrderStatus() 取得定单状态,它调用 DateBase中的LoadOrder()方法数据库类DataBase(km数据库类包)八LoadOrderf)八S

24、toreOrder()八GetNeedCo nta c tOideiListO 八GetPaidOrd erList 0 八(jetCo npleteOrderLis t()DataBase类:数据库类方法:LoadOrder()从数据库提取定单,被Order类中的方法调用StoreOrder()将定单存入数据库中,被 Order类中的方法调用GetNeedContactOrderList()从数据库提取需沟通的客户定单列表。GetPaidOrderList() 从数据库中提取已付款的定单列表,被Payment类调用GetCompleteOrderList()从数据库中提取已发送的定单列表,被

25、In voice调用边界类?Abstract? Main Window (irom 边界包)八CreateW indow()八CloseWindow()MainWindow 类:功能:应用程序中的所有窗口类均由此类派生出来方法: CreateWindow() 创建窗 口。CloseWindow()关闭窗 口控制类?CEent? Queiy StatusWindow (irom 控制类包)八GetCustmerID()八GetOrderlDf)八Queiy Status 0八Display Statu s 0QueryStatusWindow 类:功能:创建弁显示用户查询窗口。方法:GetCus

26、tmerlD()取得用户输入帐号GetOrderlD()取得定单流水号。QueryStatus()客户点查询按钮触发它调用Order类中的GetOrderStatus()方法 取得定单状态。DisplayStatus() 显示定单状态。Payment(fom控制类包)'i0paynient method : String 'S( >date_received: Date Amount, received : Currency?linkPay men0八SetPaymentStatusO 八(ictPaymentStatus(Verify Custo merlDO 八Acc

27、 epiPay men t()属性: payment_method 付款方式date_received 接收日期 amount_received 接收金额 方法: linkPayment() 付款初始化SetPaymentStatus()设置付款修改 Order 类 OrderPament 属性。GetPaymentStatus() 取得付款状态,从 Order 类的 OrderPayment 属性取值图描述VerifyCustomerID() 验证客户帐号,被 Customer 类的 Paymoney 方法使用AcceptPayment() 接受客户付款,方法将修改 Order 类的 Ord

28、erPayment 对第 4 章动态行为模型系统的动态行为模型由交互作用图 ( 时序图和协作图 ) 、状态图、活动4.1创建系统顺序面DisPl卷柞菌)4.1描述系统用例的主要场景的J嗔序图(协作图)如下所示.1 Sta ndardCo nfiguratio n 的协作图:Sta ndardComputer1: CreateWi ndow() 2:AddToCar() 7:GotoShopp in gList()3: GetSta ndardComputerl nfo():Sta ndardComputerWi ndow:Customer4 AddMerchandise()10: Modify

29、Car()14: GotoInputOrderWindow()8: CreateWi ndow()5: ComputerTotalCost()12: ComputerTotalCost():Shopp in gListWi ndow:Mercha ndiseList11: ModifyMerch ndiseList()13: DisplayShoppi ngList()1: CreateWindowP)rint()3: Printlnvoice()2: GetCompleteOrderList(),| : DataBase4.:Salesperson<1 / /5: Sendlnvoic

30、e()6: DisplayTotalCost()1.2 PrintInvoice 的协作图:Invoice:Customer4.1.3 In formWareHouseAboutOrder 的协作图1: CreateWi ndow()2: Sen dToWarehouse():OrderServerWindow:Salesperson3 : GetPaidOrderList()5: SendToCustomer()、:DataBase7: StoreOrder()4 : MakeUpComputeOrConnpc)nent()乙:Warehouse6: SetOrderStatusf):Ord

31、er5 .1.4 Order的协作图:Customer5: StoreOrder():Customer6: EmailCustomer()4: SetPaymentStatus():DataBase6 .1.5 VerifyA ndAcceptPayme nt 的协作 图1: CreateWindow()2: NewOrder()3: Vertifylnputlnfomation():Customer:Order3: AcceptPayment()4: SetPOymyeniStatusO>7: SetOrderStatus()6: LoadOrder()5: LinkCustomer(

32、)1: PayMoney()0、2:VerifyCu:DataBa se8: StoreOrde r():Customer4.1.6 RequestSalespers o 的协作图1: CreateWindow()4: ContactingCustomer():Salesperson:OrderServerWindow:Customer3: LinkCustomer()2: GetNeedContactOrderList()5: ModifyOrder()6: StoreOrder():Order:DataBase4.1.7 UpdateOrderStatus 的 协作图4: SetOrder

33、Status():Order6: DisplayStatusf)a5: GetOrderStatus():OrderServerWindow:QueryStatusWindowA2: CreateWindow():CustomerA1: CeateWindow()3: ModifyOrderStatus():Salespers on4.1.8 SelfConfiguration 的协作图:Component1: CreateWi ndow( )2: AddToCarO口田 .7: GotoSh邛pjg/sfFetC口EpongritlnfoO>:SelfConfigurationWind

34、ow:Customer6: OisplayTotalCost()10: ModifyCar(g- createAAndow()-4: AddMerchandise()14. Goto1nputOrderWindow();'/N*5: ComputerTotalCost()9: DisplayShoppingListf)12: ComputerTotalCcstf)X:11. ModifyMerchndiseList(),:ShoppingListWndow: M即皿ndiseList13: DisplayTotalCost()4.2创建系统的状态图UnpaidParttai PaymentPartly Paid一 一丁工 F

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论