1、目录第1章设计依据和标准11.1功效性11.2可靠性11.3易用性11.4效率11.5可维护性21.6可移植性21.7标准化2第2章系统总体架构设计32.1总体设计要求32.2系统技术架构42.2.1技术架构图42.2.2框架介绍42.3系统业务逻辑结构52.4J2EE研发平台52.5Web应用服务环境62.6系统步骤设计6第3章关键技术处理方案73.1基础技术介绍73.1.1MVC模式73.1.2三层技术83.2技术路线可行性和处理关键技术路径93.3数据资源处理方案103.4高性能页面响应处理方案103.5安全性处理方案10第4章 系统安全处理方案114.1物理安全114.2网络层安全11
2、第5章 网络系统设计125.1基础要求125.2应用设计125.3存放设计12第6章软硬件环境设计136.1硬件环境136.1.1服务器硬件环境配置136.2软件环境及开发环境136.2.1操作系统选择136.2.2开发工具及程序设计语言146.2.3测试工具146.2.4版本控制工具14第1章 设计依据和标准本项目包含到系统必需以实用为标准。采取成熟而且经过实践考验优异技术和处理方案。1.1 功效性和一组功效及其指定性质相关一组属性,具体包含:适合性:和要求任务能否提供一组功效和这组功效适合程度相关软件属性。正确性:和能否得到正确或相符结果或效果相关软件属性。互用性:和同其它指定系统进行交互
3、能力相关软件属性。依从性:使软件遵照相关标准,约定,法规及类似要求软件属性。安全性:和预防对程序及数据非授权有意或意外访问能力相关软件属性。充足考虑系统安全防护,含有较强数据管理机制和控制能力1.2 可靠性和在要求一段时间和条件下,软件维持其性能水平能力相关一组属性,具体包含:成熟性:和由软件故障引发失效频度相关软件属性。容错性:和在软件故障或违反指定接口情况下,维持要求性能水平能力相关软件属性。易恢复性:和在失效发生后,重建其性能水平并恢复直接收影响数据能力和为达此目标所需时间和能力相关软件属性充足考虑性价比。1.3 易用性和一组要求或潜在用户为使用软件所需作努力和对这么使用所作用评价相关一
4、组属性,具体包含:易了解性:和用户为认识逻辑概念及其应用范围所花努力相关软件属性。易学性:和用户为学习软件应用所花努力相关软件属性。易操作性:和用户为操作和运行控制所花努力相关软件属性。1.4 效率和在要求条件下,软件性能水平和所使用资源量之间关系相关一组属性,具体包含:时间特征:和软件实施其功效时响应和处理时间和吞吐量相关软件属性。资源特征:和在软件实施其功效时所使用资源数量及其使用时间相关软件属性。1.5 可维护性和进行指定修改所需努力相关一组属性,具体包含:易分析性:和为诊疗缺点或失效原因急为判定待修改部分所需努力相关软件属性。易改变性:和进行修改,排除错误或适应环境改变所需努力相关软件
5、属性。稳定性:和修改所造成未预料结果风险相关软件属性。易测试性:和确定已修改软件所需努力相关软件属性。1.6 可移植性和软件可从某一环境转移到另一个环境能力相关一组属性,具体包含:适应性:和软件无需采取有别于为该软件准备活动或手段就可能适应不一样要求环境相关软件属性。易安装性:和在指定环境下安装软件所需努力相关软件属性。遵照性:使软件遵照和可移植性相关标准或约定软件属性。易替换性:和软件在该软件环境中用来替换指定其它软件机会和努力相关软件属性。1.7 标准化本项目包含到各个系统模块设计、系统性能、代码编写等应符合中国相关软件项目标标准化要求:1.软件开发过程中作业标准化。2.确定每个作业表示形
6、式。3.确定每个文档资料格式。4.要求组符号。5.依据软件开发经验,制订出大家能够接收开发标准和进度。第2章 系统总体架构设计22.1 总体设计要求依据市场反应情况和现在软件系统主流设计思绪和方向,本系统总体设计要求以下: 系统采取B/S架构进行设计。 基于J2EE平台开发。 采取主流技术框架SSH(Spring、SpringMVC、Hibernate)。 系统支持主流关系型数据库:Mysql、Oracle、SqlServer等。2.2 系统技术架构2.2.1 技术架构图技术框架图2.2.2 框架介绍系统中采取SSH(Spring、SpringMVC、Hibernate)框架。Spring+S
7、pringMVC+Hibernate三大框架整合项目,java代码分为dao,service,controller三层,支持注解,事务。数据库默认MySQL,配置文件为src下config资源包中db.properties,以KEYVALUE形式保留数据库连接属性,方便移植修改。Hibernate是一款优异ORM框架,能够连接并操作数据库,包含保留和修改数据。Spring MVC是Javaweb框架,能够将Hibernate集成进去,完成数据CRUD。Hibernate使用方便,配置响应XML文件即可。2.3 系统业务逻辑结构开发拓扑图2.4 J2EE研发平台J2EE为搭建含有可伸缩性、灵活性
8、、易维护性商务系统提供了良好机制:J2EE是一套全然不一样于传统应用开发技术架构,包含很多组件,关键可简化且规范应用系统开发和布署,进而提升可移植性、安全和再用价值。J2EE关键是一组技术规范和指南,其中所包含各类组件、服务架构及技术层次,全部有共同标准及规格,让多种依循J2EE架构不一样平台之间,存在良好兼容性,处理过去企业后端使用信息产品相互之间无法兼容,企业内部或外部难以互通窘境。J2EE组件和“标准”Java类不一样点在于:它被装配在一个J2EE应用中,含有固定格式并遵守J2EE规范,由J2EE服务器对其进行管理。J2EE规范是这么定义J2EE组件:用户端应用程序和applet是运行在
9、用户端组件;Java Servlet和Java Server Pages (JSP) 是运行在服务器端Web组件;Enterprise Java Bean (EJB )组件是运行在服务器端业务组件。2.5 Web应用服务环境严格意义上Web服务器只负责处理HTTP协议,只能发送静态页面内容。而JSP,ASP,PHP等动态内容需要经过CGI、FastCGI、ISAPI等接口交给其它程序去处理。这个其它程序就是应用服务器。比如Web服务器包含Nginx,Apache,IIS等。而应用服务器包含WebLogic,JBoss等。应用服务器通常也支持HTTP协议,所以界限没这么清楚。不过应用服务器HTT
10、P协议部分仅仅是支持,通常不会做尤其优化,所以极少有见Tomcat直接暴露给外面,而是和Nginx、Apache等配合,只让Tomcat处理JSP和Servlet部分。2.6 系统步骤设计第3章 关键技术处理方案33.1 基础技术介绍基于目前Web 应用程序开发面临问题,项目结合现在比较流行开源框架SSH (Spring 、Struts 、Hibernate) ,具体讨论其基础相同性及相关基础概念,提出了一个开发JavaEE Web 应用轻量级处理方案,此系统架构能够在短期内搭建结构清楚、可复用性好、可扩展性好、维护方便Web 应用程序。MVC模式MVC模式是一个用于将用户界面逻辑和业务逻辑分
11、离开来基础设计模式,它将数据处理、界面和用户行为控制分为:Model (模型)View (视图)Controller (控制器)。 Model:负责目前应用数据获取和变更及相关业务逻辑。可用JAVABEAN 来表现; View:负责显示信息。能够使用JSP 、VELOCITY 模板等技术。其优点有:Controller:负责搜集转化用户输入。常见一个SERVLET 来实现;View 和Controller 全部依靠于Model ,不过Model 既不依靠于View ,也不依靠于Controller ,这是分离关键优点之一,这么Model 能够单独建立和测试方便于代码复用,View 和Contr
12、oller 只需要Model 提供数据,它们不会知道、也不会关心数据是存放在SQL Server 还是Oracle 数据库中或别什么地方。3.1.1 三层技术3.1.1.1 三层结构框架及功效因为传统二层C/S结构存在以下多个局限:它是单一服务器且以局域网为中心,所以难以扩展至广域网范围或Internet大型应用模式;难以管理大量用户机;受限于供给商,整个系统和特定应用程序联络紧密;软、硬件组合及集成能力有限。所以,在乐清电子政务应用系统中以三层结构体系为主。三层结构是将应用功效分成表示层、业务逻辑层和数据层三部分。其处理方案是对这三层进行明确分割,并在逻辑上使其独立。各层说明以下:表示层担负
13、用户和应用间对话功效,经过浏览器模式实现表示层,组成B/S结构;或使用能够自动更新瘦用户端软件实现表示层,组成基于三层体系“用户服务器”结构;业务逻辑层包含了具体业务处理逻辑程序相当于应用本体;数据层负责管理对数据库数据读写。关键是利用大型关系型数据库进行快速、大量数据处理。3.1.1.2 选择三层结构优点选择三层结构含有以下优点:系统管理简单,大大降低用户机维护工作量。基于B/S结构应用模式无需用户端维护工作;基于“用户服务器”结构用户端能够实现自动更新下载,也无需用户端维护工作。含有灵活硬件系统组成对于各个层能够选择和其处理负荷和处理特征相适应硬件,方便实现负载均衡。清楚、合理地分割三层结
14、构并使其独立,能够使系统组成变更很简单。所以,被分成三层应用基础上不需要修正。提升程序可维护性三层B/S结构中,应用各层能够并行开发,各层也能够选择各自最适合开发语言。因为是按层分割功效,所以各个程序处理逻辑变得比较简单。进行严密安全管理涉密关键应用安全管理很关键。在三层C/S结构中,识别用户机构是按层来构筑,对应用和数据存取权限也能够按层进行设定。比如,即使外部入侵者突破了表示层安全防线,若在功效层中备有另外安全机构,系统也能够阻止入侵者进入其它部分。3.1.1.3 中间技术消息中间件采取消息中间件技术、基于J2EE三层结构构建面向各级单位数据交换体系中。消息中间件是在平台(硬件和操作系统)
15、和应用之间通用服务,含有标准程序接口和协议。针对不一样操作系统和硬件平台,它们能够有符合接口和协议规范多个实现。消息中间件起到了一个“平台通信”作用,首先使深入开发工作能够构建在一个统一开发环境(平台)之上,无须关心具体网络编程技术细节,大大简化了设计和编程工作;其次,中间件完全负责消息通信,用户只需关注于业务系统运行、开发,有效地提升了效率。消息中间件通信传输类型:可靠传输能够在确保报文正确性前提下实现相正确实时传输。每个报文有相正确生命周期,在网络超时或接收方宕机时终止发送请求,即报文有可能丢失或非次序抵达。可靠传输对处理机和网络开销较小,通常适适用于对传输速率要求较高准实时系统,而对报文
16、丢失有一定冗余度。确保传送能够确保信息无丢失、按次序传送。在信息发送者和接收者之间网络出现中止或接收者方机器出现故障,在网路恢复连接后,仍然能确保在故障时期内全部信息按次序正确抵达。确保传送高可靠性是以较多资源开销(处理机、网络)作为代价。所以,确保传送通常是用于传送频率比较低,但传送可靠性要求高信息传输,如关键文件传输等。该传输类型类似于电子邮件传输方法。数据中间件在综合数据支撑平台中,为了整合桌面型数据库成为一个可共享含有用户和权限管理虚拟数据库,需要采取数据中间件以屏蔽掉数据节点分布、数据库表异构特征,实现虚拟数据库合理软件层次结构。3.1.1.4 安全应用技术为了在电子政务系统应用层、
17、网络层实施细粒度访问控制,实现对用户身份判别、实现信息保密性、完整性、真实性和抗抵赖性等保护,采取当今流行高强度安全策略数字证书技术。应用系统能够基于数字证书和相关经国家相关部门认可密码算法认证登录系统用户真实身份,进行数字署名和验证署名,采取数字署名技术处理抗抵赖性和数据完整性问题,利用安全系统提供加密算法,处理信息保密性问题。对关键数据库访问,还要经过安全代理,对访问者身份基于数字证书进行高强度认证,对其访问应用系统请求进行确定,假如该用户没有访问权限,其访问请求将被安全代理拒绝。同时,在安全代理服务器上还能够完成包含包过滤、加密、解密等技术,从而实现权限确定和数据密存密传功效。3.2 技
18、术路线可行性和处理关键技术路径三层应用构架是一个成熟开发模式,能够应用到电子政务中,针对行文应用特殊要求,提议Domino平台这一成熟体系,以确保电子政务正常运作。Java技术是一个成熟技术,已经得到广泛应用,J2EE技术规范已经得到大中间件生成厂商如BEA企业、IBM企业产品化支持。中间件技术是软件产品发展方向,现在市场上已经有大量产品可供选择,所以在结合电子政务需求开发数据中间件是可行,在数据交换体系中采取消息中间件已是可行,符合发展方向。安全应用技术是电子政务中一个关键指标,中国很多单位进行过大量研发工作,有已形成了产品,所以也含有可行性。虚拟数据库是处理数据共享、系统平滑过渡必又之路,
19、结合数据库技术和中间件技术,一定能达成目标,创优质工程。3.3 数据资源处理方案对不能(不方便)共享桌面型数据库,为临时维持现有应用不变且又能提供数据资源共享,提出了一个完备基于整体应用数据库处理方案即虚拟数据库处理方案。其基础思想是将分散、局部桌面形数据库(Foxpro、Access)利用网络资源和虚拟数据库应用将它们在逻辑上统一起来,实现展现给用户一个完整、统一数据库访问模式,同时提供数据资源用户和权限管理功效,即对用户和应用程序来说就仿佛访问大型关系型数据库一样方便地访问数据资源,而不是在访问分散于不一样服务终端数据库,全部处理全部将在虚拟数据库构架中完成,不需要用户或应用程序包含任何底
20、层输入。3.4 高性能页面响应处理方案从系统角度来了解软件,确定对所开发系统综合要求,并提出这些需求实现条件, 和需求应该达成标准。这些需求包含:功效需求(做什么),性能需求(要达成什么指标), 环境需求(如机型, 操作系统等),可靠性需求(不发生故障概率), 安全保密需求, 用户界面需求,资源使用需求(软件运行是所需内存、CPU 等),软件成本消耗和开发进度需求,预先估量以后系统可能达成目标。3.5 安全性处理方案安全性测试关键是测试系统在没有授权内部或外部用户对系统进行攻击或恶意破坏时怎样进行处理,是否仍能确保数据和页面安全。测试人员能够学习部分黑客技术,来对系统进行攻击。 另外,对操作权
21、限测试也包含在安全性测试中。具体测试内容以下:o 实施添加、删除、修改等动作中是否做过登录检测。o 退出系统以后操作是否能够完成。o 全部插入表单操作中输入特殊字符是否能够正常输正常存放,特殊字符为:!?#¥%*()-+=、|;:”?/,。o 在带有参数回显数据动作中更改参数,把参数改为特殊字符并加入操o 测试表单中有没有做标签检测,标签检测是否完整。第4章 系统安全处理方案44.1 物理安全确保计算机系统安全,可靠地运行,确保系统在对信息进行采集、传输、存放、处理、显示、分发和利用过程中不会受到人为或自然原因危害而使信息丢失、泄漏和破坏,对计算机系统设备、通信和网络设备、存放媒体设备和人员所
22、采取安全技术方法,实体安全包含环境安全,设备安全和媒体安全三个方面。 环境安全包含受灾防护、区域防护,设备安全包含设备防盗、设备防毁、预防电磁信息泄露、预防线路截获、抗电磁干扰、电源保护等,媒体安全是媒体数据和媒体本身。4.2 网络层安全为保护数据处理系统而采取技术和管理安全方法,保护计算机硬件、软件和数据不会因偶然和有意原所以遭到破坏、更改和泄露。4.2.1防火墙策略防火墙指是一个由软件和硬件设备组合而成,在内部网和外部网之间专,用网和公共网之间界面上结构保护屏障,是一个获取安全性方法形象说法,它是一个计算机硬件和软件结合,使Internet和Intranet之间建立起一个安全网关(Secu
23、rity Gateway),从而保护内部网免受非法用户侵入,防火墙关键由服务访问规则、验证工具、包过滤和应用网关4个部分组成,防火墙就是一个在计算机和它所连接网络之间软件或硬件,该计算机流入流出全部网络通信和数据包均要经过此防火墙。4.2.2 拒绝服务攻击防范分布式拒绝服务(DDoS:Distributed Denial of Service)攻击指借助于用户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击,从而成倍地提升拒绝服务攻击威力。通常,攻击者使用一个偷窃帐号将DDoS主控程序安装在一个计算机上,在一个设定时间主控程序将和大量代理程序通讯,代理程序已经被
24、安装在网络上很多计算机上,代理程序收到指令时就发动攻击,利用用户/服务器技术,主控程序能在几秒钟内激活成百上千次代理程序运行。第5章 网络系统设计55.1 基础要求本系统全部包含软件要求基于J2EE平台开发,而且达成以下要求: 系统将采取B/S结构。 系统将采取多层架构体系结构。 系统中采取SSH(Spring、SpringMVC、Hibernate)框架。5.2 应用设计本方案采取多层架构技术,实现项目标可扩展性、可维护性,和结合其它相关技术保障项目能成功实施。MVC 模式是一个用于将用户界面逻辑和业务逻辑分离开来基础设计模式,它将数据处理、界面和用户行为控制分为:Model (模型)Vie
25、w (视图)Controller (控制器)。1、 Model:负责目前应用数据获取和变更及相关业务逻辑,可用JAVABEAN 来表现。2、 View:负责显示信息,能够使用JSP 、VELOCITY 模板等技术。3、 Controller:负责搜集转化用户输入,常见一个SERVLET 来实现。 5.3 存放设计提供高可靠性数据存放,经过存放系统可靠性设计和磁盘镜像、RAID技术,确保留放介质内数据可靠性。第6章 软硬件环境设计66.1 硬件环境6.1.1 服务器硬件环境配置服务器端:硬件:机型:CPU:E5-4603 2.20GHz内存:8.00GB硬盘:3TB软件:操作系统:Windows
26、 Server R2 Enterprise数据库:MySQL 5.5.43支撑软件:Apache、jdk、TeamViwer、rar6.2 软件环境及开发环境软件环境处理方案关键包含操作系统选择、数据库环境、开发工具及程序设计语言、测试工具、版本控制工具。6.2.1 操作系统选择Windows: 向后兼容性、广泛外围兼容性、多显示器支持、多任务处理等。主流操作系统对比表序号内容UNIXWindowsLinux1可管理性很好可管理性很好可管理性可管理性好,且开放源代码,必需时可进行源码级修改。2可维护性系统维护难度较大,服务器可靠性高,支持二十四小时长时间不间断运行。系统维护难度较小,维护软件简
27、单易用,不过服务器整体稳定性稍低。系统维护难度较大,有维护软件工具可选,服务器稳定,支持连续二十四小时不间断运行。6.2.2 开发工具及程序设计语言代码编写:MyEclipse 编写语言:Java(后台)、B-JUI(前端)数据库开发:MySQL5.5.436.2.3 测试工具功效测试自动化:QTP、Selenium、Loadrunner、Jmeter等。测试管理工具:MQC、禅道、JIRA等。6.2.4 版本控制工具版本控制工具:SVN版本控制是对已做成软件在发展过程中一个质量管理,各大企业对自己软件全部有一套版本控制方法。我们开发软件系统绝不是“一锤子买卖”,推出了第一期软件试用版,还会有第二期软件补充进来,两期软件到一定阶段全部将定为正式版,而且以后还会继续发展,到一定时候还要更新。何时定为正式版,何时宣告版本升级,全部需要有明确要求和界限,两个版本之间任何修改和维护全部需要一套管理措施。升级也好,更新也好,全部需要考虑和原来版本兼容,以保护用户投资利益。