毕业设计人事考勤系统的设计与实现.docx
《毕业设计人事考勤系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《毕业设计人事考勤系统的设计与实现.docx(40页珍藏版)》请在冰豆网上搜索。
毕业设计人事考勤系统的设计与实现
摘要
随着计算机技术的飞速发展,以计算机通信技术为基础的信息系统正处于快速发展的时期。
同时,各种软件也渐渐进入不同规模的各种企业单位中。
加之以指纹打卡为代表的签到设备在企业考勤工作的广泛应用,开发出以计算机技术为基础的考勤管理系统将具有很好的应用前景。
企业考勤管理系统从企业考勤管理的角度出发,用集中的数据库将所有与考勤相关的信息数据统一管理起来,形成集中的信息源。
从而大大提高人事管理者的工作质量和工作效率。
考虑到这些优点,特制作此“人事考勤管理系统”方便公司人事考勤管理工作。
关键字计算机技术,信息系统,数据库,考勤管理系统
ABSTARCT
Withtherapiddevelopmentofcomputertechnology,computercommunicationtechnology-basedinformationsystemisinaperiodofrapiddevelopment.Meanwhile,avarietyofsoftwareisalsograduallyintodifferentsizesinavarietyofbusinessunits.Combinedwithfingerprintattendancepunchastherepresentativeofattendanceworkingintheenterprisedevicewidelyusedtodevelopcomputertechnology-basedattendancemanagementsystemwillhaveagoodprospect.EnterpriseAttendanceManagementSystemAttendanceManagementfromtheenterprisepointofview,withacentralizeddatabasewiththeattendanceofallinformationrelatedtounifiedmanagementofdatatogethertoformacentralizedsourceofinformation.Thusgreatlyimprovingthepersonnelmanager'sjobqualityandworkefficiency.Consideringtheseadvantages,makingthisspecial"personnelattendancemanagementsystem"tofacilitatecompanypersonneltimeandattendancemanagement.
KeywordsComputerTechnology,InformationSystem,Database,AttendanceManagementSystem
1绪论
1.1问题的提出
随着电脑的普及和计算机科学技术的快速发展,计算机开始被人们越来越多地用在实际问题的解决中。
在竞争日益强烈的现代社会,企业在不断提高自身产品质量的同时,对员工的要求也逐渐提高。
人事考勤管理也就成为了一个大众化的课题。
在计算机技术还没有大面积普及之前,在没有计算机考勤管理系统的情况下,企业的考勤工作完全由人工完成。
考勤错误,人情考勤等情况不可避免的发生,这在给管理人员带来不必要的麻烦的同时也对企业利益造成了极大地损害。
这类情况的发生给管理人员和员工带来了越来越大的压力。
员工会因为考勤人员的失误而产生不快,久而久之会对考勤人员甚至公司产生厌恶感。
使得公司工作效率低下甚至人才流失。
同时以人工方式管理员工的考勤信息,不仅浪费大量的时间、人力、物力、财力,而且数据的准确性比较低,保密性相当差,同时将产生大量的文件和数据,这对于数据的查找、更新、管理以及维护都带来了非常大的困难。
随着科学技术水平的不断提高以及计算机科学技术的不断发展,人们对计算机的强大功能产生了深刻的认识,计算机技术已经深深的融入了人类社会生活的各个领域并且发挥着越来越重要的作用。
使用计算机对企业考勤信息进行管理,具有着人工管理所不具有的优点,它检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等,可以减少更多的人力物力财力的浪费,为公司节约大量成本开支。
这些都能够使企业的考勤管理效率得到极大地提高,也是企业考勤管理科学化、正规化,与世界接轨的重要条件.因此,开发一个企业考勤管理系统是很有必要的,具有其特有的技术意义和管理意义。
1.2当前现状
随着计算机应用于企业管理在我国逐渐开展起来。
在我国的各行各业中,计算机辅助管理目前得到了广泛地应用,但总的来说,计算机在我国企业管理中的应用,还处于初级阶段。
尽管近几年发展较快,但还需要不断地探索和研究。
尤其是计算机辅助考勤管理,在最近几年才在我国得到普及和发展,而在许多发达国家计算机辅助考勤管理已十分普及。
随着我国经济建设的蓬勃发展,各个行业都在积极使用现代化的手段,不断改善服务质量,提高工作效率。
随着我国市场经济的不断成熟,企业的竞争也在不断的加剧,同时企业组织管理观念的变革以及业务流程标准化也在不断完善,中小企业信息化建设的热情近几年来有了显著的提高。
近几年来,指纹签到设备慢慢普及开来。
但这类设备只能处理签到的工作,无法对人员的考勤状况进行管理。
因此开发一个高质量的考勤管理系统配合指纹签到设备对公司人员进行考勤管理对企业管理具有重要意义。
1.3系统设计目标
考勤管理系统面向的对象具有不同的身份,系统的界面设计风格和功能提供方式由于不同的需求变得有所不同。
详尽且全面的需求分析是良好的设计基础,有了好的需求分析才能得到清晰明了的设计目标,从而选择正确的技术实现,才能开发出比较完善的系统。
本系统主要功能是管理员工通过签到设备生成的数据,对员工考勤信息进行处理计算工作,从而大大提高人事管理者的工作质量和工作效率。
通过对企业实地观察分析,本管理系统的主要使用者大致有三类:
普通员工、人事管理员和系统管理员。
普通员工可以使用本系统查询到最近几天的考勤情况、查询个人基本信息、在线请假以及请假记录查询。
作为考勤管理员的主要功能是对员工假期状况管理、员工工资管理、员工考勤管理。
系统管理员的功能是员工资料管理、部门管理。
2系统开发工具及技术背景
本系统主要涉及三个开源架构:
Struts2、Spring和Hibernate,同时还使用了JSP作为表现层技术,MySQL数据库作为数据支撑。
以tomcat作为应用服务器,以myEclipse为开发环境。
2.1JSP表现层技术简介
本系统使用JSP作为表现层,负责收集用户请求数据,以及业务数据的展现。
JSP是最传统也是最有效的表现层技术。
JSP是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态技术标准。
在传统的网页HTML文件中加入Java程序片段和JSP标签,就构成了JSP网页java程序片段可以操纵数据库、重新定向网页以及发送E-mail等,实现建立动态网站所需要的功能。
所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持Java,也可以访问JSP网页。
JSP全名为javaserverpage,其根本是一个简化的Servlet设计,他实现了Html语法中的java扩张。
JSP与Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
JSP(JavaServerPages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
2.2MVC框架简介
本系统使用Struts2.2作为MVC框架。
MVC全名是ModelViewController,即模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用于组织代码用一种业务逻辑和数据显示分离的方法,这个方法的假设前提是如果业务逻辑被聚集到一个部件里面,而且界面和用户围绕数据的交互能被改进和个性化定制而不需要重新编写业务逻辑MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
Struts2.2以Struts1.x和WebWork为基础,迅速成长为MVC框架中的新王者,一经推出,立即赢得了广泛的支持。
所有的用户请求,都不再直接发送到表现层JSP页面,而是必须发送给Struts2.2的Action,Struts2.2控制所有请求的处理和转发。
通过Struts2.2拦截所有请求有个好处:
将所有JSP页面放入WEB-INF/路径下,可以避免用户直接访问JSP页面,从而提高系统的安全性。
2.3Spring框架和Hibernate框架简介
Spring框架是系统的核心部分,spring提供的IoC容器是业务逻辑组件和DAO组件的工厂,它负责生成并管理这些实例。
借助Spring的依赖注入,各组件以低耦合的方式组合在一起,组件与组件间的依赖正是通过Spring的依赖注入管理。
其Service组件和DAO对象都采用面向接口的编程方式,从而降低了系统的重构成本,极好的提高了系统的可维护性和可修改性。
Hibernate作为O/RMapping框架使用,其O/RMapping功能简化了数据库的访问,并在JDBC层上提供了更好的封装。
以面向对象的方式操作数据库,更加符合面向对象程序设计思路。
Hibernate以灵活的方法操作数据库,无需开发者编写繁琐的SQL语句,执行冗长的多表查询,而是通过对象与对象的关联来操作数据库。
为底层的DAO对象的实现提供支持。
2.4SQL语言简介
SQL语言是结构化查询语言(StructuredQueryLanguage)的缩写,SQL是关系数据库的标准语言。
SQL语言包含数据模式定义语言DDL、数据操纵语言DML、嵌入式SQL语言、权限管理等几部分。
SQL具有语言功能的一体化、模式结构的一体化、高度非过程化的语言、面向集合的操作方式、语言简洁、易学易用等特点。
SQL为许多任务提供了命令,其中包括:
查询数据,在表中插入,修改,删除记录,建立,修改,删除数据对象,控制对数据和数据对象的存取,保证数据库一致性和完整性。
2.5MySQL数据库简介
MySQL是一个开放源码的小型关联型数据库。
目前被广泛地应用在中小型网站建设中。
由于其体积小、速度快、成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体成本而选择了MySQL作为网站数据库。
与其他的大型数据库例如Oracle、SQLServer等相比,MySQL有它自身的不足之处,如规模小、功能有限、功能和效率都相对比较差等。
对于个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体成本。
2.6Tomcat应用服务器简介
Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现。
因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
Tomcat很受广大程序员的喜欢,因为它运行时所需要的系统资源很小,系统扩展性好,支持负载均衡与邮件服务等与开发应用系统常用的功能;而且它还在不断的改进和完善中,在中小型系统和并发访问要求不高的情况下被大量使用,是程序员开发和调试JSP程序的首选。
3系统分析
3.1可行性分析
本系统的可行性分析是从技术可行性,经济可行性和运行可行性三个方面进行的。
通过对系统目标的初步分析,提出可行性方案并进行论证,从而为后续开发提供支持。
以下是对本系统的可行性分析。
3.1.1技术可行性
考勤管理系统采用B/S结构,该结构具有开发灵活,运行效率高,技术成熟等特点。
开发语言选择Java,Java一种设计非常优秀的语言,具有安全,高效的特点。
开发工具选择MyEclipse该开发工具对Java具有良好的支持,提供了一个通用的开发平台和丰富开源插件。
后台数据库采用MySQL,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,它能有效降低开发成本。
所以它能够胜任目标系统数据处理的需求。
综上所述,本系统的设计与开发在技术上的条件都是满足的,因此,它在技术上是可行的。
3.1.2经济可行性
通过分析设计,可以在一定程度上减少经济开支和工作量,假如开发出只具有特殊性适合具体公司的考勤系统的话,每一家公司都需要开发自己的考勤系统,这样在一定程度上提高了开发人员的工作量,同时也在总量上提高了开发成本,而如果开发出一款比较适合不同类型环境的通用考勤管理系统的话,可以做到一劳永逸的效果。
现在,计算机的成本十分低廉,性能却非常强大且高效。
成功开发出考勤管理系统,将给各个公司在考勤管理方面带来新的质的飞跃。
主要表现在以下几个方面:
第一,考勤管理系统的运行可以取代人工劳动,节约大量人力成本;
第二,考勤管理系统的运行可以在公司的日常运营中能节省大量资源,减少资金开支;
第三,考勤管理系统的运行可以提高公司员工的工作效率和办事效率,节约大量时间;
综上所述,本考勤管理系统在经济上是可行的。
3.1.3运行可行性
自动化考勤管理系统,是考勤模式的发展方向,以现代信息技术为支撑完成考勤工作,可以提高工作效率和工作质量,这与企业的要求是相吻合的。
企业计算机设备齐全,网络完善,有良好的机房管理制度。
本考勤管理系统,所耗费的资源非常的小,各个公司的电脑无论是硬件还是软件都能够满足条件,因此,考勤管理系统的运行可行性是可行的。
3.2需求分析
3.2.1系统需求
随着企业规模的扩大,员工数量越来越多,管理制度越来越完善,传统的人工管理方式的缺陷逐渐暴露出来。
为了提高人事管理系统的效率,方便职工的使用,降低系统的维护成本,所以决定开发基于B/S结构的人事考勤管理系统。
人事考勤管理系统,利用计算机来完成人事考勤的日常工作。
通过信息共享,企业员工可以在任何可以登入系统的地方使用考勤系统,避免了来回跑动的麻烦。
人事考勤管理员不需要手动录入考勤信息和分析计算报表,即减轻了考勤管理员的工作量又提高了工作效率。
避免了在分析计算信息时的人为错误。
通过考勤系统人事考勤管理员可以随时对员工的考勤信息进行管理,实现无纸化办公。
3.2.2功能需求
基于系统需求分析,本人事考勤管理系统可以实现以下功能:
系统的使用者有三种身份:
1、普通员工,2、人事管理员,3、系统管理员。
用户在登录时,根据已选择的角色,进入与该角色对应的功能界面。
普通员工:
1)个人信息管理:
查询个人基本信息、修改登陆密码。
2)考勤信息管理:
考勤信息查询、工资信息查询。
3)假期管理:
在线请假、个人请假信息查询。
人事管理员:
1)员工考勤管理:
修改员工考勤信息、上月考勤记录统计。
2)请假状况管理:
查询员工假期申请、处理员工假期申请。
3)员工工资管理:
结算员工工资、查询员工工资。
系统管理员:
1)员工资料管理:
包括查看所有员工、添加员工、删除员工、修改员工信息等。
2)部门管理:
包括查看部门列表、修改部门信息、添加新部门等。
4概要设计
4.1系统目标设计
本考勤系统基于目前较为流行的B/S模式,即浏览器/服务器模式完成开发,数据库服务器与应用服务器在同一台机器上运行,用户使用Web浏览器访问应用服务器,将用户在网页上进行的操作经过服务器处理后提交给数据库服务器,再把从数据库获取的信息以文本、图像、表格等形式送回给用户的Web浏览器。
4.2系统运行环境
4.2.1硬件环境
1)服务器端硬件环境
服务器端的最低配置是由运行在服务器上的软件所需的要求来决定,在满足软件运行的最低配置的情况下,服务器的往往不尽如人意。
况且现在的硬件性能已经相当出色,同时价格也很便宜,因此通常应给服务器端配置较高性能的硬件来提高运行的速度。
本人事考勤管理系统服务器端的配置如下:
1处理器:
InterPentium41.6GHz或更高
2内存:
1GB
3硬盘空间:
80GB
2)用户端硬件环境
因为用户主要用于浏览和发送数据,不需要对数据进行大量处理。
所以对学用户端的硬件要求并不高,不过现在的电脑具有很高的性价比,因此实际的硬件配置应该高于下面的配置:
1处理器:
InterPentium1.0GHz或更高
2内存:
512MB
3硬盘空间:
40GB
4.2.2软件环境
1)服务器端软件环境如下:
1操作系统:
Windows2000Server
2网络协议:
TCP/IP
3web服务器:
Tomcat6.0.29
4数据库:
MySQL5.5
5浏览器:
InternetExplorer6.0以上
2)用户端软件环境如下:
1操作系统:
Windows98/2000/XP
2网络协议:
TCP/IP
3浏览器:
InternetExplorer6.0以上
4.3系统流程设计
用户以不同的身份登录页面login.jsp。
如果以人事管理员的身份登录,则被系统引至人事管理员功能页面,进入此页面后可进行员工考勤管理、员工假期管理和员工工资管理。
其进入的流程图如图4-1所示:
否
是
图4-1管理员操作流程图
若用户是普通用户,则登录系统后,被引导至员工功能页面。
进入此页面后,员工可进行个人信息管理、考勤信息管理和假期管理。
其进入的流程图如图4-2所示:
否
是
图4-2员工操作流程图
若用户是系统管理员用户,则登录系统后,将被引导至管理员功能页面。
在该页面下,能完成员工资料管理和部门管理功能。
其进入的流程图如图4-3所示:
否
是
图4-2管理员操作流程图
4.4系统功能设计
模块化是将一个复杂问题自顶向下逐步求精,把系统划分成若干个部分的过程。
每个模块完成一个特定的功能,将所有的模块组织起来,成为一个整体,完成整个系统所有的功能。
降低了系统的复杂性,提高可读性、可维护性,可操作性,每个模块只完成系统某一个独立的子功能,并且与其他模块的联系最少,即可提高模块的内聚度,降低模块间的耦合度。
经过对公司考勤管理实际情况的分析,确定出考勤管理系统主要由系统管理员模块、人事管理员模块、普通员工模块三大模块组成,下面是对这三个模块功能的简要介绍:
1)普通员工模块
该模块主要功能包括个人信息管理、假期管理、考勤信息管理。
2)人事管理员模块
该模块主要功能包括员工考勤管理、请假状况管理、员工工资管理。
3)系统管理员模块
该模块主要功能包括部门管理、员工资料管理。
综合以上分析,确定系统功能结构图如图4-3所示:
图4-3系统功能结构图
5数据库设计
良好的数据库设计不仅关系到数据库系统自身的稳定性、安全性、数据的完整性,而且对于应用系统的整体性能以及应用系统的响应速度有着重要的影响。
数据库设计的好坏对考勤管理系统的效率和最终的实现效果有直接的影响。
合理地设计数据库结构不仅可以提高数据库存储效率,而且还能保证数据的完整和统一。
基于前文的需求分析,本系统总共需要7张工作表的数据支持:
考勤记录表attend、考勤类型表attendtype、请假信息表leave、员工信息表employee、员工角色表role、部门信息表department、员工工资表salary。
5.1数据模型
本系统的实体关系图如下所示:
图5-1员工信息实体图
图5-2考勤信息实体图
图5-3考勤类型实体图
图5-4员工角色实体图
图5-5请假信息实体图
图5-6员工工资实体图
图5-7部门信息实体图
图5-8员工实体与考勤实体关系图
图5-9员工实体与角色实体关系图
图5-10员工实体与请假实体关系图
图5-11考勤实体与考勤类型关系图
图5-12员工实体与部门实体关系图
5.2数据库表结构设计
使用Navicat数据库管理软件对MysqL数据库进行管理,使得可在图形化界面对MySQL数据库进行操作,大大简化了数据库操作。
本系统定义的数据库中包含以下7个表:
考勤记录表、考勤类型表、请假信息表、员工信息表、员工角色表、部门信息表、员工工资表。
这些表的表结构如下:
1员工信息表employee:
用于保存员工的账号和密码等个人信息。
表5.1员工信息表
名称
字段名称
数据类型
字段长度
备注
编号
Id
Int
5
主键
员工编号
empId
Int
5
员工密码
Password
Varchar
20
员工姓名
empName
Varchar
20
性别
Gander
Varchar
10
学历
Education
Varchar
20
部门编号
DeptId
Int
5
基本工资
basesalary
Int
5
2考勤记录表attend:
用于记录每次员工打卡考勤的信息。
如日期,时间,员工编号、考勤类型。
表5.2考勤记录表
名称
字段名称
数据类型
字段长度
备注
编号
Id
Int
5
主键
日期
Date
Varchar
20
时间
Time
Varchar
20
考勤类型
Status
Int
5
外键
员工编号
Empid
Int
5
外键
3考勤类型表attendType:
用于存储考勤状态的信息。
包括:
考勤状态、状态id、罚款。
表5.3考勤类型表
名称
字段名称
数据类型
字段长度
备注
状态编号
Typeid
Int
5
主键
状态名称
typeName
Varchar
10
罚款金额
Amerce
Int
5
4员工角色表role:
用于保存用户的身份信息,包括:
员工、领导和管理员三种身份。
表5.4员工角色表
名称
字段名