资源描述
当当网网上销售系统的分析与设计一、概述网上书店是一种高质量,更快捷,更方便的购书方式.首先,网上书店将所有 的图书信息清晰的呈现在购书者面前,并且可以实现零库存,降低销售成本,同 时网上书店的交易突破了时间和空间的限制,实现全球服务正是由于这些优势, 网上书店才能得以迅速地发展。网上书店的迅速发展给电子商务的发展提供了巨 大的契机,但网上书店系统设计还出现许多问题,如网上书店在资金的周转过程 中容易出现资金的流失的问题还有网络安全等一直困扰着网络事业发展的问题。 因此我们需要不断更新、不断提高网上书店的发展,及时的发现系统的不足,查 缺补漏,尽力实现网上交易的安全性,以满足顾客的需求为基准,将网上书店的 系统设计实现网上书店操作的系统化、智能化、简洁化和功能化.因此我从这几 方面着手分析当当网的网上销售系统的分析与设计。二、需求获取1、定义使用者 使用者就是在系统中进行操作的人,在当当网中顾客就是当当网的主要使用者。 我们暂且可以把顾客分成两类,一类是已注册的,一类是还没注册的。一般来说 没有注册的顾客主要在网站内浏览很少会购买,而注册过的顾客忠诚度相对高一 些,而且顾客注册时填写了用户资料,当他们订购时就不用再次输入这些资料, 并享有相应的会员服务。同时网站的管理员,可以进行顾客管理,商品管理,订 单管理、系统维护等一系列操作。2、确定用例2.1、用例简介(1)商品管理商家对商品进行管理,买家对商品进行查看。(2)订单管理买家通过系统下订单,商家通过系统接受订单后,进行操作,管理商品库存和交易记录等信息(3)交易管理交易成功后,保留交易记录,商家,买家都可以查看交易记录。(4)用户管理商家对用户进行管理,可以修改用户信息和分组管理等,买家登录系统可以修改自己的信息.2.2 用例描述(1) 商品管理 商品管路是商家对商品进行管理,买家查看商品。具体描述如下: 用例描述:商品管理执行者:商家,买家。 前置条件:商家登录系统,买家登录系统.后置条件:下定单。基本路径:(a) 商家登录系统后,根据仓库的商品信息,将商品信息发布到系统.(b) 商家可以查看商品基本信息和库存信息,可以对信息进行修改。(c) 买家查看商品信息后,下订单。(d) 商家发货后,对商品库存信息进行修改。(2) 订单管理 订单管理中买家下订单,商家处理订单 用例描述:订单管理 执行者:商家,买家。前置条件:商家发布商品信息,买家查看。 后置条件:交易成功否。基本路径:(a) 商家登录系统后,根据仓库的商品信息,将商品信息发布到系统。(b) 商家可以查看商品基本信息和库存信息,可以对信息进行修改。(c) 买家查看商品信息后,下订单.(d) 商家发货后,对商品库存信息进行修改。(3) 交易管理 商家买家查看你交易信息,处理交易信息。 用例描述:交易管理执行者:商家,买家。前置条件:交易成功. 后置条件:查看历史交易信息。基本路径:(a) 商家登录系统后,更改商品交易信息。(b)买家登录系统后查看商品历史交易信息。(C)商家查看历史交易信息.(4) 用户管理 主要显示执行者是否有权限对此系统进行操作. 用例描述:商家登录系统,对用户进行管理.执行者:商家,买家.前置条件:用户通过注册名和密码登陆。 后置条件:商家进行操作管理。基本路径:(a) 用户通过注册名和密码登陆。(b) 登陆后进行操作,商家可以修改用户信息,进行权限设置,并对用户进行 分组管理,买家修改基本信息。三、系统分析根据数据和网页体验分析,总结出当当网的数据模块分类如下当当网上书店T性化推荐模块- _团购模块帮助模块亠礼品卡1- 购物车亠图书检索模块亠图书浏览模块一注册登录模块个人信息管理商家问答我的问答个人首页管理暂存架我的会员积分账户管理订单/支付同时我们也总结了当当网网上购物的主要流程如下图:商品购买流程顺序图商家根据库存信息发布商品信息,买家查看商品信息,商家也可查看商品信 息.买家在查看商品信息后,如有购买意向,向商家下订单,商家上线后可以查看 订单信息进行处理,商家发货后,修改交易状态和交易信息,买家商家都可查看 商品历史交易记录。商品购买流程顺序图如图 33 所示。买家商家I -43查看修改商品信息5处理订单7查看历史交易记录图 3-3 商品购买流程顺序图2、用户管理顺序图 买家注册,登陆后可以修改开始注册的基本信息,商家登录后可以修改所有 的用户信息,并可对用户进行分组管理。用户管理顺序图如图 3-4所示.4登录5修改用户信息6用户分组商家1用户注册二二 2登录3修改基本信息图 34 用户管理顺序图3、系统活动图3.1、商家活动图描述商家可以查看商品,商家登陆后可以发布商品,查看用户信息,进行用户分组 接受查看订单,查看交易记录,商家查看商品和发布商品后可以对商品信息进行 修改,也可以修改用户信息和组信息,商家在接收了订单后可以对订单进行处理(发货还是缺货),商家也可以查看商品的历史交易记录,对商品进行管理。如图35 所示。图3买家在没有注册的情况下可以查看商品,买家注册,输入自己的基本信息等和设置密码后,用注册的用户名和密码登陆系统,可以查看自己的注册信息,并能 修改自己的基本信息和密码,买家查看商品,如果对商品有兴趣,可以进行购买, 向商家发送订单,同时买家还可以查看商品的历史交易记录.如图 36 所示。三、系统设计一个完整的网上书店系统包括以下几个大的最基本的模块:注册登录模块、 图书检索模块、图书浏览模块、购物车模块、帮助(客户服务)模块、礼品卡模 块、我的账户等。当当网上书店的特色是:有个性化推荐模块,在我的当当里面 内容较齐全,个性化设置空间较大。物流方面采取“在地金流模式 一手交钱、 一手交货”的脚踏车物流车队形式,提高了结算的安全性,也保证了图书的质量与 当当网的信誉当当网以“Email地址或昵称”为用户名进行登录,保证了登录 的全面性.经过以上的分析,我了解了设计一个网上书店最基本的功能设计,也找到一 些需要改进或增加的功能,如:今天的世界趋向于电子书的时代,有些图书不方便 外售的可以作为电子书的形式进行交易,这就增加了商机,也满足了购书者对知 识的渴求。另一方面,在网上书店不一定都将世界上所有的图书都罗列在网站上, 有些没有的图书,可以在网站上设计一个预购模块,来满足购书者的需求因此 我从这几方面着手进行网上书店系统的设计。其功能图如下:1、系统主页面的实现当当网作为网络营销系统,系统的主页面主要是对商品进行展示,主页面上部有一个导航条根据不同的用户登录,导航条上显示的内容不同,可以点击进入进行各自的操作。 鮭当当 欢迎熾S肖当网,诸莹录 免鹿汇阳当当网日口门I前帀BE宥M血早曆夢I巨动阳歸眸魏聃也 球珠导益 手禾 siS 方紡 貧諮 13 愎理全罰商品洋翎曲类XI-辭音孕雛芙妆4护冠启,最纺、冢装删,讥.-手耗眼隠札品运训鬲-康炼鴻愉成i. 洋* 点-电血1腳孵趋攬c61 La go gopnmBWT圧至59元姿罡B士花科 瀚.阳减60&-SS5*场码2D0:理40在主页面导航条上可以进入注册和登录。在商品显示每一个商品都能查看详 细信息和进行购买。2、买家用户管理实现买家用户管理模块分为三个功能,分别是注册,登录和修改用户基本信息。 买家先注册,登录后,将登录的信息记录到session里面,用来记录登录的用户。 在登录界面添加“立即注册”按钮,用户点击此按钮能立即转到注册页面。登录 页面如图52所示,注册页面如图5-3所示,修改信息页面如图54所示。登录当当网还不是当当网用尸?立即翎用户名密玛忘记密码验证码口换张圏使用台作网站登录岂当:支忖宝畠0 口&新浪微博易网易人人网,MSNJf飞信13删箱江苏移动图5-2登录页面登录功能的实现,首先调用dbcom类里面的数据库语句实现取得所有的用户 名和密码然后与买家输入的信息进行对比,主要代码如下。if (usertext。 Value = ”)nameLab.Text二”请输入用户名; nameLab。 AttributesAdd(”style, display: ); else if (sqlmethod.mathuser (arr)=-l I | userpwd。 Value = ”) pwdLab.Text = 密码或用户名错误”;pwdLab。Attributes.Add (style”,display:); else Sessionusername = usertext. Value;注册功能设置了不能重复用户名注册,在用户在所有必填的texbox中输入 信息后,点击注册按钮,后来代码调用dbcom类中的数据库插入功能实现新用户的注册。修改用户信息分为修改基本信息和密码两项,基本信息中真实姓名和用 户名是不能修改的,在文本框内填入信息后,点击确定按钮分别修改基本信息和 密码。3、买家查看商品下订单此模块设计时主要考虑了两个功能的实现,一是商品信息的查看,再是订单 的提交提交订单这一功能也成为了本系统的核心功能。买家从首页点击查看商品详细信息按钮或者购买按钮,进入下订单页面,点 击提交订单,通过WCF和MSMQ发送订单信息给商家,商家作为服务端收到买家 订单后进行处理,在将处理信息反馈给买家。编制订单页面如图5。5,提交订单 后显示订单状态如图所示。lri-J-: i-4 已卖出:件提交订单页面订单号:S2celL14-d939-441a-?14d-0f7e5f4e5S24状态:Pendrng订单状态页面订单的提交使用了 MSMQ和WCF技术,首先要在服务端建立一个WCF服务, 并寄托到某个进程,对买家提交来的订单进行监听。服务端代码的实现在买家处 理订单模块会星系介绍。提交订单功能的实现,首先要在本地的消息队列里面建 立一个消息队列,存放要发送的消息,如果买家离线,订单先保存在消息队列里 面,一旦联机,MSMQ将取到消息发送出去。在web。config里面配置如下.appSettingsaddkey二orderQueueNamevalue二formatname:DIRECT=OS:.private$0rders/ addkey二orderResponseQueueNamevalue二formatname:DIRECT=OS: .private$OrderResponse/appSettings实现订单提交功能主要代码如下.public void PlaceOrder () MessageQueueorderQueue二newMessageQueue(ConfigurationManag er.AppSettings orderQueueName);Message msg = new Message (); msg.UseDeadLetterQueue = true; msg。 Body = po;using(TransactionScopescope二newTransactionScope(TransactionScopeOption.Required)orderQueue 。 Send(msg ,MessageQueueTransactionType 。Automatic);scope.Complete() ;orderMessagelD = msg。 Id; 提交订单后,服务器会对订单进行响应,商家对订单进行处理后,会将消息 反馈给买家,买家收到消息后,系统自动显示出来,实现代码如下。public void DisplayOrderStatus() MessageQueueorderResponseQueue=newMessageQueue(Configurat ionManager。 AppSettings orderResponseQueueName);bool responseReceived = false;orderResponseQueue。MessageReadPropertyFilter.CorrelationId = true;while (!responseReceived) Message responseMsg;using (TransactionScope scope2二new TransactionScope (TransactionScopeOption.Required)responseMsg=orderResponseQueue.Receive(MessageQueueTransactionType.Automatic);scope2.Complete ();responseMsg.Formatter二newSystem。 Messaging.XmlMessage一Formatter(new Type typeof(PurchaseOrder) );PurchaseOrderresponsepo二 (PurchaseOrder)responseMsg.Body;if (orderMessagelD二二responseMsg。 Correlationld) responseReceived = true;orderstate.Text 二 responsepo。 poNumber;statelab。 Text 二+responsepo。 Status;elsestatelab.Text 二Status of previous Order OrderlD一0 ,OrderStatus l,responsepopoNumber,responsepo.Status; 四、结论与体会当当网具有一个实用性的面向服务的数据库管理信息系统。系统主要实现了 商品和用户的增删查改等功能,买家同时能提交订单给商家,商家可以接收订单 消息进行处理。本论文采用面向对象的方法进行分析和设计,分析设计非常合理, 系统功能齐全,界面清新美观.将课堂上的知识充分运用到了实际系统实现中。数据库知识、C#等知识得到 了进一步的巩固。系统在设计的过程不可避免的会遇到一些问题,由于设计此系统的时间有 限,还有之前对中间件知识的很不熟悉,和自身经验的不足,系统还存在很多的 不足之处:(1)在一些数据输入时没有及时的进行数据格式校验,不能保证数据输入的 绝对正确性(2)在买家提交订单后,等待商家反馈订单处理状态时没能实现只用了同 步的方式,未能实现异步的方式.(3)有些功能尚未完善,使用起来不是很方便,比如说在商家对用户进行组 管理时,必须返回上页查看组的信息,在将用户分组.没有实现点击一下直接显 示所有分组以供选择的对话框。这些都是需要完善的地方,该系统离实际使用也还有相当的距离,需要我今 后进行不断地补充和完善。在完成该系统的设计中,我学到了不少新的东西,也发现了大量的问题,有 些在设计过程中已经解决,有些还有待今后慢慢学习。只要学习就会有更多的问 题,有更多的难点,但也会有更多的收获。
展开阅读全文