烟草信息管理系统
概要设计说明书
V1.0
目 录
一、引言 1
1.1 编写目的 1
1.2 项目背景 1
1.3 定义 1
1.4 参考资料 1
二、任务概述 2
2.1 目标 2
2.2 运行环境 2
2.3 需求概述 2
2.4 条件与限制 3
三、总体设计 3
3.1 处理流程 3
3.2 总体结构和模块外部设计 4
3.3 功能分配 6
四、接口设计 7
4.1 外部接口 7
4.2 内部接口 7
五、数据结构设计 7
5.1 逻辑结构设计 7
六、运行设计 8
6.1 运行模块的组合 8
6.2 运行控制 8
6.3 运行时间 9
七、出错处理设计 9
7.1 出错输出信息 9
7.2 出错处理对策 9
八、安全保密设计 10
九、维护设计 10
一、引言
为明确烟草信息管理系统的系统结构、安排项目规划与进度、制定详细测试计划、组织软件开发与测试,特撰写本文档。
本文档供项目经理、设计人员、开发人员参考。
开发软件名称:烟草信息管理系统
项目任务提出者:烟草公司
项目开发者:第三开发小组
用户:烟草公司各部门、零售商、消费者
项目与其他软件,系统的关系:
烟草信息管理系统定位于卷烟供应链的后端,即通过对供应链前端的产品生产、销售情况进行统计分析,确定市场的异常情况,精准的预测市场需求,然后根据需求组织下一阶段的产品生产的模式。
本系统采用B/S模式,服务器端采用Microsoft Server 2003 为操作系统的工作站,是采用Microsoft SQL Server 2005的为开发软件的数据库服务程序。
B/S模式:Browser/Server(浏览器/服务器)模式,是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到了服务器上,简化了系统的开发、维护和使用。
SQL :结构化查询语言,关系数据库查询的标准语言;
SQL SERVER 2005:微软公司生产的SQL SERVER数据库管理系统;
《需求规范说明书》 杨文丽、叶玉兰、张彬彬、周鹏翔
《综合应用软件设计》 曹渠江主编,清华大学出版社、北京交通大学出版社,2008年12月版
因大量用户需要使用本系统的前台,所以决定采用B/S体系来设计本系统。
烟草公司各部门人员登录本系统后,系统列出可供使用的功能模块。部门人员工作时可以选择相应的功能模块进行快捷方便的管理。
零售商随时随地可以利用互联网,来进行查询库存价格、提交订单等操作,还可以查看烟草公司发布的通知,方便地了解各类信息。
消费者用户同样可以随时随地进行进行烟草信息查询、真伪鉴别等。
硬件及软件环境:
1台服务器:PIII1.2G双CPU,SCSI双硬盘镜像,1G以上内存,Windows NT,Apache+JSP+SQLSERVER 2005服务器;
客户机为普通支持浏览器的PC机;
系统运行环境示意图如下:
word/media/image1.gif
见《需求规范说明书》。
(1) 一个客户在系统中只有一个账号;
(2) 客户进行提交订单等操作必须先登陆。
针对本系统的公司工作人员、零售商、消费者三种不同的角色,系统的处理流程如下图所示:
word/media/image2.gif
word/media/image3.gif
近年来,J2EE 技术作为建立企业的标准平台日益成熟并发展迅速,越来越多的Web 应用都在J2EE 平台上开发,而作为J2EE 平台重要组成部分的JSP 更是广泛流传,JSP 页面不仅具有跨平台和跨Web 服务器的特性,并且能够将业务逻辑(JavaBean/JSP)、服务器端处理过程和视图层(JSP)的“所见即所得”的功能结合起来,同时实现显示、业务流程和流程控制等功能,从而快速的完成开发任务。采用JSP 技术构成Web 应用模型的有第一类设计模式、第二类设计模式以及模型—视图—控制器(MVC)模式,本文则采用MVC 模式
MVC 模式在1996 年有Buschmann 提出的,它强制性地把应用程序的输入、输出和处理分开,有三个核心模块构成:
1. 模型(Model):通过JavaBean/EJB 组件实现封装数据和所有基于对这些
数据的操作。它表示业务数据和业务逻辑。一个模型能为多个视图提供数据,而同一个模型可被多个视图重用,提高了应用的可重用性。
2. 视图(View):视图就是对数据的封装显示,也是用户看到并与之交互的界面。
3. 控制器(Controller):封装外界作用于模型的操作和对数据流向的控制等,即它接受用户的输入并调用模型和视图去完成用户的要求,如下图:
图4
首先控制器接收用户请求,并调用相应的模型构件去处理请求;然后模型根据用户请求进行相应的业务逻辑处理,并返回数据;最后用控制器来调用相应的视图显示返回的数据,并通过用户界面呈现出来。
在设计策略中,软件系统从构架上分为数据层、业务逻辑层、业务控制层和表示层,但主要集中在业务表示与业务逻辑层。表示层是以基于“瘦客户”技术的用户视图格式服务器端来表示,保留了构建客户端用户视图必要的显示格式和事件触发;而在表示控制逻辑层则如名称所描述的那样,实现了人机交互所需控制逻辑和部分业务会话逻辑,再加上贯穿所有系统逻辑层的业务实体,构成了以MVC模式为核心的Struts架构,将显示格式、显示控制逻辑、模型数据三部分有效地分隔开来,大大加强了系统架构的可扩展性和应用子系统的可插拔性。本文所设计的烟草信息管理系统为了应付业务激增带来的系统可扩展问题,需要系统内第四章 烟草信息管理系统框架设计25的业务逻辑关系存在鲜明的层次性,用层次性来降低模块间的耦合度,从而最大限度的组建每个功能块。这样就可以每个模块对全局的影响降到最低。
烟草信息管理系统体系结构如图所示分为3 层:
图5 烟草信息管理系统体系结构
本系统中各项功能需求的实现同各程序模块的分配关系:
表1 功能需求程序模块的分配关系
服务器端程序可DAO(数据访问对象)应用程序编程接口(API),对SQL SERVER数据库进行所有的访问。
服务器程序上可使用SQL SERVER 的对数据库的备分命令,以做到对数据的保存。
在网络软件接口方面,使用一种无差错的传输协议,采用滑动窗口方式对数据进行网络传输及接收。
用户管理模块。对其他模块提供信息的查询接口。包括订单查询和仓库查询等等。
零售商管理模块。对其他模块提供信息查询的接口。
1)客户信息表:
表2 客户信息表
2)烟草信息表:
表3 烟草信息表
3)烟草订货信息表:
表4 烟草订货信息表
4)烟草进货信息表:
表5 烟草进货信息表
客户机程序在有输入时启动接收数据模块,通过各模块之间的调用,读入并对输入进行格式化。在接收数据模块得到充分的数据时,将调用网络传输模块,将数据通过网络送到服务器,并等待接收服务器返回的信息。接收到返回信息后随即调用数据输出模块,对信息进行处理,产生相应的输出。
服务器程序的接收网络数据模块必须始终处于活动状态。接收到数据后,调用数据处理/查询模块对数据库进行访问,完成后调用网络发送模块,将信息返回客户机。
运行控制将严格按照各模块间函数调用关系来实现。在各事务中心模块中,需对运行控制进行正确的判断,选择正确的运行控制路径。
在网络传方面,客户机在发送数据后,将等待服务器的确认收到信号,收到后,再次等待服务器发送回答数据,然后对数据进行确认。服务器在接到数据后发送确认信号,在对数据处理、访问数据库后,将返回信息送回客户机,并等待确认。
在软体的需求分析中,对运行时间的要求为必须对作出的操作有较快的反应。网络硬件对运行时间有最大的影响,当网络负载量大时,对操作反应将受到很大的影响。所以将采用高速ATM 网络,实现客户机与服务器之间的连接,以减少网络传输上的开销。其次是服务器的性能,这将影响对数据库访问时间即操作时间的长短,影响加大客户机操作的等待时间,所以必须使用高性能的服务器。硬件对本系统的速度影响将会大于软件的影响。
表6 系统出错提示
故障出现后可能采取的变通措施,包括:
(1) 后备:使用附加存储设备备份数据。备份频率为每日一次。需手动备份。
(2) 恢复及再启动:如果数据造成丢失,可使用备份数据还原。
系统为用户提供移动数字证书或者使用用户令牌及令牌密钥来进行安全认证,在本地并不保存用户的任何信息,从而在最大程度上保护了用户的隐私,防止了用户信息的泄露。
由于数据的传输上需要通过网络传输,为了客户资料进行保密,需要在网络的传输过程中对数据进行加密。
系统采用了分层的结构进行设计,使系统各个部分分割开来,提高了系统灵活性和可扩展性。系统在三层架构的基础上,增加了一层公共层,将系统中通用的部分抽取出来,以便于系统的维护。在设计逻辑层时,我们采用了Façade模式,Facade模式基本框图如下:
word/media/image6.gif
图6 Façade结构
其中小圆代表业务逻辑层中的小的功能,系统子模块通过“门面Facade”来
自己获取所需的功能,实现了“高内聚,低耦合”的设计要求。在系统维护的过程中,我们可以通过测试各个层次之间的接口即可达到系统维护的要求。
本文来源:https://www.2haoxitong.net/k/doc/411a53330b4e767f5acfce78.html
文档为doc格式