南航计算机专业毕业设计论文文档格式.docx
《南航计算机专业毕业设计论文文档格式.docx》由会员分享,可在线阅读,更多相关《南航计算机专业毕业设计论文文档格式.docx(17页珍藏版)》请在冰豆网上搜索。
第一章项目整体说明
1.1本系统作用
组织的核心竞争力源自单位对内外部资源的有效利用。
对它们之间的关系进行协调,最大限度的发挥所有资源的作用,并用系统的观点,在整个系统价值最大化的基础上来发挥各个资源的作用,使资源的运作产生协同效用。
因此可通过协同办公系统打造单位的核心竞争力。
本协同办公系统的主要作用为:
1、建立内部的通信平台。
2、建立信息发布的平台。
3、文档管理的自动化。
4、工作流程的自动化。
5、行政日常事务处理。
6、安全机制的可靠性。
本系统旨在加速单位信息化进程,充分利用计算机和现代通讯手段面向单位服务。
建立单位内部信息交流的快速通道,以共享信息资源。
强化部门业务管理,加强各业务部门之间的交流。
实现单位信息的快速上传下达,促进协同办公。
提高办公效率,为各级领导及业务人员提供辅助办公和决策服务。
1、本系统将最大限度地提高办公效率和办公质量,降低管理和办公成本,改善办公环境和条件,提高办公管理和决策的自动化和科学化水平。
2、以人为中心,致力于帮助用户实现共享资源、规范流程、推动执行的目的。
帮助用户节省办公费用,减少中间环节,优化业务流程,提高整体效率,促进管理进步。
简单的说,有以下两点:
1,利用技术的手段提高办公的效率
2,信息化,可方便的生成统计报表等。
1.2设计原则
以应用为核心,要突出“实用、易用、简洁、稳定”。
既注重实效,满足用户的现实需要,又为系统的后续升级和扩展留有余地。
在技术实现上,要突出“结构清晰、实现合理、通俗易懂(简单)”。
1.实用:
满足用户现实需要,解决实际问题,做细核心功能。
2.易用:
使用方便,各项功能一目了然。
满足用户的使用习惯,易使用、易维护、易升级。
实现“傻瓜”式的操作,将实施、培训成本和周期降到最低。
3.简洁:
页面简洁,功能简洁,每一个元素都有存在的意义。
4.稳定:
从底层数据库到功能层经过严格测试,能在不同的硬件环境中长期平稳运行。
1.3功能说明
OA是辅助办公的软件,使用OA与不使用OA相对比的好处是:
可以用计算机管理所有的数据,并可以方便的实现统计与报表的功能。
提高办公效率。
(实现信息化)。
以下是一个OA系统的全部功能列表:
说明:
不是所有的OA都有全部的功能,而是根据需求确定的。
第二章项目实现说明
2.1软件开发的步骤说明
需求确认—概要设计—详细设计—编码—单元测试—集成测试—系统测试—维护。
单元测试是由程序员自己来完成,最终受益的也是程序员自己。
可以这么说,程序员有责任编写功能代码,同时也就有责任为自己的代码编写单元测试。
执行单元测试,就是为了证明这段代码的行为和我们期望的一致。
集成测试,也叫组装测试或联合测试。
在单元测试的基础上,将所有模块按照设计要求(如根据结构图〕组装成为子系统或系统,进行集成测试。
实践表明,一些模块虽然能够单独地工作,但并不能保证连接起来也能正常的工作。
程序在某些局部反映不出来的问题,在全局上很可能暴露出来,影响功能的实现。
系统测试是将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,进行信息系统的各种组装测试和确认测试,其目的是通过与系统的需求相比较,发现所开发的系统与用户需求不符或矛盾的地方,从而提出更加完善的方案。
2.2具体需求是什么?
模块
功能
说明
组织与用户管理
岗位管理
部门管理
用户管理
系统权限
初始化权限
分配权限
验证权限
网上交流--论坛
版块管理
看帖、发帖、回帖
文章管理
审批流转(工作流)
表单模板管理
审批流程管理
审批流转
表单查询
按列出的顺序实现功能。
效果以静态页面为准(需求)。
第三章本项目(OA)的整体设计
3.1JavaEE的三层架构
3.2关于分层的说明
1,上面调用下面,即View调用Service,Service调用Dao。
2,层与层之间用接口。
除定义的接口外,不能使用其它层的特有类或接口。
3,使用实体作为DTO(DataTransferObject,数据传输对象)
要做到任一层换掉后,其他层不受影响。
我们在此项目中使用两层:
View+Service即在Service中直接操作Hibernate.Session。
因为如果使用三层,在Service中就会有一部分方法只是直接调用DAO中的方法。
一般情况下只有在多个数据源的场合下适合引入DAO层。
3.3有关分层的几个问题
1,一定要分层吗?
不一定。
假如公司要求你写一个可以给指定员工发送短信的小程序,用于开会通知与自动发送生日祝福短信。
这个程序很小,没有多少行代码,而且不变,这时不分层可以吗?
完全可以呀。
但我们在写程序时,还是要分层的,分层的程序结构清晰,可维护性高。
2,一定要3层吗?
分3层是推荐的,而不是必须的,应根据自己的具体情况进行安排。
我们如果使用3层的结构,用起来就麻烦,因为在Service中会有一部分方法只是直接调用Dao中的方法,而Dao中的方法只是调用Session完成某操作。
此时分2层更好,即在Service中可直接操作Session,以简化结构。
其实Hibernate已经可以支持多种数据库。
3,一定要使用接口吗?
以前就有同学问我:
“在设计程序时确定的技术在开发完成后一般不会更换的,实现类一般也不会更换,这种情况还用接口吗,一般的小项目是不是可以不使用接口?
”。
是的,如果不会变(一般也不会变),这是完全可以的。
3.4所用框架、技术
编号
工具
版本
1.
Struts2
2.1.8.1
2.
Hibernate
3.6.0
实现持久化操作
3.
Spring
2.5
4.
jBPM
4.4
工作流支持
5.
Junit
4
单元测试
6.
jQuery
1.4
还有jQuery.validate与jQuery.treeview等小插件
3.5开发环境
操作系统
WindowsXP
开发工具
MyEclipse8.6
Eclipse
数据库
MySql5.0.22
Web容器
Tomcat6.0
浏览器
IE6
1,推荐使用MyEclipse,这样出现工具问题可以一起解决。
当然也可以使用自已熟悉的工具,如Eclipse、NetBeans、IntelliJidea。
现在的重点是代码实现,不是工具。
应使用有效的工具。
2,要注意使用的MySql与JDBC驱动的版本要兼容。
3,显示的技术(js,css)有兼容的问题,写出的代码可能在某些浏览器中不能正常运行,这就需要在写代码时多使用JS框架,让框架帮我们解决兼容的问题。
3.6代码规范
1,命名:
使用驼峰命名法。
a)类、接口:
每个单词的首字母大写。
例:
MyDateConverter
b)变量、方法:
第一个单词的首字母小写,其他单词的首字母都大写。
myDateConverter
c)常量:
全部字母都大写,单词之间使用’_’隔开。
例,DEFAULT_PAGE_SIZE
2,使用有意义的名称,慎用缩写。
3,注释:
在代码中加入适当的注释:
说明步骤,与说明非简单逻辑。
4,空行:
在代码中加入适当的空行,就像写文章时要分段一样(增强可读性)。
5,要格式化代码、一个java文件中的代码不要过多、一个方法中的代码不要过多。
总之,要保证代码的有效、清晰、简洁(→可读)。
1,有效:
这是第一目标,代码要是可以解决问题的。
2,清晰:
在有效的前提下,让代码结构与思路清晰。
3,简洁:
代码与逻辑应尽量的简单,不要是给别人讲别人都听不明白。
3.7约定
1,工程中所有的文件都采用utf-8编码。
所有的页面都是使用utf-8编码,这样方便解决表单内容的乱码问题。
乱码一般情况下是乱用编码产生的。
2,实体的主键属性的类型使用Long型。
第四章项目计划
知识点
预计时间
1.搭建环境+基础功能
a)Dao设计
1.Struts基础
2.Hibernate基础
1天
2.组织用户管理
a)岗位管理
b)部门管理
c)用户管理
1.一般的实体设计
2.实体映射(映射文件)
3.增删改查功能
4.树状显示
5.使用jQuery.validate进行表单验证
2天
3.系统权限
a)创建权限
b)分配权限
c)使用权限
1.jQuery的一般使用
2.权限控制方案
4.论坛
a)论坛管理
b)论坛基本功能
c)文章管理
1.分页
2.在线编辑器FCKeditor
3天
5.jBPM+审批流转
a)工作流框架jBPM
b)审批流转功能
1.工作流框架jBPM
2.工作流的一般应用
4天
第五章准备环境
5.1创建数据库,注意编码
1,使用MySql数据库。
2,创建数据库时,要注意编码要支持中文。
3,建表语句如下:
createdatabaseoadefaultcharactersetutf8;
showcreatedataba