企业工资管理系统
目录
引言 …………………………………………………………………………… 2
课题研发的背景 ……………………………………………………………… 2
课题研发的目的与意义 ……………………………………………………… 2
第一章可行性研究………………………………………………………….…2
1.1.技术可行性分析…………………………………………………………….2
1.2.社会可行性分析………………………………………………………….…3
1.3.经济可行性分析………………………………………………………….…3
1.4.操作可行性……………………………………………………………….…3
1.5可行性研究结论………………………………………………………….…3
第二章需求分析…………………………………………………………….…3
2.1系统主要功能需求分析 ………………………………………………..… 3
2.2数据流分析 ……………………………………………………………..… 4
2.3 ER图……………………………………………………………………...…5
2.4层次方框图……………………………………………………………….…5
2.5工资系统项目简介………………………………………………………….5
2.6风险分析及处理政策…………………………………………………….…5
第三章总体设计 …………………………………………………………..… 6
3.1 系统总体设计 ………………………………………………………….… 6
3.1.1系统开发思想…………………………………………………………..…6
3.2 数据库总体设计 ……………………………………………………….… 7
第四章详细设计…………………………………………………………….…7
4.1工资系统功能…………………………………………………………….…7
4.2功能模块说明…………………………………………………………….…8
4.3功能模块实现…………………………………………………………….…8
第五章程序编写及调试程序…………………………………………….……9
5.1主窗体的设计…………………………………………………………….…9
5.2工资信息管理窗体的设计…………………………………………………10
第六章系统测试………………………………………………………………16
6.1系统测试方案………………………………………………………………16
6.2系统运行与维护……………………………………………………………17
6.3系统的转换方案……………………………………………………………18
第七章使用说明书 ………………………………………………………..…18
7.1 系统功能简介 ………………………………………………………….…18
7.2 开发工具和运行环境简介 …………………………………………….....18
第八章系统评价………………………………………………………………18
8.1系统的特点…………………………………………………………………18
8.2系统的缺点…………………………………………………………………19
8.3将来可能提出的要求………………………………………………………19
第九章 总结与展望……………………………………………………………19
致谢 …………………………………………………………………….………19
参考资料 …………………………………………………………………….…19
引言
自上个世纪90年代以来,计算机技术的迅猛发展和推广普及,为各行各业突飞猛进的发展带来了新生的动力,推动了各个行业向更高的层次进步。当今时代是飞速 发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的原因。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。使用计算机进行信息管理与信息管理 系统的开发密切相关,系统的开发是系统管理的前提。
课题研发的背景
手工工资管理是一种原始的工作方法,由于手工操作出现错误的概率比较大,其工作量大,工作程序复杂,消耗大量的人力、物力、财力和时间。而且随着 时间的推移,由于人员的增加,科目的增多以及调整的频繁,这些矛盾显得尤为突出。随着经济的发展,在这种情况下单靠人工来处理员工的工资不但显得力不从心,而且极容易出错。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一 部分,使用计算机对高校职工工资进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。 这些优点能够极大地提高高校工资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
因此,开发这样一套管理软件成为很有必要的事情。
课题研发的目的与意义
教职工工资管理系统,为高校工资提供工资计算,工资统计、工资查询等服务。传统的纸介材料的数据信息管理已经不适合现代高校的发展了,实现工资管理的系统化,规范化,自动化,将成为现代高校管理工资的首选。
本教职工工资管理系统基本能够满足现代高校工资管理的需求。现代化工资管理系统中使用了各种表格,保存相关的工资信息,方便查询、浏览、修改等操作。通过使用教职工工资管理系统,使高校的工资管理工作系统化、规范化、自动化,从而达到提高高校管理效率的目的。
系统开发的总体任务是使办公人员可以轻松快捷地完成工资管理任务。
第一章可行性研究
1.1.技术可行性分析
此系统是教职工工资管理系统,用visaul foxpro 6.0结合windows xp操作系统开发而成的,大家都知道这项技术已经相当成熟了,因此从技术方面讲开发此教职工工资管理系统是可行的。
1.2.社会可行性分析
社会可行性研究是对系统投入使用后对社会可能带来的影响进行分析,比如是否为人们所接受,是否为社会带来利益。
1.3.经济可行性分析
主要是对项目的经济效益进行评价,一方面是支出的费用,其中包括设备购置费,软件开发费,管理和维护费,人员工资和培训费等。另一方面是取得的收益中可以用钱来衡量的那部分(收益的另一部分难以用钱来表示)。基于企业的现有计算机及配套设备,建设MIS系统。不但能大大减少重复性的书面报告,降低办公费用,提高办公室效率,而且能提高检测数据效用。由于教职工工资管理系统是一个比较小型的系统,是由我们小组进行开发的,所以从人力、物力、财力方面来说都是可行的。
1.4.操作可行性
主要是管理人员对开发信息系统是否支持,现有管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等,高校工资管理系统比较完善的规章制度和管理方法为系统的建设提供了保障。
1.5可行性研究结论
可行性分析的最后成果是写出可行性分析报告,可行性分析报告包括下列内容:教职工工资管理系统的战略目标,新系统的总体目标及主要功能。主要问题和主要信息要求。拟订新系统的方案。从经济,技术,管理,社会等方面论证方案的可行性。
第二章需求分析
2.1 系统主要功能需求分析
对用户需求的分析应该全面、深入、发展,全面是指考查由MIS管理的信息是否有纰漏,必须保证各静态、动态信息的完全;深入是指对信息的内容、结构、含义、变换、生存周期的分析和认识;发展是指对信息未来发展变化的预测,因为信息在某个系统、机构内的变化往往存在着自身特有的发展规律,需求分析应该预见这种规律,否则就会缩短MIS的使用寿命。为了保证需求分析的完备性,就必须保证需求分析的时间。
(1).系统业务流程图
通过对企业原先手工进行员工工资管理业务的情况,可以设计出它的业务流程图,如图所示。
(2).系统的功能要求。
①整体结构合理,风格一致,模块化结构,界面清晰,接口灵活,操作简便。
②开发方法,文档规范化,便于管理,可扩充。
③完善的数据输入,维护,输出。
④自检性能高,用户误输、错输均有提示。
⑤容错性能高,某个用户的操作错误不会引起整个系统的瘫痪,每一功能的操作都有信息提示以免重复操作,错误操作有警告,以便用户及时改正。
2.2 数据流分析
数据流程图:
(1).管理系统的数据流程图符号如图所示
2.3 ER图
2.4层次方框图
2.5工资系统项目简介
教职工工资管理系统的主要任务是用计算机对各种工资信息进行日常的管理,如查询、修改、增加、删除以及存储等,迅速准确地完成各种工资信息的统计计算和汇总工作,快速打印出工资报表,针对系统服务对象的具体要求,设计了高校教职工工资管理系统。
2.6风险分析及处理政策
(1).风险分析
随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善。工资管理作为企业内部的一种财务管理也是如此,由于企业职工人数较多,每一位职工的具体实际情况也不尽相同,各项工资条款的发放,如果没有一个完整的管理系统来进行管理,那么势必会给管理人员带来种种麻烦,因此类似工资管理系统之类的财务软件的开发势在必行。
(2).处理政策
高校工资管理实现计算机管理,使管理员能够有序的管理每一位职工的各项工资条款的发放以及职工个人台帐的生成,使单位运用现代化技术创造更多更高的经济效益。
第三章总体设计
3.1系统总体设计
本部分主要介绍系统要实现的功能,搭好设计的总体框架,使我们对要开发的系统有一个系统、全面、确切的认识。
系统开发思想
本工资管理系统是采用面向对象的程序设计思想进行编制的,整个系统由若干个表单、类、报表以及一个主菜单组成,有项目管理器统一管理全部程序的编写和调试。用户可以通过主菜单或总表单调用系统的各项功能。
(1)、面向对象设计不再是单纯的从代码的第一行一直编到最后一行,而是考虑如何创建类和对象,利用类和对象来简化程序设计,并提供代码的封装和可重用性,便于程序的维护与扩展。
(2)、 所谓的对象是一种抽象的名称,用来对应实现世界存在的“东西”。一个窗口、一个按钮、一个菜单都可视为一个对象,而按钮对象、菜单对象、又会出现在窗口对 象中,因此按钮对象、菜单对象便是窗口的组件之一。对象内部的数据是不能随意更改的,必须由外部向其传递信息,再由对象按其方法加以处理。用户无需知道其 任何细节,操作是封闭的,对象之间能通过函数调用相互通信。
(3)、 类可视为一个产品模具、一个模块。在面向对象设计中,类是对象的原型,是对象的制作器。类的概念是面向对象程序设计最重要的特征。所谓类,是指由数据结构 及其相关操作所形成的集合,描述该类任一对象的共同的行为特征,是对一组性质相同的对象的程序描述,概括了对象的共同性质和数据。
(4)、面向对象设计的核心是类的设计。例如:可以定义一个“工资查询表单”类,该类中可以定义查询的姓名、年龄、工资等等信息,则以此类为原型可以设计出众多的“工资查询表单”类的对象实例,这些实体都具有类中所定义的特征。
(5)、设计的工资管理系统也 是建立在一系列类基础之上的,其编程的思想是:先根据一定的需要创建一系列的子类或直接调用vfp提供的基类,编制程序时,由这些类派生出相应的对象,所 派生出的对象继承了其父类所有的功能,而且具有很好的封装性,这样就可利用派生出的对象像搭积木一样来设计自己的程序。打个比方,就比如要制造一台机器, 首先要制造各种零件的模具,然后用制造好的模具生产出所需的零件,所有这些做完后,剩下的就只是如何把这些零件组装起来,这样一台机器就很容易制造出来 了。实际编程也是如此。每个表单都是由一定数量的对象按某一种方式组合在一起的,程序编制的核心是类的设计。
3.2 数据库总体设计
总体设计
概要设计基础是完成需求分析后提供的需求说明书,用概念数据模型表示数据及其相互间的关系,这种数据模型是与DBMS无关的、面向现实世界的、易如理解的数据模型,其独立于计算机的数据模型,独立于计算机的软硬件系统,与用户进行交流十分方便。
概念性数据模型关心的是如何完整、正确地反映客观实际情况,不关心在数据库中如何实现。这种数据模式能真实地反应用户要求的实际情况,是一种容易被人们理解 的直观的数据库结构模式。同时也是一种相对稳定统一的数据模式,一般情况下很少变动。概念性数据在用户和设计者之间建立了桥梁。是设计数据库结构的基础。
概念设计中自顶向下的实体分析方法,即常用的实体联系模型(简称E-R模型),对具体数据进行抽象加工,将实体集合抽象成实体类型。用实体间联系反映现实世界事物间的内在联系。E-R模型是建立概念性数据模型的有力工具。
通过对企业工资管理内容和过程的分析,本系统应设计的实体和属性如下:
本系统一共用到了3个表。如下:
岗位表(dept.dbf)(包括岗位名称,岗位工资)
工龄表(gongling.dbf)(包括工龄,工龄工资)
工人信息表(personnel.dbf)(包括编号,姓名,性别,工作岗位,工龄,工资等级)。
(1).部门表
(2).工龄表
(3.)员工信息表
第四章详细设计与实现
4.1工资系统功能
企业工资管理系统主要有以下几大功能:
(1)对单位人员的变动进行处理。一个单位的职工不会是一成不变的,总是在不断的变化:有调出、有调入、也有职工在本单位内部调动。因此,设计系统是应考虑到这些情况。
(2)对职工的工资进行计算、修改。可以对职工的工资档案进行个别、部分和批量修改,同时,能对各职工的工资进行计算,即计算应发金额、应扣金额及实发金额等。
(3)查询统计功能。要求即可以单项查询,比如查看某个职工的工资情况等;也可以多项查询,比如某部门工资数在某一范围的职工的工资情况等。
(4)报表打印功能。每月发放工资时,要求能够打印本月的工资表、随工资发给每个职工的工资条以及工资统计表。
4.2功能模块说明
本系统大致分为如下四大功能模块。
(1).员工信息
(2).工资基本设定
(3).工资汇总
(4).个人工资查询
(5). 退出
4.3功能模块实现
(1).员工信息
分为员工信息浏览和员工信息查询:
在员工信息浏览子模块中,可以对员工的编号、姓名、性别、岗位、工龄、工资等级等信息进行浏览,并可以对员工信息进行增加记录,修改记录,删除记录等操作;
在员工信息查询模块中,可按员工号或员工姓名进行查询。
(2).工资基本设定
包括对基础工资、岗位工资、工龄工资的设定。
基础工资的设定包括工资等级、工资额的设定,可以对工资等级及相应的工资额进行修改、添加、删除。
岗位工资的设定包括岗位名称、岗位工资额的设定,可以对岗位名称及相应的岗位工资额进行修改、添加、删除。
工龄工资的设定包括工龄、工资额的设定,可以对各个工龄段及相应的工龄工资额进行修改、添加、删除。
(3).工资汇总
在工资管理中,要分别输入每一个员工的各项工资条款,这样才能运用计算机技术来管理好员工的工资发放情况,其中包括:员工基本情况,员工基本工资情况,员工岗位工资情况,员工工龄工资,工资综合。
(4).个人工资查询
此查询分为按职工姓名查询、按职工号查询。
(5). 退出
此功能块为退出系统。
第五章程序编写及调试程序
5.1主窗体的设计
下面对本系统的具体的几个模块做详细说明。
1、系统主程序MAIN.PRG
clear screen
clear events
set defa to d:\qygz
open database database\salary
do salary\main.mpr
do form salary\form\ksjm
read events
2、Ksjm.frm
(1)打开表单设计器,设计好表单,并且设置好必要的属性,设计结果见图。
Form1.load事件代码:
public i
i=0
Timer.timer事件代码:
if Thisform.Label1.Left<0-Thisform.Label1.Width
Thisform.Label1.Left=Thisform.Width+3
Endif
Thisform.Label1.Left=Thisform.Label1.Left-10
I=I+10
If I>=255*2-6
I=0
Endif
(2)“员工基本信息“按钮的CLICK事件为:
do form salary\form\personnel
personnel.frm的有关设计见第3目
(3)“工资基本设定“按钮的CLICK事件为:
do form salary\form\dataformat
(4)“工资汇总“按钮的CLICK事件为:
do form salary\form\result
(5)“个人工资查询“按钮的CLICK事件为:
do form salary\form\grcx
(6)“退出“按钮的CLICK事件为:
thisform.release
clear events
5.2工资信息管理窗体的设计
1. personnel.frm的有关设计:
(1)打开表单设计器,设计好表单,并且设置好必要的属性,设计结果见图6-4。
Form1.init事件代码:
set multilocks on
cursorsetprop("buffering",3)
(2) thisform.pageframe1.page1.command1.click事件代码:
thisform.pageframe1.page1.fy1.enabled=.F.
thisform.pageframe1.page1.command2.enabled=.F.
thisform.pageframe1.page1.command3.enabled=.F.
thisform.pageframe1.page1.command4.enabled=.T.
if thisform.pageframe1.page1.command1.caption='增加新记录'
thisform.pageframe1.page1.txtpid.enabled=.T.
thisform.pageframe1.page1.txtpname.enabled=.T.
thisform.pageframe1.page1.txtp***.enabled=.T.
thisform.pageframe1.page1.txtpjob.enabled=.T.
thisform.pageframe1.page1.txtpindate.enabled=.T.
thisform.pageframe1.page1.txtprank.enabled=.T.
append blank
thisform.pageframe1.page1.command1.caption='增加确认'
thisform.pageframe1.page1.refresh
thisform.pageframe1.page1.txtpid.setfocus
else
getid=alltrim(thisform.pageframe1.page1.txtpid.value)
getname=alltrim(thisform.pageframe1.page1.txtpname.value)
get***=alltrim(thisform.pageframe1.page1.txtp***.value)
getjob=alltrim(thisform.pageframe1.page1.txtpjob.value)
getindate=alltrim(thisform.pageframe1.page1.txtpindate.value)
getrank=alltrim(thisform.pageframe1.page1.txtprank.value)
if empty(getid) or empty(getname) or empty(get***) or empty(getjob) or empty(getindate) or empty(getrank)
messagebox("资料不足",48,"错误")
else
thisform.pageframe1.page1.command1.caption='增加新记录'
tableupdate(.t.)
thisform.pageframe1.page1.txtpid.enabled=.F.
thisform.pageframe1.page1.txtpname.enabled=.F.
thisform.pageframe1.page1.txtp***.enabled=.F.
thisform.pageframe1.page1.txtpjob.enabled=.F.
thisform.pageframe1.page1.txtpindate.enabled=.F.
thisform.pageframe1.page1.txtprank.enabled=.F.
thisform.pageframe1.page1.fy1.enabled=.T.
thisform.pageframe1.page1.command2.enabled=.T.
thisform.pageframe1.page1.command3.enabled=.T.
thisform.pageframe1.page1.command4.enabled=.F.
4.工龄工资设定窗体代码:
1.”修改”按钮有关代码:
thisform.grdgongling.column1.text1.enabled=.T.
thisform.grdgongling.column2.text1.enabled=.T.
thisform.grdgongling.column1.text1.setfocus
2.”修改确认”按钮有关代码:
thisform.grdgongling.column1.text1.enabled=.F.
thisform.grdgongling.column2.text1.enabled=.F.
3.”添加” 按钮有关代码:
append blank
go bottom
thisform.grdgongling.column1.text1.enabled=.T.
thisform.grdgongling.column2.text1.enabled=.T.
thisform.grdgongling.column1.text1.setfocus
4.”删除” 按钮有关代码:
thisform.grdgongling.recordsource=''
use gongling exclusive
delete from gongling where gname=getgname
pack
thisform.grdgongling.recordsource='gongling'
thisform.grdgongling.refresh
5.”退出” 按钮有关代码
thisform.release
do form salary\form\dataformat
5.个人查询窗体有关代码:
(1).”确定”按钮有关代码:
inname=alltrim(thisform.text1.value)
inpswd=alltrim(thisform.text2.value)
set order to tms_user
seek inname
if !found()
cMessageTitle='设备管理系统'
cMessageText='用户名错误,请重新输入'
nDialogType=4+32
nAnswer=messagebox(cMessageText,nDialogType,cMessageTitle)
do case
case nAnswer=6
thisform.text1.value=''
thisform.text1.setfocus
case nAnswer=7
messagebox("请勿偷窥他人资料",48,"警告")
thisform.release
endcase
else
if tms_pswd!=inpswd
cMessageTitle='设备管理系统'
cMessageText='密码错误,请重新输入'
nDialogType=4+32
nanswer=messagebox(cMessageText,nDialogType,cMessageTitle)
do case
case nAnswer=6
if flag<2
thisform.text2.value=''
thisform.text2.setfocus
flag=flag+1
else
messagebox("请勿偷窥他人资料",48,"警告")
thisform.release
endif
case nAnswer=7
messagebox("请勿偷窥他人资料",48,"警告")
thisform.release
endcase
else
thisform.release
par1=inname
do form salary\form\gresult
endif
endif
(2).表单载入事件代码:
public inname
public flag
flag=0
5岗位工资有关源码:
(1).”修改”按钮有关代码:
thisform.grddept.column1.text1.enabled=.T.
thisform.grddept.column2.text1.enabled=.T.
thisform.grddept.column1.text1.setfocus
(2).”修改确认”按钮有关代码:
thisform.grddept.column1.text1.enabled=.F.
thisform.grddept.column2.text1.enabled=.F.
(3).”添加” 按钮有关代码:
append blank
go bottom
thisform.grddept.column1.text1.enabled=.T.
thisform.grddept.column2.text1.enabled=.T.
thisform.grddept.column1.text1.setfocus
(4).”删除” 按钮有关代码:
thisform.grddept.recordsource=''
use dept exclusive
delete from dept where jobname=getjob
pack
thisform.grddept.recordsource='dept'
thisform.grddept.refresh
(5).”退出” 按钮有关代码
thisform.release
do form salary\form\dataformat
其它模块设计略,具体的请用VFP6.0打开工程文件就可看到相应的源代码。
第六章 系统测试
6.1系统测试方案:
在MIS开发过程中采用了多种措施保证软件质量,但是实际开发过程中还是不可避免地会产生差错,系统中通常可能隐藏着错误和缺陷,未经周密测试的系统投入运行,将会造成难以想象的后果,因此系统测试是MIS开发过程中为保证软件质量必须进行的工作。大量统计资料表明,系统测试的工作量往往占MIS开发总工作量的40%以上。因此,我们必须重视测试工作。
由于程序中隐藏的缺陷只在特定的环境下才有可靠显露,系统缺陷通常是由于对某些特定情况考虑不周造成的。因此测试不是为了表明程序正确;成功的测试也不是没有发现错误的测试。有意义的软件测试应该是从“破坏”软件系统的角度出发,精心设计最有可以暴露程序系统缺陷的测试方案。因此软件测试的目标应该是以尽可能少的代价和时间找出软件系统中潜在的错误和缺陷。
从产品角度看,测试计划中的测试项目包括软件结构中的分系统层、子系统层、功能模块层、程序模块层中的各类模块,从测试本身看,分为单元测试,组合测试,确认测试等。测试对象是随阶段而异的,最基本、最初的测试是单元测试,后面的组合测试、确认测试都是以被测过的模块作为测试对象的。
(1)单元测试:
单元测试也称模块测试或程序测试,单元测试是对每个模块单独进行的,验证模块接口与设计说明书是否一致,对模块的所有主要处理路径进行测试且与预期的结构进 行对照,还要对所有错误处理路径进行测试。对源码进行审查,对照设计说明书,表态地检查源程序是否符合功能的逻辑要求,是进行单元测试前的重要工作工。单 元测试一般是由程序员完成,也称程序调试。
(2)组合测试
组合测试也称集成测试或子系统测试,通常采用自顶向下测试和自底向上测试两种测试方法。组合测试的对象是指已经通过单元测试的模块,不是对零散模块进行单个测试,而是用系统化的方法装配和测试软件系统,是一个严格的过程,必须认真地进行,其计划的产生和单元模块测试的完成日期要协调起来,这种测试应在系统目标机上进行,造成系统应用的环境条件,除了开发部分项目负责人参加以外,还应该有相应系统的用户参加,给评审员进行演示。
(3)确认测试
确认测试是对通过组合测试的软件进行的,这些软件已经存于系统目标设备的介质上,确认测试的目的是对表明软件是可以工作的,并且符合“软件需求说明书”中规定的全部功能和性能要求。确认测试是按照这些要求定出的“确认测试计划”进行的。测试工作是由一个独立的组织进行,而且测试要从用户的角度出发。
(4)系统测试
系统测试是对整体性能的测试,主要解决各子系统之间的数据通信和数据共享问题以及检测系统能否达到用户的实际要求,系统测试的依据是系统分析报告。系统测试应在系统的整个范围内进行,这种测试不只对软件进行,而是对构成系统的硬、软件一起进行。系统测试与建构同时进行或略慢。系统测试需要确认从头到尾的功能正常才算完成,应当尽量避免系统测试延到项目末尾进行。
(5)用户验收测试
在系统测试完成后,进行用户的验收测试,它是用户在实际应用环境中所进行的真实数据测试。
在 具体的测试中,一般应遵循以下原则:由程序设计者之外的人进行测试;测试用例应由两部分组成:输入数据和预期输出结果;应选用不合理的输入数据与非法输入 测试;不仅要检验程序是否实现预期功能,还应检查程序是否做了不应该做的工作;集中测试容易出错的程序模块;对程序修改以后,必须重新进行测试。
在开发本系统时,为了使系统能够稳定运行,对本系统进行了有针对性的全面测试,采取的方式是:
1、菜单项测试:为了保证每一项下拉菜单能够正确实现系统设计的功能,我把相关的基础数据,基本上全部输入到本系统中,并对每一个菜单项反复进行了增加、删除、修改等操作,从而保证了菜单级功能的正确实现。
2、数据跟踪:完成菜单项测试后,我又对系统内的每一个数据进行了跟踪。例如:在成绩管理模块中,我首先对考试类型进行设定,然后在成绩添加模块中进行数据操作,随时观察这两个模块之间是否有冲突产生,配合得是否正确,再然后在成绩浏览模块中进行验证,说明该功能完全正常,对其它的功能模块也进行了类似的设置。
3、综合测试:在以上测试的基础上对系统功能进行了整体的测试,依次来检验系统功能是否符合系统设计的要求。
6.2 系统运行与维护:
系统的运行:
1、初始数据的输入
本系统的输入采用鼠标和键盘相结合的输入方法。
2、怎样使用本系统:
本系统的使用相应简单,基本上只要会使用Windows软件就会使用本系统,在具体的操作时,只需要点击鼠标左键即可进行相应功能的选择。
3、系统的维护:
本系统是较之复杂的人-机系统,由于系统外部环境与内部因素的变化,不断影响系统的运行,同时需要系统不断地适应这些变化,不断地完善系统,以提高系统运行的效率与服务水平,这就需要自始至终进行系统的维护工作。
系统的维护主要包括四个方面:
(1)程序的维护:指的是修改部分或全部程序,这种维护往往是在条件发生变化或原系统的效率低的情况下进行的。
(2)数据文件的维护:指的是按照用户的要求对数据文件进行不定期的修改。
(3)代码的维护:随着系统的发展和变化,可能会出现旧代码不能适应新要求的问题,因此,有必要变更代码,予以维护。
(4)硬件的维护:指的是对系统所使用的设备进行维护。
本系统的日常维护由学校的专人来负责,如果出现一些不能解决的问题,则由开发者来负责。
6.3系统的转换方案:
本次开发的企业工资管理系统采用了并行转换方式,以保证平衡可靠的过度。即一方面使用本系统来进行工作,另一方面又继续沿用老的方式—手工方式,这种状况持续了一个周的时间,在这期间发现了一些程序中存在的漏洞和错误,用户也提出一些修改意见,经过程序的进一步完善后,正式投入了使用,中止了以前老的手工的操作方式。
第七章使用说明书
7.1 系统功能简介
(1)对单位人员的变动进行处理。一个单位的职工不会是一成不变的,总是在不断的变化:有调出、有调入、也有职工在本单位内部调动。因此,设计系统是应考虑到这些情况。
(2)对职工的工资进行计算、修改。可以对职工的工资档案进行个别、部分和批量修改,同时,能对各职工的工资进行计算,即计算应发金额、应扣金额及实发金额等。
(3)查询统计功能。要求即可以单项查询,比如查看某个职工的工资情况等;也可以多项查询,比如某部门工资数在某一范围的职工的工资情况等。
(4)报表打印功能。每月发放工资时,要求能够打印本月的工资表、随工资发给每个职工的工资条以及工资统计表。
7.2 开发工具和运行环境简介
开发工具:Microsoft Visual foxpro6.0
1.硬件要求。
2.软件要求。
第八章.系统评价
系统评价就是客观,公正的从各个方面评价系统的各项功能。本部分将具体从三方面阐述:优点,缺点以及将来可能提出的要求。
8.1系统的特点
1.流程符合企业内部工资管理的要求。
2.界面友好,输入信息方便(好多信息,系统自动生成)。
3.查询全面,对任何情况或字段都可以查询,从而对管理进行监督。
4.系统扩充容易。由于资料有限,有很多地方还需要更好的完善。
5.即面向开发人员,又面向用户。
8.2系统的缺点
1.由于时间的原因。输出报表不完善。
2.网络功能欠缺。本系统只能在单片机上运行,不能实现网络连接,资源共享。
3.容错性不高。系统的抗错,容错性不高。这方面有待加强。
4.由于资料有限,有很多地方还设计的不够详细,如考勤制度与工资奖金,福利,公积金,应付合计,扣除合计,应发合计的关系等,还需要更好的完善。
5.没有良好的用户权限和密码限制以防止人为的破坏与盗窃数据资源。
8.3将来可能提出的要求
1.网络化。
系统能支持网络数据传输,数据共享;数据远程访问能自动采取一定的加锁策略;远程报表处理。
2.多媒体化。
系统能够支持语音输入。
第九章 总结与展望
通过两周的软件工程课程设计,我比较熟练的掌握了软件工程的基本思想以及软件开发的基本流程。我受到了一次用专业知识、专业技能分析和解决问题的全面系统的锻炼。并且在综合知识的选用方面,在应用软件开发的基本思想、方法方面,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步。为日后成为合格的应用型人才打下良好的基础。这次在指导老师的帮助下,在同学的帮助下,基本上完成了设计任务,在软件的设计方面也有了一定的提高,熟练掌握了VISUAL FOXPRO命令和编程技巧,为今后走上工作岗位打下了专业基础。
在这次的课程设计中,让我深深地体现到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、缜密的思维、严谨的工作态度以及较高的分析问题、解决问题的能力,而我在很多方面还有欠缺。在以后的学习过程中我会从这次课程设计中汲取教训并寻求高效率优方法的学习态度不断充实自我完善自我。
致谢
我要衷心感谢各位老师在我的课程设计过程中给予我的极大帮助,使我能够及时、顺利地完成此次的软件工程课程设计。同时,也要感谢我的同学及在本系统的设计过程中给予我大力支持和帮助的各位朋友。
参考文献
1.王汝涌 《管理信息系统》 中国财政经济 2001.1
2.王忠群 《软件工程》 中国科学技术大学出版社 2009.11
3.刘瑞新 《VFP程序设计教程》 机械工业出版社 2002.3
4.毛一心 《VFP6.0应用》 人民邮电出版社 2003.3
5.萨师煊、王珊《数据库系统概论(第四版)》 高等教育出版社 2005.4