学校内部工资管理系统详细设计.docx
- 文档编号:3687240
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:23
- 大小:235.72KB
学校内部工资管理系统详细设计.docx
《学校内部工资管理系统详细设计.docx》由会员分享,可在线阅读,更多相关《学校内部工资管理系统详细设计.docx(23页珍藏版)》请在冰豆网上搜索。
学校内部工资管理系统详细设计
学校内部工资管理系统详细设计
学校内部工资管理系统详细设计说明书
学校内部工资管理系统设计说明书
1(引言
1.1系统简介
假设学校共有教职工约1000人,10个行政部门和8个系部。
每个月20日前各部门(包括系、部)要将出勤情况上报人事处,23日前人事处将出勤工资、奖金及扣款清单送财务处。
财务处于每月月底将教职工的工资表做好并将数据送银行。
每月初(3日前)将工资条发给各单位。
若有员工调入、调出、校内调动、离退休等数据变化,则由人事处通知相关部门和财务处。
1.2定义
专门术语:
职工基本信息表(Basic)
职工出缺勤信息表(Attendance)
职工工资信息表(Salaries)
1.3参考资料
a.《软件工程导论》清华大学出版社张海藩b.《数据库系统概论》高等教育出版社萨师煊、王珊2(总体设计
2.1需求概述
本软件的主要服务对象是安徽工程科技学院的财务处和人事处,各系部。
各系部的主要任务是在每个月20日前各部门(包括系、部)要将出勤情况上报人事处(各系部在这里的主要任务是提供数据的输入);
而人事处将出勤工资、奖金及扣款清单送财务处(人事处在这里对各系部送来的数据进行分析处理,对应得出数据的处理结果;
财务处于每月月底将教职工的工资表做好并将数据送银行,每月初(3日前)将工资条发给各单位,(财务处在这里对数据起一个网关过滤的作用,主要起一个审批作用,负责接受成型的工资数据和审批然后向银行提交成型数据,最后打到发放工资的目的。
1
学校内部工资管理系统详细设计说明书
另外,人事变动的数据是由人事处接受并修改,最后同意传达给财务处和相关部门。
2.2软件结构
则根据需求分析和概要设计得出软件的功能结构模块图
2.3数据库设计
数据库表设计
职工基本信息表
字段名字段类型字段宽度能否为空主键工号char10否是姓名char8否
2
学校内部工资管理系统详细设计说明书
所属系别char20职位char20
职工出缺勤信息表
字段名字段类型字段宽度能否为空主键工号char10否是姓名char8否应出勤次数/月Int2否实际出勤次数/月Int2否缺勤次数Int2缺勤原因char50
职工工资信息表
字段名字段类型字段宽度能否为空主键工号char10否是姓名char8否基本工资Int5否原始奖金Int5否缺勤金Int5实际工资Int5
2.4对应的数据字典与E-R图:
1静态数据:
职工基本信息,职工出缺勤信息
.2动态数据
输入数据:
职工基本信息,职工工资信息,出勤工资,奖金,扣款清单,职工出缺勤信息;
输出数据:
职工基本信息,职工工资信息,职工标准工资信息,职工工资条,职工出缺勤报表.3数据库介绍
职工基本信息数据库:
包括职工的工号,姓名,所属系别,职位
职工出缺勤信息数据库:
包括职工的工号,姓名,应出勤次数/月,实际出勤次数/月,缺勤次数,缺
勤原因;
职工工资信息数据库:
包括职工的工号,姓名,基本工资,原始奖金,缺勤金,实际工资;
则得DFD如下:
3
学校内部工资管理系统详细设计说明书
4
学校内部工资管理系统详细设计说明书
5
学校内部工资管理系统详细设计说明书
4数据词典:
数据项:
数据项名:
工号
别名:
TNo,
简述:
所有职工的编号
类型:
CHAR
长度:
10
取值范围及含义:
第1位:
3(代表安工科)
第2?
3位:
0X(入学校年份)
第4-5位:
XX(所属系部)
第5-10位:
(所在系部内的编号)
数据项名:
姓名
别名:
NAME
简述:
所有职工的姓名
类型:
CHAR
长度:
8
取值范围及含义:
第1-8位:
(姓名,2~4字)
6
学校内部工资管理系统详细设计说明书数据项名:
所属系别
别名:
DEPARTMENTS简述:
职工所属的部门
类型:
CHAR
长度:
20
取值范围及含义:
具体的部门名称
数据项名:
职位
别名:
JOBS
简述:
职工所在该部门的具体职位类型:
CHAR
长度:
20
取值范围及含义:
具体的职位名称
数据项名:
应出勤次数/月
别名:
SHOULD
简述:
按工作表每个月应出勤的次数类型:
INT
长度:
2
取值范围及含义:
次数
数据项名:
实际出勤次数/月别名:
ACTUAL
简述:
实际每个月应出勤的次数类型:
INT
长度:
2
取值范围及含义:
次数
数据项名:
缺勤次数
别名:
MISSNUM
简述:
每个月应缺勤的次数类型:
INT
长度:
2
取值范围及含义:
次数
数据项名:
缺勤原因
别名:
REASON
简述:
缺勤的具体原因
类型:
CHAR
长度:
50
取值范围及含义:
缺勤的大致原因
数据项名:
基本工资
别名:
JIBENGONGZI简述:
由工龄和职位规定的基本工资
7
学校内部工资管理系统详细设计说明书类型:
INT
长度:
5
取值范围及含义:
金额数目
数据项名:
原始奖金
别名:
YUANSHIJIANGJIN简述:
由工龄和职位规定的原始奖金类型:
INT
长度:
5
取值范围及含义:
:
金额数目
数据项名:
缺勤金
别名:
QUEQINJIN
简述:
由缺勤次数所得的应扣金额数目类型:
INT
长度:
5
取值范围及含义:
金额数目
数据项名:
实际工资
别名:
SHIJIGONGZI简述:
每月实际得到的工资数金额数目类型:
INT
长度:
5
取值范围及含义:
金额数目
数据存储:
文件名:
职工基本信息数据库
别名:
基本信息表
简述:
存放职工基本信息
组成:
包括职工的工号+姓名+所属系别+职位组织方式:
索引文件,以工号为关键字查询要求:
要求能够立即查询
文件名:
职工出缺勤信息数据库别名:
出缺勤信息表
简述:
存放职工基本信息
组成:
工号+姓名+应出勤次数/月+实际出勤次数/月+缺勤次数+缺勤原因
组织方式:
索引文件,以工号为关键字查询要求:
要求能够立即查询
文件名:
职工工资信息数据库
别名:
工资信息表
8
学校内部工资管理系统详细设计说明书简述:
存放职工工资信息
组成:
工号+姓名+基本工资+原始奖金+缺勤金+实际工资
组织方式:
索引文件,以工号为关键字查询要求:
要求能够立即查询
数据流:
数据流名:
职工基本信息
别名:
无
简述:
职工的各项属性信息
来源:
各系部
去向:
加工1.1“职工信息的输入并整理存储”组成:
工号,姓名,性别,所属系部,职位数据流量:
一般:
1次/学期
高峰值:
职工出现异动1000次/天
数据流名:
出勤工资,奖金,扣款清单别名:
无
简述:
人事处的对职工出勤信息的整理结果来源:
人事处
去向:
加工2.1“职工工资信息生成”组成:
出勤工资+奖金+扣款清单数据流量:
一般:
1次/月
高峰值:
1次/月
数据流名:
职工工资信息
别名:
无
简述:
生成的职工工资信息
来源:
加工2.1
去向:
加工2.2“财务处职工工资信息整理发送”组成:
工号+姓名+基本工资+原始奖金+缺勤金+实际工资
数据流量:
一般:
1次/月
高峰值:
1次/月
数据流名:
职工标准工资信息
别名:
无
简述:
生成的标准工资信息
来源:
加工2.2
去向:
银行
组成:
工号+姓名+基本工资+原始奖金+缺勤金+实际工资
数据流量:
一般:
1次/月
高峰值:
1次/月
数据流名:
职工工资条
别名:
无
9
学校内部工资管理系统详细设计说明书
简述:
针对系部的工资条
来源:
加工2.2
去向:
各系部
组成:
工号+姓名+基本工资+原始奖金+缺勤金+实际工资
数据流量:
一般:
1次/月
高峰值:
1次/月
E-R图如下:
10
学校内部工资管理系统详细设计说明书
3(程序描述
3.1功能
职工基本信息管理子系统:
1)职工基本信息输入:
用于采集职工的职工的工号,姓名,所属系别,职位
2)建立职工基本信息表:
为三个子系统提供数据源
3)职工基本信息查询:
实现查询功能
4)职工基本信息修改:
a.写修改职工基本信息:
对职工信息异动进行修改
b.发送提示信息至其他部门:
将异动报告提交给使用该表的其他部门
职工出勤信息管理子系统:
1)职工出缺勤信息输入:
采集职工的工号,姓名,应出勤次数/月,实际出勤次数/月,缺勤次数,缺勤原
因
2)职工出缺勤信息查询:
实现查询功能
3)职工出缺勤信息表的建立:
为职工工资管理子系统提供数据源
职工工资管理子系统:
1)职工基本工资信息读取:
为实际工资奖金计算提供数据源
2)职工实际工资奖金计算:
得出实际工资
3)标准工资信息与银行之间的双向传输:
向银行提供标准工资信息,银行提供资金异动信息
4)工资条对各部门的发放:
向各个部门传输标准工资信息3.2性能
职工基本信息管理子系统:
1)职工基本信息输入:
数据输入,存储
2)建立职工基本信息表:
数据集中
3)职工基本信息查询:
数据查询
4)职工基本信息修改:
a.写修改职工基本信息:
数据修改
b.发送提示信息至其他部门:
数据读出
职工出勤信息管理子系统:
1)职工出缺勤信息输入:
数据输入,存储
2)职工出缺勤信息查询:
数据查询
3)职工出缺勤信息表的建立:
数据集中
11
学校内部工资管理系统详细设计说明书职工工资管理子系统:
1)职工基本工资信息读取:
数据读出
2)职工实际工资奖金计算:
数据加工
3)标准工资信息与银行之间的双向传输:
数据读出,输入
4)工资条对各部门的发放:
数据读出
3.3输入项目
职工基本信息管理子系统:
1)职工基本信息输入:
职工的工号,姓名,所属系别,职位
2)建立职工基本信息表:
无
3)职工基本信息查询:
存储在表中的任一数据
4)职工基本信息修改:
a.写修改职工基本信息:
新数据(职工基本信息)
b.发送提示信息至其他部门:
异动提示报告
职工出勤信息管理子系统:
1)职工出缺勤信息输入:
职工的工号,姓名,应出勤次数/月,实际出勤次数/月,缺勤次数,缺勤原因
2)职工出缺勤信息查询:
存储在表中的任一数据
3)职工出缺勤信息表的建立:
无
职工工资管理子系统:
1)职工基本工资信息读取:
职工的工号,姓名,基本工资,原始奖金,缺勤金,实际工资
2)职工实际工资奖金计算:
职工出缺勤信息,职工基本工资信息
3)标准工资信息与银行之间的双向传输:
标准工资信息
4)工资条对各部门的发放:
标准工资信息
3.4输出项目
职工基本信息管理子系统:
1)职工基本信息输入:
职工基本信息表
2)建立职工基本信息表:
职工基本信息表
3)职工基本信息查询:
查询目标
4)职工基本信息修改:
a.写修改职工基本信息:
新数据(职工基本信息)
b.发送提示信息至其他部门:
异动提示报告
职工出勤信息管理子系统:
1)职工出缺勤信息输入:
职工出缺勤信息表
12
学校内部工资管理系统详细设计说明书
2)职工出缺勤信息查询:
查询目标
3)职工出缺勤信息表的建立:
职工出缺勤信息表
职工工资管理子系统:
1)职工基本工资信息读取:
职工基本工资信息表
2)职工实际工资奖金计算:
标准工资信息
3)标准工资信息与银行之间的双向传输:
标准工资信息
4)工资条对各部门的发放:
标准工资信息
3.6程序逻辑
则根据需求分析,功能模块分析可得程序的流程图为
13
学校内部工资管理系统详细设计说明书
14
学校内部工资管理系统详细设计说明书
采用ODBC接口3.7接口:
3.8限制条件
在WIN2000以上操作系统环境,内存256以上
3.9测试要点
对于职工基本信息模块:
测试的要点是针对职工基本信息属性的添加,查询,修改,删除,以及对数据库
的同步更新
对于职工出缺勤模块:
测试的要点是针对职工出缺勤信息的添加,查询,修改,删除,对数据库的同步更
新,以及对缺勤次数的触发器的运算
职工工资信息表:
测试的要点是针对职工工资信息的添加,查询,修改,删除,对数据库的同步更新,以
及对缺勤金和实际工资的运算
4(运行需求
4.1界面设计
图4-1登陆界面
15
学校内部工资管理系统详细设计说明书
图4-2主界面
图4-3出缺勤信息管理界面
16
学校内部工资管理系统详细设计说明书
图4-4工资信息管理界面
图4-5工资表信息浏览界面
17
学校内部工资管理系统详细设计说明书4(2部分模块的相应代码
登陆界面代码:
DimtimAsInteger
DimmyvalAsString
PrivateSubfrom_activate()DataCombo1.SetFocus
EndSub
PrivateSubcmdend_Click()End
EndSub
PrivateSubcmdok_Click()Adodc1.RecordSource="select*from用户where用户名="'+DataCombo1.BoundText="'"
IfDataCombo1.BoundText<>""AndText2.Text<>""AndText2.Text=Adodc1.Recordset.Fields("密码")Then
Loadmain
main.Show
UnloadMe
Else
Iftim=3Then
myval=MsgBox("密码错误~请向管理者查询。
",0,"")Ifmyval=vbOKThenEndEndIf
IfDataCombo1.BoundText=""Then
MsgBox("请输入用户名")
DataCombo1.SetFocus
Else
IfDataCombo1.BoundText<>Adodc1.Recordset.Fields("用户名")Then
MsgBox("无此人,请重新输入~")
DataCombo1.SetFocus
Else
IfText2.Text=""ThenMsgBox("请输入密码~")
Text2.SetFocus
Else
Iftext2text<>Adodc1.Recordset.Fields("密码")Then
MsgBox("密码错误,请重新输入~")
tim=tim+1
Text2.SetFocus
EndIf
EndIf
18
学校内部工资管理系统详细设计说明书
EndIf
EndIf
EndIf
EndSub
PrivateSubDataCombo1_keydown(keycodeAsInteger,shiftAsInteger)Ifkeycode=vbKeyReturnThenText2.SetFocus
EndSub
PrivateSubForm_Load()
EndSub
PrivateSubText2_keydown(keycodeAsInteger,shiftAsInteger)Ifkeycode=vbKeyReturnThencmdok.SetFocus
Ifkeycode=vbKeyUpThenDataCombo1.SetFocus
Ifkeycode=vbKeyDownThencmdok.SetFocus
EndSub
出缺勤信息管理界面代码:
PrivateSubForm_Load()
Adodc1.RecordSource="select*from职工出缺勤信息"
Adodc1.Refresh
Fori=0To3
Text1(i).Enabled=False
Nexti
cmdsave.Enabled=False
EndSub
PrivateSubtext1_keydown(indexAsInteger,keycodeAsInteger,shiftAsInteger)
SelectCaseindex
CaseIs=index
Ifkeycode=vbKeyReturnAndindex<3ThenText1(index+1).SetFocus
Ifkeycode=vbKeyReturnAndindex=3Thencmdsave.SetFocus
Ifkeycode=vbKeyUpAndindex>1ThenText1(index-1).SetFocus
EndSelect
EndSub
PrivateSubcmdadd_click()
19
学校内部工资管理系统详细设计说明书
Adodc1.Recordset.AddNew
Fori=0To3
Text1(i).Enabled=True
Text1(i).Text=""
Nexti
Text1(0).SetFocus
cmdadd.Enabled=False
cmddelete.Enabled=False
cmdmodify.Enabled=False
cmdsave.Enabled=True
EndSub
PrivateSubcmdmodify_click()IfAdodc1.Recordset.RecordCount<>0Then
Fori=0To3
Text1(i).Enabled=TrueNexti
cmdsave.Enabled=Truecmdadd.Enabled=Falsecmdmodify.Enabled=Falsecmddelete.Enabled=FalseElse
MsgBox("没有要修改的数据~")
EndIf
EndSub
PrivateSubcmddelete_click()DimmyvalAsString
myval=MsgBox("是否要删除该记录,",vbYesNo)Ifmyval=vbYesThen
Adodc1.Recordset.DeleteAdodc1.Recordset.MoveNextIfAdodc1.Recordset.EOF=TrueThenAdodc1.Recordset.MoveLast
Fori=0To3
Text1(i).Enabled=FalseNexti
EndIf
EndSub
PrivateSubcmdsave_click()Adodc1.Recordset.UpdateFori=0To3
Text1(i).Enabled=FalseNexti
cmdsave.Enabled=Falsecmdadd.Enabled=True
cmdmodify.Enabled=True
20
学校内部工资管理系统详细设计说明书
cmddelete.Enabled=True
EndSub
PrivateSubcmdexit_click()
UnloadMe
EndSub
5(功能模块的测试
选取职工出缺勤信息管理进行操作。
1(首先,添加职工的基本信息:
工号:
3040766666
姓名:
王伟
应出勤:
63
实出勤:
61
在相应的EDIT框中添加进入此类信息,点击保存。
在职工出缺勤管理界面进行浏览操作,发现信息已经成功保存,并可以浏览到。
2(错误测试:
同样输入一组值。
其值完全同上,唯一区别的是不对工号的内容不输入,其他都输入。
然后
点击保存。
发现系统提示出错信息,无法成功保存信息。
原因分析:
对于设为主键的属性值,在数据库表中是不可以为空的。
在添加信息中,注意不能缺少对主
键的设置。
3(对于数据库的检查:
对于数据库中的表的一些属性值,比如缺勤次数,是采取触发器进行输入的。
在每
输入一组应“出勤次数/月“和“实出勤次数/月”,对应的属性缺勤次数将得到更新。
在数据
库表中检查并得到验证。
6(实验设计总结
对于本次实验,经历了软件的可行性分析,需求分析,概念设计,详细设计,以及软件的实体设计。
其中遇到了很多困难,也总结了一些心得,现总结如下:
对于软件工程的一些心得:
1(软件工程是一项庞大的工程,期间有着很多的工作。
对于用户需求的分析是十分重要的。
软件的目
的是面对客户,他们是最终软件的所有者,因此,把握需求分析的重要性是不言自明的。
但是能否准
确的把握需求,能否正确的理解用户的需求,以及能否让用户认识到自己的要求是否都具有必要性,
能否自己合理的去筛选一些需求,这是非常重要的,也是一个软件工程设计者所必须的素质。
2(在分析清楚需求之后,就是对软件的具体的设计。
软件的具体设计同样也是一项繁杂的过程。
对于
我们已经分析好的模块,要明确它们的功能。
具体的功能当然要对应需求中的要求。
最后,对于代码
以及软件实体的实现,也是非常重要的。
软件的测试和维护虽然在本次实验中并没有太大的要求,但
是在实际的商业软件设计中,就需要牢记并重视这一点。
自己设计当中遇到的错误:
对于设计开始中,对于DFD图的把握,开始时我并没有十分明确的概念。
对于数据流所对应的方向和
来源去处,也没有进行清晰的设计。
因此我对用户的具体需求,在开始时并没有清晰的概念。
因此刚
开始的设计的进度是非常慢的。
在后来也遇到了一些功能上的问题,当然,这些问题在后来也得到了
解决。
21
学校内部工资管理系统详细设计说明书
2008年6月11日
22
学校内部工资管理系统详细设计说明书
23
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学校 内部 工资管理 系统 详细 设计