面向对象技术与UML课程设计网上购物系统------面向对象的可视化建模(UML)一需求规格说明……………………………………………………………21.系统说明…………………………………………………………………22.网上购物系统人机界面描述………………………………………23.信息资源列表…………………………………………………………3二需求分析过程……………………………………………………………41.网上购物应用中的参与者……………………………………………42.系统中的用例及用例文档……………………………………………43.系统中的类………………………………………………………………8三用UML对系统建模………………………………………………………161.用例包图及用例图(用例建模)………………………………162.系统用例的活动图及活动文档(活动建模)…………………173.网上购物系统的类图(类建模)…………………………………234.构造顺序图(交互建模)……………………………………………275.构造状态图(状态图建模)………………………………………316.构造协作图……………………………………………………………327.构件图…………………………………………………………………358.部署图…………………………………………………………………36说明………………………………………………………………………………37结束语…………………………………………………………………………381一需求规格说明1.系统说明1.1需求描述:一个客户通过因特网购买所需要的商品,客户可以在商品列表的Web页面上选择订购商品。要发出定单,客户必须填上运送和付款信息,可接收的付款方式为信用卡、支票或者其他付款方式,一旦定单被输入,系统向客户发送一个确认e-mail消息,并附上定单的细节,在等待计算机送到的时候,客户可以在任何时候在线查到定单的状态。后端定单处理包含下面所需的步骤:验证客户的信任度和付款方式、向仓库请求所订购的商品、打印发票并且请求仓库将商品运送给客户。1.2资源本购物网站所提供的一些日常起居生活用品。1.3活动列表1.客户使用商品列表的Web页面来查看所需要的商品,商品价格也同时显示出来。2.客户可以通过留言板向我们提出需要什么样的商品,需要什么样的服务,对我们提出一些意见和建议。3.客户可以选择在线订购商品,或者也可以要求销售人员在定单真正发出之前与自己联系,解释定单的细节、协商价格等。4.要发出定单,客户必须填写在线表格关于运送和发票地址以及付款细节(信用卡、支票或者其他付款方式)。5.在客户定单输入到系统之后,销售人员发送电子请求给仓库,附上所订购的商品的细节。6.事务的细节,包括定单号和客户账号,要e-mail给客户,使得客户可以在线查看定单的状态。7.仓库从销售人员那里获得发票,并给客户运送商品。2.网上购物系统人机界面描述用户和系统之间的界面对所有的顾客都开放。允许用户搜索当前在线产品信息。允许用户输入定单信息或汇款信息等用户的个人资料。销售人员与系统之间的界面谨对拥有口令的销售人员开放。允许销售人员查看定单信息验证用户付款金额等行为。3.信息资源列表基本商品信息为需要此类商品的用户提供相关的信息资源。自定义购买商品信息建立一个留言板为需要此类信息的用户提供相关的信息咨询。定单信息要购买产品的用户输入相关信息,提交系统。购物信息为用户选购的产品作出记录并估计价格,为用户提供参考。付款信息用户输入相关信息,销售人员验证相关信息。二需求分析过程1.网上购物应用中的参与者2.系统中的用例及用例文档2.1用例StandardConfiguration(from标准产品)PrintInvoice(from付款)VerifyandAcceptPayment(from付款)Order(from购买)InformWareHouseaboutOrder(from送货)RequestSalespersonContact(from购买)UpdateOrderStatus(from送货)SelfConfiguration(from自选部件)2.2总用例图1.客户-----------------Customer2.销售人员-----------Salesperson3.仓库-----------------Warehouse图1参与者(网上购物)Customer客户Salesperson销售人员Warehouse仓库VerifyandAcceptPayment(from付款)SelfConfiguration(from自选部件)StandardConfiguration(from标准产品)Order(from购买)WarehouseCustomerRequestSalespersonContact(from购买)extendPrintInvoice(from付款)InformWareHouseaboutOrder(from送货)UpdateOrderStatus(from送货)Salesperson网上购物系统用例图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,StandardComputer2客户选择查看配置的细节,也许带有买它的意愿或建立一个更合适的配置。每种配置的价格在客户要求的情况下可以计算出来。Customer,ComponentMerchandiseList3客户可以选择在线订购计算机,或者也可以要求销售人员在定单真正发出之前与自己联系,解释定单的细节、协商价格等。Customer,Computer,Order,Salesperson4要发出定单,客户必须填写在线表格关于运送和发票地址以及付款细节(信用卡或支票)