内容发布更新时间 : 2024/12/26 1:01:26星期一 下面是文章的全部内容请认真阅读。
龙源期刊网 http://www.qikan.com.cn
B/S结构指纹考勤管理系统的设计与实现
作者:王京
来源:《软件导刊》2011年第11期
摘 要:针对传统考勤中出现的舞弊现象、介质损耗严重、单机考勤不便统一管理等弊端,提出一种基于指纹识别的网络考勤系统。利用TCP/IP通信协议实现多网点分布式指纹考勤及考勤数据的统一管理,采用B/S三层结构设计,具有先进性、安全性、可扩展性、易维护性、开放性等特点。测试、运行结果表明,这种基于指纹识别技术的网络考勤系统相比传统考勤更加公正、高效,更具实用性。
关键词:考勤管理;指纹识别;模块;网络
中图分类号:TP311.52 文献标识码:A 文章编号:1672-7800(2011)011-0105- 0 引言
B/S软件结构体系,即Brower/Server(浏览器/服务器)结构,是随着Internet/Intranet的兴起,由C/S(Client/Server,客户机/服务器)结构体系的改进而成的。在B/S结构下,软件只需部署到服务器端,客户端直接通过浏览器访问软件,省去了客户端的部署和维护工作。 考勤制度是企事业管理制度的重要组成部分。考勤管理水平与生产效率、公平考核、单位形象等有密切的关系。指纹识别技术提供了对身份鉴别的一种不可改变、不可假冒、不会丢失的考勤系统解决方案。本文介绍的指纹考勤系统,利用了指纹识技术,可在各分布的办公地点利用局域网接入多个考勤机,员工指纹档案集中管理,根据所在部门、科室分配到各个考勤机上。被考勤人员指纹信息实时传送到应用服务器,根据自定义考勤规则自动生成考勤数据。所有员工可以根据授权查看考勤记录,管理人员可以及时查看员工在岗状况情况和考勤结果。系统留有SOAP协议接口,可与其他办公系统协同运行,适合大中型企业的考勤管理应用。 1 指纹识别技术原理
目前最常用的指纹识别方法是细节点坐标模型来做细节匹配,即通过取像设备读取指纹图像,然后采用指纹特征点的坐标模型来做特征匹配,根据对指纹的脊线末梢点和脊线分叉点所提取特征点来鉴定指纹,以确定对指纹所有人的身份进行识别。
指纹识别技术主要涉及指纹图像采集、指纹图像处理、特征提取、保存数据、特征值的比对与匹配等过程(图1所示)。通过指纹读取设备读取到人体指纹的图像,然后要对原始图像进行初步的处理,使之更清晰,再通过指纹辨识软件建立指纹的特征数据。软件从指纹上找到被称为“节点”(minutiae)的数据点,即指纹纹路的分叉、终止或打圈处的坐标位置,这些点
龙源期刊网 http://www.qikan.com.cn
同时具有七种以上的唯一性特征。通常手指上平均具有70个节点,所以这种方法会产生大约490个数据。这些数据,通常称为模板。通过计算机模糊比较的方法,把两个指纹的模板进行比较,计算出它们的相似程度,最终得到两个指纹的匹配结果。 2 指纹考勤系统设计与实现
本指纹考勤系统可基于Unix或Windows Server 2000以上操作系统平台; 数据库采用关系型数据库系统MySQL4.x以上;指纹采集终端采用TCP/IP协议的指纹识别仪。 2.1 考勤系统的网络结构
本指纹考勤系统基于企事业单位的局域网络,通过各考勤点的信息点将指纹考勤终端连接到网络。系统由应用服务器、数据库服务器(灾备存储恢复系统)、管理端、客户端等几个部分组成(图2所示)。 2.2 系统设计目标及原则
(1)系统设计目标。如实反映每个人的考勤情况,杜绝舞弊;员工在识别区域按指进行考勤数据采集;员工按需申请请假、加班、调班、补签(签到、签退)等事项;管理员自由定义考勤规则(迟到、早退、旷工、节假日、员工班次等);管理员处理员工调动、请假、加班、调班、补签(签到、签退)等事项;管理员实时查询考勤记录;管理员在组合条件下,实时生成不同类型的可打印统计报表。
(2)系统设计原则。①先进性:采用当前先进的MMCache & Smarty & Jquery & AJAX等技术;②安全性:数据的安全性;③可扩展性及易维护性:系统在配置上和功能模块上考虑了用户将来的需求增长,可以根据需要增加新的设备或新的模块;④开放性:为保证其他系统的协同运行,本系统留有SOAP协议接口,并结合相关的信息安全及认证标准执行。 2.3 考勤系统的软件设计及实现
指纹识别考勤管理软件采用B/S三层体系结构设计,由NotePad++编写,WAMP环境中调试完成。其设计主要包括两个部分,一是服务端PHP后台服务程序,主要用于指纹采集信息的比对和记录存储,设计采用Apache & PHP & MySQL系统编程;二是指纹采集终端客户机上的B/S客户端AJAX程序,采用JavaScript & XML &XSLT语言编程。
指纹考勤终端支持TCP/IP 通信方式,所以考勤系统采用TCP/IP 通信协议接入网络。这样就可以通过网络在服务器端对考勤采集的用户指纹信息和预先采集的用户指纹信息进行比对和记录,而终端的考勤记录也可以方便地通过网络随时上传至考勤管理系统,从而实现网络考勤。软件设计原理如图3所示。 2.3.1 系统三层结构
龙源期刊网 http://www.qikan.com.cn
MVC(Model View Controller)模型-视图-控制器(图4),M是指数据模型,V是指用户界面,C则是控制器。使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成3个核心部件:模型、视图、控制器。它们各自处理自己的任务。
2.3.2 指纹采集程序实现
指纹采集程序负责采集员工指纹信息,被考勤人员通过指纹识别仪采集指纹信息,采集的信息传递到服务器应用系统(AJAX技术)的采集程序进行身份配对识别,识别成功后,根据管理员定义的考勤规则(员工班次),符合规则的,则对数据进行记录。 2.3.3 系统功能模块设计
(1)数据信息管理模块。该模块完成系统基础信息的设置。包括人事管理(部门、员工信息维护)、参数设置(纹识别设备、考勤规则、节假日等)。
(2)考勤管理模块。该模块完成系统考勤登记、考勤常规事项管理(请假、加班、调班、补签等)、考勤查询、考勤报表生成打印等功能。
(3)系统安全管理模块。该模块完成系统角色维护(权限)、管理员维护、数据备份、数据恢复等功能。
2.3.4 系统功能模块实现
(1)人事管理模块。本模块在考勤登记前使用,用于对部门、员工的设置及员工调动、离退休等相应事项的管理。主要数据表:部门表dept(dept_id,dept_path,dept_name,...); 员工表emp(emp_id,emp_code,emp_pass,emp_name,emp_dept,...);
员工调动表remove(remove_emp,remove_date,remove_from_dept,remove_to_dept,...)。 (2)参数设置模块。本模块用于对考勤规则的设置和各指纹采集设备的登记(包括设备号识别、IP设定、通信测试等)。主要数据表:设备表device(device_id,device_no,device_name,device_ip,...);
班次表frequ(frequ_id,frequ_code,frequ_name,frequ_area,frequ_minutes,...)。