1、目 录第一章 可行性研究11.1.技术可行性分析11.2.社会可行性分析11.3.经济可行性分析11.4.操作可行性11.5 可行性研究结论1第二章 需求分析12.1 系统主要功能需求分析12.2 数据流分析22.3 ER图22.4 层次方框图 32.5 工资系统项目简介32.6 风险分析及处理政策4第三章 总体设计43.1 系统总体设计43.2 数据库总体设计4第四章 详细设计与实现54.1 工资系统功能54.2 功能模块说明54.3 功能模块实现6第五章 程序编写及调试程序65.1 主窗体的设计65.2 工资信息管理窗体的设计7第六章 系统测试106.1 系统测试方案106.2 系统运行与
2、维护116.3 系统的转换方案11第七章 使用说明书117.1 系统功能简介117.2 开发工具和运行环境简介11第八章 系统评价128.1 系统的特点128.2 系统的缺点128.3 将来可能提出的要求12第九章 总结13第一章 可行性研究1.1.技术可行性分析 此系统是教职工工资管理系统,用visaul foxpro 6.0结合windows xp操作系统开发而成的,大家都知道这项技术已经相当成熟了,因此从技术方面讲开发此教职工工资管理系统是可行的。 1.2.社会可行性分析 社会可行性研究是对系统投入使用后对社会可能带来的影响进行分析,比如是否为人们所接受,是否为社会带来利益。1.3.经济
3、可行性分析主要是对项目的经济效益进行评价,一方面是支出的费用,其中包括设备购置费,软件开发费,管理和维护费,人员工资和培训费等。另一方面是取得的收益中可以用钱来衡量的那部分(收益的另一部分难以用钱来表示)。基于企业的现有计算机及配套设备,建设MIS系统。不但能大大减少重复性的书面报告,降低办公费用,提高办公室效率,而且能提高检测数据效用。由于教职工工资管理系统是一个比较小型的系统,是由我们们小组进行开发的,所以从人力、物力、财力方面来说都是可行的。1.4.操作可行性主要是管理人员对开发信息系统是否支持,现有管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等,高校工资管理系统比较完善的
4、规章制度和管理方法为系统的建设提供了保障。1.5 可行性研究结论可行性分析的最后成果是写出可行性分析报告,可行性分析报告包括下列内容:教职工工资管理系统的战略目标,新系统的总体目标及主要功能。主要问题和主要信息要求。拟订新系统的方案。从经济,技术,管理,社会等方面论证方案的可行性。第二章 需求分析2.1 系统主要功能需求分析 对用户需求的分析应该全面、深入、发展,全面是指考查由管理的信息是否有纰漏,必须保证各静态、动态信息的完全;深入是指对信息的内容、结构、含义、变换、生存周期的分析和认识;发展是指对信息未来发展变化的预测,因为信息在某个系统、机构内的变化往往存在着自身特有的发展规律,需求分析
5、应该预见这种规律,否则就会缩短的使用寿命。为了保证需求分析的完备性,就必须保证需求分析的时间。系统业务流程图通过对企业原先手工进行员工工资管理业务的情况,可以设计出它的业务流程图,如图所示。2.2 数据流分析 数据流程图: (1).管理系统的数据流程图符号如图所示2.3 ER图2.4 层次方框图2.5 工资系统项目简介教职工工资管理系统的主要任务是用计算机对各种工资信息进行日常的管理,如查询、修改、增加、删除以及存储等,迅速准确地完成各种工资信息的统计计算和汇总工作,快速打印出工资报表,针对系统服务对象的具体要求,设计了高校教职工工资管理系统。2.6 风险分析及处理政策 (1).风险分析随着我
6、们国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善。工资管理作为企业内部的一种财务管理也是如此,由于企业职工人数较多,每一位职工的具体实际情况也不尽相同,各项工资条款的发放(2).处理政策 高校工资管理实现计算机管理,使管理员能够有序的管理每一位职工的各项工资条款的发放以及职工个人台帐的生成,使单位运用现代化技术创造更多更高的经济效益。第三章 总体设计3.1 系统总体设计本部分主要介绍系统要实现的功能,搭好设计的总体框架,使我们们对要开发的系统有一个系统、全面、确切的认识。系统开发思想(1)面向对象设计不再是单纯的从代码的第一行一直编到最后一行,而是考虑如何创建类和对象,
7、利用类和对象来简化程序设计,并提供代码的封装和可重用性,便于程序的维护与扩展。(2) 所谓的对象是一种抽象的名称,用来对应实现世界存在的“东西”。一个窗口、一个按钮、一个菜单都可视为一个对象,而按钮对象、菜单对象、又会出现在窗口对 象中,因此按钮对象、菜单对象便是窗口的组件之一。对象内部的数据是不能随意更改的,必须由外部向其传递信息,再由对象按其方法加以处理。用户无需知道其 任何细节,操作是封闭的,对象之间能通过函数调用相互通信。(3) 类可视为一个产品模具、一个模块。在面向对象设计中,类是对象的原型,是对象的制作器。类的概念是面向对象程序设计最重要的特征。所谓类,是指由数据结构 及其相关操作
8、所形成的集合,描述该类任一对象的共同的行为特征,是对一组性质相同的对象的程序描述,概括了对象的共同性质和数据。3.2 数据库总体设计总体设计概要设计基础是完成需求分析后提供的需求说明书,用概念数据模型表示数据及其相互间的关系,这种数据模型是与DBMS无关的、面向现实世界的、易如理解的数据模型,其独立于计算机的数据模型,独立于计算机的软硬件系统,与用户进行交流十分方便。概念设计中自顶向下的实体分析方法,即常用的实体联系模型(简称E-R模型),对具体数据进行抽象加工,将实体集合抽象成实体类型。用实体间联系反映现实世界事物间的内在联系。E-R模型是建立概念性数据模型的有力工具。通过对企业工资管理内容
9、和过程的分析,本系统应设计的实体和属性如下:本系统一共用到了3个表。如下:岗位表(dept.dbf)(包括岗位名称,岗位工资)工龄表(gongling.dbf)(包括工龄,工龄工资)工人信息表(personnel.dbf)(包括编号,姓名,性别,工作岗位,工龄,工资等级)。(1).部门表字段名类型宽度小数位数索引部门字符型10部门工资数值型102(2).工龄表字段名类型宽度小数位数索引工龄数值型10索引工龄工资数值型102(3.)员工信息表字段名类型宽度小数位数索引序号数值型10主索引姓名字符型6性别字符型2岗位字符型10工龄数值型5工资等级字符型5第四章 详细设计与实现4.1 工资系统功能企
10、业工资管理系统主要有以下几大功能:(1)对单位人员的变动进行处理。一个单位的职工不会是一成不变的,总是在不断的变化:有调出、有调入、也有职工在本单位内部调动。因此,设计系统是应考虑到这些情况。(2)对职工的工资进行计算、修改。可以对职工的工资档案进行个别、部分和批量修改。(3)查询统计功能。要求即可以单项查询,比如查看某个职工的工资情况等;4.2 功能模块说明本系统大致分为如下四大功能模块。(1).员工信息(2).工资基本设定(3).退出4.3 功能模块实现(1).员工信息分为员工信息浏览和员工信息查询:在员工信息浏览子模块中,可以对员工的编号、姓名、性别、岗位、工龄、工资等级等信息进行浏览,
11、并可以对员工信息进行增加记录,修改记录,删除记录等操作;在员工信息查询模块中,可按员工号或员工姓名进行查询。(2).工资基本设定基础工资的设定包括工资等级、工资额的设定,可以对工资等级及相应的工资额进行修改、添加、删除。(3.退出此功能块为退出系统。第五章 程序编写及调试程序5.1 主窗体的设计 下面对本系统的具体的几个模块做详细说明。系统主程序MAIN.PRGclear screen clear eventsset defa to d:qygzdo form salaryformksjmread events5.2 工资信息管理窗体的设计 1.personnel.frm的有关设计: (1)打
12、开表单设计器,设计好表单,并且设置好必要的属性,设计结果见图6-4。Form1.init事件代码:set multilocks oncursorsetprop(buffering,3)(2) mand1.click事件代码:thisform.pageframe1.page1.fy1.enabled=.F.thisform.pageframe1.page1.txtpid.enabled=.T.append blankmand3.enabled=.T.mand4.enabled=.F.2工龄工资设定窗体代码: 1.”修改”按钮有关代码:thisform.grdgongling.column1.te
13、xt1.enabled=.T.thisform.grdgongling.column2.text1.enabled=.T.thisform.grdgongling.column1.text1.setfocus2.”修改确认”按钮有关代码:thisform.grdgongling.column1.text1.enabled=.F.thisform.grdgongling.column2.text1.enabled=.F.3.”添加” 按钮有关代码:append blankgo bottomthisform.grdgongling.column1.text1.enabled=.T.thisform
14、.grdgongling.column2.text1.enabled=.T.4个人查询窗体有关代码:(1).”确定”按钮有关代码: cMessageTitle=设备管理系统 cMessageText=用户名错误,请重新输入 nDialogType=4+32 case nAnswer=6 if flag2 thisform.text2.value= thisform.text2.setfocus flag=flag+1 else endif(1).”修改”按钮有关代码:thisform.grddept.column1.text1.enabled=.T.thisform.grddept.colum
15、n2.text1.enabled=.T.thisform.grddept.column1.text1.setfocus(2).”修改确认”按钮有关代码:thisform.grddept.column1.text1.enabled=.F.thisform.grddept.column2.text1.enabled=.F.(3).”添加” 按钮有关代码:append blankgo bottomthisform.grddept.column1.text1.enabled=.T.thisform.grddept.column2.text1.enabled=.T.thisform.grddept.co
16、lumn1.text1.setfocus(4).”删除” 按钮有关代码:thisform.grddept.recordsource=use dept exclusivedelete from dept where jobname=getjobpackthisform.grddept.recordsource=deptthisform.grddept.refresh(5).”退出” 按钮有关代码thisform.releasedo form salaryformdataformat其它模块设计略,具体的请用VFP6.0打开工程文件就可看到相应的源代码。第六章 系统测试6.1 系统测试方案在MIS
17、开发过程中采用了多种措施保证软件质量,但是实际开发过程中还是不可避免地会产生差错,系统中通常可能隐藏着错误和缺陷,未经周密测试的系统投入运行,将会造成难以想象的后果,因此系统测试是MIS开发过程中为保证软件质量必须进行的工作。大量统计资料表明,系统测试的工作量往往占MIS开发总工作量的40%以上。因此,我们们必须重视测试工作。由于程序中隐藏的缺陷只在特定的环境下才有可靠显露,系统缺陷通常是由于对某些特定情况考虑不周造成的。因此测试不是为了表明程序正确;成功的测试也不是没有发现错误的测试。有意义的软件测试应该是从“破坏”软件系统的角度出发,精心设计最有可以暴露程序系统缺陷的测试方案。因此软件测试
18、的目标应该是以尽可能少的代价和时间找出软件系统中潜在的错误和缺陷。从产品角度看,测试计划中的测试项目包括软件结构中的分系统层、子系统层、功能模块层、程序模块层中的各类模块,从测试本身看,分为单元测试,组合测试,确认测试等。测试对象是随阶段而异的,最基本、最初的测试是单元测试,后面的组合测试、确认测试都是以被测过的模块作为测试对象的。(1)单元测试:单元测试也称模块测试或程序测试,单元测试是对每个模块单独进行的,验证模块接口与设计说明书是否一致,对模块的所有主要处理路径进行测试且与预期的结构进 行对照,还要对所有错误处理路径进行测试。对源码进行审查,对照设计说明书,表态地检查源程序是否符合功能的
19、逻辑要求,是进行单元测试前的重要工作工。单 元测试一般是由程序员完成,也称程序调试。(2)组合测试组合测试也称集成测试或子系统测试,通常采用自顶向下测试和自底向上测试两种测试方法。(3)确认测试确认测试是对通过组合测试的软件进行的,这些软件已经存于系统目标设备的介质上,确认测试的目的是对表明软件是可以工作的,并且符合“软件需求说明书”中规定的全部功能和性能要求。6.2 系统运行与维护系统的运行:1、初始数据的输入本系统的输入采用鼠标和键盘相结合的输入方法。2、怎样使用本系统:本系统的使用相应简单,基本上只要会使用Windows软件就会使用本系统,在具体的操作时,只需要点击鼠标左键即可进行相应功
20、能的选择。3、系统的维护:本系统是较之复杂的人-机系统,由于系统外部环境与内部因素的变化,不断影响系统的运行,同时需要系统不断地适应这些变化,不断地完善系统,以提高系统运行的效率与服务水平,这就需要自始至终进行系统的维护工作。6.3 系统的转换方案本次开发的企业工资管理系统采用了并行转换方式,以保证平衡可靠的过度。即一方面使用本系统来进行工作,另一方面又继续沿用老的方式手工方式,这种状况持续了一个周的时间,在这期间发现了一些程序中存在的漏洞和错误,用户也提出一些修改意见,经过程序的进一步完善后,正式投入了使用,中止了以前老的手工的操作方式。第七章 使用说明书7.1 系统功能简介(1)对单位人员
21、的变动进行处理。一个单位的职工不会是一成不变的,总是在不断的变化:有调出、有调入、也有职工在本单位内部调动。因此,设计系统是应考虑到这些情况。(2)对职工的工资进行计算、修改。可以对职工的工资档案进行个别、部分和批量修改,同时,能对各职工的工资进行计算,即计算应发金额、应扣金额及实发金额等。(4)查询统计功能。要求即可以单项查询,比如查看某个职工的工资情况等;也可以多项查询,比如某部门工资数在某一范围的职工的工资情况等。7.2 开发工具和运行环境简介开发工具:Microsoft Visual foxpro6.0 1硬件要求。设备名称说明处理器最低奔腾III,建议主频800MHZ以上内 存最低1
22、28MB,建议256MB硬 盘最低20GB,建议40GB鼠 标略2软件要求。名 称说明操作系统WINDOWS95/98,WINDOWSXP应用软件VISUAL FOXPRO6.0(中文版)第八章 系统评价系统评价就是客观,公正的从各个方面评价系统的各项功能。本部分将具体从三方面阐述:优点,缺点以及将来可能提出的要求。8.1 系统的特点1流程符合企业内部工资管理的要求。2界面友好,输入信息方便(好多信息,系统自动生成)。3查询全面,对任何情况或字段都可以查询,从而对管理进行监督。4系统扩充容易。由于资料有限,有很多地方还需要更好的完善。5即面向开发人员,又面向用户。8.2 系统的缺点1由于时间的
23、原因。输出报表不完善。2网络功能欠缺。本系统只能在单片机上运行,不能实现网络连接,资源共享。3容错性不高。系统的抗错,容错性不高。这方面有待加强。4由于资料有限,有很多地方还设计的不够详细,如考勤制度与工资奖金,福利,公积金,应付合计,扣除合计,应发合计的关系等,还需要更好的完善。5没有良好的用户权限和密码限制以防止人为的破坏与盗窃数据资源。8.3 将来可能提出的要求1网络化。系统能支持网络数据传输,数据共享;数据远程访问能自动采取一定的加锁策略;远程报表处理。2多媒体化。系统能够支持语音输入。第九章 总结通过两周的软件工程课程设计,我们比较熟练的掌握了软件工程的基本思想以及软件开发的基本流程
24、。我们受到了一次用专业知识、专业技能分析和解决问题的全面系统的锻炼。并且在综合知识的选用方面,在应用软件开发的基本思想、方法方面,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步。为日后成为合格的应用型人才打下良好的基础。这次在指导老师的帮助下,在同学的帮助下,基本上完成了设计任务,在软件的设计方面也有了一定的提高,熟练掌握了VISUAL FOXPRO命令和编程技巧,为今后走上工作岗位打下了专业基础。在这次的课程设计中,让我们深深地体现到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、缜密的思维、严谨的工作态度以及较高的分析问题、解决问题的能力,而我们在很多方面还有欠缺。在以后的学习过程中我们会从这次课程设计中汲取教训并寻求高效率优方法的学习态度不断充实自我们完善自我们。13