学校内部工资管理系统详细设计.docx

上传人:b****3 文档编号:3687240 上传时间:2022-11-24 格式:DOCX 页数:23 大小:235.72KB
下载 相关 举报
学校内部工资管理系统详细设计.docx_第1页
第1页 / 共23页
学校内部工资管理系统详细设计.docx_第2页
第2页 / 共23页
学校内部工资管理系统详细设计.docx_第3页
第3页 / 共23页
学校内部工资管理系统详细设计.docx_第4页
第4页 / 共23页
学校内部工资管理系统详细设计.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

学校内部工资管理系统详细设计.docx

《学校内部工资管理系统详细设计.docx》由会员分享,可在线阅读,更多相关《学校内部工资管理系统详细设计.docx(23页珍藏版)》请在冰豆网上搜索。

学校内部工资管理系统详细设计.docx

学校内部工资管理系统详细设计

学校内部工资管理系统详细设计

学校内部工资管理系统详细设计说明书

学校内部工资管理系统设计说明书

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

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1