




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 成都东软信息技术职业学院 毕 业 设 计 报 告题 目:网上商店系统系 别:计算机科学与技术专业班级:可视化程序设计四班学 号:学生姓名:黎文涛指导教师:黄平2009年3月2日 2009年6月7日摘 要电子商务的诞生,是一个必然趋势,这个归功于高速信息化的时代,电脑的普及,还有人们喜欢把复杂事情变得简单的愿望。它的诞生也促使了世界经济的发展,让人更容易、满意、便捷的消费。我国的电子消费市场占有率还不及欧美,但是这也看出我国电子商务的可观前景,中国的阿里巴巴集团就是最大的受益商家。处于这种环境下,我选择这个课题,我们这次的项目是根据已经日趋成熟的中国电子商务展开讨论,并完成简易版电子商务网上商
2、店系统。在这个项目中,我们做了许多的现在流行电子商务网站的调查与研究,比如淘宝,eBay,新蛋等网站。根据这些网站的需求,再结合这次题目,做出网上商店系统,廉价商城网上商店。中间还用到了许多企业级的开发技术,因为我们主要是开发人员,所以技术的研究也是一项必备的功底。系统使用的最新、最流行的微软技术,WCF来构建分布式架构系统,WF、C# 4.0来提供服务端开发语言支持,ASP.NET MVC 1.0 提供灵活的前台网站的开发,使用SQL SERVER BROKER提供安全、可靠的订单处理支持,SQL SERVER 2005提供强大的数据存储支持。我们的任务就是把调查到的业务需需求,在结合自己所
3、掌握的微软技术,搭建出这次的课题-网上商店系统。关键字: B2C;电子商务;SOA;微软技术;销售目 录摘 要I目 录II第1章引 言11.1本课题的研究的背景及意义11.2本次设计的主要工作1第2章电子商务的全面认识22.1什么是电子商务22.2电子商务的发展情况32.2.1欧美现状32.2.2中国现状42.3电子商务的应用5第3章网上商店系统73.1传统网上商店系统子系统73.2网上商店系统需求分析83.2.1订单状态83.2.2系统参与者93.2.3系统用例列表103.2.4系统用例图113.2.5系统用例分包113.2.6主要用例描述133.3网上商店系统系统分析153.3.1系统交互
4、图153.3.2系统领域模型163.4网上商店系统系统设计173.4.1系统体系架构173.4.2详细设计183.5网上商店系统使用技术333.5.1 ASP.NET MVC333.5.2 SOA分布式架构333.5.3WF状态扭转343.5.4数据库消息队列343.5.5C#语言353.5.6数据处理中心353.5.7安全、可靠服务器363.6网上商店系统系统实现383.6.1运行效果图38结束语43致 谢44参考文献45附 录46第1章 引 言1.1 本课题的研究的背景及意义当中国从走入WTO的那个时候开始,中国的贸易就在不断的增长,为了适应这万千变化的世界,贸易不得不在网上开始流行,好像
5、这个就是一个水道渠成事情一样,电子商务就在这种环境下流行了起来,我们要适应社会的变化,不得不去研究它,去学习它,让我们的竞争力更强。本课题,对于我们正处于中国电子商务旺季的专科学生来说,是有非常大的意义,其主要表现在:对于我们专科来说,动手能力是我们在市场上就业突出的有利条件,此课题可能帮助我们提高系统的开发能力,和学习能力,解决问题的能力;电子商务对于中国来说正处于旺季,研究此课题,可以为我们提供更大的发展空间;1.2 本次设计的主要工作从网上收集电子商务的相关业务知识,而且重点放在B2C的网上商店系统;锻炼自己的业务需求的分析与理解;锻炼自己的团队协作精神;熟悉微软最新、最流行的技术知识;
6、完成网上商店系统的业务需求;完成网上商店系统的系统分析与设计;完成网上商店系统的编码实现;完成网上商店系统的测试、发布;第2章 电子商务的全面认识2.1 什么是电子商务电子商务,英文是Electronic Commerce,简称EC。电子商务通常是指是在全球各地广泛的商业贸易活动中,在因特网开放的网络环境下,基于浏览器/服务器应用方式,买卖双方不谋面地进行各种商贸活动,实现消费者的网上购物、商户之间的网上交易和在线电子支付以及各种商务活动、交易活动、金融活动和相关的综合服务活动的一种新型的商业运营模式。“中国网络营销网” Tinlu相关文章指出,电子商务涵盖的范围很广,一般可分为企业对企业(B
7、usiness-to-Business),或企业对消费者(Business-to-Customer)两种。另外还有消费者对消费者(Customer-to-Customer)这种大步增长的模式。随着国内Internet使用人数的增加,利用Internet进行网络购物并以银行卡付款的消费方式已渐流行,市场份额也在迅速增长,电子商务网站也层出不穷。电子商务最常见之安全机制有SSL及SET两种。SSL(安全套接层协议)SET(安全电子交易协议)电子商务的定义:首先将电子商务划分为广义和狭义的电子商务。广义的电子商务定义为,使用各种电子工具从事商务或活动。这些工具包括从初级的电报、电话、广播、电视、传真
8、到计算机、计算机网络,到NII(国家信息基础结构信息高速公路)、GII(全球信息基础结构)和Internet等现代系统。而商务活动是从泛商品(实物与非实物,商品与非商品化的生产要素等等)的需求活动到泛商品的合理、合法的消费除去典型的生产过程后的所有活动。狭义电子商务定义为,主要利用Internet从事商务或活动。电子商务是在技术、经济高度发达的现代社会里,掌握信息技术和商务规则的人,系统化地运用电子工具,高效率、低成本地从事以商品交换为中心的各种活动的总称。这个分析突出了电子商务的前提、中心、重点、目的和标准,指出它应达到的水平和效果,它是对电子商务更严格和体现时代要求的定义,它从系统的观点出
9、发,强调人在系统中的中心地位,将环境与人、人与工具、人与劳动对象有机地联系起来,用系统的目标、系统的组成来定义电子商务,从而使它具有生产力的性质。2.2 电子商务的发展情况2.2.1 欧美现状以欧美国家为例,可以说电子商务业务开发的如火如荼。在法、德等欧洲国家,电子商务所产生的营业额已占商务总额的1/4,在美国则已高达1/3以上,而欧美国家电子商务的开展也不过才十几年的时间。在美国,美国在线(AOL)、雅虎、电子港湾等著名的电子商务公司在1995年前后开始赚钱,到2000年创造了7.8亿美元,IBM、亚马逊书城、戴尔电脑、沃尔玛超市等电子商务公司在各自的领域更是取得了令人不可思议的巨额利润。欧
10、美国家电子商务飞速发展的因素有以下几点:欧美国家拥有电脑的家庭,企业众多,网民人数占总人口的2/3以上,尤其是青少年,几乎都是网民,优裕的经济条件和庞大的网民群体为电子商务的发展创造了一个良好的环境。欧美国家普遍实行信用卡消费制度,建立了一整套完善的信用保障体系,这为电子商务的网上支付问题解决了出路。细致说来,欧美国家的信用保证业务已开展有80年的时间。在欧美国家,人们可自由流动,不用像中国一样受户口的限制,为方便生活起居,每个人都有一个独一无二的,不能伪造并伴随终生的信用代码,持此信用卡进行消费,发卡银行允许持卡人大额度透支,但持卡人需在规定时间内将所借款项归还,如果某企业或个人恶意透支后不
11、还款,那也就意识着以后他无论走到何地,他的信用记录上都会有此污点,不论他想贷款买房,购车或办公司,银行都不会贷款给他,这在贷款成风的西方世界是及其可怕的!因此,西方人普遍将信用看作自己的第二生命,谁也不愿意贪小利失大义,当在网上购物时,他们会在点击物品直接输入密码,将信用卡中的电子货币划拨到网站上,商务网站在确认款到后,立即组织送货上门。欧美国家的物流配送体系相当完善,正规,其是近年来大型第三方物流公司的出现,使的不同地区的众多网民,往往能在点击购物的当天或转天就可收到自己所需的产品。这要得益于欧美国家近百年的仓储运输体系的发展史。以美国为例,第二次世界大战后,许多企业将军队后勤保障体系的运做
12、模式有效地加以改造运用到物资流通领域中来,逐渐在全国各地设立了星罗棋布,无孔不入的物流配送网络。即使在电子商务业务还未广泛开展的十多年前,只要客户打电话通知要货,几乎都可以享受免费的送货家政服务。美国联邦快递,UPS(联邦包裹快递)等是大型物流公司的典范,专门负责为各个商家把产品送到顾客手中,有了这样庞大的完善的物流配送体系,当电子商务时代到来后,美国只需将各个配送点用电脑连接起来,即顺理成章的完成了传统配送向电子商务时代配送的过度,电子商务活动中最重要最复杂的环节物流配送问题就是这样轻而易举的解决了。2.2.2 中国现状中国电子商务始于1997年。如果说美国电子商务是“商务推动型”,那么中国
13、电子商务则更多的是“技术拉动型”,这是在发展模式上中国电子商务与美国电子商务的最大不同。在美国,电子商务实践早于电子商务概念,企业的商务需求“推动”了网络和电子商务技术的进步,并促成电子商务概念的形成。当Internet时代到来的时候,美国已经有了一个比较先进和发达的电子商务基础。在中国,电子商务概念先于电子商务应用与发展,“启蒙者”是IBM等IT厂商,网络和电子商务技术需要不断“拉动”企业的商务需求,进而引致中国电子商务的应用与发展。了解这一不同点是很重要的,这是中国电子商务发展的一大特点,也是理解中国电子商务应用与发展的一把钥匙。 在1997年和1998年,中国电子商务的主体正是一些IT厂
14、商和媒体,它们以各种方式进行电子商务的“启蒙教育”,激发和引导人们对电子商务的认识、兴趣和需求。经过这一阶段,在1999年和2000年,以网站为主要特征的电子商务服务商在风险资本的介入下成为中国电子商务最早的应用者,成为这一阶段中国电子商务的主体。随着电子商务应用与发展的深化,随着资本市场泡沫的破灭,网站电子商务开始跌入低谷,而企业特别是传统企业却开始大规模进入电子商务领域,中国电子商务从2001年开始进入第三个阶段,企业电子商务成为中国电子商务新的主体。 中国电子商务发展迅猛,2007年全国电子商务交易总额达2.17万亿元,比上年度增长90%。中国网络购物发展迅速,2008年6月底,网络购物
15、用户人数达到6329万,半年内增加36.4%。截至2008年12月,电子商务类站点的总体用户覆盖已经从9000万户提升至9800万户。2.3 电子商务的应用B2B(Business to Business)商家(泛指企业)对商家的电子商务,即企业与企业之间通过互联网进行产品、服务及信息的交换。通俗的说法是指进行电子商务交易的供需双方都是商家(或企业、公司),她(他)们使用了Internet的技术或各种商务网络平台,完成商务交易的过程。这些过程包括:发布供求信息,订货及确认订货,支付过程及票据的签发、传送和接收,确定配送方案并监控配送过程等。有时写作B to B,但为了简便干脆用其谐音B2B(2
16、即two)。 B2B的典型是中国供应商、阿里巴巴、中国制造网、敦煌网、慧聪网、瀛商网、电子商务学吧 等。B2B按服务对象可分为外贸B2B及内贸B2B,按行业性质可分为综合B2B和垂直B2B。B2C(Business to Customer)B2C模式是我国最早产生的电子商务模式,以8848网上商城正式运营为标志。B2C即企业通过互联网为消费者提供一个新型的购物环境网上商店,消费者通过网络在网上购物、在网上支付。由于这种模式节省了客户和企业的时间和空间,大大提高了交易效率,节省了宝贵的时间。B2C的典型有卡当网,当当网,卓越网等。C2C(Consumer to Consumer)C2C同B2B、
17、B2C一样,都是电子商务的几种模式之一。不同的是C2C是用户对用户的模式,C2C商务平台就是通过为买卖双方提供一个在线交易平台,使卖方可以主动提供商品上网拍卖,而买方可以自行选择商品进行竞价。 C2C的典型是百度C2C、淘宝网等。B2M(Business to Manager)B2M是相对于B2B、B2C、C2C的电子商务模式而言,是一种全新的电子商务模式。而这种电子商务相对于以上三种有着本质的不同,其根本的区别在于目标客户群的性质不同,前三者的目标客户群都是作为一种消费者的身份出现,而B2M所针对的客户群是该企业或者该产品的销售者或者为其工作者,而不是最终消费者。 M2C(Manager t
18、o Consumer)M2C是针对于B2M的电子商务模式而出现的延伸概念。B2M环节中,企业通过网络平台发布该企业的产品或者服务,职业经理人通过网络获取该企业的产品或者服务信息,并且为该企业提供产品销售或者提供企业服务,企业通过经理人的服务达到销售产品或者获得服务的目的。而在M2C环节中,经理人将面对Consumer,即最终消费者。B2A(Business to Administration)商业机构对行政机构的电子商务,指的是企业与政府机构之间进行的电子商务活动。例如,政府将采购的细节在国际互联网络上公布,通过网上竞价方式进行招标,企业也要通过电子的方式进行投标。C2A (Consumer
19、to Administration)消费者对行政机构的电子商务,指的是政府对个人的电子商务活动。这类的电子商务活动目前还没有真正形成。然而,在个别发达国家,如在澳大利亚,政府的税务机构已经通过指定私营税务,或财务会计事务所用电子方式来为个人报税。这类活动虽然还没有达到真正的报税电子化,但是,它已经具备了消费者对行政机构电子商务的雏形。政府随着商业机构对消费者、商业机构对行政机构的电子商务的发展,将会对社会的个人实施更为全面的电子方式服务。政府各部门向社会纳税人提供的各种服务,例如社会福利金的支付等,将来都会在网上进行。第3章 网上商店系统使用技术3.1.1 ASP.NET MVC使用该技术的主
20、要目的是能够很好的将前台的业务处理与显示分开,而且灵活性非常的高,但同时对开发人员的要求也有了提升,同时ASP.NET MVC 1.0 URL Routing来驱动交互,让URL地址看起来更友好,以下是详细的解释:在了解ASP.NET MVC之前,先了解一下什么是MVC。MVC是Model-View-Controller的缩写,也就是模型视图控制器的意思。MVC用于表示一种软件架构模式,它把软件系统分为三个基本部分:模型(Model),视图(View)和控制器(Controller)。模型(Model)一般是指“数据模型”,用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。“模型”有
21、对数据直接访问的权利,例如对数据库的访问。“模型”不依赖“视图”和“控制器”,也就是说,模型不关心它会被如何显示或是如何被操作。视图(View)也就是UI层,实现数据的显示。控制器(Controller)起到不同层面间的组织作用,用于控制应用程序的流程,它处理事件并做出响应。ASP.NET MVC是在现有ASP.NET 3.5运行时的顶层提供一种新的模型-视图-控制器(MVC, Model-View-Controller)框架。这就允许开发人员利用MVC设计模式的优势创建自己的ASP.NET Web应用程序,它将内容显示(UI或者View)、业务逻辑和后台数据进行了清晰分离,可以说是MVC在A
22、SP.NET中的实现。3.1.2 SOA分布式架构该网站我们使用WCF,来达到并行的分布式开发,同时如果这个是商业网站,还有利于项目的扩展,减少了企业内部系统之间的互相依赖。Windows Communication Foundation (WCF)是Microsoft为构建面向服务的应用提供的分布式通信编程框架,是.NET Framework 3.5的重要组成部分。使用该框架,开发人员可以构建跨平台、安全、可靠和支持事务处理的企业级互联应用解决方案。根据微软官方的解释,WCF(之前的版本名为“Indigo”)是使用托管代码建立和运行面向服务(Service Oriented)应用程序的统一框
23、架。它使得开发者能够建立一个跨平台的安全、可信赖、事务性的解决方案,且能与已有系统兼容协作。WCF是微软分布式应用程序开发的集大成者,它整合了.Net平台下所有的和分布式系统有关的技术,例如.Net Remoting、ASMX、WSE和MSMQ。以通信(Communiation)范围而论,它可以跨进程、跨机器、跨子网、企业网乃至于 Internet;以宿主程序而论,可以以ASP.NET,EXE,WPF,Windows Forms,NT Service,COM+作为宿主(Host)。WCF可以支持的协议包括TCP,HTTP,跨进程以及自定义,安全模式则包括SAML, Kerberos,X509,
24、用户/密码,自定义等多种标准与模式。也就是说,在WCF框架下,开发基于SOA的分布式系统变得容易了,微软将所有与此相关的技术要素都包含在内,掌握了WCF,就相当于掌握了叩开SOA大门的钥匙。WCF是建立在.Net Framework 2.0基础之上的,正式的版本应该会作为Windows Vista的核心部分而Release。然而,这并不代表WCF只能运行在Windows Vista下。只要安装了WinFX Runtime Components,在Windows XP和Windows 2003操作系统下,仍然可以使用。Visual Studio 2005中并没有包含WCF,但是当安装好了WinF
25、X Runtime Components后,我们就可以在Visual Studio 2005环境下开发和创建WCF的程序了。3.1.3 WF状态扭转(Workflow Foundation)WF,它是基于微软.NET Framework 3.0以上版本一个组件,可以轻松的帮用户完成状态的扭转和流程处理,它以可视化的效果来打破了传统的方式,我们只需要编辑Widnows应用程序一样,拖拖控件,双击一下控件,写上自己处理代码,就可以办到一些简单的业务处理流程。WF使用开发非常直观、方便的编写状态扭转和流程处理的代码。3.1.4 数据库消息队列提供类似与微软MSMQ的技术,这里我就不说队列的好处了,我
26、只说说Sql Server Borker在这块特点,它是基于SQL Server 2005内部的消息队列,使用的是SQL Server 2005系统内部的表来记录队列消息,这样保证队列消息比MSMQ丢Q的比率。同时Sql Server Broker他具有分布式系统特点,可以与不同系统之间通过Sql Server Broker来进行数据交换,前提是这2个系统都使用了Sql Server 2005 以上的版本数据库。3.1.5 C#语言C#(读做 C sharp,中文译音暂时没有.专业人士一般读C sharp,现在很多非专业一般读C井。C#是微软公司发布的一种面向对象的、运行于.NET Frame
27、work之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角。C#是一种安全的、稳定的、简单的,由C和C+衍生出来的面向对象的编程语言。它在继承C和C+强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。C#综合了V
28、B简单的可视化操作和C+的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。C# 2.0之前就是一个基于传统面相对象语言;C# 2.0 主要就是在以前的基础上,加入了泛型;C# 3.0 主要就是在2.0的基础上,加入LinQ;C# 4.0 主要就是在3.0的基础上,加入动态语言,类似javascript的eval函数,可以把一串字符串编译成代码。3.1.6 数据处理中心SQL Server 是一个关系数据库管理系统。它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个
29、OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统,该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行M
30、icrosoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。 SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。SQL Server 2005 数据引擎是本企业数据管理解决方案的核心。此外 SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解
31、决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 SQL Server 2005 与众不同。无论您是开发人员、数据库管理员、信息工作者还是决策者,SQL Server 2005 都可以为您提供创新的解决方案,帮助您从数据中更多地获益。3.1.7 安全、可靠服务器Windows Server 2008是微软最新
32、一个服务器操作系统的名称,它继承Windows Server 2003。Windows Server 2008在进行开发及测试时的代号为Windows Server Longhorn。Windows Server 2008是一套相等于Windows Vista(代号为Longhorn)的服务器系统,两者很可能将会拥有很多相同功能;Vista及Server2008与XP及Server2003间存在相似的关系。(XP和Server 2003的代号分别为Whistler及Whistler Server)Microsoft Windows Server 2008代表了下一代Windows Server
33、。使用Windows Server 2008,IT专业人员对其服务器和网络基础结构的控制能力更强,从而可重点关注关键业务需求。Windows Server 2008通过加强操作系统和保护网络环境提高了安全性。通过加快IT系统的部署与维护、使服务器和应用程序的合并与虚拟化更加简单、提供直观管理工具,Windows Server2008还为IT专业人员提供了灵活性。Windows Server 2008为任何组织的服务器和网络基础结构奠定了最好的基础。Microsoft Windows Server2008用于在虚拟化工作负载、支持应用程序和保护网络方面向组织提供最高效的平台。它为开发和可靠地承载
34、Web应用程序和服务提供了一个安全、易于管理的平台。从工作组到数据中心,Windows Server2008都提供了令人兴奋且很有价值的新功能,对基本操作系统做出了重大改进。第4章 网上商店系统4.1 传统网上商店系统子系统当我们去访问一个在线购物网站的时候,我们只能看见用户使用的那一块内容,其实就像我开题报告写的一样,后面还有很多的子系统对我们看到这块内容进行支撑,让我们的交易安全、方便、高效的完成,以下就是B2C的子系统的进行介绍。订单子系统 系子系统处理用户传过来的订单,查看用户订单状态,并对其中相应操作, 和提供其他子系统的交互服务。商品子系统 商品的管理,包括商品价格,名称,介绍,规
35、格,商品目录,商品评论的管理,和提供与其他子系统的交互服务。采购子系统 品不足或者新商品引进的采购订单管理,并提供与其他子系统交互的服务。财务子系统 整个大系统的财务支持,发票,销售入账记录,采购出长记录,财务统计,并提供与其他子系统交互的服务。仓库子系统 这个子系统,提供商品的库存管理,采购入库、销售出库、盘点、等等,对库存数量的影响,管理商品的库存数量,并提供与其他子系统交互的服务。售后服务系统 该子系统主要是对已经卖出的商品提供退款、送修等销售以后的服务跟进系统,并提供与其他子系统交互的服务。4.2 网上商店系统需求分析4.2.1 订单状态图3.1 订单状态正如我们看到的一样,这个流程非
36、常简单,我们只做订购商品一次性成功的流程,在实际的订单流程中还有其他状态,比较复杂,我们这里暂时不考虑,以下是每个状态的解释:Submit(提交):这个状态,是用户只是提交了订单,但是用户还没有付钱,这个订单就是未付款的订单;Paid(已支付):这个状态,是用户已经支付,但是商家还没有发货,这个状态就是未发货的订单;Shipped(已发货):这个状态,是商家已经发货,需要用户验收货物,这个状态的订单就是需要用户验货的订单;Done(交易完成):这个状态,是用户很满意已经确认了货物,这个状态的订单就成功交易的订单;4.2.2 系统参与者图3.2 系统参与者匿名用户:指没有任何认证授权的使用该网站
37、的用户,他可以浏览、搜索商品、维护购物车;会员:指通过注册功能变成会员的用户,他可以订购商品,维护自己的订单信息,修改密码,找回密码;商品管理人员:简称就是PM,是该网站的工作人员,主要负责管理商品信息,管理商品评论,管理商品目录,管理用户订单;网站管理人员:是该网站权限最大的用户,该用户是网站的维护人员,主要负责管理注册用户,管理用户组,管理网站功能,管理角色,还有负责给用户的授权。 4.2.3 系统用例列表UC1:注册:为网上购物提供凭证,注册以后可以享用会员服务与功能;UC2:登陆:提供用户认证与授权功能,以便用户可以订购商品和管理自己的订单,和使用其他相关角色的功能;UC3:浏览商品:
38、不管用户是否登陆,都可以在该网站浏览到自己喜欢的商品信息;UC4:搜索浏览商品:根据商品的目录进行商品的浏览,该用例继承于UC3;UC5:目录浏览商品:根据用户输入的关键字或价格区间,来浏览商品信息,该用例继承于UC3;UC6:修改密码:提供注册会员密码修改的功能;UC7:管理自己订单:管理已经订购的商品订单状态,主要操作有支付,确认收获;UC8:订购商品:用户选择自己喜欢的商品,再结算商品,输入送货信息,提交订单的一个流程;UC9:维护购物车:对购物车进行添加、删除、修改订购个数;UC10:管理商品信息:商品管理人员对商品的基本信息,库存的维护;UC11:管理商品目录:商品管理人员对商品的目
39、录信息进行增、作废、查、改的功能;UC12:管理用户订单:管理用户提交过来的订单,主要有对用户订单的信息的修改(如:配送方式、价格、数量、状态等等);UC13:找回密码:提供当用户遗忘密码的时候,通过邮件形式告诉用户的密码;UC14:管理用户组:提供对用户组的增、作废、查、改;UC15:管理用户:维护用户的基本信息,作废用户、修改所属角色等等;UC16:管理角色:提供对用户角色的增、作废、查、改、添加拥有功能;UC17:管理功能:提供对系统的页面级和页内级的功能点的增、作废、查、改;UC18:管理评论:提供对商品评论的增、删、查、改;UC19:注销:提供给已经登陆的用户注销,以保证用户的订单安
40、全和系统安全;4.2.4 系统用例图图3.3 系统用例图4.2.5 系统用例分包匿名用户用例分包:图3.4 匿名用户用例分包图会员用例分包:图3.5 会员用例分包图商品管理人员用例分包:图3.6 商品管理人员用例分包图网站管理人员用例分包:图3.7 网站管理人员用例分包图4.2.6 主要用例描述UC8:订购商品前台条件:用户成功登陆网上商店系统。优先级:高。主要流程:用户点击放入购物车;系统显示购物车;用户点击结算;4)系统显示录入配送信息页面;用户完成录入配送信息,并点击完成配送这个地址的按钮;系统显示配送地址确认信息;用户确认订单,并选择支付方式,提交订单;系统生成订单号,并显示提交订单成
41、功以及提示支付的页面;分支流程:如果用户在购物车界面点击继续购物;系统回到用户点放入购物车按钮所在界面;如果用户为匿名用户,系统在结帐之间显示登录界面进行授权认证,然后再转入配送地址确认信息页面;备注:在配送信息界面,需要验证用户输入的信息是否为空,是否合法,字段有收获人,收获地址,邮编,联系电话,配用方式(快递还是EMS)。UC7:用户管理订单前台条件:用户成功登陆网上商店系统。优先级:高。主要流程:系统显示用户订单管理界面;用户选择选择未支付的订单;系统显示未支付的订单列表;用户点击一个订单的支付连接;系统转向第三方的支付平台;分支流程:如果用户选择未验货的订单;系统显示未验货的订单列表;
42、用户点击一个订单的确认验货;系统显示改订单交易成功;如果用户选择交易成功的订单;系统显示交易成功的订单列表;用户选择一个订单的详细信息连接;系统显示改订单详细信息;如果用户选择一个订单的详细信息连接;系统显示改订单详细信息;UC5:目录浏览商品前台条件:无。优先级:高。主要流程:系统显示首页目录列表;用户点击商品目录;系统现实商品列表;用户点击一个商品;UC4:搜索浏览商品前台条件:无。优先级:高。主要流程:用户输入搜索条件;系统显示搜索结果列表;用户点击列表中的一个商品;系统显示商品详细信息;分支流程:如果用户输入价格区间,减小搜索范围;系统显示指定价格区间的结果;转到主流程的第3步;备注:
43、在用户输入价格区间时需要注意的是,在点击搜索的时候,验证价格只能保留小数点后两位的数字,而且需要验证最小值应该比最大值小。4.3 网上商店系统系统分析4.3.1 系统交互图在这里我把最主要的2个用户用例用顺序图分析出来,如下:UC8:订购商品图3.8 订购商品用例交互图UC8:用户订单管理图3.9 订单管理用例交互图4.3.2 系统领域模型图3.10 系统领域模型图正如我们看到的图3.10,该系统中涉及到的业务实例对象就这些,并画除了他们之间的关系。4.4 网上商店系统系统设计4.4.1 系统体系架构图3.11 系统体系架构图4.4.2 详细设计 网站(Portal)详细设计在构
44、建网上商店系统部分,我们使用到了ASP.NET MVC技术,Model(数据)、 View(视图)、控制者(Controller),使用Controller来控制视图的呈现,调用服务外观层加载Model数据和执行一些Action(添加、删除,修改)操作,以下是详细的实现类图:图3-12:portal类图 供网站使用框架(WebRuntime)详细设计WebRuntime就像这个名字一样,Web运行引擎,在这里我们现在只做了对B/S架构的系统提供认证授权支持,当然,其他Web前台的公共东西,不变随项目变化的东西,都可以放到这里。图3.13 Webruntime类图WebRuntim
45、eConfig,这个类提供了Web.config文件自定义的配置支持,需要动态配置的属性,就可以放到这个类的定义里面;AuthModule,Web应用程序级ASP.NET管道请求处理,该Module会处理一切请求客户的请求,在这里我们判断该用户是否已经认证,是否已经具有该请求的权限,如果没有认证,在这里就会被转向Login页面,如果没有授权,会被转向到UnAuthorize页面,而这两个页面都是用户在配置文件中定义的。如果登陆成功,用户的授权信息都会保存到Session里面。AuthManager:就是WebRuntime中提供认证授权,注册用户,注销等等的操作类,他需要我们下面一节将会说道的
46、AuthCenter的持久化支持。 认证授权(AuthCenter)详细设计AuthCenter,提供网站的用户、角色、分组、功能、约束的数据持久化管理,为WebRuntime提供很好的授权认证支持,如果是在一个公司内部,可以做成一个服务对功能内部不同的项目实现授权认证。图3.14 AuthCenter类图Manager:提供数据库用户、角色、分组、功能、约束的维护,并有对用户认证和授权功能。IPersister:在这里我们定义了一个数据持久化接口,这样的好处是,方便我们以后对数据库的依赖,降低他们之间的耦合,在这里我们只实现了SQL SERVER数据库;SqlDBPersist
47、er:提供对SQL SERVER 的数据访问支持;Entity:提供了进行持久化的数据实例,在这里我主要说2个Entity;第一个是Function,其实这个Entity就是一个页面请求级的功能数据实体,他的属性UrlRegex就是一个匹配UrlRegex的正则表达式,如:http:/www.ChpearM/MyCheaperMall/1这请求地址就是一个Function实例,他的正则表达式是/MyCheaperMall/w+,这就匹配这个表达式,这样就可以达到页面请求级的限制了;第二个是Constraint,这个Entity就是页面内的功能点的约束,记录的就是一个功能点的名字,页
48、面内的有些按钮,文本框,或者是其他内容,需要授权显示的,就可以使用这个Entity; 服务(Service)详细设计网上商店系统的服务端采用传统的三层架构模式,同时结合了WCF和WF技术,具体设计如下:ServiceInterface, 该层对于WCF分布式开发,分布式系统来说是最最重要的一层,它协定了服务提供方和调用方统一的契约,只要这个契约一定下来,前后台开发就可以并行开始,而且最大程度上了减少了调用者和服务之间的耦合,因为他们之间使用的是SOAP协议来进行基于HTTP传输。当然WCF还支持其他的通信方式,比如MSMQ,TCP/IP等等;图3.15 系统契约类图Service
49、Implement,服务的实现层,主要是负责对定义的契约调用后面我们将提到BusinessLogic层来实现服务.图3.16 契约实现类图注意那个Transformer类,主要负责把契约数据转换成业务层需要的实体数据,这样的目的还是尽量减少契约与实现层的耦合。BusinessLogic,这一层主要处理一些检查,然后调用DataAccess数据访问层,持久化把数据持久化到数据库,或者查询数据。图3.17 业务逻辑层类图注意DataProvider类,他是一个抽象类,用到一个单件模式,动态加载数据库访问对象,也是为了让项目与不同数据库之间减小耦合。DataAccess,数据访问层,我们这里只实现了
50、SQL SERVER 2005数据库的访问设计,具体类图3.18。图3.18 数据访问层类图订单扭转WF(Workflow Foundation)状态机设计图3.19 订单扭转WF状态机设计层类图我们这里使用微软.NET 3.0框架的一个组件WF来实现订单状态的扭转,从途中我们就可以看出,状态扭转,使用事件作为驱动,这样更好的将流程设计与代码实现分离,而且非常的直观。订单处理组件之间的交互图图3.20 订单处理各个组件之间交互图简单描述一下这个流程:从Portal调用网上商店系统的Service的创建订单方法开始,Service端会发一个订单Q到MessageAgent,MessageAgen
51、t把消息转换成XML格式,再连接Sql Server使用Sql Server Broker将订单XML数据同步到数据库中的Order临时表中,让后有一个循环的Windows服务来轮询Order临时表,轮询到了以后修改Order临时表的一个IsProcess字段为true,最后调用网上商店系统的Service提供INotify服务,插入网上商店系统数据库的Order表中,当然,中间全部是异步的,不会通知前台,如果失败,我们这里只有做一些补偿机制。 消息代理(MessageAgent)详细设计该Project主要是用来与外界系统通信,比如使用SQL SERVER BROKER来实现P
52、UB/SUB的模式,实现订单的处理,还可在该组件中使用SQL SERVIER BROKER与其他系统的数据库进行交互,这样做的目的也是为了统一与外部交互的出口和入口,方便系统的维护,也是尽量降低与其他系统的耦合。图3.21 MessageAgent类图 数据库设计网上商店系统数据库设计图3.22 CheaperMall数据库物理模型图表3.1 Order表,存储订单相关信息编号列名数据类型长度可空?说明1OrderIDint4no主键,自增长,种子1,聚集索引2UserIDint4yes用户编号3BuyerNamenvarchar100yes收货人名字4ToAddressnvar
53、char200yes收货人地址5ToZipCodevarchar10yes收货人邮编6BuyerTelephonevarchar20yes收货人电话7InDatedatetime8yes插入时间8Statusvarchar10yes订单状态9EditDatedatetime8yes编辑时间10InUsernvarchar100yes插入用户11EditUsernvarchar100yes编辑用户表3.2 OrderItem表,存储订单相关商品信息编号列名数据类型长度可空?说明1ItemIDint4no主键,自增长,种子1,聚集索引2GoodsIDint4no商品编号,外键,非聚集索引3Orde
54、rIDint4no订单编号,外键,非聚集索引4UnitPricedecimal9yes商品单价5Costdecimal9yes商品成本6GoodsNamenvarchar200yes商品名7Quantityint4yes订购数量表3.2 Goods表,存储商品相关信息编号列名数据类型长度可空?说明1GoodsIDint4no主键,自增长,种子1,聚集索引2Namenvarchar100yes商品名称3CategoryIDint4no目录编号,外键,非聚集索引4UnitPricedecimal9yes商品单价5Costdecimal9yes商品成本6StoreCountint4yes库存数量7PictureUrlsvarchar-1yes商品图片8Descriptionnvarchar-1yes描述表3.3 Category表,存储商品目录相关信息编号列名数据类型长度可空?说明1IDint4no主键,自增长,种子1,聚集索引2ParentIDint4no父目录编号,外键,非聚集索引3Namenvarchar100yes目录名称AuthCenter数据库设计图3.23 MessageAgent数据库物理模型图表3.4 Users表,存储用户相关基本信息编号列名数据类型长度可空?说明1IDint4no主键,自增长,种子
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 联合研究专题分析报告:AI产业链全景全球Top100公司
- 高质量发展背景下专科医院行政人员绩效考核与人才培养探索
- 跨界合作品牌专柜委托经营管理合同
- 建筑能源监控与数据分析数据服务追加合同
- 企业宣传兼职文案撰写及推广合同
- 离婚协议签订与指纹验证执行保障合同
- 网络内容审核办公室租赁及办公区域绿化租赁合同
- 金融资产交易风险控制及风险评估补充协议
- 食品药品物流货物保险代理服务合同
- 金融科技虚拟股权收益分配与风险共担合同
- T-WSJD 21-2022 内镜储存干燥柜卫生要求
- 23G409先张法预应力混凝土管桩
- DZ∕T 0219-2006 滑坡防治工程设计与施工技术规范(正式版)
- MOOC 国情分析与商业设计-暨南大学 中国大学慕课答案
- 《光伏发电工程工程量清单计价规范》
- 第十二讲 建设社会主义生态文明PPT习概论2023优化版教学课件
- 完美日记营销体系策略深度解析(深度解析完美日记崛起的驱动力)
- 具备履行合同所必需的设备和专业技术能力的证明材料范文五篇
- 预拌混凝土运输单(正本)
- 江苏省生物技术和新医药产业发展规划纲要
- 【学习课件】第七章天然气处理与轻烃回收
评论
0/150
提交评论