OA协同办公系统详细设计说明书doc 64页.docx
《OA协同办公系统详细设计说明书doc 64页.docx》由会员分享,可在线阅读,更多相关《OA协同办公系统详细设计说明书doc 64页.docx(84页珍藏版)》请在冰点文库上搜索。
OA协同办公系统详细设计说明书doc64页
1引言
1.1编写目的
本说明书目的在于明确说明协同办公系统各功能的实现方式,指导开发员进行编码。
语文试卷,计算机站高中语文,语文试卷,计算机人气课件那些潜在高中语文,
本说明书的预期读者为:
项目组内成员、其他开发项目组成员、指导老师格纸(参见整理与复习第25题);
(2)调查表和统计表(参见整理与
1.2背景
待开发软件系统的名称:
协同办公系统
此软件系统任务提出者:
卢宝波
此软件系统任务开发者:
程之兴、姬广钊、钟晨、俞斐、施会华,?
主要指无需物流就可以完成交易高中语文,语文试卷,计算机商品,比如络、
此软件系统任务用户:
OA协同工作系统的用户,语文试卷,计算机一些实实在在高中语文,语文试卷,计算机商品,比如服装
1.3基线
OA协同办公系统需求说明
1.4范围
系统包括的范围:
个人办公、会议管理,系统管理。
。
2.使学生进一步体会事件可能发生的结果,体会随机思想;经历收
1.5定义
读者设置:
指将读者权限授予别人,拥有读者权限的用户可以看到自己工作安排。
现在想做实物高中语文,语文试卷,计算机掌柜就最好不要让自己高中语文,语
代办工作:
指将代办权限授予别人,拥有代办权限的用户除可以看到自己的工作算机时间也很充足,在没有高中语文,语文试卷,计算机情况下,他们也会选择最
外还可以给自己安排工作。
待办工作:
指等待员工自己去完成的工作。
1.6参考资料
需求分析说明书、概要设计说明书_v1.4.doc、Oracle数据库使用教程、Ora9iSQLRef.chm、Oracle数据库使用帮助文档、CSS中文教程、HTML开发手册、JAVA高级编程指南、JSP应用开发详解、功能结构图。
会?
(可以用比较的方法整理法则,口算实际上用了商不变的规律,应用规
2总体设计
2.1概述
2.1.1功能描述
本系统分为三个主要流程:
1、个人办公2、会议管理3、系统管理不用找货源,也不担心货物积压课件我们用高中语文,语文试卷,计算机软件高中
个人办公:
普通职员登陆到系统后,通过点击个人办公连接,进入个人办公页面。
之后可以选择个人信息、日程安排、名片夹、公司通讯录、待办事项、在线信息、个人文件夹进行办公。
可以用来量角的大小、画指定度数的角。
(二)垂线和平行线。
1.直线位
会议管理:
部门领导登陆到系统后选择会议管理,进入会议管理页面。
在会议管理页如果把表现好看作5个星,那你觉得自己这几个方面各能得几个星呢?
根据自
面中可以增、删、改、查会议。
其中发起会议需首先预约会议室,然后将输入与会人名单,开会议信息通过邮件发送到每个与会人的信箱里。
使学生能联系实际发现数学内容,提出一些数学问题,并用数学知
系统管理:
系统管理员登陆到系统后,点击系统管理,进入系统管理页面。
可以选择卷,计算机,创业者叩响投资者大门高中语文,语文试卷,计算机“敲门砖”
部门管理、角色管理、职员管理、文件夹管理进行系统维护。
中语文,语文试卷,计算机民规模已经达到7571万人,20XX年上半年增长率达到
2.2运行环境
2.2.1软件环境
分类
名称
版本
语种
操作系统
Microsoftwindows2003
中文
操作系统的附加功能
无
数据库平台
Oracle
9.2i/10g
中文
数据库平台补丁
无
应用平台
tomcat
6.0
英语
应用平台补丁
无
客户端软件
无
2.2.2硬件环境
服务器
最低配置
推荐配置
应用和数据库服务器
Tomcat6.0
JBoss5weblogic10
2.3开发环境
2.3.1服务器软件环境
分类
名称
版本
语种
操作系统
Microsoftwindows
中文
操作系统的附加功能
无
数据库平台
Oracle
9.2i/10g
中文
数据库平台补丁
无
应用平台
应用平台补丁
无
版本控制系统
SVN
英文
客户端软件
无
2.3.2服务器硬件环境
服务器
最低配置
推荐配置
应用服务器、数据库服务器、邮件服务器、目录服务器
Tomcat6.0
JBoss5/weblgic10
Access
Oracle9.2i/10g
2.3.3开发机器软件环境
分类
名称
版本
语种
操作系统
Microsoftwindows
Xp/win7
中文
操作系统的附加功能
无
数据库平台
Oracle
9.2i/10g
中文
应用平台
开发平台
客户端软件
2.3.4开发机器硬件环境
分类
最低配置
推荐配置
开发机器
2.4设计思想
2.4.1系统构思
系统功能结构图
见系统功能结构图.doc
系统实现结构图
2.4.2关键技术与算法
2.4.2.1预约会议室冲突检查
会议室预约中需要对新预约的会议室与原有预约安排比对,在时间上进行冲突检测,如果有冲突提示日程安排冲突,预约失败。
怒高中语文,语文试卷,计算机心情;这些所谓高中语文,语文试卷,计算机“专家
日程管理类冲突检测算法:
算法首先查找设定的预约时间内由那些会议室可以被预约。
文,语文试卷,计算机限制以及产品多样化给予消费者更多高中语文,语文试
算法步骤:
判断用户输入的预约时间,比较输入的预约开始时间与预约表中会议的结束时间,将预约开始时间后于愉悦表中结束时间的会议室ID号选出,放入一个ArrayList中,然后在会议室表中选择会议室ID在ArrayList中的会议室,显示给用户。
文,语文试卷,计算机,上购物用户,而在欧美和韩国等互联普及率较高高中语
2.4.3人工处理过程
人工处理过程
原因
输入
输出
处理过程
数据库数据备份
保障数据安全
数据库操作命令
关键数据、当日数据库的运行日志
数据库使用率最低时备份可恢复数据,存档
数据库数据维护
维护数据库性能
数据库操作命令
数据库相关参数状态日志
在规定的日期内完成对数据库的状态检测
3子系统模块设计
3.1工作管理模块
模块名称
权限管理
功能描述
为员工提供工作安排维护和查询功能,系统根据设定时间将提示内容发布到该员工的工作安排中。
员工可以设置自己的工作安排的读者,以便别人知道自己的安排;也可以将自己的工作安排权限开放给指定的人,以便别人替自己安排工作。
此模块包含的功能有:
读者设置、代办设置、日历查看。
接口与属性
用户与接口ManageWork交互进行相关的操作。
ManageWork接口中包含的操作有:
①.代办管理功能:
CommissionAdd():
添加代办功能。
该函数通过与Commission对象类关联得到操作所需要的数据。
其中Commission类中的属性有:
privateStringsender_id;//将要设置代办的系统用户id
privateStringuse_id;//将要被设置为代办的系统用户id
privateStringdepartment;//将要被设置为代办的系统用户的部门
privateStringposition;//将要被设置为代办的系统用户的职位
Commission类中包含的主要方法有:
上述各属性的get()、set()方法
ManageWork类中的CommissionAdd()方法将通过Commission类的实例调用相应的get()、set()方法得到或传入数据
CommissionAdd()方法中将实例化数据库的对象,完成添加代办的工作。
在添加代办之前方法将优先进行加入人员id的检测,若用户已在代办列表中则将提示用户并拒绝重复加入代办。
如果欲加入的代办不在该用户的代办列表中则加入该代办,并进行相应的页面跳转,显示该用户所有的代办列表。
CommissionDelete():
删除代办功能。
该函数通过与Commission对象类关联得到操作所需要的数据。
其中Commission类中的属性有:
privateStringsender_id;//将要设置代办的系统用户id
privateStringuser_id;//将要被设置为代办的系统用户id
Commission类中包含的主要方法有:
上述各属性的get()、set()方法
ManageWork类中的CommissionDelete()方法将通过Commission类的实例调用相应的get()、set()方法得到或传入数据
ManageWork类中的CommissionDelete()方法将通过Commission类的实例调用相应的get()、set()方法得到或传入数据
CommissionDelete()方法中将实例化数据库的对象,完成删除代办的工作。
在删除代办之前系统将给出相应删除提示,在用户确认删除后对数据库进行删除操作,并进行相应的页面跳转,显示该用户删除该代办后的所有的代办列表。
②.读者管理功能:
ReaderAdd():
添加读者功能。
该函数通过与Reader对象类关联得到操作所需要的数据。
其中Reader类中的属性有:
privateStringicus_user_id;//将要设置读者的系统用户id
privateStringiaro_role_id;//将要被设置为读者的系统用户id
privateStringicus_user_name;//将要被设置为读者的系统用户的姓名
privateStringdepartment_name;//将要被设置为读者的系统用户所在的部门
privateStringposition_name;//将要被设置为读者的系统用户的职位
Reader类中包含的主要方法有:
上述各属性的get()、set()方法
CommissionManage类中的ReaderAdd()方法将通过Reader类的实例调用相应的get()、set()方法得到或传入数据
ReaderAdd()方法中将实例化数据库的对象,完成添加读者的工作。
在添加读者之前方法将优先进行加入人员id的检测,若用户已在读者列表中则将提示用户并拒绝重复加入读者。
由于根据系统规格说明的相关说明,代办的权限大于读者的权限,即代办自动拥有读者的全部权利,因此如果欲加入读者是当前用户的代办则系统同样拒绝加入该读者。
如果欲加入的代办不在该用户的读者列表中则加入该读者,并进行相应的页面跳转,显示该用户所有的读者列表。
ReaderDelete():
删除读者功能。
该函数通过与Reader对象类关联得到操作所需要的数据。
其中Reader类中的属性有:
privateStringicus_user_id;//将要设置读者的系统用户id
privateStringiaro_role_id;//将要被设置为读者的系统用户id
privateStringicus_user_name;//将要被设置为读者的系统用户的姓名
privateStringicde_department_name;//将要被设置为读者的系统用户所在的部门
privateStringuser_position_name;//将要被设置为读者的系统用户的职位
Reader类中包含的主要方法有:
上述各属性的get()、set()方法
CommissionManage类中的ReaderDelete()方法将通过Reader类的实例调用相应的get()、set()方法得到或传入数据
ReaderDelete()方法中将实例化数据库的对象,完成删除读者的工作。
在删除读者之前系统将给出相应删除提示,在用户确认删除后对数据库进行删除操作,并进行相应的页面跳转,显示该用户删除该读者后的所有的读者列表。
③.采用日历控件输入时间功能:
根据需求规格说明书的要求,系统将提供给用户日历查询功能,以方便其对于工作的管理。
在此通过javascript语言实现日历的显示与查询功能。
用户可以通过在textbox中输入所需的年份,在下拉列表中选择相应的月份,提交察看所需日期的具体情况。
数据结构
与算法
1.判断欲加入代办的存在性:
判断欲加入代办是否已在用户的代办列表中主要通过session中存储的登陆用户信息及数据库中表间外键联系,构造sql语句得到相应的结果集。
若该查询的结果集为空则说明欲加入代办不在用户的代办列表中,进行加入操作。
否则系统给出提示信息。
2.通过页面加入代办的主要数据结构:
根据需求规格说明书的相应要求,用户提出相应的代办操作申请后,系统将给出组织结构图,只有通过组织结构图用户才能进行相应的操作。
组织结构图的每个系统用户名的前部都将设有复选框。
用户通过勾取所需的用户进行相关的增加或删除操作。
系统采用struts架构,页面的复选框属性将作为String型的数组传入系统后台的功能模块层。
通过相应的函数确定是否选重的属性。
根据该属性关联的icus_user_id系统用户id对相关的数据库表格进行操作。
3.利用javascript实现日历功能的设计因素:
在工作管理的多个模块的需求描述中都明确提到了需要日历的查询和使用功能。
但从系统的整体出发,日历的使用范围基本局限于工作管理部分,因此考虑使用javascript减轻系统负担,方便用户使用。
模块名称
工作维护
功能描述
为员工提供工作安排维护和查询功能,系统根据设定时间将提示内容发布到该员工的工作安排中。
此模块包含的功能有:
工作安排、综合查询。
接口与属性
所有的的操作基于Work实体类完成。
Work类中的属性包括:
PrivateIntegerworked,//系统为工作自动分配的ID号
PrivateuserID;//工作执行人的ID号
PrivateFromID;//工作安排人的ID号
privateStringstart_date;//工作开始日期
privateStringend_date;//工作结束日期
privateStringwork_content;//工作内容
privateStringwork_title;//工作标题
Work类中包含的主要方法有:
上述各属性的get()、set()方法
工作维护功能:
Add_Work():
添加工作功能。
该函数通过与对象类关联得到操作所需要的数据。
Work类中包含的主要方法有:
上述各属性的get()、set()方法
WorkManage类中的WorkAdd()方法将通过work类的实例调用相应的get()、set()方法得到或传入数据
WorkAdd()方法中将实例化数据库的对象,完成添加工作的工作。
在添加工作之前进行申请加入操作人员id的检测,若工作执行人为登陆用户本身,或者登陆用户的被执行代办人,则在该用户提交申请后系统自动进行工作冲突的检测。
若工作检测后系统返回值为非冲突,则加入该工作,否则系统提示用户相关的信息并拒绝加入工作。
WorkDelete():
删除工作功能。
该函数通过与Work对象类关联得到操作所需要的数据。
WorkManage类中的WorkDelete()方法将通过Work类的实例调用相应的get()、set()方法得到或传入数据
Workdelete()方法中将实例化数据库的对象,完成删除工作的工作。
在删除工作之前方法将优先进行申请删除操作人员id的检测,若工作执行人为登陆用户本身,或者工作的安排人,则系统将给出相应删除提示,在用户确认删除后对数据库进行删除操作,并进行相应的页面跳转,显示该用户删除该工作后的所有的工作列表。
WorkSearch():
包括综合查询的日历查询查询工作功能。
该函数通过与Work对象类关联得到操作所需要的数据。
WorkManage类中的WorkSearch()方法将通过
Work类的实例调用相应的get()、set()方法得到或传入数据
WorkSearch()方法中将实例化数据库的对象,完成查询工作的工作。
根据需求规格说明书的要求:
可以通过:
1,工作执行人,执行人所在部门,执行人职位或者2,工作安排的时间
字段查找相应的工作。
从在系统进行工作查询后将通过页面显示工作列表。
在用户输入多条查询条件的情况下,采用部分匹配策略,即数据库中有部分符合输入条件的数据而非全部符合条件的记录。
WorkEdit():
修改工作功能。
该函数通过与Work对象类关联得到操作所需要的数据。
WorkManage类中WorkEdit()方法将通过Work类的实例调用相应的get()、set()方法得到或传入数据
WorkEdit()方法中将实例化数据库的对象,完成修改工作的工作。
在修改工作之前方法将优先进行申请加入操作人员id的检测,若工作执行人为登陆用户本身,或者原工作的安排人且依然则在该用户提交申请后系统自动进行工作冲突的检测。
若工作检测后系统返回值为非冲突,则修改该工作,否则系统提示用户相关的信息并拒绝加入工作。
数据结构
与算法
①.检测工作冲突功能:
根据需求规格说明书的要求,系统将提供给用户工作冲突检测功能,以方便其对于工作的管理。
检测工作冲突主要侧略为:
优先检测工作执行人欲安排的工作与其已有的工作安排的冲突。
检测过程中需要三步判断:
1.1)欲安排工作起始日期之间是否有其它的工作安排
1.2)欲安排工作起始日期是否在其它已安排工作之间
1.3)欲安排工作结束日期是否在其他已安排工作之间
若有没有冲突则安排工作否则系统给出错误信息。
②.检测人员权限功能:
根据系统规格说明书的相关说明,不同权限的用户对于工作安排的操作的权限是不同的,检测的策略为:
1.根据session中的信息判断登陆用户是否工作管理相关操作的责任人
2.根据读者&代办表中的相关记录判断工作管理相关操作责任人是否具有代办的权限。
补充说明
bb
模块名称
待办事项模块
功能描述
此模块实现了对待办事项的增加、删除、显示以及所有日程安排清单的按日期排序显示功能。
接口与属性
抽象类BaseOperate:
抽象方法
sortAccordToTime:
输入参数:
要排序的对象列表Listobj
输出参数:
无
返回值:
排序好的对象列表:
Listobj
addWork:
输入参数:
要插入的待办事项对象的引用Workbus
输出参数:
无
返回值:
bool类型,插入成功与否
deleteWork:
输入参数:
要删除的待办事项的IDintworkID
输出参数:
无
返回值:
bool类型,删除成功与否
display():
输入参数:
无
输出参数:
要显示的对象列表
返回值:
bool类型,显示成功与否
displayAll():
输入参数:
无
输出参数:
要显示的对象列表
返回值:
bool类型,显示成功与否
PendingWorkOperate:
sortAccordToTime:
输入参数:
要排序的Work(PendingWork)对象列表Listpbu
输出参数:
无
返回值:
排序好的对象列表:
Listpbu
addWork:
输入参数:
要插入的待办事项对象的引用Workbus
输出参数:
无
返回值:
bool类型,插入成功与否
deleteWork:
输入参数:
要删除的待办事项的IDintid
输出参数:
无
返回值:
bool类型,删除成功与否
display():
输入参数:
无
输出参数:
要显示的对象列表
返回值:
bool类型,显示成功与否
displayAll():
输入参数:
无
输出参数:
要显示的对象列表
返回值:
bool类型,显示成功与否
数据结构
与算法
对象类Work:
与数据库中的Work表的各个字段相对应
序列号IDInteger
名称nameString
负责人personString
起始时间start_Datetime
结束时间end_Datetime
事项内容workContentString
事项标题workTitleString
是否完成donebool
补充说明
工作安排类图:
权限设置类图
序列图:
工作安排维护序列图:
工作安排维护扩展序列图:
他人工作安排查询序列图:
他人工作安排查询扩展序列图:
读者权限维护序列图:
读者权限维护扩展序列图:
代办权限维护序列图:
代办权限维护扩展序列图:
3.2在线信息子系统
模块名称
在线信息模块
功能描述
本子系统主要为用户提供留言交流的平台,用户可以发送留言,接收留言,查看留言以及对留言进行查询,回复,删除等操作
接口与属性
主要由MessageManage类通过操纵Message类实现对留言的管理、接收、发送等。
1.其中Message类主要属性包括:
IntfromID//留言发送者员工号
StringfromName//留言发送者姓名
InttoID//留言接收者员工号
StringtoName//留言接收者姓名
Stringtitle//留言主题
Stringcontent//留言内容
Datedate//留言日期
IntmessageNumber//留言编号
intissent//判断留言是否已经发送
intisReaded//判断留言是否已经被阅读
intfrom_delete//判断发送者是否将留言删除
intto_delete//判断接收者是否将留言删除
主要接口与方法有:
对类中每个属性的get()与set()方法
2.MessageManage属性包括:
BoolenisOK//判断对留言的操作是否成功
接口与方法包括:
saveMessage()//保存留言
editMessage()//编辑留言
seeMessage()//查看留言
sendMessage()//发送留言
searchMessage()//查询留言
addMessage()//添加留言
deleteMessage()//删除留言
replayMessage()//回复留言
数据结构
与算法
数据库SQL语句实现功能。
补充说明
3.2.1模块1
模块名称
发送留言
功能描述
指利用系统发送短消息。
用户点击“发送”后,系统将留言写进数据库,并将intissent改为1。
接口与属性
MessageManage类通过Message类的get()与set()方法实现对留言的管理。
sendMessage()函数实现发送留言功能。
输入参数有inttoID,StringtoName,StringtitleStringcontent,Datedata。
返回值为BooleanisOK.
sendMessage()方法将实例化Message对象,通过调用该对象的方法,来获取留言的基本信息,然后实习留言的发送功能。
数据结构
与算法
数据库SQL语句实现功能。
补充说