1关于OA办公系统需求分析关于OA办公系统需求分析-----------------------------------------------------------------------------------1第一章绪论--------------------------------------------------------------------------------------------------------11.2本文所做工作------------------------------------------------------------------------------------1第二章系统开发技术-------------------------------------------------------------------------------------------22.2Spring技术----------------------------------------------------------------------------------------------3第三章系统分析-------------------------------------------------------------------------------------------------63.2系统分析-------------------------------------------------------------------------------------------------73.2.3我的办公桌模块------------------------------------------------------------------------------93.2.4系统管理模块---------------------------------------------------------------------------------9第四章数据库设计---------------------------------------------------------------------------------------------114.1表格图---------------------------------------------------------------------------------------------------11第五章系统实现过程------------------------------------------------------------------------------------------13第六章系统的测试与运行------------------------------------------------------------------------------------15第一章绪论1.1选题背景在正常办公中,企业通常会遇到许多资源和数据,比如员工资料、邮件、申请记录、打印机、计算机等,这些资源和数据管理不善情况下通常凌乱不堪,在需要时不知道存放在何处,从而影响工作效率。因此,我们设计了能满足这种需求的系统--企业WebOA系统。通过企业WebOA系统对企业日常办公进行管理,满足了企业日常办公管理各方面的需求,实现了企业员工之间短消息的发送与接收功能,大大的方便了企业内部人员沟通。1.2本文所做工作为了开发出该系统并且是系统能够真正达到适用、够用、好用2的标准一配合用户单位的使用,查阅相关的书籍及电子文档,也向先辈们请教。在开发设计过程中,采用现在流行的SSH框架整合和Jquery、Ajax技术,通过Hibernate连接数据库,借助一些工具优化系统。另外,为了增加系统的实用性,使之能尽量与实际的应用系统和用户需求相吻合,我对许多同类系统的内容、功能进行了分析与对比,吸取了它们的可取之处,借鉴了一些经验。1.3本文的安排整个设计共分为6章,各章的主要内容安排如下:1.绪论。介绍论文的选题背景、所做工作以及论文的结构安排。2.系统开发技术。主要介绍本系统用到的主要技术。3.系统分析。主要介绍系统开发前的前期工作,包括可行性分析及系统设计思想与需求规定。从用户需求的角度从系统的角度应该达到的功能、性能、效率等指标。4.数据库设计。为了使软件开发者对该软件的功能划分、数据结构及业务流程有一个大概的理解,使之成为整个开发工作的开始。5.系统实现。主要是详细说明项目是如何执行的及界面展示。6.系统测试与运行。阐述测试的方法,测试的步骤、测试达到的效果。第二章系统开发技术2.1Jquery与JavaScript技术3jQuery是继prototype之后又一个优秀的Javascrīpt框架。其宗旨是--WRITELESS,DOMORE,写更少的代码,做更多的事情。jQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTMLdocuments、events、实现动画效果,并且方便地为网站提供AJAX交互。在Jquery技术中使用万能的$几乎可以做到一切Ajax所拥有的技术,Jquery使用简单方面,它是一个轻量级的JS库,在使用的时候只需要将其编译好的JS文件引入即可使用,另一方面其UI插件做的视图效果非常理想,同样也是方便应用。jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。2.2Spring技术Spring的核心是个用于构造Java应用程序的轻量级框架,实现了Ioc模式的容器。其中的core包是框架的最基础部分,并提供依赖注入特性来使你可管理Bean容器功能;context包提供了一种框架式的Bean访问方式(ApplicationContext.xml),还添加了文本消息的发送;DAO包则提供了JDBC的抽象层。也提供了一种方法实现编程性和声明性事务管理,不仅仅式针对实现特定接口。在Spring中重要的式MVC模式:View出于客户端层,通常用jsp,即页面显示部分;Controller也处于服务端层,通常用Servlet来实现,即页面显示的逻辑部分实现;Model处于中间层,通常用服务器端的javabean,即业务逻辑部分的实现。4对于一些公用的方法,则可以放在一个类中。2.3JPA技术JPA通过JDK5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。可以按照Java的基础语义进行持久化开发。2.4FireWorkflow插件FireWorkflow是一款国内的开源插件,用于工作流的设计部署,相对于国际上比较有名的几个工作流引擎,此框架的优势是结构比较简洁,扩展性比较好!此插件和spring,JPA一样是几个普通的jar包,嵌入到的系统中以解决工作流领域的问题。FireWorkflow是面向开发人员的,由模型,引擎,设计器,流程管理四部分组成,其流程设计器与主流IDE紧密集成,在Eclipse的插件可以让开发人员调试流程就像调试基本的java类一样简单。FireWorkflow自带7张表,由于本系统本身就拥有大量的数据表,所以FireWorkflow相对于目前比较流行的JPBM的30张表显的异常简洁。另外,选择此插件的另一个原因就是此插件的开发是基于Spring文件开发的,正好与本系统很好的整合在一起.2.5ApacheJames邮件服务器ApacheJames简称James,是JavaApacheMailEnterpriseServer的缩写。James是100%基于Java的电子邮件服务器。它5是一种独立的邮件服务器,并提供了一个完整的电子邮件解决方案,用来收、发电子邮件。James服务器的核心是一个名为config.xml的配置文件,在第一次启动服务器后该系统会自动生成一个config.xml文件,服务器所要执行的动作都是基于此配置文件,可以再与外网失去连接的情况下在局域网内收发邮件。配置文件里面的DNS就可以与外网进行邮件收发,不过很大程度上会给别的服务器当做垃圾邮件处理,最好还是用在自己的局域网内做内部邮件使用。2.6Struts技术Struts是一个基于J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的,是开发Web应用程序的开放源码框架。Struts把Servlet、JSP、自定义标签和信息资源(messageresources)整合一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大地节省了时间。本系统选用Struts作为MVC的控制器,因为它足够成熟,用户群广泛。虽然它也有缺点,但完全利用别的软件弥补,比如利用Sitemesh代替Titles等。WebWork很优秀,但起步晚,用户群太小;JSF和Tapestry是重量级的MVC架构。通过这个两个方面的对比即可得出Struts的两大优点,即用户群大且轻量级。2.7JSP页面技术JSP产生于Servlet之后,主要是为了解决Servlet中输出HTML代码效率低的问题而产生的。JSP技术比较简单,类似于ASP、6PHP这些脚本语言。JSP的技术主要是由以下两个部分组成:JSP的基本语法:两个注释、3个脚本元素、8个动作指令。JSP的九大内置对象:request请求对象、response响应对象、pageContext页面上下文对象、session会话对象、application应用程序对象、out输出对象、config配置对象、page页面对象和exception例外对象。第三章系统分析3.1需求分析3.1.1引言软件需求分析的编制是为了使用户和软件开发者双方对该软件的初始化规定有一个共同的理解,使之成为整个开发工作的基础。3.1.2任务概述Web版或局域网系统,应用范围为政府机关大中小企业单位。相关人员对计算机操作和业务了解应有一定的基础。3.1.3需求规定A.对性能的规定:软件支持的终端数根据数据库支持的用户数来确定;软件支持的并行操作的用户应在100以上。B.对性能的规定:速度要快,对于小数据量的数据记录要在短时间内实现各种操作和转换传送;当业务需求发生变化时,该软7件应能对这些变化具有良好的适应能力,保持代码与表数据的一致性。而且一定的环境或软件或操作方式不发生变化。C.输入输出要求:对输入输出的数据必须给与相应的格式类型、数值范围及精度说明。D.其他专门要求:用户为企事业涉及到公司机密以及财务,对数据的保密性、安全性尤其重视,同时对软件使用方便要求,对可维护性、可补充性、易读性、可靠性、运行环境可转换性等都有比较高的要求。3.2系统分析3.2.1编制流程后台功能图如下所示:8前台功能图如下所示:3.2.2用户身份验证模块9本系统功能的开发与设计,是完全针对公司内部进行办公管理以及为各部门员工提供便捷的电子化交互平台搭建的。用户身份验证模块是公司办公自动化管理系统重要组成部分之一,它主要功能是在系统用户进入系统时的身份验证以及在不同页面浏览时的身份验证,以防止公司重要资料的泄露。3.2.3我的办公桌模块此模块包含了部门管理、电子邮件、个人资料管理3个子模块,主要是用于日常的办公需要,所有的用户都拥有此模块【部门管理】:主要对门门的增删查改【电子邮件】:此部分主要用于内部邮件的收发,用户可以在与外网无法连接的情况下进行收发带附件的邮件,目前对于附件没有什么要求(对邮件进行增删查)【个人资料管理】:用于修改自己的个人资料(对用户进行增删查改)3.2.4系统管理模块在本系统中,管理员的权限是最大的,这也是考虑到了本系统的安全性而设计的,防止公司机密外泄,本模块包含了登陆身份验证,系统管理员的管理。10【管理员】:管理本系统的管理员3.