开发者第1页共10页煤炭企业OA自动化办公系统设计概要第2页共10页目录1引言1.1编写目的本说明书目的在于明确说明系统各功能模块划分及其实现方式,指导开发人员进行编码。本说明书的预期读者为:项目经理,开发工程师,测试经理以及测试设计人员。1.2背景待开发软件系统的名称:煤炭企业OA设计概要此软件系统任务提出者:客户此软件系统任务开发者:开发小组此软件系统任务用户:客户单位人员及该单位面向的人群1.3范围系统包括的范围:公告发布、电子相册、论坛、系统管理等。2总体设计2.1概述2.1.1功能描述系统包括的范围:公告发布、电子相册、论坛、系统管理等。2.1.2运行环境2.1.2.1软件环境分类名称版本语种操作系统WindowsServer2003简体中文操作系统的附加功能无第3页共10页数据库平台Oracle8i简体中文数据库平台补丁无应用平台Tomcat6.0简体中文应用平台补丁无客户端软件MSIE6.0简体中文2.1.2.2硬件环境服务器最低配置推荐配置应用和数据库服务器1CPU:P42.0G1CPU:P42.8GMem:1GMem:2GHD:80GHD:120G2.1.3开发环境2.1.3.1服务器软件环境分类名称版本语种操作系统WindowsServer2003简体中文操作系统的附加功能无数据库平台Oracle8i简体中文数据库平台补丁无应用平台Tomcat6.0简体中文应用平台补丁无版本控制系统Cvs6.0简体中文客户端软件MSIE6.0简体中文2.1.3.2服务器硬件环境服务器最低配置推荐配置应用服务器、数据库服务器1CPU:P42.0G1CPU:P42.8GMem:1GMem:2GHD:80GHD:120G第4页共10页2.1.3.3开发机器软件环境分类名称版本语种操作系统WindowsServer2003简体中文操作系统的附加功能数据库平台Oracle8i简体中文应用平台Tomcat6.0简体中文开发平台NetBean6.1英文开发平台插件客户端软件MSIE6.0简体中文2.1.3.4开发机器硬件环境分类最低配置推荐配置开发机器1CPU:P42.0G1CPU:P42.8GMem:1GMem:2GHD:80GHD:120G2.2设计思想2.2.1系统构思本系统采用基于B/S架构实现。应用MVC设计模式的思想,对整个系统进行功能层次划分,大体分为三个层次——Model、Controller、View.Model主要包括了数据库物理存储、数据库访问更新模块及系统业务逻辑功能模块。数据库计划采用oracle数据库产品。数据库访问接口将采用两种方式实现,第一种为直接使用jdbc自主开发数据库访问模块;第二种为采用Hibernate实现。View主要包括用户界面,其中分为普通用户界面及管理员用户界面。这部分采用JSP/JSF等动态网页技术实现。Controller的作用是沟通和协调M和V,实现显示与后台处理业务的分离,既保证了后台的安全性、稳定性,又保证了显示层的简洁与高效。此部分计划采用Servlet技术实现。对于View和Controller部分,计划采用Struts技术实现,这样可以保证开发的效率。后台数据库与业务逻辑部分是系统开发的重点,进一步对业务逻辑进行模块化细分,大体可以分为以下功能模块:1)前台服务模块a)电子相册b)网站公告和新闻c)登陆认证模块d)论坛e)相册排行榜第5页共10页f)批量上传模块2)后台管理模块a)登陆认证模块b)用户管理模块c)权限与角色管理模块d)前台模块管理通过对上述模块的分析可以发现,对于前台服务模块大致可分为两大类,即信息发布和信息交互。信息发布类是指直接由系统使用者分类发布的、供公众阅读和学习用的信息,不需要公众的直接参与;信息交互类是指公众和系统使用者通过信息交互才能实现的信息服务功能。后台数据库分为物理数据库部分和数据库访问接口部分。系统功能模块结构层次图如下:由于开发时间有限,结合开发组内部人员的技术水平,考虑使用相对成熟的Struts框架技术,在项目原型开发阶段使用Struts和Hibernate的技术组合。根据项目运行状况再考虑是否使用其他一些新的技术,如Ajax、Spring等技术。前台功能模块数据库数据库访问接口系统管理权限与角色管理系统控制器门户网站功能界面后台管理界面用户信息管理前台模块管理电子相册新闻公告论坛登陆认证模块批量上传人气排行榜第6页共10页在数据库开发方面考虑到性能方面的一些要求:成百个用户在线使用,因此在数据库访问接口方面要进行连接对象的管理,如使用数据库连接池技术。由于本系统潜在用户数量较大,对于B/S结构的系统服务器压力就相应很大,因此为保证服务器能够足以承受实际运行当中的压力,发挥良好的性能,决定本系统服务器部分采用tomcat服务器软件。2.2.2关键技术与算法2.2.2.1JSP动态网页开发技术JSP(JavaServerPages)是一种动态网页技术标准。它用JAVA语言作为脚本语言的,JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于HTTP的应用程序。它的优点在于:对于用户界面的更新,其实就是由WebServer进行的,所以给人的感觉更新很快。所有的应用都是基于服务器的,所以它们可以时刻保持最新版本。客户端的接口简单,对于各种应用易于部署、维护和修改。2.2.2.2STRUTSStruts是一种开源的web开发框架或是一种开源的解决方案包。它是MVC模式的一种标准的实现方案之一。2.2.2.3SPRINGSpring是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架。2.2.2.4HIBERNATEHibernate是非常流行的对象关系映射工具,是连接Java对象模型和关系数据模型的桥梁。3系统功能设计3.1前台模块前台模块主要是面向普通用户的常用功能模块,包括电子相册模块、新闻公告模块、作品和专辑展区模块、相册排行榜模块、作品批量上传模块、登陆认证模块、摄影论坛模块等。第7页共10页3.1.1电子相册模块功能本模块主要功能是向用户提供一个管理和展示自己作品的网络平台,主要包含以下几方面:1)作品分类整理和存储:将摄影作品分类上传至服务器端;2)作品发布:展示摄影作品等;3)制作摄影作品专辑:制作具有一定主题意义的摄影作品集;4)修改和设置平台或用户的属性:设置一些关于平台的参数等;本模块是该系统的基础性模块,是其他系统模块的运行的根本。本开发小组采用动态页面技术实现,以方便用户对该平台的使用。3.1.2新闻公告模块功能本模块的主要功能是向用户发布有关本系统维护单位的最新信息,使公众及时了解摄影业的最新动态,更好的为用户服务。其主要包括以下几方面:1)公告2)新闻本模块基本都属于新闻性质的内容,即可以将本行业或本单位的一些动态进行发布,所以实现时可用同一界面。3.1.3相册排行榜模块功能本模块的主要功能是展示本组织内比较活跃的用户,以及这些活跃用户的摄影作品的总体情况。主要包括以下几方面:1)人气展示2)积分展示3.1.4作品批量上传模块功能本模块的主要功能是向用户提供一款能够快速批量的上传摄影作品的小平台,以便用户能较快的整理和上传自己的作品。主要包括以下几方面:1)作品的批量上传3.1.5登陆认证模块功能本模块的主要功能是向各类用户提供身份认证。主要包括以下几方面:1)普通用户登陆认证2)管理员登陆认证3)论坛用户登陆认证第8页共10页3.1.6论坛模块功能本模块的主要功能是向各类用户提供一个相互交流的网络讨论平台,使用户及时了解本摄影行业的最新的技术和设备,以及优秀的摄影平台欣赏等。3.2后台管理模块3.2.1部门管理模块功能系统管理员可修改部门名称及层次结构,进行对部门的增加和删除操作3.2.2权限或角色管理模块功能系统管理员可修改、删除、增加本后台管理系统对前台各个模块的管理权限和角色信息。3.2.3用户信息管理模块功能系统管理员可添加、删除、修改用户信息,并可制定员工的角色或权限属性。3.2.4登录管理模块功能系统管理员和前台信息普通管理员的登录页面,系统要求登录者提供帐号、密码、验证码,并进行身份确认及权限分析,以动态生成不同的操作界面。4系统数据结构设计4.1说明在实现时将各个功能及其属性进行封装、抽象成类,以便系统内部更加方便、高效的处理业务逻辑总产生的大量数据。4.2数据结构名称标识符数据项第9页共10页4.3数据结构与系统元素的关系数据结构名称对应模块5接口设计5.1用户接口5.1.1管理员界面5.1.1.1部门管理界面本界面主要实现部门的增删改,主要包括部门添加界面、所有部门信息列表界面、部门信息修改界面。其中在部门信息列表界面中包括几个主要链接:更新、删除、部门用户等。5.1.1.2权限和角色管理界面本界面主要实现权限和角色的增删改,主要包括权限的添加界面、权限列表界面、权限的更新界面、角色的添加界面、角色的列表界面、角色的更新页面。其中,在权限和角色的列表界面中包含几个主要链接:更新、删除、权限或角色用户链接等。5.1.1.3用户信息管理界面本界面主要实现用户的增删改,主要包括用户添加界面、所有用户信息列表界面、用第10页共10页户信息修改界面。其中在用户信息列表界面中包括几个主要链接:更新、删除、用户权限和用户角色等。5.1.2前台模块界面5.1.2.1门户网主界面5.1.2.2各个模块界面5.2外部接口说明本系统同外界的所有接口,包括与硬件、各支持软件之间的接口关系。指出输入、输出方,接口数据的特点等。外部接口输入方输出方接口数据系统用户界面使用者系统系统运行结果浏览器系统软件客户端浏览器系统运行结果6出错处理设计6.1出错信息6.2补救措施硬件故障及处理方法:故障原因处理技术处理方法数据库死机数据库恢复技术由管理员恢复数据库数据丢失数据库恢复技术由管理员恢复数据库或手工录入丢失的数据服务器断电恢复供电由管理员恢复供电并重新启动设备