企业人事管理--毕业设计报告.doc_第1页
企业人事管理--毕业设计报告.doc_第2页
企业人事管理--毕业设计报告.doc_第3页
企业人事管理--毕业设计报告.doc_第4页
企业人事管理--毕业设计报告.doc_第5页
免费预览已结束,剩余36页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕 业 论 文论文题目 企业人事管理系统摘 要在企业人事管理中,要进行部门的调整,工资的结算,员工信息管理及出勤管理等,工作量很大,如果实行手动操作,效率低,且易混易错,不便管理。人事管理系统能够快速、方便地实施人员管理,核算工资,登记考勤,还可以对关于工资的各种信息进行统计。本文介绍了企业人事管理系统开发的背景与过程:首先在需求分析阶段,获得该系统的功能有:基本信息管理、考勤管理、薪资管理、员工培训、日常打印、数据库管理、系统设置。其次还介绍了该系统的详细设计过程,包括:数据库的设计、各个模块的设计和实现,以及具体界面的设计和功能。关键词:vc+ 企业人事管理系统 软件工程目 录1前言11.1背景概述11.2论文所做的工作11.3论文的结构安排12. 技术介绍22.1 Visual C+简介22.2 MFC技术介绍22.3 ODBC访问数据库33.系统设计53.1可行性分析53.1.1 技术可行性研究53.1.2 操作可行性研究53.2系统需求分析53.2.1 用户工作流程53.2.2用户功能需求63.2.3 性能需求73.2.4 运行需求73.3系统总体设计73.3.1设计思想73.3.2设计原则73.3.3 设计目标83.3.4业务流程分析83.3.5系统数据流分析103.3.6 数据字典143.4系统详细设计153.4.1 模块功能设计153.4.2 类设计193.4.3 系统数据库设计234.系统的实现274.1编码274.2模块测试284.3整体测试284.4 测试结果295.总结31参 考 文 献32英文摘要34致谢辞35仲恺农业技术学院毕业论文(设计)成绩评定表361前言1.1背景概述人事管理系统(HRMS)是一种与与企业人事资源相合,集中、整合各种信息来源,进行人员管理,相关信息统计,以达到降低成本、提高效率、改进员工服务模式的系统。人事管理系统涵盖了人事管理部门对员工在企业的全部生命周期的管理,从基本信息管理,考勤管理,到薪资管理和数据库管理,再到提供日常打印功能和系统设置等功能等。能动态直接反映企业人事状况,为企业人事管理和高层决策领导提供高效的决策支持。本系统针对企业人员数量不断增加、分工越细、联系越密,所要做的统计工作随之增多,最初通过人工方式进行人事管理,容易出错,不适应企业发展需要的情况,通过建立易查、易用,且具有较高的扩展性和可维护性,做到模块化分析、模块化设计和代码编写模块化的人事管理系统,动态直接反映企业人事的资源状况,使得管理者能快速高效地完成企业日常事务中的人事工作,降低人事资源管理成本,实现企业人事管理的系统化,这正是本课题开发的目的和意义。因此,本软件借助VC+编程语言,利用MFC进行设计,并应用Microsoft SQL Server 2000作为数据库,开发出一个界面清晰、操作简单、功能完善,适合于企业人事管理的系统,。1.2论文所做的工作在开发该软件的过程中,我深入研究了如何利用MFC提供的数据库API函数和类进行系统开发。如何直接使用ODBC进行数据库的连接等。针对本软件的各项功能的操作都较为直观、简便,因而用户可以很轻松的使用。在该软件的设计中,充分考虑到了对数据库的备份与恢复功能等问题,增加了数据的可恢复性。1.3论文的结构安排整篇论文共分为五部分,各部分的主要内容安排如下:1、前言。介绍论文的选题背景、所做工作以及论文的结构安排。2、技术介绍。主要介绍了Visual C+开发语言,MFC开发技术,以及ODBC访问数据库。3、系统设计。按照软件工程的要求,介绍系统开发的整个过程,包括系统可行性分析、需求分析,概要设计,详细设计。4、系统实现。主要是对软件实现的功能进行截图,展示运行结果。5、总结。2. 技术介绍2.1 Visual C+简介Visual C+是以C+为蓝本,以众多集成工具为骨架,可谓是功能最为强大可视化开发工具,它不仅支持传统的软件开发方法,更重要的是它能支持面向对象、可视化的开发风格。因此Visual C+又称作是一个集成开发工具,它提供了软件代码自动生成和可视化的资源编辑功能。Visual C+具有的优点:提供了面向对象的应用程序框架MFC(Microsoft Foundation Class),简化了程序员的编程工作,提高了模块的可重用性;提供了基于CASE技术的可视化软件的自动生成和维护工具AppWizard、ClassWizard、Visual Studio、WizardBar等,实现了直观、可视的程序设计风格,方便地编和管理各种类,维护程序的源代码;封装了Windows的API函数、USER、KERNEL、GDI函数,简化了编程时创建、维护窗口的许多复杂的工作。2.2 MFC技术介绍MFC是Microsoft Foundation Class Library的缩写,即Microsoft基本类库。它是Visual C+的重要组成部分。MFC中的各种类结合起来构成了一个应用程序框架,它的目的是让程序员在此基础上建立Windows下的应用程序。 1、MFC编程优点:l MFC提供了大量的类,把WindowsAPI函数封装在类中,用户可以方便地开发 Window运用程序; l 可以充分利用前人开发的代码,缩短了程序的开发周期;l 使代码具有更好的重用性;l 使一些复杂的开发技术变得容易实现;l 使用消息映射机制可以避免处理消息是的复杂情形;l 使用MFC可以提高程序的运行效率。2 、本文用到的MFC控件简介1) Static Text(静态控件):显示一些几乎固定不变的文字或图形描述,一般不 能接受输入信息;2) Picture(图片控件):显示位图、图标、方框和图元文件,一般不能接受输入信息;3) Edit Box(编辑框控件):完成文字的输入输出双向操作,查看并编辑文字,支持单行和多行编辑;4) CListBox(列表框控件):显示一个列表,用户可以从中选取一个或多个项;5) CButton(命令按钮控件):响应用户的输入,触发相应的事件。6) CCheckBox(复选框):提供一个制造单一选择开关的方法;2.3 ODBC访问数据库1、 ODBC数据开发技术介绍:ODBC(OpenDatabaseConnectivity,开放数据库互连)是微软公司开放服务结构(WOSA,WindowsOpenServicesArchitecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。 2、 本文采用ODBC连接数据库的实现方法ODBC是依靠分层结构来实现的,可保证其标准性和开放性。ODBC的体系结构,共分为四层:应用程序、驱动程序管理器、驱动程序和数据源。它在Windows中是一个动态链接库即ODBC.DLL。驱动程序层由微软、DBMS厂商或第三开发商提供,它必须符合ODBC的规程。 下面我们详细介绍各层的功能:(1) 应用程序层(Application)使用ODBC接口的应用程序可执行以下任务:请求与数据源的连接和会话(SQLConnect); 向数据源发送SQL请求(SQLExecDirct或SQLExecute); 对SQL请求的结果定义存储区和数据格式; 请求结果; 处理错误; 如果需要,把结果返回给用户; 对事务进行控制,请求执行或回退操作(SQLTransact); 终止对数据源的连接(SQLDisconnect)。(2)驱动程序管理器(Driver Manager)由微软提供的驱动程序管理器是带有输入库的动态连接库ODBC.DLL,其主要目的是装入驱动程序,此外还执行以下工作:处理几个ODBC初始化调用;为每一个驱动程序提供ODBC函数入口点;为ODBC调用提供参数和次序验证。(3)驱动程序(Driver)驱动程序是实现ODBC函数和数据源交互的DLL,当应用程序调用SQL Connect或者SQLDriver Connect函数时,驱动程序管理器装入相应的驱动程序,它对来自应用程序的ODBC函数调用进行应答,按照其要求执行以下任务:建立与数据源的连接;向数据源提交请求;在应用程序需求时,转换数据格式;返回结果给应用程序;将运行错误格式化为标准代码返回;在需要时说明和处理光标。3.系统设计3.1可行性分析3.1.1 技术可行性研究开发一个小型的企业人事管理系统,涉及到的技术问题不会太多,主要用到的技术就是数据库和一门可视化开发的编程语言。在这方面,数据库主要是用来存放数据,可以考虑采用Microsoft SQL Server,它是一个安全、可靠的并且支持面向对象设计的数据库系统,并且易用性和可维护性相都较好。在前台开发编程方面,本系统采用Microsoft公司的Visual Studio C+ 6.0作为开发的平台,应用可视化的编程语言和利用MFC来制作界面,设计简便明了,易于实现。3.1.2 操作可行性研究本系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。而整个企业人事管理系统采用最友好的交互界面,简单明了,不需要对数据库进行深入的了解。由此,该系统的操作是可行的,有必要开发该系统。综合以上两方面,该系统具有很高的开发可行性,无论是从技术上或者经济上还是操作上。因此,可以设计该系统的数据流程图,建立数据字典。3.2系统需求分析3.2.1 用户工作流程企业人事管理系统的用户工作流程,根据用户据使用权限不同,可以分为普通用户和管理员,普通用户只能浏览企业人事信息和打印相关的信息表。管理员除具有普通用户的权限外,还可以对人事信息进行添加、删除、修改操作,对用户和数据可进行管理。 3.2.2用户功能需求 根据用户的业务情况调查,本系统应实现的功能有以下七个部分:基本信息管理、考勤管理、薪资管理、员工培训、日常打印、数据库管理、系统设置。具体的功能描述如下: 1. 基本信息管理:其功能是对企业的各项信息进行添加、修改、删除等操作。2. 考勤管理模块:该模块可对员工的请假情况、每日考勤进行登记和查询,对出勤情况进行统计,为薪资管理提供依据。3. 薪资管理模块:该模块用于登记员工的工资并对工资进行查询。 4. 员工培训模块:该模块用于设置课程,并可进行课程申请,和查询课程考核情况。5. 日常打印模块:其功能是提供一键打印功能,打印出员工的基本信息和基本的工资信息。6. 系统设置:其功能是对系统的安全性进行设置。包括添加新用户,密码和权限的设置。7. 数据库管理模块:应用该模块进行数据备份和数据恢复整个人事管理系统管理系统的功能结构如图3-1所示图3-1 系统功能结构图3.2.3 性能需求(1)时间特性该管理系统软件从启动到进入系统登录界面的时间正常情况下应少于4秒,录入并更新数据的时间正常情况下少于2秒。(2)适用性该管理系统软件适用于Windows 2000/xp及以上操作系统。3.2.4 运行需求(1)用户界面本系统采用Microsoft Visual C+6.0设计,用户交互界面采用的是基于Windows的窗口界面。(2)软件接口VC+框架:Microsoft Visual C+6.0版本及以上。数据库服务器:Microsoft SQL Server 2000及以上。3.3系统总体设计3.3.1设计思想 (1)系统分成七个相对独立的模块,这些模块都是相互联系的,都可以在模块中进行集中式管理。(2)分层的模块化程序设计思想,整个系统采用模块化结构设计,把一个较大的系统分成若干个有逻辑关系的模块,然后组装成层次清晰的整体。作为应用程序有较强的可操作性和扩展性。(3)合理的数据流设计,在应用系统设计中,相对独立的模块间以数据流相互连接,使各模块间的耦合性较低,方便系统运行,提高系统安全性。3.3.2设计原则为了使本系统功能齐全完备,操作简便,最大限度的提高软件的质量,从而满足用户的实际需要,在设计开发过程中遵循了如下原则:(1)实用性原则:适合企业人事管理工作的实际需求,提高企业人事管理效率,降低管理的成本。(2)准确性原则:对输入的相关资料建立检错机制,及时报错,使用户能够及时准确的输入合法资料。(3)易操作原则:要求设计的系统功能齐全,界面友好,操作方便,必要的地方进行提示。(4)源程序可读性原则:为了便于其他设计,维护人员读懂代码或以后的代码修改,软件升级维护,即可能做好代码注释工作。(5)优化原则:为了达到优化的目的,合理的运用窗口,菜单,对象等的继承,自定义用户对象,事件,函数,减少不必要的重复性代码,使程序简介明了,也方便了将来的维护。(6)安全性原则:可以为该系统的用户设置用户权限。3.3.3 设计目标1) 系统界面设计美观、友好。2) 智能化程度高、操作灵活、方便。3) 系统运行稳定、安全可靠。4) 反映快速、计算准确。5) 实现员工信息、部门信息、以及职务信息的登记、查询和修改。6) 登记并浏览日常考勤。7) 实现员工薪资的计算和查询。8) 对员工进行培训9) 提供日常打印。10) 能对数据库进行管理,并对用户安全进行设置。3.3.4业务流程分析企业人事管理系统主要是以先进的管理理念和科学的计算机技术来取代原始的手工操作。通过对企业人事管理系统的业务流程进行调查,得出了下面的业务流程图,如图3-2 图3-2 系统业务流程系统主要的业务分析:(1) 基本信息管理基本信息包括了员工的入职信息、企业部门信息以及职务信息,其中:员工入职后录入其基本信息,员工可以通过管理员登记的编号和密码登陆此系统,从而可以对企业人事信息进行查询和打印等操作。部门信息的添加管理也是企业人事管理系统不可缺少的信息管理之一,每个员工的基本信息里都有相应的部门信息,关系到员工所从属的部门。职务信息可进行职务的添加和删除操作。 (2)考勤薪资管理:考勤是企业的一个很重要的考核标准,也是员工薪资计算的一个参考。所以每天都要进行考勤登记。每月之后考勤情况可以用打印的方式输出。员工的工资也会相应的根据考勤情况来发放。(3)员工培训为了提高员工的业务素质,企业要定期对员工进行培训,员工可以根据公司的要求或自身的需要选择培训的课程,并查看各科考核成绩。(5)日常打印系统提供了日常打印功能,方便用户对员工信息和基本工资信息进行预览和打印。(6)数据的备份与恢复:系统中的每一个数据对企业来说都是很重要的,数据的丢失会带来不可预测的影响。所以对数据进行备份恢复操作是一个不可忽视的要求。3.3.5系统数据流分析图3-3 企业人事管理系统顶层数据流图图3-4 企业人事管理系统第0层数据流图图3-5 基本信息管理部分第1层数据流图图3-6 考勤管理部分第1层图数据流图 图3-7 工资管理部分第1层图数据流图图3-8 员工培训第1层图数据流图3.3.6 数据字典文件条目(1)文件名:员工信息表组成:职工编号+姓名+性别+出生年月+部门+学历+职务+办公电话 +移动电话+地址+身份证号+入职日期+工作年限 (2)文件名:部门信息表组成:部门编号+部门名(3)文件名:职务信息表组成:职务名(4)文件名:请假信息组成:员工编号+员工姓名+请假类型+请假事由+请假天数+请假日期 (5)文件名:勤考登记表组成:员工编号+上班时间+下班时间+是否缺勤(6)文件名:工资信息表组成:员工编号+基本工资+缺勤工资+养老保险+工龄工资+职务工资(7)文件名:课程设置表组成:课程编号+课程名称+培训师+上课时间(8)文件名:成绩考核表组成:员工编号,课程编号,课程名 (9)文件名:用户表组成:用户编号+用户密码+用户权限加工说明:(1)加工名:1:查询加工逻辑:根据要查询的信息,检索出信息明细表输入流:员工信息查询,发出员工信息请求,部门信息查询,发出部门信息请求,职务信息查询,发出职务请求。输出流:员工信息清单,部门信息清单,职务信息清单(2)加工名:1:更新根据员工信息,职务信息或部门信息更新员工信息,部门信息,职务信息输入流:员工信息,部门信息,职务信息输出流:发出检索请求(3)加工名:2:查询根据要查询的考勤信息,检索出考勤信息表输入流:考勤信息查询,请假信息查询输出流:考勤信息,请假信息(4)加工名:2:更新加工逻辑:根据考勤信息更新考勤信息表输入流:考勤信息,请假信息输出流:更新考勤信息表,更新请假信息表(5)加工名:3:查询加工逻辑:根据要查询的工资要求,检索出工资信息明细表输入流:工资信息输出流:工资信息清单检索结果(6)加工名:3:更新加工逻辑:根据工资信息更新工资信息表输入流:工资信息请求输出流:工资信息表 (7)加工名:4:查询加工逻辑:根据要查询的信息,检索出信息明细表输入流:课程信息请求,课程考核请求输出流:课程信息表,课程考核表 (8)加工名:4:更新加工逻辑:根据课程设置和考核情况,更新课程信息表和课程考核表输入流:课程设置信息,课程考核信息输出流:课程信息表,课程考核表 3.4系统详细设计3.4.1 模块功能设计1. 系统登录模块功能:本模块的主要功能是对用户身份进行验证,只有系统的合法用户才能进入系统。在进行系统登录过程中,登录模块将调用数据库里的用户清单,对身份、编号、密码进行验证,只有选择了正确的身份,并输入了正确的编号和密码后,系统才能成功登陆。并在输入了错误的或者是不存在的账户和密码时,系统会给出出错信息提示,提示登录过程中用户名或者密码错误,以便用户进行正确的登录。输入项、输出项:输入项为身份、编号和密码。身份分为管理员和普通用户,可以通过下拉按钮直接选择,账号和密码均为字符串,长度各为50个字符,密码回显字符是“*”。2. 基本信息管理模块功能:该模块主要是对员工信息,职务信息,以及部门信息进行管理。员工信息:该模块展示了员工的基本情况,普通用户可以浏览检索员工的基本信息,管理员除具有浏览功能外,还可以对基本信息进行添加、删除、修改操作。输入项、输出项:输入员工信息、职务信息、部门信息,输入完毕后显示相关信息。该基本信息管理模块的用例图,如图3-9所示:图3-9基本信息管理用例图3. 考勤管理模块功能:该模块可对员工的请假信息和考勤情况进行登记和查询,对出勤情况进行统计。请假:记录员工请假信息。请假查询:查询请假信息。考勤登记:记录员工的每日考勤情况,为工资结算提供依据。考勤信息查询:显示员工具体的考勤情况。输入、输出项:本模块的数据输入项主要是请假信息和考勤信息,输出相对应的信息。该考勤管理模块的用例图,如图3-10所示:图3-10 考勤管理模块用例图 4. 员工培训功能:组织员工进行课程培训,员工可根据自己的意愿或公司要求申请课程,培训后进行课程考核。课程设置:可添加、修改、删除课程,从而进行课程管理。课程申请:员工可以根据自己的需要申请相关课程的培训,如有不便,可退选已选的课程。培训课程考核查询:可以查询员工课程培训的考核情况。该员工培训模块的用例图,如图3-11所示:图3-11 员工培训用例图5. 薪资管理模块功能:该模块用于录入和修改员工工资。工资录入:录入员工各项工资。修改工资:对已录入的各项工资进行修改。输入项、输出项:本模块的数据输入项是员工的各项工资,输出相应的工资记录。该薪资管理模块的用例图,如图3-12所示:图3-12 薪资管理用例图6. 日常打印管理模块功能:实现员工信息、基本工资信息的打印和预览。员工信息打印:打印出员工信息的表单。工资信息打印:打印出工资信息表单。日常打印管理模块用例图,如图3-13所示:图3-13 日常打印管理模块用例图6. 数据库管理模块功能:管理员应用该模块进行数据备份和数据恢复,进行数据管理。数据库备份是创建完事数据库的复本,它并非将所有的页都复制到备份集,而只将实际包含数据的页复制到备份集。数据页和事务日志页均复制到备份集。用BACKUP语句实现备份功能,用RESTORE词句实现恢复功能。7. 系统管理模块系统用户管理:在系统实行多用户管理时,本模块将为系统开辟多个系统用户,并能对其进行简单的信息维护,添加新用户,用户名和密码修改。退出:选择退出系统,将关闭整个系统,结束本次使用。3.4.2 类设计程序中的类主要有:CLoginDlg.h(登陆类) 、CAdduserDlg.h(添加用户类)、CUsersetDlg(用户安全设置类)、CDepinfoDlg(部门信息类)、CCourseGradeDlg(课程考核类)、CLeaveQueryDlg.h(请假查询类) 、CWorkQueryDlg.h(考勤查询类)、CWagesSet.h(工资设置类)、CPrintWageDlg.h(打印工资类) 。1、主要类的功能如下:CLoginDlg.h(登陆类):用于实现登陆系统;CAdduserDlg.h(添加用户类):用于添加新用户;CUsersetDlg(用户安全设置类):用于管理用户密码;CDepinfoDlg(部门信息类):用户显示部门信息 ;CCourseGradeDlg(课程考核类):用于查询课程考核情况;CCourseApplyDlg.h(课程申请类):用于课程申请;CLeaveQueryDlg.h(请假申请类):用于查询请假情况;CWorkQueryDlg.h(考勤查询类):用于查询考勤情况;CWagesSet.h(工资设置类):用于设置基本工资;CPrintWageDlg.h(打印工资类):用于打印出工资表 。2、部分类图如下所示: 图3-14 CLoginDlg类图图3-15 CAdduserDlg类图图3-16 CUsersetDlg类图 图3-17 CCourseGradeDlg类图图3-18 CLeaveQueryDlg类图3.4.3 系统数据库设计1.系统 E-R图模型企业人事管理系统数据库E-R模型,如图3-19所示:图3-19 数据库E-R模型图2. 数据库表设计数据模型利用SQL Server 2000进行数据库的详细设计,本系统所包含的各项信息表名称及描述如表1所示:表1 企业人事管理系统数据库表名 称描 述t_employee员工信息表t_uer用户表t_attendance出勤表t_departname部门信息表t_duty职务表t_leave请假表t_wages工资表t_grade成绩表t_course课程表下面分别对各部分的表的结构进行介绍:表2 员工信息表(t_employee)中文字段名英文字段名字段类型长度主键/外键字段值约束员工编号f_idvarchar50 PNOT NULL姓名f_namevarchar50NULL部门f_departidvarchar50NULL性别f_sexint4NULL出生日期f_birthdaydatetime8NULL学历f_degreevarchar50NULL工作年限f_workyearint4NULL联系电话f_telephonevarchar50NULL移动电话f_mobilephonevarchar50NULL联系地址f_addresstext16NULL身份证号idCardvarchar18 NULL聘用日期f_firstworkdatetime8NULL职务f_dutyvarchar50NULL说明:此表存放员工信息。表3 用户表(t_uer)中文字段名英文字段名字段类型长度主键/外键字段值约束帐号f_idvarchar50PNOT NULL密码passWordvarchar50NULL身份f_powerint4NULL说明:此表存放系统用户信息。表4 出勤表(t_attendance)中文字段名英文字段名字段类型长度主键/外键字段值约束员工编号f_idvarchar50 PNOT NULL上班时间 f_workontimedatetime8 NULL上班时间f_workofftimedatetime8NULL是否缺勤f_checkabsentvarchar10NULL说明:此表保存员工出勤信息。表5 部门表(t_departname)中文字段名英文字段名字段类型长度主键/外键字段值约束部门编号f_idvarchar50PNOT NULL部门名称f_departnamenvarchar50NULL说明:此表存放部门信息。表6 职务表(t_duty)中文字段名英文字段名字段类型长度主键/外键字段值约束职务名称f_dutynamevarchar50 NULL说明:此表存放进货信息。表7 请假表(t_leave)中文字段名英文字段名字段类型长度主键/外键字段值约束员工编号f_idvarchar50PNOT NULL员工姓名f_namevarchar50NULL请假类型f_typevarchar50NULL请假原因 f_reasontext16NULL请假天数f_timeint4NULL请假日期f_datedatetime8NULL说明:此表存放请假信息。表8 工资表(t_wages)中文字段名英文字段名字段类型长度主键/外键字段值约束员工编号f_idvarchar50PNOT NULL基本工资f_basewagesfloat8NULL缺勤扣资absentwagesfloat8NULL养老保险f_insurancefloat8NULL工龄工资f_agewagesfloat8NULL职务工资f_dutywagesfloat8NULL说明:此表存放工资信息。表9 成绩表(t_grade)中文字段名英文字段名字段类型长度主键/外键字段值约束员工编号f_empidvarchar50PNOT NULL课程名f_courseidint4NULL成绩 f_gradevarchar50NULL说明:此表存放成绩信息。表10 课程表(t_coure)中文字段名英文字段名字段类型长度主键/外键字段值约束课程编号f_courseidint4PNOT NULL课程名称f_coursenamevarchar50NULL上课时间f_timedatetime8NULL培训师f_trainteachervarchar50NULL说明:此表存放课程信息。3、设置表之间的依赖关系一般情况下,数据库中所包含的表都不是独立存在的,而是表与表之间存在一定的依赖关系,称为关联5。例如员工信息中的“部门”字段来源于部门信息中的“部门名称”,请假表中的“员工编号”字段来源于员工信息表。通过分析,上面数据表的关系及关系的组合构成了此程序的内部运行逻辑。所有的数据表的关系如下:图3-20 人事资源管理系统各数据表关系图4.系统的实现完成对流程的详细设计后,最重要的事情就是实现系统的功能,通常把编码和测试统称为实现。所谓编码就是把软件设计结果翻译成用某种程序设计语言书写的程序。测试的目的及时在软件投入上生产性运行之前,尽可能多地发现软件中的错误。4.1编码程序设计语言室人和计算机通信的最基本的工具,它的特点必然会影响人的思想和解题方式,会影响人和计算机通信的方式和质量,也会影响到其他人的阅读和理解程序的难易程度,考虑到以上原因,本系选用C+程序语言编写,利用MFC提供的类和函数进行编程,简单清晰。我在编程过程中,注重遵循编码的风格,对程序内部的函数和变量定义时,选取含义鲜明的名字,做到“见文知意”,例如CLoginDlg用于登陆,CAdduserDlg.h用于添加用户类),CCourseApplyDlg表示课程申请等。并注意遵循语句构造简单和直接的规则,不为节省空间而把多个语言写在同一行上,尽量避免复杂的条件测试,尽量减少对“非”条件的测试,避免大量使用循环嵌套和条件嵌套。4.2模块测试在进行模块测试时进行代码审查,从数据类型,变量声明,数据结构进行审查,然后进行功能测试,从输入一些简单的数据开始执行一遍,观测运行期间变量的变化,运行中值的变化范围。改变测试方案来变换另一个角度进行测试,发现错误并记录,修改代码,测试条件使程序通过多层分支,判别运行结果从而完成模块测试。4.3整体测试总体测试是组装软件的系统技术,本系统测试采用渐增集成测试,即测试单一模块,将测试完的模块加入系统中,进行一次系统测试,依次类推将所有模块加入系统中,在具体测试时,采用自顶向下的结合方式,从主控模块开始,沿各控制层向下移动,逐渐把所有模块结合了。在测试过程中使用到调试技术:1. 采用debug调试语句,跟踪数据;2. 嵌入打印语句,输出中间结果;3. 利用Visual Studio 2003中调试工具,从调试窗口观测变量的变化;4. 设置断点,观察程序在断点附近的状况。评估运行的可靠性问题:1. 结果正确;2. 运行速度;3. 空间利用率;4. 算法的可行性。4.4 测试结果1. 登陆界面如图4-1:图4-1 登陆界面2. 基本员工信息界面如图4-2: 图4-2 员工信息界面3. 考勤登记界面如图4-3: 图4-3 考勤登记界面4打印员工信息界面如图4-4: 图4-4 打印界面5用户安全设置界面图如图4-5:图4-5 用户安全设置5.总结在实验当中认我认识到开发一项好的软件不是某不是一件容易的事情,通过这次实验,我的体会主要有以下几点:首先,再做一个系统之前,要自己设计各种数据逻辑和数据库,感觉有点工作量很大也很繁琐,结果设计出来的也不是很好,数据的结构设计的简单导致 后来的开发要改了又改,很不方便,所以深深感到一个数据库设计的不好,逻辑不够谨密是很难把一个系统做好的。其次呢,在实验中我了解了,在开发一个项目时一定要先做好规划,按照软件的开发过程,详细地写好每一个必要的文档。软件的概念就是:程序+文档。程序就是文档,文档集成在程序中。它要求在选择开发环境时不仅要考虑环境对设计、开发的完美支持,而且要考虑对维护、文档的支持;它要求软件人员在设计、开发过程中要考虑维护问题、文档问题;它要求程序与文档存储在同一位置、同一系统中;它要求使用相同工具进行程序与文档的书写、检索;它要求在编写和维护程序的同时形成文档,在书写文档时编写、维护程序。程序与文档合一的概念不仅存在于系统的设计、开发阶段而且存在于系统的维护阶段,它贯穿软件的生命周期。最后,通过本次毕业设计,我加深了对旧有知识的理解,特别是对SQL Server 2000、visual c+ 6.0的使用,以及对软件工程的开发过程有了很深刻的体会,使我感觉到把大学所学的知识都综合起来一起应用,在对知识点的整体应用上得到了很大的提高。总而言之,这次毕业设计虽说不能堪称完美,但我会在以后的时间里尽量的完善它,不断的对它进行升级,解决系统可能出现的问题,对于本系统的功能,我还是不满足的,毕业设计交上以后,我还会继续探索并不断的完善这个系统的。参 考 文 献1李宏新.面向对象程序设计基础.高等教育出版社,2006.62 谭浩强.C+程序设计.清华大学出版社,2004.73 王燕.面向对对象的理论与C+实践.清华大学出版社,19974 Jeff Prosise .MFC Windows程序设计. 清华大学出版社,2001.095 侯俊杰(侯捷). 深入浅出MFC. 华中科技大学出版社,2001.01 6 马军.SQL语言与数据库操作技术大全基于SQL Server实现.电子工业出版社,2008.67 郑阿奇.SQL Ssever教程.清华大学出版社,2007.68 张海蕃.软件工程.清华大学出版社,2008,29 萨师煊

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论