企业订单管理系统项目设计方案.docx
《企业订单管理系统项目设计方案.docx》由会员分享,可在线阅读,更多相关《企业订单管理系统项目设计方案.docx(55页珍藏版)》请在冰豆网上搜索。
企业订单管理系统项目设计方案
企业订单管理系统项目设计方案
第1章概述
1.1课题背景
目前国内企业在管理销售方面还处在比较低的水平。
大多数企业在生产和购进货物后,只是将销售用手写式的记录和简单的管理。
进入信息社会后,随着企业销售订单的增多,带的麻烦也逐渐增多,管理方面也得不到很好的解决方法,使得大量的数据丢失,使企业造成了很大的损失。
Internet已经成为人们生活、工作、学习越来越离不开的平台,在网上进行下单,交易可以更好方便,同时减少了纸质交易资料的管理工作,将全部交由数据库进行保存。
1.2项目开发的目的及意义
建立一个基于B/S架构的企业订单系统,实现信息网络化.通过较丰富的功能将Web的技术特点体现出来。
该系统可供注册用户登录使用.登录者可以查询商品以及下订单,可以通过此网站管理供应商、商品、订单等操作,实现增删改查的操作,方便网站的管理与维护。
要实现这样的功能,离不开后台数据库的支持。
本系统中数据库采用了MYSQL作为后台数据库,通过JDBC进行连接,通过SQL语句进行需要的增删改查功能,使得系统与数据库完美结合。
整个页面由JSP技术进行开发实现,主要由Web页面生成与JS技术结合JavaBeans技术实现组件重用两部分组成。
本设计主要完成客户端,Web服务器端应用程序和数据库的制作,实现企业订单系统的创建,用户注册/登陆、对记录信息进行添加,删除,修改等功能。
实现与完善整个基于B/S企业订单管理系统的组织建立和测试工作。
利用SUN公司推出的强大应用程序开发软件Java,结合有关管理规范的知识和实际调研的结果,进行了对“企业订单管理系统”的开发。
该系统具有操作简单性、稳定性、安全性和友好性的优点,给用户呈现出满意的界面。
1.3国内外动态分析
在国外,企业订单管理系统的发展非常迅速,在网上进行交易,进行订单的管理非常先进,减少了大量人工工作,同时减少了纸质管理中容易出现的一些错误。
目前,我国企业订单管理系统的管理还比较落后,很多企业还停留在纸质的订单管理。
企业需要扩大客户数量,就要做好财务的收付工作和产品的管理,同时做好交易数据的管理。
面对来自全世界的竞争和挑战,国内企业需要加强自身的管理,自己的信息化水平,更好的管理自己的数据,所以B/S的企业订单管理系统可以解决这一方面的需求。
1.4本文结构
第1章是概述,主要介绍课题背景与项目开发的目的和意义,以及对国内外动态的分析。
第2章是方案论证,主要介绍该系统开发时的方案选择,并从经济上、技术上论证了本系统是否可行,以及此系统所应用到的一些关键技术的简介。
第3章是需求分析,主要介绍了用户的需求,然后根据用户的需求得出系统应该具有什么功能。
最后总结出系统最核心的两个业务逻辑:
用户登录和用户下单,管理员对用户的订单进行管理。
第4章是过程论述,主要介绍了软件的系统构架以及系统的相关实体和实体间的关系,并论述了整个数据库的设计过程。
最后详细的介绍了各个功能模块的实现过程,并讨论了系统的安全性设计。
第5章是软件测试,介绍了常用的软件测试方法:
黑盒测试和白盒测试。
并使用基本路径测试的方式对普通用户注册、管理员登录、管理员订单管理进行了测试。
最后是对本次毕业设计的总结和致谢。
并在附录里给出了一些功能实现的代码和相关截图。
第2章方案论证
2.1可行性分析
2.1.1技术可行性
本系统使用Java语言编写,Java语言简单,易上手,开发周期短。
在页面中使用AJAX进行网页局部刷新,减少了对服务器的请求压力。
在开发工具上使用Eclipse,数据库使用MySQL,MySQL数据库同样为轻便型小型数据库,其系统从一个地方到另一个地方的难易程度和安全性都是很乐观的,MVC在使用领域也逐渐地老练起来,该企业订单管理系统在技术上是切实可行的。
2.1.2经济可行性
随着网络的迅速发展,计算机得到了普遍性。
企业订单管理系统成为了很多企业在网上的分销渠道,该系统选择B/S架构,使用B/S架构的系统只需对服务器进行管理,所有的客户端都是浏览器,不需要做任何其它的维护,只要有一台电脑就能使用。
同时,本系统的规模并不大,不需要太多的经费,但却十分有效的提高了办公的效率。
所以开发订单管理系统是具有经济可行性的。
2.1.3操作可行性
本系统操作较为简便,同时人员使用起来简单易上手,在开发中会在必要的地方加以提示,帮助人们更加方便地使用,所以在计算机较为普及的今天,很多人都可以进行操作。
2.1.4法律可行性
本系统所使用的Eclipse和数据方面的信息及技术不违背法律,相关实现和技术不存在侵权问题。
系统开发完后主要用于客户对企业进行下单,管理员进行管理订单,文明安全,禁止涉及任何违法行为。
2.2最佳设计方案选择简介
2.2.1MySQL5.0数据库
MySQL数据库是一个对源码开放的“小型关联式数据库管理系统”。
MySQL比较适合运用于中小型网站。
因为MySQL的运行速度比较快、所占容量较少、使用成本价较低,所以很多企业在经济实用角度出发会选择MySQL。
其主要特性是:
CPU利用率高,能够在一定程度上提高查询速度,同时优化了SQL语句的查询算法,并且支持多线程,提供多种语言的支持,因此所需费用较低[1]。
2.2.2JSP技术
JSP是一种动态网页技术标准。
它是一种建立在由Servlet提供的规范功能智商的一种动态页面技术,它其实就是在早期的HTML形成网页的XML文件中插入了Java代码和一些JSP标记,从而形成了一个JSP文件[2]。
JSP开发的Web应用是跨平台的,不但能够在Linux下运行,也能在其他操作系统上运行。
JSP采用MVC的设计模式,可以将后台的业务逻辑控制与前台的网页设计分离,耦合性较低,同时给予组件进行设计,并且降低了WEB的前端程序开发[3]。
2.2.3Servlet技术
Servlet是基于服务器端的一种Java应用程序,它有着与协议和平台都独立的特性,并且能够生成动态的Web网页(但是它自己本身的编程还是较为麻烦的,已经被很少运用)。
Servlet可以作为MVC中的V层,也就是说作为服务器响应与客户请求的中间层,它其实是Web 服务器内部服务器端的一个比较小型的Java应用程序,但是Servlet与原来在命令行中启动的Java语言还是有所不同的[4]。
Web服务器负责加载Servlet,但前提是Web服务器必须包含能够支持Servlet的Java虚拟机。
Servlet是JavaWeb服务器用来处理用户请求以及其他基于Web服务的Java类。
他在Web服务中,根据用户的请求和传递过参数进行运算,返回处理后的结果。
开发Servlet类须按照Servlet的要求继承HttpServlet类,实现相应的方法[5]。
2.2.4AJAX技术
AJAX是AsynchronousJavaScriptandXML的缩写,这一技术能够向服务器请求额外的数据而无需卸载整个页面,会带来良好的用户体验。
传统的HTTP请求流程大概是这样的,浏览器向服务器发送请求-〉服务器根据浏览器传来数据生成response-〉服务器把response返回给浏览器-〉浏览器刷新整个页面显示最新数据,这个过程是同步的,顺序执行[6]。
AJAX在浏览器与Web服务器之间使用异步数据传输(HTTP请求)从服务器获取数据,这里的异步是指脱离当前浏览器页面的请求、加载等单独执行,这意味着可以在不重新加载整个网页的情况下,通过JavaScript接受服务器传来的数据,然后操作DOM将新数据对网页的某部分进行更新[7]。
使用Ajax最直观的感受是向服务器获取新数据不需要刷新页面等待了。
2.2.5Eclipse开发工具
Eclipsemaven企业级工作平台是对EclipseIDE的一种引申,利用它我们可以在数据库方面和Java2E的开发方面、发布以及应用程序服务器的整合方面,减少工作所用时间,极大的提升工作效益。
它是功能非常全面的Java2E集成开发环境,拥有完善编码、进行调试、进行测试以及发布功能,并且支持各种技术,包括:
HTML,Struts,JSP技术,CSS,Javascript,Spring,SQL数据库,Hibernate。
Eclipsemaven是一个非常优秀的用于开发Java,J2EE,maven项目的Eclipse插件集合,Eclipsemaven的功能非常强大,支持范围也十分广泛,尤其是对各种开源产品的支持也非常好。
Eclipsemaven可以支持JavaServlet技术,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库连接链接工具等多项功能。
可以说Eclipsemaven是几乎涵盖了目前所有主流开源产品的专属Eclipse开发工具。
2.3开发方案的选择
B/S结构,是Web崛起后的一个计算机结构,Web是客户端最重要的使用软件。
这种计算机结构融合了客户端,将系统模块完成的最主要部分会集到服务器上,使系统的开发、运行和应用得到相应的简化。
开发企业订单管理系统,客户机上只要安装一个浏览器就可以了,最好是IE浏览器,服务器上安装一个MySQL数据库。
在B/S模式的体系结构系统中,服务器会对浏览器发出的请求进行进一步处理,将用户所需要的信息发到浏览器上。
B/S架构使客户端的操作变得更加简单化,客户机上只需要配置一些客户端的软件[8]。
主要优点包括:
1.具有分布性特点,可以随时随地进行查询、浏览等业务处理。
2.业务扩展简单方便,通过增加网页即可增加服务器功能。
3.维护简单方便,只需要改变网页,即可实现所有用户的同步更新。
4.开发简单,共享性强。
综上所述,本系统使用B/S架构,选用Eclipsemaven作为程序开发的主要工具、选用MySQL为数据库管理平台,使用AJAX技术进行页面的局部刷新。
第3章需求分析
3.1系统需求分析
企业订单系统是面向所有企业,包括商品的管理,订单管理等业务处理工作,是利用计算机进行集中管理而开发的系统.该系统是基于JSP连接MYSQL数据库进行开发的企业订单管理系统,力求与实际相结合具有查询、操作等功能,旨在达到使订单的管理和运营趋于计算机化,使之更加方便、快捷以提高工作效率。
主要包括二大管理模块:
1.后台管理员
(1)用户管理:
维护前台的注册的用户信息。
(2)商品分类:
维护商品的类别。
(3)供应商管理:
该商品的供应商管理。
(4)商品管理:
管理商品,删除修改等。
(5)订单管理:
管理订单,审核订单,安排发货,订单状态查询等。
(6)权限管理:
维护后台用户的权限。
2.前台用户
(1)用户注册:
用户第一次登陆该系统下单需要先注册账号:
单击“用户注册”按钮,填写相关注册信息,包括用户名、密码,同时email要求格式正确,填写完成后,需要点击“确定”按钮,这样就可以成为该系统的用户。
(2)用户登陆:
用户通过填写正确的“用户名”和“密码”,点击“登陆”按钮,便可完成普通用户的登录。
(3)商品搜索:
用户在页面上可以进行商品的搜索,输入需要的商品名称进行商品搜索。
(4)查看商品:
用户在页面上可以查看商品,也可以点击页面左侧导航栏进行不同商品类别下的商品。
(5)用户下单:
用户在选择好商品后,点击购买,填写相关商品数量,送货地址,付款方式等。
(6)个人中心:
用户可以在登录后点击个人中心,在个人中心中查看自己的订单以及订单状态。
3.2数据流图
数据流图是用来描述数据流和改变信息系统建模的一种技术[9]。
通过对用户的可行性需求分析,我们知道企业订单管理系统的核心问题是对订单的管理。
以下先分析系统的顶层数据流图,然后在给出用户登录和订单管理的数据流图。
3.2.1顶层数据流图
企业订单管理系统,非该系统用户成员,可通过完成用户注册来成为该系统用户,顶层数据流图,如图3-1所示。
图3-1顶层数据流图
3.2.2一层数据流图
一级数据流图,如图3-2所示。
登
录
3.2.3二层数据流图
1.用户登录数据流图,如图3-3所示。
验证
2.订单管理数据流图,如图3-4所示。
订单处理
管理员
订单保存
下单
注册用户
返回结果
图3-4订单管理数据流图
3.3数据字典
数据字典是对于数据模型中的数据对象以及项目的描述的集合。
数据字典的作用是在策划和的软件剖析过程中给人提供关于数据的形容信息。
数据字典可以对数据流图中的数据流、数据源以及外部实体进行描述、组织和管理。
数据字典是指对外部实体、处理逻辑、数据存储、数据结构、数据流、数据项等进行定义和描述,数据字典的目的是对数据流程图中的每一种元素进行详细的说明。
下面是部分数据结构的说明:
1.数据结构:
注册用户信息
组成:
用户名、密码、真实姓名、住址、性别、email、job。
数据项:
①<用户名>=*大于0小于10的任意长度*
②<密码>=*不小于3位的任意长度字符串*
③<真实姓名>=*任意长度不大于5位的汉字*
④<住址>=*任意长度不大于20位的字符串*
⑤<性别>=*男/女*
⑥=*不大于20个字节*
⑦=*不大于20个字节*
2.数据结构:
供应商信息
组成:
供应商地址、供应商名字、供应商电话、供应商联系人、供应商详情。
数据项:
①<供应商地址>=*不大于50的任意字符长度*
②<供应商名字>=*不大于30的任意字符长度*
③<供应商电话>*不大于15的任意字符长度*
④<供应商联系人>*不大于15的任意字符长度*
⑤<供应商详情>*不大于255的任意字符长度*
3.数据结构:
订单信息
组成:
订单编号、订单商品编号、商品数量、订单用户、订单总价、订单地址、订单状态、订单支付方式、下单时间。
数据项:
①<订单编号>=*任意整数字*
②<订单商品编号>=*任意整数字*
③<商品数量>=*任意整数字*
④<订单用户>=*任意整数字*
⑤<订单总价>=*任意整数字*
⑥<订单地址>=*不大于255的任意字符长度*
⑦<订单状态>=*不大于50的任意字符长度*
⑧<订单支付方式>=*不大于50的任意字符长度*
⑨<下单时间>=*date类型*
4.数据结构:
商品信息
组成:
商品编号、商品库存、商品上架时间、商品图片路径、商品名字、商品备注、商品分类编号、商品价格、供应商编号。
数据项:
①<商品编号>=*任意整数字*
②<商品库存>=*任意整数字*
③<商品上架时间>=*date类型*
④<商品图片路径>=*不大于255的任意字符长度*
⑤<商品名字>=*不大于30的任意字符长度*
⑥<商品备注>=*不大于255的任意字符长度*
⑦<商品分类编号>=*任意整数字*
⑧<商品价格>=*任意整数字*
⑨<供应商编号>=*任意整数字*
5.数据结构:
商品分类信息
组成:
商品分类编号、商品分类建立时间、商品分类名、商品分类备注。
数据项:
①<商品分类编号>=*任意整数字*
②<商品分类建立时间>=*date类型*
③<商品分类名>=*不大于30的任意字符长度*
④<商品分类备注>=*不大于255的任意字符长度*
6.数据结构:
系统管理员信息
组成:
用户名、密码、备注、用户管理权限、分类管理权限、供用商管理权限、商品管理权限、订单管理权限、权限管理权。
数据项:
①<用户名>=*大于0小于10的任意字符长度*
②<密码>=*不小于3位的任意长度字符串*
③<备注>=*不大于255的任意字符长度*
④<用户管理权限>=*yes/no*
⑤<分类管理权限>=*yes/no*
⑥<供用商管理权限>=*yes/no*
⑦<商品管理权限>=*yes/no*
⑧<订单管理权限>=*yes/no*
⑨<权限管理权>=*yes/no*
3.4系统E-R图
E-R方法是“实体-联系方法”的一个简称,用矩形来表示实体性,矩形框内写试题的名字,用菱形来表示实体间的关系,在框内注明实体的名字[11]。
E-R概念模型具有很强的语义表达能力,通过对用户进行可行性需求分析,选出最直接的实体是注册用户、供应商、订单、商品、商品分类、系统管理员。
以下是描述了主要实体的具体属性图。
1.系统实体属性图
(1)注册用户实体属性图,如图3-5所示。
密码
用户名
姓名
地址
注册用户
性别
编号
email
job
图3-5注册用户实体图
(2)供应商实体属性图,如图3-6所示。
名字
地址
电话
供应商
联系人
详情
图3-6供应商实体图
(3)订单实体属性图,如图3-7所示。
商品编号
订单编号
商品数量
下单时间
订单
订单用户
支付方式
订单总价
订单状态
订单地址
图3-7订单实体图
(4)商品实体属性图,如图3-8所示。
商品库存
商品编号
上架时间
供应商编号
商品图片
商品
商品价格
商品名字
分类编号
商品备注
图3-8商品实体图
(5)管理员实体属性图,如图3-9所示。
分类建立时间
分类编号
商品分类
分类备注
分类名
图3-9商品分类实体图
(6)管理员实体属性图,如图3-10所示。
密码
用户名
权限管理权
备注
管理员
用户管理权限
订单管理权限
分类管理权限
商品管理权限
供用商管理权限
图3-10管理员实体图
2.系统E-R图
企业订单管理系统采用E-R图的方法对数据库概念结构进行设计。
单个的实体属性图只能体现一个实现的属性和行为,不能描述整个系统的结构。
因此,我们需要找出各个实体间的关系,组成完整的系统E-R图,如图3-11所示。
m
n
管理包含
用户
1
管理
管理员
m
1
n
1
m
浏览包含
提交
m
处理提交
m
n
n
n
浏览包含
管理
订单
分类
1
管理提交
n
n
n
包含
包含
1
n
n
提供
1
供应商
n
商品
图3-11系统E-R图
3.5运行环境需求
3.5.1软件环境
软件环境信息表,如表3-1所示。
表3-1软件环境信息表
名称
版本
语种
操作系统
Ubuntu/Unix/Linux
不限
中文或英文
Windows7/WindowsServer
sp3/2000/2003
中文
数据库平台
MySQL
5.0或以上
英文
服务器平台
Tomcat
5.5或以上
英文
客户端软件
IE/基于IE内核浏览器
6.0或以上
中文
3.5.2硬件环境
硬件环境信息表,如表3-2所示。
表3-2硬件环境信息表
名称
最大配置
推荐配置
应用和数据库服务器
CPU
P42.0G
P42.8G
内存
2G
2G
硬盘
320G
120G
第4章过程论述
4.1概要设计
4.1.1设计原则
在系统进行编码之前,我们用该对系统所要实现的功能进行整理,如何进行实现以及实现方法的删选,这样做的优点包括:
对系统软件整体的代码架构有一定的思路,更好的部署各个功能模块的代码,优化整体的结构,对各层功能代码进行剥离,更加符合MVC的设计模式[12]。
在设计的过程中我们应该遵循的原则包括:
1.全面性:
考虑不同用户对系统使用的不同需求,所以系统必须尽量操作简单,容易上手,提高系统使用的普遍性,使系统尽量适合所有用户的需求。
2.规范性:
本系统遵循MVC的设计模式进行设计,遵循MySQL数据库的操作原理。
3.实用性:
根据用户需求情况,满足客户和管理员的使用需求。
4.安全性:
保证系统在实际应用时的安全性。
4.1.2软件架构说明
1.MVC架构各层功能实现说明:
Model层(模型层)主要是实现具体业务功能的一些类,业务流程的处理,Model只是一种经过性的操作,模型会接收来自页面的请求,并把最终得出的结果返回给页面,MVC最主要的核心是业务模型的设计。
Control层(控制层)就是从视图层接受数据请求去匹配相应的模型,共同来完成用户的请求。
主要负责系统中业务功能的实现流程管理工作,事实上,控制层并不对请求做任何的处理,只是把该用户传来的信息传给了模型,告诉它去在怎么做,然后它做的只是负责把符合要求的视图再返回给用户。
所以,一个模型可能会对应很多个视图,一个视图也可能对应很多个模型。
View层(视图层)是指用户与用户之间的交互界面,对于web应用来说,可以把它概括为HTML界面,也有可能是XML、XHTML、Applet。
随着应用的规模性和复杂性,界面的处理也变得很有挑战性。
一个应用包含多个的视图,MVC设计模式就是视图的处理权限和视图对数据进行处理,包括对用户的请求,但不包括业务流程的处理。
业务流程的处理交给模型处理[13]。
2.MVC架构优点:
(1)对应中小型项目的开发效率高,架构的搭建相对简单
结构看起来非常简单易懂,搭建时的配制信息只有“web.xml”这一个文件,web.xml主要是用来映射Servlet。
Control层的应用在很大程度上是将JSP中的Java代码给分离开来,降低了JSP文件的复杂程度。
另外本架构涉及的架构知识其实是很很少的,很容易把它掌握。
(2)架构的性能优越
相对于使用其他的架构技术创建的系统来说,在使用Jsp+Servlet+JavaBean架构时,系统的执行效率其实是非常高的,主要是因为该架构的配置相对来说比较简单,信息加载量较小。
4.1.3功能模块图
此系统按照角色的不同分为两大功能模块,一个是前台用户模块,一个是后台管理模块。
1.系统模块图
系统模块图,如图4-1所示。
企业订单管理系统
前台
后台
查看商品
个人中心
商品搜索
用户下单
用户登陆
用户注册
权限管理
订单管理
供应商管理
商品管理
商品分类
用户管理
图4-1系统模块图
2.普通用户功能模块
普通用户功能模块图,如图4-2所示。
(1)用户注册:
用户第一次登陆该系统下单需要先注册账号:
(2)用户登陆:
用户通过填写正确的“用户名”和“密码”后,点击“登陆”按钮,便可完成普通用户的登录。
(3)商品搜索:
用户在页面上可以进行商品的搜索,输入需要的商品名称进行商品搜索。
(4)查看商品:
用户在页面上可以查看商品,也可以点击页面左侧导航栏进行不同商品类别下的商品。
(5)用户下单:
用户在选择好商品后,点击购买,填写相关商品数量,送货地址,付款方式等。
(6)个人中心:
用户可以点击个人中心查看自己提交的订单详情,以及订单的当前状态。
填写用户信息
用户注册
查看已提交订单
购买物品下单
导航栏查看商品
使用账密登陆
关键字搜索商品
个人中心
普通用户
用户下单
查看商品
商品搜索
用户登陆
图4-2普通用户功能图
3.管理员用户
管理员用户功能模块图,如图4-3所示。
(1)用户管理:
维护前台的注册的用户信息。
(2)商品分类:
维护商品的类别。
(3)供应商管理:
该商品的供应商管理。
(4)商品管理:
管理商品,删除修改等。
(5)订单管理:
管理订单,审核订单,安排发货,订单状态查询等。
(6)权限管理:
维护后台用户的权限。
查看所有用户信息
修改用户信息
用户管理
删除用户信息