UML课程设计网上购物系统样本.docx
《UML课程设计网上购物系统样本.docx》由会员分享,可在线阅读,更多相关《UML课程设计网上购物系统样本.docx(44页珍藏版)》请在冰豆网上搜索。
UML课程设计网上购物系统样本
《面向对象技术与UML》课程设计
网上购物系统
面向对象可视化建模(UML&RationalRose)
指引教师:
王宇颖
设计者:
赵睿
谢伟民
董翼枫
哈尔滨工业大学软件学院
完毕日期:
-2-19
一需求规格阐明……………………………………………………………2
1.系统阐明…………………………………………………………………2
2.网上购物系统人机界面描述………………………………………2
3.信息资源列表…………………………………………………………3
二需求分析过程……………………………………………………………4
1.网上购物应用中参加者……………………………………………4
2.系统中用例及用例文档……………………………………………4
3.系统中类………………………………………………………………8
三用UML对系统建模………………………………………………………16
1.用例包图及用例图(用例建模)………………………………16
2.系统用例活动图及活动文档(活动建模)…………………17
3.网上购物系统类图(类建模)…………………………………23
4.构造顺序图(交互建模)……………………………………………27
5.构造状态图(状态图建模)………………………………………31
6.构造协作图……………………………………………………………32
7.构件图…………………………………………………………………35
8.布置图…………………………………………………………………36
阐明………………………………………………………………………………37
结束语…………………………………………………………………………38
一需求规格阐明
1.系统阐明
1.1需求描述:
⏹一种客户通过因特网购买所需要商品,客户可以在商品列表Web页面上选取订购商品。
⏹要发出定单,客户必要填上运送和付款信息,可接受付款方式为信用卡、支票或者其她付款方式,一旦定单被输入,系统向客户发送一种确认e-mail消息,并附上定单细节,在等待计算机送届时候,客户可以在任何时候在线查到定单状态。
⏹后端定单解决包括下面所需环节:
验证客户信任度和付款方式、向仓库祈求所订购商品、打印发票并且祈求仓库将商品运送给客户。
1.2资源
本购物网站所提供某些寻常起居生活用品。
1.3活动列表
1.客户使用商品列表Web页面来查看所需要商品,商品价格也同步显示出来。
2.客户可以通过留言板向咱们提出需要什么样商品,需要什么样服务,对咱们提出某些意见和建议。
3.客户可以选取在线订购商品,或者也可以规定销售人员在定单真正发出之前与自己联系,解释定单细节、协商价格等。
4.要发出定单,客户必要填写在线表格关于运送和发票地址以及付款细节(信用卡、支票或者其她付款方式)。
5.在客户定单输入到系统之后,销售人员发送电子祈求给仓库,附上所订购商品细节。
6.事务细节,涉及定单号和客户账号,要e-mail给客户,使得客户可以在线查看定单状态。
7.仓库从销售人员那里获得发票,并给客户运送商品。
2.网上购物系统人机界面描述
●顾客和系统之间界面
对所有顾客都开放。
容许顾客搜索当前在线产品信息。
容许顾客输入定单信息或汇款信息等顾客个人资料。
●销售人员与系统之间界面
谨对拥有口令销售人员开放。
容许销售人员查看定单信息验证顾客付款金额等行为。
3.信息资源列表
⏹基本商品信息
为需要此类商品顾客提供有关信息资源。
⏹自定义购买商品信息
建立一种留言板为需要此类信息顾客提供有关信息征询。
⏹定单信息
要购买产品顾客输入有关信息,提交系统。
⏹购物信息
为顾客选购产品作出记录并预计价格,为顾客提供参照。
⏹付款信息
顾客输入有关信息,销售人员验证有关信息。
二需求分析过程
1.网上购物应用中参加者
1.客户-----------------Customer
2.销售人员-----------Salesperson
3.仓库-----------------Warehouse
图1参加者(网上购物)
Customer客户
Salesperson
销售人员
Warehouse仓库
2.系统中用例及用例文档
2.1用例
2.2总用例图
网上购物系统用例图
2.3用例文档:
用例:
StandardConfiguration
简述:
该用例容许顾客查询选取原则配备计算机,涉及价格及部件清单。
参与者:
Customer
前提条件:
Customer点击一种因特网浏览器进入计算机制造厂商选购原则配备计算机Web页面,该页面显示原则配备计算机价格以及部件清单。
用例开始。
主流:
顾客查询原则计算机配备,将选中计算机原则配备加入购物车,顾客可随时增减购物车内商品,web页面动态对累积价格进行更新。
其她流:
无
后置条件:
如果用例成功,将购物车内已配备计算机型号及数量存入暂时数据库。
用例:
SelConfiguration
简述:
该用例容许顾客自定义计算机配备,涉及部件清单及总计价格。
参与者:
Customer
前提条件:
Customer点击一种因特网浏览器进入计算机制造厂商自定义配备计算机及部件Web页面,该页面显示计算机部件清单及价格。
用例开始。
主流:
顾客查询选取计算机部件,将选中计算机原则配备加入购物车,顾客可随时增减购物车内商品,web页面动态对累积价格进行更新。
其她流:
无
后置条件:
如果用例成功,将购物车内已配备计算机部件及数量存入暂时数据库。
用例:
VerifyandAcceptPayment
简述:
该用例验证并接受客户付款,并将付款信息告知销售人员。
参与者:
Customer,Salesperson
前提条件:
Customer收到定单确认信息后,通过信用卡或支票完毕转帐。
用例开始。
主流:
检查顾客帐号及付款金额,若金额无误,将付款成功信息告知销售人员。
其她流:
若金额局限性,向顾客发送告知。
后置条件:
如果用例成功,将付款成功信息告知销售人员,并将客户订购信息及交付金额存入数据库。
用例:
RequestSalespersonContact
简述:
该用例容许Customer祈求Salesman在定单真正发出之前与自己联系,解释定单细节、协商价格等。
参与者:
Customer,Salesman
前提条件:
Customer需要对定单页面显示已配备计算机及其价格详细状况征询。
Customer在填写完定单后选取Contact(或相似命名)功能来发送消息给Salesman规定征询,此时该用例开始。
主流:
Salesman在专门服务窗口接受到Customer祈求联系列表并选取到该客户祈求。
Salesman得到Customer在定单上联系方式信息。
Salesman按照提供信息选取方式联系Customer,对定单细节解释,并协商价格。
其她流:
无
后置条件:
如果用例成功,Salesman将按协商后配备及价格信息修改原定单,将新定单信息存入数据库中。
用例:
Order
简述:
该用例容许Customer输入一份购物定单,该定单涉及提供运送和发票地址,以及关于付款状况。
参与者:
Customer
前提条件:
Customer点击一种因特网浏览器进入计算机制造厂商定单输入Web页面,该页面显示已配备计算机及其价格详细状况。
当Customer在定单信息已经显示在屏幕上时选取Continue(或相似命名)功能键来拟定订购所配备计算机时,该用例开始。
主流:
系统祈求Customer输入购买细节,涉及销售人员名字(如果懂得话)、运送信息(客户名字和地址)、发票细节(如果与运送地址不同话)、付款办法(信用卡或支票)以及任何其她注释。
Customer选取Purchase(或相似命名)功能来发送定单给制造厂商。
系统给购买定单赋予一种唯一定单号码和一种客户账号,系统将定单信息存入数据库。
系统将定单号和客户号与所有定单细节一起e-mail给Customer,作为对接受定单确认。
其她流:
Customer在提供所有规定录入信息之前,激活Purchase(或相似命名)功能,系统显示错误信息,它规定提供所漏掉信息。
Customer选取Reset(或相似命名)功能来恢复一种空白购物表格,系统容许Customer重新输入信息。
后置条件:
如果用例成功,购物定单记录进系统数据库,否则系统状态不变。
用例:
UpdateOrderStatus
简述:
该用例用于描述定单状态(定单交付状态,定单确认状态,付款状态)。
参与者:
Customer,Salesperson
前提条件:
Customer交付定单,查询定单状态,Salesperson修改定单状态,该用例开始。
主流:
Customer填写定单订购商品成功,进入定单交付状态。
Salesman检查定单,发送e-mail给客户,进入定单确认状态。
Customer付款成功,进入已付款状态。
其她流:
若定单不符合规定,则向顾客发送定购失败信息。
若销售人员检查定单有误,则向顾客发送定购失败信息。
若顾客付款金额不对,则向顾客发送付款失败信息。
后置条件:
如果用例成功,则将定单所处状态存入数据库。
用例:
PrintInvoice
简述:
客户从销售人员处得到发票
参与者:
CustomerSalesman
前提条件:
验证和接受客户付款成功。
Salesman选取Invoice(或相似命名)功能键来生成发票,此时该用例开始。
主流:
Salesman运用系统从数据库中提取订购信息和收到付款信息生成发票。
系统将该发票提供应Salesman。
Salesman发Email给Customer,并付上发票。
其她流:
无
后置条件:
如果用例成功,客户将收到发票。
用例:
InformWarehouseaboutOrder
简述:
在客户定单输入到系统之后,销售人员发送电子祈求给仓库,附上所订购配备细节。
参与者:
SalesmanWarehouse
前提条件:
验证和接受客户付款成功。
Salesman选取系统提供订购清单中该客户订购信息,并点击Refer(或相似命名)功能键来将订购信息提交给Warehouse时,该用例开始。
主流:
Salesman运用系统从数据库中提取该Customer订单信息和个人资料,生成一份订购信息列表。
系统将该列表提供应Warehouse。
Warehouse依照提供信息配备计算机商品。
其她流:
无
后置条件:
如果用例成功,Warehouse发货给客户,修改定单状态为已送货。
3.系统中类
3.1实体类
从需求中找出候选实体类:
需求号
需求
候选实体类
1
客户使用制造厂商Web页面来查看所选取服务器、台式机或笔记本原则配备,价钱也同步显示出来。
Customer,
StandardComputer
2
客户选取查看配备细节,也许带有买它意愿或建立一种更适当配备。
每种配备价格在客户规定状况下可以计算出来。
Customer,
Component
MerchandiseList
3
客户可以选取在线订购计算机,或者也可以规定销售人员在定单真正发出之前与自己联系,解释定单细节、协商价格等。
Customer,
Computer,
Order,
Salesperson
4
要发出定单,客户必要填写在线表格关于运送和发票地址以及付款细节(信用卡或支票)。
Customer,
Order,
Invoice,
Payment
5
在客户定单输入到系统之后,销售人员发送电子祈求给仓库,附上所订购配备细节。
Customer,
Order,
Salesperson,
ConfiguredComputer,
MerchandiseList
6
把事务细节,(涉及定单号和客户账号)e-mail给客户,使得客户可以在线查看定单状态。
Order,
Customer,
OrderStatus
7
仓库从销售人员那里获得发票,并给客户运送计算机。
Invoice,
WareHouse
表1需求到实体类赋值(网上购物)
Component类:
计算机自选部件类
属性:
item_type自选部件型号
item_descr自选部件描述
办法:
GetComponentInfo()
SelfConfigurationWindow类调用此方
法从Component类中得到计算机自选部件
详细信息。
Customer类:
客户类
属性:
customer_name客户名字
customer_address客户地址
phone_number客户电话号码
email_address客户电子邮件
办法:
EmailCustomer()InputOrderWindow
调用此办法将定单成功存入数据库信息告知
给客户
LinkCustomer()Salesma调用此办法
联系客户
ContactingCustomer()调用此办法
Customer完毕与Salesman接触活动。
PayMoney()调用此办法Customer
完毕付款活动
SendInvoice()使用PrintInvoice()生成
发票发送给Customer。
Invoice类:
发票类
属性:
invoice_number发票号
invoice_date发票打印日期
invoice_total已付款金额
办法:
Print()调用OrderServerWindow类
PrintInvoice()产生发票打印出来。
MerchandiseList:
商品列表类
属性:
TotalCost商品总价格
办法:
AddMerchandise()将AddToCar()办法
中加入购物车商品增长到商品列表。
DeleteMerchandise()删除列表中某商品
ComputerTotalCost()调用此办法计算
商品列表中商品总价
ModifyMerchndiseLise()修改商品列
表办法,有修改商品数量,删除商品等办法
Order类:
定单类
属性:
order_date定单日期
order_number定单号
order_status定单状态
order_total定单总价
salesperson_name售货人员姓名
ship_address发送地址
order_payment付款方式
办法:
CenerateCustomerAndOrderID()产生
客户帐号和定单流水号
GetOrder()获得当前定单信息
NewOrder()生成新定单对象
ModifyOrder()修改/删除当前定单,该办法由SelfConfigurationWindow或者由顾客使用StandardComputerWindow类调用。
SetOrderStatus()设立定单状态,由
OrderServerWindow类ModifyOrderStatus办法调用
GetOrderStatus()获得定单状态,它调
用DateBase中LoadOrder()办法
WareHouse类:
仓库类
办法:
MakeUpComputerOrComponent()
DataBase类调用该办法将客户订购
计算机及组件详细状况递交给仓库。
SendToCustomer()仓库调用该方
法获得顾客信息完毕发送商品任务。
StandardComputer类:
原则配备计算机
办法:
GetStandardComputerInfo()
StandardComputerWindow类调用此方
法从StandardComputer类中得到原则配
置计算机详细信息。
3.2数据库类
DataBase类:
数据库类
办法:
LoadOrder()从数据库提取定单,
被Order类中办法调用
StoreOrder()将定单存入数据库中,
被Order类中办法调用
GetNeedContactOrderList()从数据
库提取需沟通客户定单列表。
GetPaidOrderList()从数据库中提取
已付款定单列表,被Payment类调用
GetCompleteOrderList()从数据库中提取已发送定单列表,被Invoice调用
3.3边界类
MainWindow类:
功能:
应用程序中所有窗口类均
由此类派生出来
办法:
CreateWindow()创立窗口。
CloseWindow()关闭窗口。
SelfConfigurationWindow类:
功能:
产生顾客自选部件窗口。
办法:
AddToCar()顾客将选中商品添
到购物车,它调用StandardComputer类中
办法获得商品信息,将其存储到
MerchandiseList类属性中。
DisplayTotalCost()显示当前选购
商品总值,该值由merchandiselist类中
ComputeTotalCost()办法计算得到。
GotoShoppingList()显示购物清单
窗口。
NextPage()显示下一页商品。
StandardComputerWindow类:
功能:
产生顾客自选部件窗口。
办法:
AddToCar()顾客将选中商品添
到购物车,它调用StandardComputer类中
办法获得商品信息,将其存储到
MerchandiseList类属性中。
DisplayTotalCost()显示当前选购
商品总值,该值由merchandiselist类中
ComputeTotalCost()办法计算得到。
GotoShoppingList()显示购物清单
窗口。
NextPage()显示下一页商品。
ShoppingListWindow类:
功能:
创立并显示购物清单窗口并可修改
购物清单。
办法:
DisplayShoppingList()显示商品购
物清单,它将调用MerchandiseList类中
属性,获得商品清单。
ModifyCar()修改购物车中商品,
它调用MerchandiseList类中办法
ModifyMerchndiseList()更新商品列表。
DisplayTotalCost()显示当前选购
商品总值,该值由merchandiselist类中
ComputeTotalCost()办法计算得到。
GotoInputOrderWindow()进入到
定单输入窗口。
3.4控制类
QueryStatusWindow类:
功能:
创立并显示顾客查询窗口。
办法:
GetCustmerID()获得顾客输入帐号
GetOrderID()获得定单流水号。
QueryStatus()客户点查询按钮触发
它调用Order类中GetOrderStatus()方
法获得定单状态。
DisplayStatus()显示定单状态。
InputOrderWindow类:
功能:
输入定单窗口。
办法:
VertifyInputInformation()验证顾客
输入信息
GenerateOrder()调用Order类中
NewOrder()办法
OrderServerWindow类:
功能:
创立并显示有销售人员使用窗口,实现修
改定单状态,告知仓库,打印发票等功能。
办法:
ModifyOrderStatus()销售人员点击修正状
态按钮时触发,它调用Order类SetOrderStatus()
办法修改定单状态。
SendToWarehouse()销售人员点击告知仓库
按钮时触发,它调用DateBase中GetPaidOrderList()办法,获得以付款定单列表。
PrintInvoice()销售人员点击打印发票按钮时
触发。
它调用Invoice类Print办法,并调用
Customer类中SendInvoice办法。
Payment类:
付款类
属性:
payment_method付款方式
date_received接受日期
amount_received接受金额
办法:
linkPayment()付款初始化
SetPaymentStatus()设立付款
修改Order类OrderPament属性。
GetPaymentStatus()获得付款状态,
从Order类OrderPayment属性取值
VerifyCustomerID()验证客户帐号,
被Customer类Paymoney办法使用
AcceptPayment()接受客户付款,方
法将修改Order类OrderPayment对象
三用UML对系统建模
1.用例包图及用例图(用例建模)
图2网上购物系统用例包图
图3网上购物系统用例图
2.系统用例活动图及活动文档(活动建模)
图4StandardConfiguration活动图
⏹Standard