计算机学院本科毕业论文
https://www.bilibili.com/video/BV1mK411t78n/
演示视频:
第四章 系统设计
4.1总体设计
4.1.1项目规划
系统主要实现:
顾客注册登录模块,商品检索、浏览模块,特价商品检索、浏览模块,购物车模块,顾客反馈信息、留言模块,后台登录模块,商品管理模块,特价商品管理模块,订单管理模块,会员管理模块(包括会员级别),系统用户管理模块。
4.1.2系统功能结构图
图5.1 Eportal电子商城功能结构图--总图
图5.2 Eportal电子商城功能用例图
4.2系统结构设计
Eportal电子商城使用了分层的思想,具体把整个系统划分成了三层,它们分别是:表现层,业务逻辑层以及持久化层。在表现层上使用了Struts框架,在持久层上使用了Hibernate框架。表现层负责收集用户的数据,根据收集到的数据去调用业务逻辑层的相关方法进行业务处理,并且负责显示业务逻辑层的返回的处理结果。业务逻辑层是上下两层的纽带,它建立实际的数据库连接,根据用户的请求生成SQL语句检索或更新数据库,并把结果返回给客户端。持久化层负责实际的数据库存储和检索。在持久化层使用Hibernate框架使得数据库操作更加方便、快捷,大大的提高了系统的开发效率。
4.2.1系统的结构框架图
图5.3 系统结构框架图
4.2.2系统体系结构设计
目前,最为流行的体系结构就是C/S(客户端/服务器)和B/S(浏览器/服务器)两种。所谓的C/S体系结构就是通过充分利用客户端和服务器端各自硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销,而在B/S体系结构中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。B/S结构简化了客户机的工作,客户机上只需配置少量的客户端软件。服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。浏览器发出请求,而其余如数据请求、加工、结果返回以及动态网页生成等工作全部由Web服务器完成。关于C/S和B/S这两种体系结构在软件技术上的比较如表所示:
C/S和B/S体系结构在软件技术上的比较
表格3
性能指标
c/s
b/s
客户端硬件配置
需要较高硬件配置
没有特殊要求
是否需要专门客户端
是
否
系统部署代价
与信息点相关,比较大
与信息点无关,比较少
系统可维护性
复杂
良好
与internet的集成
较难
代价几乎为零
系统功能可扩展性
较差
较好
数据控制的灵活性
灵活
不太灵活
根据以上的比较,结合待开发系统的实际需求,本系统选用了B/S应用模式。对于B/S体系结构来说,其具有以下几个特点:
1.安全性
中间层隔离了客户直接对数据服务器的访问,保护了数据库的安全;
2.稳定性
对于要求7*24小时工作的业务系统,多层分布式体系提供了更可靠的稳定性:
(1) 中间层缓冲Client与数据库的实际连接,使数据库的实际连接数量远小于Client应用数量。当然,连接数越少,数据库系统就越稳定;
(2) Fail/Recover机制能够在一台服务器当机的情况下,透明地把客户端工作转移到其他具有同样业务功能的服务上。
3.易维护
由于业务逻辑在中间服务器,当业务规则变化后,客户端程序基本不做改动;
4.快速响应
通过负载均衡以及中间层缓存数据能力,可以提高对客户端的响应速度;
5.系统扩展灵活
基于多层分布体系,当业务增大时,可以在中间层部署更多的应用服务器,提高对客户端的响应,而所有变化对客户端透明。
此外,B/S体系结构还具有跨平台的特点,给系统的开发和使用带来了方便。对于待开发系统的体系结构,如图5.4所示:
图5.4 体系结构图
4.3数据库设计
4.3.1数据库的概念设计
数据库的概念结构设计是反映全组织信息需求的整体数据库概念结构(概念模式)。概念模式必须是独立于计算机硬件和具体数据库管理系统,不受特定DBMS(数据库管理系统)的限制,不考虑计算机软硬件技术细节。在需求分析阶段得到的数据流程图对数据的动态运动轨迹进行了描述,数据库需求分析定义了数据本身的静态特征,但他们反映的仅是应用需求,并无反映出数据之间的本质联系(即数据的内在特征)。一下是Eportal电子商城的E-R图:
Eportal电子商城系统E-R图 总图
Eportal电子商城数据表关系图
4.3.2数据库表单设计
随着信息化网络系统在全球范围内的广泛发展,数据库的设计也因为越来越多相同或相近的业务流程而得到了提炼。同种业务类型的系统.虽然系统的具体执行和操作各异,对数据库表的需求也不尽相同,但都可以通过相似的框架搭建数据库。现代业务系统的数据库设计,基本上简单地分为主表和事务处理表两类。
其中,主表主要是保存相对固定的静态数据,而事务处理表则是储存随着日常业务的进行而增加的动态数据。
主表保存所有核心业务的静态数据。这一部分数据,是系统运行的基础,决定着处理的对象和系统的基本运转,并且不会跟着日常营业的变化而有大的变化。相当一部分主表的项目是业务处理的依据,参与几乎所有业务处理的逻辑判断。
业务处理表则是储存日常事务一记录的动态数据。几乎每一个业务处理操作,都是伴随着对业务处理表的更改。业务处理表的数据虽然不决定处理,但是每一个处理都将反应到表里的数据中。只有详尽地反应业务处理的每一个细节,才能保证系统健康稳定地运转。
I