• 2.99 MB
  • 2022-05-17 13:03:53 发布

基于指纹识别的自动考勤管理系统设计与实现

  • 29页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
基于指纹识别的自动考勤管理系统设计与实现 目录基于指纹识别的自动考勤管理系统设计与实现1目录2第一章绪论41.1生物识别简介41.1.1概述与特性41.1.2生物识别组成41.1.3生物识别分类51.2指纹识别技术现状与发展趋势51.2.1指纹识别技术现状51.2.2指纹识别技术发展趋势61.3考勤管理系统简介61.3.1概述61.3.2考勤管理系统发展61.3.3常见的考勤管理系统6第二章系统需求分析72.1系统功能性需求72.2考勤管理系统人员72.3主要功能模块82.4系统性能概述9第三章考勤管理系统设计93.1系统总体设计93.2应用程序功能模块设计93.2.1考勤登记模块103.2.2员工操作子系统103.2.3管理人员操作子系统103.2.4后台管理员操作子系统113.3考勤系统软件数据流图113.3.1员工操作数据流113.3.2管理人员操作数据流123.3.3后台管理员操作数据流143.4数据库设计153.4.1概述153.4.2E-R图153.4.3主要数据表17第四章考勤管理系统实现194.1系统总体实现流程194.2考勤登记模块实现194.3员工操作子系统模块实现204.4管理人员操作子系统模块实现224.5后台管理员操作子系统模块实现25第五章考勤管理系统测试275.1软件测试概念27 5.2软件测试发展275.3软件测试目的285.4软件测试的原则285.5软件测试方法285.6系统测试环境29 第一章绪论1.1生物识别简介1.1.1概述与特性生物识别技术主要是指通过人类生物特征进行身份认证的一种技术,这里的生物特征通常具有唯一的、可以测量或可自动识别和验证、遗传性或终生不变等特点。所谓生物识别的核心在与如何获取这些生物特征,并将之转换为数字信息,存储与计算机中,利用可靠的匹配算法来完成验证与识别个人身份的过程。由于人体特征具有人体所固有的不可复制的唯一性,这一生物密钥无法复制,失窃或被遗忘,生物识别比传统的身份鉴定方法更具有安全、保密和方便性。生物识别技术具有不易遗忘、防伪性好、不易伪造或被盗、随身“携带”和随时随地可用等优点。1.1.2生物识别组成从逻辑上看,生物识别系统包含采样登记和验证两个模块。采样登记模块主要负责把人的生物特征采集过来并存储到系统中。在该模块中,利用采集卡或采集器获取人的生物特征原始信息,然后对该原始信息进行进一步处理,将最终处理好的生物特征信息(特征模板)存储到系统中,以备验证时对比。验证模块主要负责验证比对个人的生物特征信息即身份识别,通过将获取的个人生物特征信息与存储在系统中的特征模块进行验证比对,最终实现身份识别。下图为上面两个模块的工作流程图1-1所示。特征采集特征处理特征模板特征采集特征处理特征对比登记模块验证模块图1-1生物识别流程 1.1.3生物识别分类生物识别主要包括两大类:一种是利用人的生理特征,另一种利用人的行为动作,由于人的生理特征更好的体现一个人的独立性,实际的操作过程中也比行为动作易于识别,因此,目前基于生理特征的生物识别技术较为广泛。常见的生物识别技术有:指纹识别、面部识别、掌纹识别、虹膜识别、人耳识别、声音识别、签字识别等。其中指纹、面部、掌纹、虹膜、人耳属于生理特征,声音、签名属于行为动作。各种生物识别比较见下表1-1。项目普遍性唯一性稳定性方便性识别精度接受性防欺骗面部识别高低一般高低高低指纹识别高高高一般高一般高手掌识别高一般一般一般一般一般一般虹膜识别高高高一般高低高人耳识别高一般一般高低高低签名识别一般低低高低高低声纹识别一般低低一般低高低表1-1生物识别技术比较1.1指纹识别技术现状与发展趋势1.2.1指纹识别技术现状上世纪90年代,指纹识别技术就在国内兴起,当时应用仅限于刑侦领域,它可以提高公安机关破案率,同时节省了很多成本。但指纹识别技术在刑侦中属于“不知主体”的使用,“比对”需要通过大型机处理,价格和时间的成本都比较大。所以指纹识别常常只作为刑侦的辅助手段,应用不够广泛,市场份额极为有限。  通过指纹识别技术在市场中不断的推广与应用,指纹识别企业发现指纹识别技术的真正市场应该是民用市场。因为民用指纹识别技术是“可知主体”的,“比对”速度较快,准确率高。它伴随着越来越多的电子设备,如PC、ATM提款机、门禁控制系统等,正在进入我们的日常生活。从趋势来看,民用化的指纹识别技术最终将取代安全性方便性都有缺陷的身份识别码和密码,用于阻止非授权的访问。由于指纹识别技术的民用较之刑侦应用更易普及,市场容量更大,所以具备大规模推广的基础。在西方国家,指纹识别技术已进入大规模民用阶段。美国洛杉矶在1990年使用了世界上第一套救济金发放指纹识别系统;全球首家虚拟银行SFNB(安全第一网络银行)也实施了以指纹识别技术为基础的保障安全性项目,藉此增强交易的安全性。   指纹识别由于其技术的成熟和成本降低,开始彻底走向民用。国内生物识别未来将形成上百亿元的市场,其中安防业是最重要的应用领域之一,市场空间很大。目前,罗湖口岸已经用了指纹通关,德国将指纹识别付款应用到某些超市中??预计指纹门禁、指纹读卡器、指纹智能锁,指纹门禁考勤一体机及相关指纹身份识别系统将会迅速普及到每一个安全防范项目和智能大厦,目前国内年门禁安装数量大约是在50万门以上,其中指纹识别的在门禁应用大概只有1%左右,而一般国外这个比例大约应为20%以上。换句话说,在国内安防业,生物识别产品的市场缺口在9.5万台左右,另一个比较明显的状况是,目前专门从事指纹读头和指纹门禁生产和销售企业很少,所以综合起来看这个市场有两个明显的特点:市场大,竞争少。1.2.2指纹识别技术发展趋势目前我国指纹识别技术应用的新领域有以下几个方面:指纹支付:通过把指纹与银行卡绑定的方式,用指纹轻轻一点来完成消费支付。这种新型应用在最先出现在美国。国内2006年上海某公司也已经涉足指纹支付市场。汽车指纹防盗:通过指纹控制车门开关,或者控制引擎点火是指纹技术在汽车防盗方面的典型应用。国内个别厂商已经推出指纹防盗产品。指纹UKEY:指纹UKEY是网上银行业务用于进行身份验证的终端,它比目前的账号密码验证以及普通UKEY验证要更为安全些。完全不需要密码或PIN,使得病毒软件无可乘之机,也杜绝了网银账号盗用的可能。它将大大提升网银业务的诚信度和安全性,为银行真正扩大网上交易量。指纹IC卡:目前的IC大多是不记名的IC,记名也都是用密码。随着IC在人们生活中的使用频度增加,IC卡中的信息甚至代表着特殊的权力和金钱。通过在IC卡中存入持卡人指纹信息,可以大大提高IC卡的安全性。随着网络、电子、物联网的蓬勃发展,指纹识别技术将会在网络交易、手持设备、公共事业、智能卡方面焕发光彩。1.1考勤管理系统简介1.3.1概述考勤管理,指机关、企事业单位利用现代化方法,对单位内部的人力资源进行合理的组织、调配,同时对员工的思想、行为进行适当地控制和协调,从而最大限度发挥人的主观能动性,使得每个人都能人尽其才,找到施展的舞台。早期的考勤通过手工操作方式来完成,比如工资核算及发放,员工上下班签到、请假等都是通过单位指定的考勤人员用人工操作来实现。1.3.2考勤管理系统发展20世纪60年代,第一代利用计算机的考勤管理系统应运而生。该系统利用计算机强大的计算功能和较快的运算速度,较之先前的人工考勤,其效率、准确度都有了很大提高。但是,受制于当时的计算机发展水平,第一代计算机考勤系统还有待进一步完善。20世纪70年代,第二代计算机考勤系统开始出现。得益于数据库技术的发展,该时期考勤系统的开发和应用有了坚强的技术后盾。第二代系统与第一代相比,有了长足的进步,系统功能较为完善。但是,第二代系统的实用性方面还需得到较大提高。20世纪90年代,随着计算机技术、数据库技术、网络技术的日新月异的发展,而且在中国加入WTO以后,市场竞争日益激烈,各单位尤其在现代企业当中,领导层开始重视人事考勤问题,考勤效率的高低直接关系到企业的竞争力。在此背景下,第三代计算机考勤管理系统逐渐普及,人事考勤的诸多问题得以解决,考勤管理工作逐步走向现代化。1.3.3常见的考勤管理系统 根据目前的考勤管理系统所采用的考勤方式不同,可以分成卡式考勤系统、生物识别考勤系统。前者,采用磁卡作为考勤媒介,要求考勤人必须携带与之身份相对应的磁卡,通过刷磁卡内保存的条码信息来实现考勤。卡式考勤系统虽然能够高效率的解决考勤问题,但是它也存在诸多问题。1)由于采用基于“物”的考勤方式,避免不了别人代刷卡考勤;2)卡片具有容易被复制的缺陷,并且寿命不长;3)保密性能较差,密码容易泄漏;4)对于企业中存在的复杂上班班次,不能及时有效统计出考勤结果;5)前期投资较大,后期维护工作量及成本较高。生物识别考勤系统则是利用考勤人本身的生物特征来实现考勤。在众多的生物识别考勤系统当中,指纹识别考勤系统占据主要地位,其应用范围比较普遍。与卡式考勤系统相对比,指纹考勤系统优势明显1)由于采用基于“人”的考勤方式,可以有效解决代考勤问题;2)由于没有磁卡易丢、且寿命有限地问题,指纹考勤系统后期维护工作量及成本较低;3)保密性好,考勤直接采用指纹,而指纹具有唯一性和稳定性;4)考勤方式比较灵活,能适应复杂考勤班次的需要;5)更加人性化,考勤人不管何时都不必因为磁卡的遗失或落在别处,而没有办法参加考勤;6)结果更加真实、有效。由于不受其他外来“物”的影响,使用指纹考勤得到的考勤结果可信度更高。第一章系统需求分析2.1系统功能性需求本系统的总体开发目标:帮助人事管理部门及相关人员人员挺高考勤及统计考勤信息工作效率,从而实现人事管理工作的自动化、规范化及系统化。基于上述目的,本系统最终要实现的主要功能如下:1)部门内部可以授予不同权限;2)严格设置考勤管理各环节中不同操作者的权限,权限分配易于操作执行;3)请假申请及审批可以依托网络来操作;4)统计结果要准确;5)支持Excel文件导入与导出功能,操作简单易行;6)提供员工查询功能,方便员工及时掌握个人出勤情况;7)操作简单明了,不精通计算机知识的人也能轻易上手。2.2考勤管理系统人员考勤管理系统的参与人员有普通员工、管理人员、后台管理员,参与人员分别执行以下操作:(1)普通员工查询本人的考勤记录、年假及计划休假情况,提交补勤申请,休假申请 ,修改个人信息及密码。(2)管理人员设置员工职位,审批员工补勤审批和请假申请,统计考勤情况,员工年假分配。(3)后台管理员管理员工信息,设置考勤日信息,这种企业信息。2.3主要功能模块根据考勤管理系统参与的人员及人员执行的操作,本系统划分为四个子系统,如下:(1)考勤登记模块该模块涵盖了登记操作的功能,主要有:1)登录,验证工号和密码,如果工号和密码正确,则根据用户的权限进入考勤系统不同的模块。否则提示工号或密码错误。2)模拟指纹考勤,该部分负责出勤和退勤的记录。输入指纹,如果识别成功,则记录下当前的系统时间当成出勤时间或者退勤时间,否则提示识别失败。如果以后接硬件(指纹考勤机),则可将采集到的指纹图片送到该处进行验证。(2)员工操作子系统该模块涵盖了所有员工可以操作的功能,主要有:1)查询公司休假:查询公司计划休假日期。2)考勤管理。分为补勤申请、出勤/退勤、查询出勤/退勤。补勤是对员工实际已工作,但忘记出/退勤的一种补救操作。出勤/退勤是员工正常出勤/退勤操作,这个功能由指纹识别器完成。查询出勤/退勤是查看以往员工出勤/退勤记录的功能。3)休假管理。分为查询年假、休假申请、查询休假申请。查询年假是员工查看自己年假的剩余天数和使用记录。休假申请是完成员工向公司请假的功能。查询休假申请,显示休假申请批示的情况,就是否被批准或还没批示等信息。4)个人信息管理。个人信息查询及修改更新,包括密码修改等。(3)管理人员子操作系统该模块涵盖了所有管理人员可以操作的功能,主要有:1)年假分配。管理人员设置员工年假天数,根据员工的工龄和上一年工作的成绩。2)审批管理。分为补勤审批和休假审批。补勤审批是对员工补充考勤记录申请的批示,依据员工的补勤当天的实际考勤情况给予批准或否决。休假审批:对员工提出休假申请根据各部门的工作进度安排给予批准或否决。3)职位设置。部门或部门以上级别对所管理的员工设置职位和权限。4)考勤统计管理。考勤统计对员工的以月、季度、年为统计范围的考勤统计,也可按部门进行月,季度,年的考勤统计。(4)后台管理员操作系统该模块涵盖了所有后台管理员可以操作的功能,主要有:1)考勤日设置。对考勤和休假的设置。2)企业信息管理。设置企业基本信息,还有部门信息等。 3)员工基本信息。设置员工的信息的添加。2.4系统性能概述本系统的性能概述如下:(1)将复杂的考勤工作量分摊考勤管理各环节中,人尽其责、人尽其能,各种信息交流也能做到及时、畅通,使得复杂的考勤工作简单化。(2)考勤管理无纸化本系统所有操作均在PC机上操作,员工及管理人员的操作结果均做到了“所见即所得”,因此无需打印大量的纸质文件,做到了低碳环保,体现了无纸化办公的优势。(3)界面简洁、易于操作本系统所有功能模块均做到界面简洁、方便人员操作,即使计算机知识掌握很少的人员也能快速上手。第一章考勤管理系统设计3.1系统总体设计本系统组成部分包括:数据库、应用程序。(这两部分在同一台PC机上)系统设计原理:应用程序通过读写数据库中的数据来实现考勤信息的自动管理。系统框架图如图3-1所示。图3-1系统框图3.2应用程序功能模块设计应用程序即考勤系统软件模块包括:考勤登记模块、员工操作子系统、管理人员子操作系统、后台管理员操作系统。考勤系统软件框图如3-2所示。 图3-2考勤系统软件框图3.2.1考勤登记模块考勤登记模块包括:登录、模拟指纹考勤(记录出勤、退勤时间)两个功能模块。考勤登记功能模块框架图如图3-3所示。图3-3考勤登记模块3.2.2员工操作子系统员工操作子系统包括:基本信息、补勤申请、请假申请、查询、企业信息五个功能模块。员工操作子系统框架图如图3-4所示。图3-4员工操作子系统3.2.3管理人员操作子系统管理人员操作子系统包括:补勤/请假审批、年假分配、考勤信息统计、职位权限设置四个功能模块。管理人员操作子系统框架图如图3-5所示。 图3-5管理人员操作子系统3.2.4后台管理员操作子系统后台管理员操作子系统包括:考勤日设置、员工信息管理、企业信息管理三个功能模块。后台管理员操作子系统框架图如图3-6所示。图3-6后台管理员操作子系统3.3考勤系统软件数据流图数据流图(DateFlowDiagram):简称DFD,它从数据传递和加工的角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。3.3.1员工操作数据流 员工操作包括:查询本人的考勤记录、年假及计划休假情况,提交补勤申请,休假申请,修改个人信息及密码。员工操作数据流程主要有三方面:员工基本信息处理数据流程、考勤处理数据流程、休假处理数据流程。员工基本信息处理流程见图3-7所示。图3-7员工基本信息处理流程图考勤处理数据流程见图3-8所示。图3-8考勤处理数据流程图休假处理数据流程见图3-9所示。图3-9休假处理数据流程图3.3.2管理人员操作数据流 管理人员操作包括:设置员工职位,审批员工补勤审批和请假申请,统计考勤情况,员工年假分配。管理员操作数据流程主要有四方面:审批处理、考勤统计处理、年假分配处理、设置员工职位。审批处理流程见图3-10所示。图3-10审批处理流程图考勤统计处理流程见图3-11所示。图3-11考勤统计处理流程图年假分配处理流程见图3-12所示。图3-12年假分配流程图员工职位设置处理流程见图3-13所示 图3-13员工职位设置流程图3.3.3后台管理员操作数据流后台管理员操作包括:员工信息管理,设置考勤日信息,设置企业信息。后台管理员操作数据流程主要有三方面:员工信息管理、考勤日信息设置、企业信息设置。员工信息管理数据流程见图3-14所示。图3-14员工信息管理数据流程图考勤日信息设置数据流程见图3-15所示。图3-15考勤日信息设置数据流程图企业信息设置数据流程见图3-16所示。 图3-16企业信息设置数据流程图3.4数据库设计3.4.1概述数据库(DataBase,简称DB)是指长期存在计算机内的、有组织的、可共享的数据的集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。数据库的设计是否合理直接关系到系统的运行状况。数据库设计的基本步骤:1.需求分析:进行数据库设计首先必须准确了解和分析用户需求(包括数据处理)。2.概念结构设计:该步骤是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立与具体DBMS的概念模型3.逻辑结果设计:将概念结果转换为某个DBMS所支持的数据模型,并对其进行优化。4.数据库物理设计:数据库物理设计是为逻辑数据模型选取一个最适合应用环境的物理结果。5.数据库实施:设计人员运用DBMS提供的数据语言及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。6.数据库运行和维护:数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整与修改。3.4.2E-R图E-R图也称实体-联系图(EntityRelationshipDiagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。实体型:用矩形表示,矩形内写明实体名。属性:用椭圆表示,并用无向边将其与相应的实体连接起来。联系:用菱形表示,菱形内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标注上联系的类型(n:n)。作E-R图的步骤:(1)确定所有的实体集合(2)选择实体集应包含的属性(3)确定实体集之间的联系(4)确定实体集的关键字,用下划线在属性上表明关键字的属性组合 (1)确定联系的类型,在用线将表示联系的菱形框联系到实体集,在线旁注明是1或n(多)来表示联系的类型。本系统包括的E-R图包括:(在本部分中管理人员与后台管理员统一叫做管理员)(1)管理员与普通员工的关系一个管理人管理多个员工,多个员工归一个管理员。因此,管理员对员工是1对多的关系,员工对管理员是多对1的关系。(2)员工与考勤日的关系一个员工在一个考勤日内只能有一条考勤信息(包括了出退勤),一个考勤日内有多个员工执行考勤操作。员工对考勤日是1对1的关系,考勤日对员工是对多对1的关系。(3)员工与休假日的关系一个员工可以在一个休假日休息,一个休假日内可以有多名员工休息。员工对休假日是1对1的关系,休假日对员工是多对1的关系。E-R图如3-17所示。 图3-17E-R图3.4.3主要数据表数据库包括:员工信息、考勤记录信息、补勤记录信息、请假记录信息、考勤日记信息、企业信息、年假信息7张表。(1)员工信息表(Employess):工号、姓名、性别、出生日期、入职日期、所属部门、职位、身份证号、邮箱、联系方式、指纹信息、权限值、密码。如表3-1所示。序号理论名称物理名称类型备注1工号EmployessIDchar(10)主键2姓名Namechar(20)3性别Sexchar(2)4出生日期Birthdaydate允许NULL值5入职日期EntryDatedate允许NULL值6所属部门Departmentchar(40)7职位Positionchar(20)8身份证号IDNumberchar(18)9邮箱Mailboxchar(30)允许NULL值10联系方式Phonechar(11)允许NULL值11指纹信息FingerInfochar(100)指纹图片的存储地址12权限值Authorityint对应相应权限13密码Passwordchar(20)4表3-1员工信息表(2)考勤记录表(Attendance):记录号、工号、姓名、出勤时间、退勤时间、正常出勤、正常退勤、是否请假。如表3-2所示。序号理论名称物理名称类型备注1记录号RecordIDInt主键、自增2工号EmployessIDchar(10)3姓名Namechar(20)4日期ADatedate5出勤时间StartTimetime允许NULL值6退勤时间EndTimetime允许NULL值7正常出勤Latechar(4)出勤/迟到/旷工8正常退勤LeaveEarlychar(4)退勤/早退/旷工9是否请假AVacationchar(4)工作/请假/旷工表3-2考勤记录表(3)补勤记录表(Fill):记录号、工号、姓名、出勤时间、退勤时间、补勤日期、申请缘由、申请是否有效。如表3-3所示。 序号理论名称物理名称类型备注1记录号RceordIDInt主键、自增2工号EmployessIDchar(10)3姓名Namechar(20)4日期Datedate5出勤时间StartTimetime6退勤时间EndTimetime允许NULL值7申请缘由Reasontext允许NULL值8申请是否有效Avaibilityint有效/无效(1/0)表3-3补勤记录表(4)请假记录表(Vacation):记录号、工号、姓名、日期、时间、申请缘由、申请是否有效。如表3-4所示。序号理论名称物理名称类型备注1记录号RceordIDInt主键、自增2工号EmployessIDchar(10)3姓名Namechar(20)4日期Datedate请假的日期5时间Timefloat请假多久6申请缘由Reasontext允许NULL值7申请是否有效Avaibilityint有效/无效(1/0)表3-4请假记录表(5)考勤日记表(Diary_Att):记录号、日期、出勤时间、退勤时间、日期属性(工作日和休息日)。如表3-5所示。序号理论名称物理名称类型备注1记录号DiaryIDint主键、自增2日期Datedate3出勤时间StartTimetime规定出勤时间4退勤时间EndTimetime规定退勤时间5日期属性Qualityint工作日/休息日(0/1)表3-5考勤日记表(6)企业信息表(BussInfo):编号、存储地址。如表3-6所示。序号理论名称物理名称类型备注1编号Numberint主键2存储地址PathNamechar(100)允许NULL值表3-6企业信息表(7)年假表(WinterVacation):工号、姓名、开始日期、结束日期、总年假天数。如表3-7所示。序号理论名称物理名称类型备注1工号EmployessIDchar(10)主键 2姓名Namechar(20)3开始日期StartDatedate年假开始日期4结束日期EndDatedate年假结束日期5总年假天数DayNumfloat表3-7年假表第一章考勤管理系统实现4.1系统总体实现流程进入到本系统后,通过验证工号和密码来确认进入员工操作子系统、管理人员操作子系统及后台管理员操作子系统中的哪一个。工号密码错误则提示错误。系统总体实现流程如图4-1所示。图4-1系统总体实现流程图4.2考勤登记模块实现考勤登记模块如图4-2所示。 图4-2考勤登记模块实现图在“模拟指纹考勤”模块中输入指纹。系统获取当地时间,如果当地时间在12:30:00之前,则将获取到的时间作为出勤时间写入到考勤数据表中国;如果当地时间在12:30:00之后,则将获取到的时间作为退勤时间写入到考勤数据表中。在“登录”模块中输入工号和密码,经过验证进入到相同权限的模块中。4.3员工操作子系统模块实现本模块包含了员工的所有操作:基本信息与密码修改、补勤申请、请假申请、各类查询。(1)员工操作子系统模块如图4-3所示。图4-3员工操作子系统模块实现图 (2)基本信息与密码修改模块实现如图4-4所示。图4-4基本信息与密码修改实现图基本信息修改:改写完基本信息后单击“修改基本信息”即可将信息修改。密码修改:输入新密码(新密码与确认密码必须相同才能修改成功),单击“修改密码”即可将密码修改。(3)补勤/休假申请模块实现如图4-5所示。图4-5补勤/休假申请模块实现图补勤申请:选择补勤日期,填写出勤和退勤时间,申请缘由可不写。单击补勤申请模块中的“提交”,补勤申请即可提交。 休假申请:选择日期(开始休假的日期),填写休假时间(多少天),申请缘由可不写,单击休假申请模块中的“提交”,休假申请即可提交。(4)查询模块实现如图4-6所示。图4-6查询模块实现图该模块中有删除记录、补勤查询、休假查询、计划休假日、年假查询、考勤记录查询、导出Excel。点击不同的查询可看到相应部分的信息,然后点击“导出Excel”即可将查询到的相应信息导出到Excel表中。“删除记录”只能删除还未被批准的补勤申请和休假申请。要删除记录先要执行补勤查询或休假查询,在查询到的记录中选择还为被批准的申请,然后点击“删除记录”即可删除记录。4.4管理人员操作子系统模块实现本模块包括:补勤/请假审批、年假分配、考勤信息统计、职位权限设置四个小模块。(1)管理人员操作子系统模块实现如图4-7所示。图4-7管理人员操作子系统实现图 (2)补勤/请假审批模块实现如图4-8所示。图4-8补勤/请假审批实现图补勤审批:单击“补勤申请”,可看到所有未被审批的补勤申请,选择要批准的申请,然后单击“批准申请”,则补勤申请被批准生效了。休假审批:单击“休假申请”,可看到所有未被审批的休假申请,选择要批准的申请,然后单击“批准申请”,则休假申请被批准生效了。(3)年假分配模块实现如图4-9所示。图4-9年假分配实现图点击“查看”按钮则可在右边的表中看到人员信息,选择要分配年假的人员,选择开始日期和结束日期,计算天数。然后点击“分配”按钮则可为员工分配年假。(4)考勤信息统计模块实现如图4-10所示。 图4-10考勤信息统计实现图选择要统计那一段时间的考勤信息,即选择好“开始日期”和“结束日期”,也可以选择“部门”和“姓名”作为考勤统计的条件,然后单击“查看”按钮,则可在左边的表中看到按条件查询到的考勤信息。导出Excel:将查询到的考勤信息导出到Excel表中。(5)职位权限设置模块实现如图4-11所示。图4-11职位权限设置实现图点击“查看”按钮则可在右边的表中看到人员信息,选择要改变职位或权限的人员,设置“职位”和“权限”,。然后点击“设置”按钮即可为员工重新设置职位和权限。 4.5后台管理员操作子系统模块实现本模块包括:考勤日设置、员工信息管理、企业信息管理三个小模块。(1)后台管理员操作子系统实现如图4-12所示。图4-12后台管理员操作子系统实现图(2)考勤日设置模块实现如图4-13所示。 图4-13考勤日设置实现图选择“考勤日期”、“出勤时间”、“退勤时间”、“考勤属性”(休息日或工作日)。然后单击“确认设置按钮”即可成功设置该日期的考勤信息。“考勤日信息Excel”:单击该按钮则可将已设置好的考勤日信息导出到Excel表中。(1)企业信息管理模块实现如图4-14所示图4-14企业信息管理实现图 单击“企业基本信息”,弹出打开文件对话框,在弹出的对话框中选择企业信息的TXT文件,则可将企业信息加入到系统中,以便员工查看。单击“部门基本信息”弹出打开文件对话框,在弹出的对话框中选择部门信息的TXT文件,则可将部门信息加入到系统中,以便员工查看。(5)员工信息管理模块实现如图4-15所示。图4-15员工信息管理实现图录入信息:将其中的信息填写完整,单击“录入信息”即可将填写好的信息录入到系统中。查询信息:输入要查询员工的工号,单击“查询信息”即可查询到员工的基本信息。修改信息:修改的必须是系统中有的员工信息。可先按工号查询员工信息,在要修改的地方修改,单击“修改信息”即可修改员工信息。删除信息:输入要删除的员工信息的工号,单击“删除信息”即可删除员工信息。第一章考勤管理系统测试5.1软件测试概念软件测试是通过人工或者自动手段来运行或测试某个系统的过程,从而验证软件是否能达成期望功能,他是验证软件期望功能的唯一有效方法,也是保证软件产品质量的唯一途径。5.2软件测试发展70年代:Bill.Hetzel,“评价一个程序和系统的特性或能力,并确认它是否达到预期的结果。软件测试就是依次为目的的任何行为。” 核心观点:测试是验证软件是“工作的”,以正向思维,针对软件系统的所有功能点,逐个验证其正确性。这就是软件测试的第一类方法。软件测试的第二类方法:Glenford.Myers:测试不应着眼与验证软件是工作的,应该认为软件是有错误的,然后用逆向思维去发现尽可能多的错误。“测试是为发现错误而执行的一个程序或着系统的过程。”核心观点:测试是为了证明程序有错,而不是证明程序无错误;一个成功的测试是发现了至今未发现的错误的测试。5.3软件测试目的软件测试的目的在于证明软件能够正确完成其预定的功能。最终目的是确保软件功能符合用户的需求,把尽可能多的问题在发布或交付前发现并改正。(1)确保软件完成了它所承若或公布的功能。(2)确保软件满足性能的需求。(3)确保软件是健壮的和适应用户环境的。5.4软件测试的原则软件测试应遵循以下原则:1.软件测试并不能保证产品没有缺陷2.软件产品所存在的缺陷数与已发现的缺陷数成正比3.及早地和不断地进行软件测试4.软件测试应该有计划、有组织的进行5.5软件测试方法软件测试方法有黑盒测试、白盒测试、灰盒测试。1.黑盒测试黑盒测试也称功能测试,它通过测试来检测每个功能是否都能正常使用。主要着眼与程序外部机构,不考虑内部逻辑结果,主要针对软件界面和软件功能进行测试。2.白盒测试白盒测试也称结构测试或逻辑驱动测试,他是按照程序内部的机构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。3.灰盒测试灰盒测试是介于白盒测试和黑盒测试之间的,可以这样理解,灰盒测试关注输出对于输入的正确性,同时也关注内部表现,但这种关注不像白盒那样详细、完整,只是通过一些表征的现象、事件、标志来判断内部的运行状态。本系统所用的测试方法为灰盒测试。通过测试,希望能够发现软件中以下主要错误:(1)语法错误该错误是常见的一类错误信息,由于不正确的脚本语法而产生。比如:命令的拼写错误,函数的参数设置不正确等。语法错误将导致程序运行受阻。 (1)运行错误该类错误是脚本语言执行过程中试图执行不肯能的动作而造成的。(2)逻辑错误这类错误通常难以发现,是程序开发时期的逻辑方面缺陷而带来的错误信息。这类错误可能不会影响程序运行,但程序运行结果是不正确的。5.6系统测试环境操作系统:WindowsXP开发工具:MicrosoftVisualC++6.0