1、摘要摘 要 随着电子信息技术的发展,智能卡(IC卡)在生活中随处可见。而射频识别卡(简称射频卡、RFID卡)正逐渐取代传统的接触式IC卡,成为智能卡领域的新潮流。RFID卡由于成功结合了射频识别技术和IC卡技术,解决了无源(卡内无电池)和免接触的难题,因此,具有磁卡和接触式IC卡不可比拟的优点。本文设计了一个基于RFID的员工考勤应用系统,以目前的现有射频识别技术,在Microsoft .NET Framework SDK v2.0的环境下,利用Microsoft SQL Server 2005作为数据库,选用C#可视化编程,实现了信息管理,考勤管理,用户管理,射频卡管理,查询管理,数据库管理
2、,系统管理等功能模块。本文介绍了我的上述研究开发工作,详细描述了基于RFID的员工考勤应用系统的分析、设计过程及实现方法。关键字:考勤应用系统,RFID,C#,Microsoft SQL Server 2005ABSTRACT As electronic information technology development, the smart card (IC) in life are everywhere. And RFID card (hereinafter referred to as rf card, RFID card) are gradually replace traditio
3、nal non-contact smart IC card, become the new trend in field. RFID card because managed to combine the RFID technology and IC technology, solve the CARDS without source (without battery) and contactless problem, therefore, is magnetic card and non-contact IC card incomparable advantages. This articl
4、e is designed based on RFID student attendance applications, in order to present the existing radio frequency identification technology in Microsoft. NET Framework SDK v2.0 environment, using Microsoft SQL Server 2005 as the database, select Visual C # programming, Realize the information management
5、, attendance management, user management, radio frequency card management, inquires the management, database management, system management function module.This article describes the research and development of my work, a detailed description of student attendance based on RFID application system ana
6、lysis, design and implementation methods.KEY WORDS:attendance applications, RFID,C#,Microsoft SQL Server 2005目 录第1章 概 述111 RFID介绍112 国内外RFID技术研究现状与发展趋势313 课题研究的目的和意义8第2章 系统开发环境与运行环境821 开发环境822 运行环境923 相关技术923 1 .NET平台923 2 C#语言1123 3 SQL Server 2005数据库12第3章 系统设计1331 系统功能设计1332 数据库设计1432. 1 数据库设计概述14
7、322 系统结构总图1632. 3 数据库概念设计1732. 4 数据库详细设计19第4章 详细设计244、1 考勤系统功能描述244、2 系统模块设计304.3 公共模块设计34第5章 系统实现355、1 登录模块的实现355、2 系统主界面的实现375、3 信息管理的实现385、4 系统管理模块的实现395、5 考勤管理的实现405、6 射频卡管理的实现415、7 查询管理的实现415、8 公共类设计41第6章 测试456、1 人工考勤的测试466、2 智能考勤的测试47第7章 难度与对策48第8章 结论52参考文献53致 谢542011届计算机科学与技术专业毕业设计(论文)第1章 概 述
8、11 RFID介绍RFID(Radio Frequency Identification)即射频识别技术,又称电子标签、无线射频识别,是一种通信技术,可通过无线电讯号识别特定目标并读写相关数据,而无需识别系统与特定目标之间建立机械或光学接触.它通过射频信号自动识别目标对象并获取相关数据,识别工作无须人工干预,可工作于各种恶劣环境。RFID技术可识别高速用动物体,并可同时识别多个标签,操作快捷方便。RFID是一种简单的无线系统,只有两个基本器件,该系统用于控制、检测和跟踪物体。系统由一个阅读器和很多标签组成。RFID的基本组成部分:(1) 、RFID标签:RFID标签俗称电子标签,也称为应答器(
9、Tag,Transponder, Responder),根据工作方式可分为主动式(有源)和被动式(无源)两大类。当RFID标签进入读写器的作用区域,就可以根据电感耦合原理(近场作用范围内)或电磁反向散射耦合原理(远场作用范围内)在标签天线两端产生感应电势差,并在标签芯片通路中形成微弱电流,如果这个电流强度超过一个阈值,就将激活RFID标签芯片电路工作,从而对标签芯片中的存储器进行读/写操作,微控制器还可以进一步加入诸如密码或防碰撞算法等复杂功能。RFID标签芯片的内部结构主要包括射频前端、模拟前端、数字基带处理单元和EEPROM存储单元四部分。(2) 、阅读器:阅读器也称读写器、询问器(Rea
10、der,Interrogator),是对RFID标签进行读/写操作的设备,主要包括射频模块和数字信号处理单元两部分。 读写器是RFID系统中最重要的基础设施,一方面,RFID标签返回的微弱电磁信号通过天线进入读写器的射频模块中转换为数字信号,再经过读写器的数字信号处理单元对其进行必要的加工整形,最后从中解调出返回的信息,完成对RFID标签的识别或读/写操作;另一方面,上层中间件及应用软件与读写器进行交互,实现操作指令的执行和数据汇总上传。在上传数据时,读写器会对RFID标签原子事件进行去重过滤或简单的条件过滤,将其加工为读写器事件后再上传,以减少与中间件及应用软件之间数据交换的流量,因此在很多
11、读写器中还集成了微处理器和嵌入式系统,实现一部分中间件的功能,如信号状态控制、奇偶位错误校验与修正等。(3) 、天线:天线(Antenna)是RFID标签和读写器之间实现射频信号空间传播和建立无线通讯连接的设备。RFID系统中包括两类天线,一类是RFID标签上的天线,由于它已经和RFID标签集成为一体,因此不再单独讨论,另一类是读写器天线,既可以内置于读写器中,也可以通过同轴电缆与读写器的射频输出端口相连。目前的天线产品多采用收发分离技术来实现发射和接收功能的集成。天线在RFID系统中的重要性往往被人们所忽视,在实际应用中,天线设计参数是影响RFID系统识别范围的主要因素。(4) 、中间件:中
12、间件(Middleware)是一种面向消息的、可以接受应用软件端发出的请求、对指定的一个或者多个读写器发起操作并接收、处理后向应用软件返回结果数据的特殊化软件。中间件在RFID应用中除了可以屏蔽底层硬件带来的多种业务场景、硬件接口、适用标准造成的可靠性和稳定性问题,还可以为上层应用软件提供多层、分布式、异构的信息环境下业务信息和管理信息的协同。中间件的内存数据库还可以根据一个或多个读写器的读写器事件进行过滤、聚合和计算,抽象出对应用软件有意义的业务逻辑信息构成业务事件,以满足来自多个客户端的检索、发布/订阅和控制请求。 (5) 、应用软件:应用软件(Application Software)是
13、直接面向RFID应用最终用户的人机交互界面,协助使用者完成对读写器的指令操作以及对中间件的逻辑设置,逐级将RFID原子事件转化为使用者可以理解的业务事件,并使用可视化界面进行展示。RFID的工作原理:RFID的工作原理很简单,标签进入磁场后,接收阅读器发出的射频信号,凭借感应电流所获得的能量发送出存储在芯片中的产品信息(Passive Tag,无源标签或被动标签),或者主动发送某一频率的信号(Active Tag,有源标签或主动标签);阅读器读取信息并解码后,送至中央信息系统进行相关数据处理。一套完整的RFID系统,是由阅读器(Reader)与电子标签(Tag)也就是所谓的应答器(Transp
14、onder)以及应用软件系统三部分组成,其工作原理是Reader发射一特定频率的无线电波能量给Transponder,用以驱动Transponder电路将内部的数据送出,此时Reader便依序接收解读数据,送给应用程序做相应的处理。12 国内外RFID技术研究现状与发展趋势RFID射频识别技术实际上是一项较早的技术,在20世纪60年代的时候,RFID射频识别技术的理论已经得到发展,并且开始了一些尝试性的应用。20世纪90年代起,这项技术进入商业应用阶段。经过多年的发展,13.56MHz以下的RFID技术已相对成熟,目前业界最关注的是位于中高频段的RFID技术,特别是860MHz-960MHz(
15、UHF超高频段)的远距离RFID技术发展最快1。表1 RFID技术发展的历程时期发展情况1961-1970年RFID技术的理论得到了发展,开始了一些应用尝试。1971-1980年RFID技术与产品研发处于一个大发展时期,各种RFID技术测试得到加速,出现了一些最早的RFID应用。1981-1990年RFID技术及产品进入商业应用阶段,各种封闭系统应用开始出现。1991-2000年RFID技术标准化问题日趋得到重视,RFID产品得到广泛采用。2001-现在标准化问题日趋为人们所重视,RFID产品种类更加丰富,有源电子标签、无源电子标签及半无源电子标签均得到发展,电子标签成本不断降低。从分类上看,
16、RFID技术根据电子标签工作频率的不同通常可分为低频系统(125kHz、134.2kHz),高频系统(13.56MHz),超高频(860MHz-960MHz)和微波系统(2.45GHz、5.8GHz)等。低频和高频系统的特点是阅读距离短、阅读天线方向性不强等,其中,高频系统的通讯速度也较慢。两种不同频率的系统均采用电感耦合原理实现能量传递和数据交换,主要用于短距离、低成本的应用中。超高频、微波系统的标签采用电磁后向散射耦合原理进行数据交换,阅读距离较远(可达十几米),适应物体高速运动,性能好;阅读天线及电子标签天线均有较强的方向性,但该系统标签和读写器成本都比较高。表2 不同频段的电子标签性能
17、比较频段低频高频超高频微波135KHz13.56MHz900MHz左右2.45GHz通信方式电感藕合方式电磁发射方式主要通途畜牧业,门禁支付物流管理、制造业交通管制读取距离10cm1m10m左右2m左右使用区域美国多多多多欧洲多多较少多日本多多很少多根据电子标签供电方式的不同,电子标签又可分为无源标签(Passive Tag)、半有源标签(Semi-Passive Tag)和有源标签(Active Tag)三种。 无源电子标签不含电池,它接收到读写器发出的微波信号后,利用读写器发射的电磁波提供能量,无源标签一般免维护,重量轻、体积小、寿命长、较便宜,但其阅读距离受到读写器发射能量和标签芯片功能
18、等因素限制; 半有源标签内带有电池,但电池仅为标签内需维持数据的电路或远距离工作时供电,电池能量消耗很少; 有源标签工作所需的能量全部由标签内部电池供应,且它可用自身的射频能量主动发送数据给读写器,阅读距离很远(可达30米),但寿命有限,价格昂贵。 国外现状从全球的范围来看,美国政府是RFID应用的积极推动者,在其推动下美国在RFID标准的建立、相关软硬件技术的开发与应用领域均走在世界前列。欧洲RFID标准追随美国主导的EPCglobal标准。在封闭系统应用方面,欧洲与美国基本处在同一阶段。日本虽然已经提出UID标准,但主要得到的是本国厂商的支持,如要成为国际标准还有很长的路要走。RFID在韩
19、国的重要性得到了加强,政府给予了高度重视,但至今韩国在RFID的标准上仍模糊不清。目前,美国、英国、德国、瑞典、瑞士、日本、南非等国家均有较为成熟且先进的RFID产品。从全球产业格局来看,目前RFID产业主要集中在RFID技术应用比较成熟的欧美市场。飞利浦、西门子、ST、TI等半导体厂商基本垄断了RFID芯片市场;IBM、HP、微软、SAP、Sybase、Sun等国际巨头抢占了RFID中间件、系统集成研究的有利位置;Alien、ntermec、Symbol、Transcore、atrics、mpinj公司则提供RFID标签、天线、读写器等产品及设备。国内现状相较于欧美等发达国家或地区,我国在R
20、FID产业上的发展还较为落后。目前,我国RFID企业总数虽然超过100家,但是缺乏关键核心技术,特别是在超高频RFID方面。从包括芯片、天线、标签和读写器等硬件产品来看,低高频RFID技术门槛较低,国内发展较早,技术较为成熟,产品应用广泛,目前处于完全竞争状况;超高频RFID技术门槛较高,国内发展较晚,技术相对欠缺,从事超高频RFID产品生产的企业很少,更缺少具有自主知识产权的创新型企业。从产业链上看,RFID的产业链主要由芯片设计、标签封装、读写设备的设计和制造、系统集成、中间件、应用软件等环节组成。目前我国还未形成成熟的RFID产业链,产品的核心技术基本还掌握在国外公司的手里,尤其是芯片、
21、中间件等方面。中低、高频标签封装技术在国内已经基本成熟,但是只有极少数企业已经具备了超高频读写器设计制造能力。国内企业基本具有RFID天线的设计和研发能力,但还不具备应用于金属材料、液体环境上的可靠性RFID标签天线设计能力。系统集成是发展相对较快的环节,而中间件及后台软件部分还比较弱。发展趋势就技术而言,在未来的几年中,RFID技术将继续保持高速发展的势头。电子标签、读写器、系统集成软件、公共服务体系、标准化等方面都将取得新的进展。随着关键技术的不断进步,RFID产品的种类将越来越丰富,应用和衍生的增值服务也将越来越广泛。RFID芯片设计与制造技术的发展趋势是芯片功耗更低,作用距离更远,读写
22、速度与可靠性更高,成本不断降低。芯片技术将与应用系统整体解决方案紧密结合。RFID读写器设计与制造的发展趋势是读写器将向多功能、多接口、多制式、并向模块化、小型化、便携式、嵌入式方向发展。同时,多读写器协调与组网技术将成为未来发展方向之一。RFID技术与条码、生物识别等自动识别技术,以及与互联网、通信、传感网络等信息技术融合,构筑一个无所不在的网络环境。海量RFID信息处理、传输和安全对RFID的系统集成和应用技术提出了新的挑战。RFID系统集成软件将向嵌入式、智能化、可重组方向发展,通过构建RFID公共服务体系,将使RFID信息资源的组织、管理和利用更为深入和广泛。 RFID的特点: RFI
23、D是一项易于操控,简单实用且特别适合用于自动化控制的灵活性的应用技术,识别工作无须人工干预,它既可支持只读工作模式也可支持读写工作模式,且无需接触或瞄准;可自由工作在各种恶劣环境下:短距离射频产品不怕油渍、灰尘污染等恶劣的环境,可以替代条码,例如用在工厂的流水线上跟踪物体;长距射频产品多用于交通上,识别距离可达几十米,如自动收费或识别车辆身份等。其所具备的独特优越性是其它识别技术无法比拟的。主要有以下几个方面:u 读取方便快捷:数据的读取无需光源,甚至可以透过外包装来进行。u 识别速度快:标签一进入磁场,阅读器就可以即时读取其中信息,而且能够同时处理多个标签,实现批量识别;u 数据容量大:RF
24、ID标签可以根据用户的需求扩充到数十k;u 更好的安全性:RFID电子标签不仅可以嵌入或附着在不同形状、类型的产品上,而且可以为标签数据的读写设置密码保护,从而具有更高的安全性;u 动态实时通信:标签以每秒50100次的频率与阅读器进行通信,所以只要RFID标签所附着的物体出现在阅读器的有效识别范围内,就可以对其位置进行动态的追踪和监控。 13 课题研究的目的和意义 随着科学技术的发展和计算机的深入普及,众多的企事业单位越来越重视管理信息系统的投入和应用,管理信息的工具已形成了从人工管理到计算机辅助管理和计算机管理的格局。而对于信息采集也渐渐的从人工采集到现在的自动化采集,这为自动化技术提供了
25、越来越广阔的发展空间,而RFID射频识别技术就在这样的环境下的不断的发展壮大。RFID射频识别是一种非接触式的自动识别技术,它通过射频信号自动识别目标对象并获取相关数据,识别工作无须人工干预,可工作于各种恶劣环境,并且RFID技术可识别高速运动物体并可同时识别多个标签,操作快捷方便,这些优势使RFID有了广阔的发展空间。现代公司也充分的利用信息网络技术和计算机互联网技术,发挥信息网络的各种技术手段和现有各种教育、科研、信息资源的优势,开发各种应用系统和管理系统,实现网络交互式管理,全面推进信息化管理。而基于RFID的员工考勤应用系统就是公司管理系统的一个组成部分,它将智能化的完成考察员工出勤情
26、况。它实时的自动采集数据信息、自动对所采集数据进行分析处理,然后以可视化界面回报给用户。通过点名、磁卡和接触式IC卡等方式对员工的出勤情况进行考勤、记录管理,既耗时,而且又会相互干扰;而非接触式RFID员工考勤应用系统实现了利用无线射频识别技术对员工考勤管理,既方便、快捷,又省资源。第2章 系统开发环境与运行环境21 开发环境Intel(R) Pentium(R) Dual CPU,0.99GB内存,120G硬盘Microsoft Windows XP ProfessionalMicrosoft Visual Studio 2008(C #)Microsoft Developer Networ
27、k for Visual Studio.NET 2008Microsoft SQL Server 200522 运行环境 Intel Pentium 2及以上处理器,32M以上内存,4G以上硬盘Microsoft Windows 9X/NT操作系统1280*800的屏幕分辨率确保机器上安装有Microsoft .NET Framework SDK v2.0或者以上版本23 相关技术23 1 .NET平台 介绍.NET平台是Microsoft公司推出的一套开发框架和工具,它为开发数据库应用程序提供了很好的数据环境和强大的开发工具。.NET Framwork运行库(Common Language
28、Runtime,简称CLR)为C#代码执行和管理提供了支持,并且.NET Framwork提供的类库简化了C#编程。.NET Framwork(.NET 框架) 是整个.NET平台的基础结构。.NET Framwork 除了可以管理代码的执行(包括启动代码,给它赋予相应的权限,为它分配内存以存储其数据,帮助释放不再需要的内存和资源等)以外,还提供了一个非常复杂的类库,以便在Windows上执行大量的任务。对这些任务,他承担了双重角色:管理代码的执行和为代码提供服务。从技术层面上来讲,.NET Framework 主要包括两个最基本的内核,即通用语言运行库CLR和.NET Framework 基
29、本类库,它们为.NET 平台的实现提供底层技术支持。(1) 、通用语言运行库: 通用语言运行库CLR(Common Language Runtime)是.NET Framework运行时的环境,它运行代码并提供最底层的服务,是.NET 平台的执行引擎。通用语言运行库以跨语言集成、自描述组件、简单配置和版本化及集成安全服务为特点,提供诸如版本控制以及内存、进程和线程管理等多种服务。有了通用语言运行库,.NET 就使C+、C#、Visual Basic和JScript等多种语言能够高度集成,即用一种语言所写的代码能继承另一种语言所写的类,用一种语言编写的代码所产生的异常能被用另一种语言编写的代码捕
30、获。这就意味着编写可重用类库的开发人员不再需要为每一种编程语言或编译器专门生成一个版本,并且使用类库的开发人员不再受到某种编程语言的限制。(2) 、.NET Framework 基本类库 .NET Framework基本类库位于通用语言运行库的上层,与.NET Framework紧密集成在一起,可以被.NET支持的任何语言使用。.NET 类库提供数据库访问、XML、网络通信、线程、图形图像、安全、加密等多种功能服务。类库中的基类提供了标准功能,如字符串操作、输入输出、用户界面设计、网络管理、线程管理、安全管理、文本管理功能。ADO.NET 类库使开发人员能够通过OLE DB、ODBC、Orac
31、le和SQL Server接口与以XML形式访问到的数据进行交互。XML类库支持XML操作、搜索和转换。ASP.NET类库支持基于WEB的应用程序和XML WEB服务的开发。Windows Form类库支持基于桌面的智能客户端应用程序的开发。这些类库使得程序员可更容易的建立应用程序和网络服务。在此之上是许多应用程序模板,这些模板为开发网络应用和服务提供高级的组件和服务。 从技术上来讲,.NET Framework的基本类库是Microsoft已经编写好的一个丰富的代码类集合,它可以完成以前要通过Windows API的绝大多数任务,其最大的优点就是非常易用。.NET Framework 的基本
32、类库既是.NET 应用软件开发的基本类库,也是.NET 平台实现的基础。 .NET 集成开发环境 .NET 不但拥有通用语言运行库,而且还为C+、C#、Visual Basic和JScript提供了一个通用的VS.NET集成开发环境。如下图1,就是开发C#的Windows应用程序时最为常用的“设计器”窗口和“解决方案资源管理器”窗口。在开发应用程序时,会用到.NET 集成开发环境中的工具栏和工具窗口。这个开发环境都是自定义的,大多数窗口的位置和外观都可以按照用户喜欢的方式进行设定。 ADO.NET接口 ADO.NET是在ADO(ActiveX Data Object)基础上改进的、应用程序级的
33、高层接口,用来在.NET 平台中提供数据访问服务。ADO.NET 专门为.NET 平台设计,特别适合于基于消息的Web应用程序,同时也能为其他应用程序结构提供较好的功能。23 2 C#语言 介绍C#是一种安全的、稳定的、简单的、优雅的,由C和C+衍生出来的面向对象的编程语言。它在继承C和C+强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。C#综合了VB简单的可视化操作和C+的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。并且C#成为ECMA与ISO标准规范。C#看似基于C+写成,但又融入其它语言如
34、Pascal、Java、VB等。 C#语言特点 作为Microsoft新一代面向对象的语言,C#即保持了C+中熟悉的语法,又包含了大量的高效代码和面向对象的特性。相对于C和C+,C#具有一下特点:(1) 、语法更简单(2) 、快速应用开发(RAD)功能(3) 、语言的自由性(4) 、强大的Web服务端组件(5) 、支持跨平台(6) 、与XML的融合(7) 、对C+的继承23 3 SQL Server 2005数据库 介绍 SQL Server 是一个大型的关系型数据库管理系统,他最初是由Microsoft Sybase和Ashton-Tate三家公司共同开发的,SQL Server 2005共
35、有4个版本,分别是个人版,标准版,企业版和开发版,支持关系数据库的结构化查询语言SQL,它提供了丰富的图形化管理工具,简化了系统管理与操作,具有动态自动管理和优化功能。它支持大型Web站点和企业数据吃力系统的数据存储要求,具有Web出版工具,支持XML、HTTP,并具有数据挖掘和分析服务的应用功能,可伸缩性和可用性强。它支持企业级数据库,容许大量用户同时访问,容许用户同时引用多处数据源,支持分布式查询,支持数据仓库。它具有丰富的编程接口,便于开发,支持ODBC、ADO数据库对象、OLE数据源,支持N层客户机/服务器系统,在客户机/服务器结构中SQL Server 2005扮演着后端数据库的角色
36、。 SQL Server 2005数据库特点(1) 、Internet 集成(2)、可伸缩性和可用性(3) 、企业级数据库功能(4) 、易于安装、部署和使用第3章 系统设计 31 系统功能设计n 信息源分析根据员工考勤管理系统的需求,此系统信息来源主要有员工信息、RFID射频卡信息和考勤记录信息,其中RFID射频卡信息包括射频卡分配信息、射频卡挂失信息、射频卡激活信息。考勤记录信息又包括射频卡考勤信息和人工考勤信息。n 系统用户分析 本系统的用户可分为三个方面:管理员、领导和员工。其中管理员可使用的操作是信息管理、考勤时间设置、查询管理和数据库管理中的操作,当然管理员最主要的操作是用户管理,即
37、添加系统用户。领导完成员工出勤的考察,他们有权利对员工进行人工考勤登记和射频卡考勤登记,当然也有查询信息的权利、修改用户密码等。员工使用此系统仅仅只有查询和修改密码的功能,员工不能对考勤管理和信息管理进行操作。每一种权限的系统用户其操作都受一定的限制,这样可以保护信息的安全性。n 信息完整性及安全性分析 对于此系统信息的安全性考虑,为了防止系统权利的外泄和信息被非法篡改,每一种用户都以自己的用户名和密码加正确的权限才能登录系统使用。为防止系统用户在查询是更改系统信息,为此我在查询模块以视图的方式为用户提供可查询信息。 领导与管理员之间信息是双向互动的.管理员不仅是信息系统的用户,同时也是领导的
38、信息维护的人员,也是部分系统的维护者,但是管理员没有考勤管理的使用权限。领导有考勤管理的使用权限,但是他不能将自己等同的权利传播,他仅仅只可以添加员工用户,对部分系统进行维护。对系统的安全主要采取以下两方面的措施:(1) 、对各系统用户规定相应的权限,仅能操作其权限内的的信息;(2) 、在管理员层设立独立转存机制,设立冗余数据库,以备核对.该冗余数据库可同时作为系统恢复的基础数据库使用。关于信息的完整性,首先要满足关系的实体完整性和参照完整性要求,同时根据实际需要定义一些特殊的约束条件,即用户定义的完整性。这些要求共同保证了设备信息的完整性。32 数据库设计32. 1 数据库设计概述 俗话说:
39、“三分技术,七分管理,十二分基础数据”,其实这也是数据库设计的特点之一。数据库设计的目标是为用户和应用系统提供一个信息基础设施和高效的运行环境。l 数据流图 数据流图(DFD)是用来描绘信息流和数据从输入移动到输出的过程中所经受的变换,下面两图分别为本文所设计系统的顶层数据流图和中间层数据流图。 数据信息系统用户数据库RFID员工考勤系统登录信息图3-1 顶层数据流图用户信息员工信息射员工信息智能考勤信息用户信息出勤信息用户信息用户表员工基本信息表人工考勤信息用户信息射频卡信息考勤信息记录表用户信息查询管理射频卡管理考勤管理信息管理用户管理图3-2 中间层数据流图l 数据字典 数据字典是关于数
40、据信息的集合,也就是对数据流图中包含元素的定义的集合,他的用途是供用户查阅对不了解的条目的解释。下面是本文所设计的系统中部分数据字典:名字:智能考勤信息描述:智能考勤信息是员工持RFID卡,通过阅读器而所得到的考勤信息定义:智能考勤信息=出勤时间+工号(员工的唯一标识码)名字:系统用户描述:系统用户是可以使用此系统的人员,他们根据自己不同的权限,对此系统进行操作定义:系统用户=用户名+用户密码+用户权限名字:射频卡信息描述:射频卡信息是工作人员为员工所分发的RFID卡,射频卡中记录了员工的工号信息、卡状态信息和唯一标识RFID卡的卡序列号信息定义:射频卡信息=卡序列号(唯一标识RFID卡)+工
41、号(员工的唯一标识码)+余额+卡状态名字:人工考勤信息描述:人工考勤信息是在阅读器坏掉或一些突发事件情况下,工作人员进行手工录入的考勤信息定义:人工考勤信息=工号(员工的唯一标识码)+出勤属性+出勤时间+请假类型+请假原因322 系统结构总图基于RFID员工考勤系统登录界面系统主界面信息管理模块考勤管理模块用户管理模块射频卡管理模块查询管理模块数据库管理模块退出系统管理模块 图3-3 系统结构总图32. 3 数据库概念设计u 由于在系统的登录及权限涉及到不同的用户,为了区分用户和方便管理,规划出用户信息实体。E-R图如下图所示。用户信息用户名用户密码用户权限用户邮箱 图3-4 用户信息E-R图
42、u 为了对学生信息进行管理,学生信息包括学生学号、学生姓名、学生所属学院等一些信息,所以规划出了学生信息实体,实体E-R图如下图所示。员工信息性别工号民族职务电话邮箱籍贯政治面貌出生日期年龄姓名身份证号 图3-5 员工信息E-R图u 为了对院系信息进行管理,一个学校院系信息包括学院、专业、班级信息,所以规划出了院系信息实体,实体E-R图如下图所示。 部门信息名称编号人数 图3-6 部门信息E-R图u 当进行考勤时,需要对每一天的考勤信息进行处理,需要进行考勤的填报工作,根据考勤的相关信息规划出了考勤记录信息实体,实体E-R图如下图所示。考勤记录信息 出勤时间工号出勤属性 图3-7 考勤记录信息
43、E-R图u 在查询模块中由于要了解一个月中每个学生出勤情况进行一个统计,因此规划出了考勤信息月统计信息实体,实体E-R图如下图所示。考勤月统计信息出勤次数月份缺勤次数工号请假次数 图3-8 考勤月统计信息E-R图u 射频卡是每个员工身份唯一标识工号的载体,根据射频卡的相关信息规划出了射频卡信息实体,实体E-R图如下图所示。 射频卡信息卡序列号工号密码状态 图3-9 射频卡信息E-R图32. 4 数据库详细设计 数据库表单设计在SQL Server 20005关系数据库中我定义了一个名为attend的数据库,定义了8张表:员工基本信息表,部门编制信息表,射频卡分配表,射频卡考勤登记表,月考勤信息
44、统计表、用户表、考勤信息记录表和考勤时间表,下面简单介绍两张表字段:(1)、员工基本信息表表定义字段如下:字段名类型大小说明部门Varchar10员工所属部门职务Varchar10员工所任职务工号Varchar10主键姓名Varchar20员工姓名性别Varchar2男、女出生日期datetime8员工出生日期民族Varchar2员工民族籍贯Varchar10员工出生地政治面貌Varchar5员工政治面貌身份证号Varchar30员工身份证号手机号Varchar20员工手机号邮箱Varchar20员工Email (2)、射频卡分配表的表定义的字段如下:字段名类型大小说明卡号Varchar20员
45、工所持射频卡的唯一标识信息工号Varchar10员工的学号状态Varchar10卡的状态,“已激活”还是“已挂失”(4) 、射频卡考勤登记表的表定义的字段如下:字段名类型大小说明出勤时间datetime8员工出勤时间工号Varchar10员工的工号 触发器设计 触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由单个事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。 触发器可以从 DBA_TRIGGERS ,USER_TRIGGERS 数据字典中查到。触发器可以查询其他表,而且可以包含复杂的 SQL 语句。它们主要用于强制服从复杂的业务规则或要求。在本文所设计的员工考勤应用系统中,我们设计了一下触发器,分别如下:(1) 、trig_insertOfStudentInUser trig_insertOfStudentInUser触发器的作用是当工作人员向员工基本信息表中插入数据时,自动向用户表中添加一条权限为员工的用户信息,这样可以保证所有在数据库中的员工都有以员工权限访问此系统的