摘要
进入到21世纪后,公司的管理越来越规范,很多公司的规模也越来越大,益田文化公司考勤管理起来也比较麻烦,公司考勤管理系统已经成为管理好员工的利剑,是目前亟需要探讨的一个话题,很多大型的公司已经建立了自己的公司考勤管理系统。当公司规模比较小的时候,可以通过手工记录的方式管理公司的人员,但是公司足够大的时候,通过手动记录的方式已经变得不可取,必须采用系统化、信息化的方式进行管理。公司考勤管理系统在企业的管理和经营过程中的合理运用,有利于优化该企业的经营模式,进而推进企业管理内容和方式的信息化的实现。
本文就是采用了Java作为开发语言,设计模式采用了MVC的设计模式,开发了益田文化公司考勤管理系统。具体包括考勤记录、假期申请、出差申请、加班申请、调休申请、考勤查询、数据字典、员工管理。
关键词:考勤管理,java,MVC
第一章引言
随着信息技术在在企业当中的普及程度越来越高,企业信息化可以说已经符合了现代产业发展经营的潮流,引入这个模式可以用于完善企业架构,根据企业所表现出的现状,与计算机应能用技术相结合,对企业未来的发展具有向上的积极影响,益田文化公司管理系统在企业信息化的投资回报比重占得特别大。计算机信息化技术可以对有关的软件的性质性能进行研发和配制。并且在不同的环境下,有效的完成指定任务。在全民信息时代的背景下,工作流技术的应用范围得到了大幅度提升。益田文化公司管理系统提供的服务的种类也越来越多,并且能够基于不同的工种,来进行对应的操作,进而实现对应的工作目标。不少企业将益田文化公司考勤系统运用到实际管理的环节当中,利于提高管理方式的效率,并且提高质量。其中展现了信息资源的价值。综上而言,在当前社会的发展情势下面。企业要科学的运用计算机等现代化的应用技术,对企业内部进行整合与管理,让这个企业的各个环节都得到科学的管理,进而提高了该企业在行业中的核心竞争力。
1.1项目背景和意义
目前来说,各个企业都很重视工作效率,考勤已经成为了一个很重要的话题。本系统主要针对益田文化公司的考勤进行管理。因为考勤已经成为了目前益田文化公司人事管理中的一个重要组成部门,特别是私营企业,员工考勤需要和员工的工资进行挂钩,通过考勤管理系统,能够有效的约束员工行为,尽量提高员工的工作效率,提高企业的经济收入,如何科学的管理员工考勤信息已经成为了目前企业关注的一个重要话题。现在,传统的通过人工和人力来进行管理的企业已经不能够满足当前工作效率和工作准确性的需求,因此益田文化公司的考勤管理已经不是很有效了。随着数据库以及现代网络技术的发展以及企业信息化的发展,依靠计算机来辅助完成企业益田文化公司的考勤工作已经成为了现在当前主要的趋势,用计算机来对考勤进行管理已成为现代化企业运营的不可缺少的一部分了。除此之外,使用计算机进行考勤的管理可以为企业节省大量人力及物力,同时还可以减轻考勤管理人员的工作负担,提高了考勤工作的效率,使得原本复杂和枯燥的工作变得简单而又容易了。经过对益田文化公司的管理部门和人事部门进行深入的调研之后,本课题决定对员工考勤系统进行设计和研发。
1.2国内外研究背景
目前互联网发展迅速,并且随着5G网络的普及,移动互联网的网速变得更加快速,互联网行业也在飞速的发展,这使得互联网+考勤管理已经成为了一种趋势,考勤管理改革也是大势所趋。在世界范围内,发达国家的考勤管理水平比较高,尤为突出的是X,在20世纪末,克林顿在全美开展益田文化公司考勤建设,很多X的益田文化公司都建立自己的益田文化公司考勤系统,并且系统比较成熟,能够快速的提高企业考勤管理水平。
而且在对于信息化的员工考勤系统的开发这一方面,国内多家大型的企业首先对此进行了深入的研究和开发,在航空业、铸造业、能源开发业中都有通过自己的技术团队的研究并开发了自己的行业专用的员工考勤管理系统,而且国内的许多软件益田文化公司和研究单位都还推出了各种各样的考勤管理系统,并且推向市场进行了商业化,例如的人事考勤管理系统、同鑫科技的人力资源管理系统、喔趣科技的考勤管理系统等等。
1.3研究内容
本文一共分为七个章节,每个章节的概要如下:
第一章,绪论:介绍项目的主要研究背景、研究意义并且对国内外的考勤信息管理系统的发展进行概况。
第二章,技术简介:分析并认识系统所使用的重点得技术。
第三章,系统需求分析:通过模拟整个Web应用的用例,对整个应用有哪些需求进行分析,明确系统需要具备哪些功能。
第四章,系统概要设计。简述该Web应用的功能模块划分,简要说明如何设计各个功能模块,并介绍所使用的数据库,以及数据增删改查的实现。
第五章,详细设计与实现。主要介绍了该Web应用所要实现的功能以及该实现功能的核心代码。
第六章,系统的测试。主要通过测试用例来描述具体的测试细节。
第七章,总结与展望。总结开发过程中遇到的技术难点以及克服难点后的收获,列出了该应用的可扩展点与不足之处。
第二章相关技术
2.1 Jsp技术
Jsp是服务器端的脚本语言,是基于Servlet开发的动态网页生成技术,它的底层实现是Java Servlet。Jsp是由HTML代码和嵌入其中的Java代码所组成。客户端请求以后服务器在页面对这些代码进行处理,然后将生产的HTML页面返回客户端的浏览器Jsp的特点是面向对象、跨平台、和Servlet一样稳定、可以使用Servelet提供的API,并且克服了Servelet的缺点。该项目的界面显示讲使用了Jsp进行展示,后台从数据库查询数据库,将数据封装成JavaBean展示到Jsp界面。本系统所有前台界面使用了Jsp技术,使用Jsp作为用户展示的界面。
2.2 MVC框架
Model View Controller分别对应模型、视图以及控制器,三者构成了软件设计框架中被誉为典范的MVC架构,而形如该框架的组织代码的使用,可以实现业务逻辑与数据流分离。本系统采用了MVC的框架,所有的请求都由控制层接收,dao层负责查询数据库,然后view层是Jsp界面。本系统使用了MVC框架,使得开发效率跟高,维护成本更低。
2.3 Ajax技术
Ajax技术不是一个新技术,主要目的是实现局部刷新,通过Ajax技术能够让客户感觉更流畅。Ajax包括:HTML和CSS、使用文档对象模型(Document Object Model)进行动态显示和交互、使用XML和XSLT进行数据交互和操作以及使用XMLHttpRequest进行异步数据接收。系统使用了Ajax技术,通过此技术对界面进行局部的刷新,用户体验较好[2]。
2.4 MySQL数据库
目前已被Oracle收购了。因为开源,这会使许多有想法和有能力的人对MySQL数据库进行改造,让其更加符合自己的环境需要,因此MySQL数据库有了一些分支[3]。系统使用的是MySQL数据库,MySQL数据库相对于其他数据库会更容易使用,并且使用起来也比较方便,不需要配置很多信息,虽然MySQL支持的数据量没有Oracle大,但是足以支持现有的系统,并且支持存储过程。本系统使用了MySQL数据库,作为数据存储的数据库[4]。
第三章需求分析
第一步就是需求分析,只要将需求分析清楚了解项目真正的核心,也就是这个项目到底需要实现什么,只有在实现之前弄清楚这样才能够做出满足客户的产品,在需求分析的时候主要是要清楚程序的功能,人员角色有哪些,每个角色所具备的功能是什么。一般需求分析确定后,就不会有大的变动了,后续的数据库设计、详细设计、系统选用的框架等,都需要依托于之前的需求分析,如果需求分析把握不准确,就会导致软件的设计方向出现偏差,即使软件已经做出来,但是如果需求出现错误,软件产品也是不合格的产品。一般将需求分析分成功能性需求分析和安全性性需求分析,形成需求文档,反复分析需求点,这样最终设计出令客户满意且满足要求的产品。
3.1系统可行性分析
3.1.1技术可行性
目前已经有较多的互联网益田文化公司进行了软件开发的项目管理工作,本系统就仿照该系统进行整体建设,本系统建设之前,已经有一定的管理系统建设经验,因此,技术是可行的。
3.1.2经济可行性
系统开发需要微信开发工具、eclipse、mysql数据库,这三个开发工具都是免费的,需要使用电脑进行开发,电脑选择的配置是i7、4c8g处理器,大约费用7000元,系统部署完成后需要部署到阿里云上,费用每年12344元,但是系统能够供益田文化公司考勤使用,因此具有经济可行性[5]。
3.1.3操作可行性
该系统采用web进行建设,符合现有用户的操作习惯。由此得知,该系统在操作方面,完全能够满足可行性要求。
3.1.4法律可行性
本系统没有侵犯别人的著作权、软件权等,在法律层面也具备可操作性。
3.2功能性需求分析
系统主要功能包括考勤记录、假期申请、出差申请、加班申请、调休申请、考勤查询、数据字典、员工管理。
1、考勤记录:能够对考勤记录进行增删改查,其中考勤记录包括考勤时间、类别、员工信息、考勤时段、说明、记录人等基本信息。
2、假期申请:能够通过系统申请假期,能够对申请的假期进行增删改查,具体包括申请人、开始时间、结束时间、时长、假期类别、原因、状态等信息。
3、出差申请:能够对出差的基本信息进行申请,并且能够进行增删改查
4、加班申请:能够对加班的基本信息进行查看和申请,并且进行审核
5、调休申请:能够对调休的进本信息进行申请,并且对其进行增删改查。
6、考勤查询:能够基于每个人员的考勤基本信息进行查询,包括请假次数、出彩次数、加班次数、早退次数等信息,并且能够对信息进行重置。
7、员工管理:能够管理员工的基本信息。
具体的用例图如图3-1所示。
图3-1系统用例图
第四章系统设计
第三章主要介绍了系统的需求分析,以及需求分析需要解决什么问题,明确了问题之后,来进行开发和设计,第四章主要是研究怎么做,系统需要按照什么样的原则进行开发,系统的物理架构是什么样的,核心模块是怎么设计的,数据库是怎么设计的,具体展示如下所示。
4.1系统设计原则
开发一个新的系统,需要遵循相关的开发准则,这样才能开发出合理的系统,满足不同用户的需求。开发本系统主要包含了以下相关准则:
(1)系统的应用性好。开发新的系统是为用户服务的,只有能够满足用户需求的系统才是好系统。开发系统需要有个前提准则,即能够让用户正常使用,本文就首先以满足用户需要为出发点进行了系统设计。
(2)系统的结构稳定。在开发一个软件的时候,需要设计系统的物理架构和逻辑架构,需要保证系统的结构必须是稳定的,通过需求分析了解了系统的需求后,下面就要考虑系统的设计结构,一般系统的结构主要包括系统部署的位置,使用的中间件,系统的逻辑架构,使用的框架必须稳定,设计好结构后才能够进行开发。
(3)可兼容性。开发软件的时候,首先要考虑的是现在的功能,但是开发出的软件由于需求是不断的进行变化的,需要考虑其兼容性,在客户提出新的需求后,能够在现在的程序上面快速开发,不能够因为一个功能的增加,改变原来的逻辑结构和物理结构。开发软件的时候必须考虑软件的兼容性问题。
(4)复用性。在软件开发的时候,需要进行分层分包,不同的包负责不同的模块,当有新的需求时,必须考虑软件的复用性,尽量避免重复代码的编写,可以利用继承,对于一些常用的功能,例如分页、字符串修改等功能,可以考虑将这些常用的功能放到工具包中,提高软件的复用性。
(5)易于系统维护。系统开发完成后,可能系统只完成了50%,剩下的50%可能都是运维人员需要进行的,软件工程项目即使测试的已经很好,也可能会出现一些问题,在出现问题后,系统需要能够在不影响其他功能的基础上进行解决。
4.2系统总体结构
图4-1系统模块图
4.3系统核心模块设计
4.3.1系统登录
用户可以登录系统,首先进入到登录主界面,然后输入用户所需的用户名、密码、验证码进行登录,系统会验证用户名和密码是否和后台数据库中的一致,如果一致则可以使用系统进行登录,登录顺序图如图4-2所示。
图4-2登录顺序图
4.3.2员工管理
能够管理员工的信息,主要是添加员工的信息,首先进入到员工的信息管理模块,然后操作员工的信息管理控制类,来进行增加员工的信息,具体如图4-3所示。
图4-3员工管理顺序图
4.3.3考勤管理
能够对考勤信息进行管理,主要是增加考勤信息,首先会进入到考勤信息管理模块,然后操作考勤信息管理控制类,来进行增加考勤信息,具体如图4.4所示。
图4.4考勤顺序图
4.4数据库设计
创建数据库表是数据库设计的最基本的要求,也是用来存储信息系统数据的最佳方法。为了能够更加清楚地表示每一个实体,对系统中所涉及的每个实体设计了相对应的数据结构表。对系统数据库表结构的设计具体如下。
员工信息表如表4-1所示。
表4-1员工信息表
4.5系统安全
系统需要保证数据的安全,最典型的密码算法就是MD5,一般校验方式为,用户在输入用户名和密码的时候,将用户输入的明文密码调用crypt函数进行加密,在加密的时候最关键的就是选取salt,salt每一个用户其实也只对应一个,实在创建用户的时候进行随机生成的salt值,在对用户进行加密的时候,并不是只进行一次的MD5运算,至少要进行5次MD5加密,最后出来的结果其实是用户的密码,然后将其保存在数据库的文件中[8]。用户登录的时候需要将用户的明文来进行加密,加密成密文,然后加密的密文和shadow文件中的密文进行对比,如果对比成功则能够登录成功。并且MD5是不可逆的加密方式,这样最大限度的保护了系统的安全,能够抵御一般的攻击,如果要破解这样的加密方式,需要进行大量的计算,对于计算机的计算要求能力特别高,在理论时间内破解密码是不可能的。
加密运算图如图4-5所示
图4-5加密算法图
第五章系统实现
5.1员工管理
个人信息包括有员工姓名、年龄、职位、部门、是否领导、个人账号和账号密码。员工可在线申请假期,管理员可以审核请假信息并做出回复。这样,可以简化之前的人工手动步骤,方便员工申请和管理员审核。请假信息包括姓名、请假的开始和结束时间、请假原因、当前审核状态以及答复信息。员工可以在线输入请假时间及事由就能请假并查看当前的审核状态。能够对员工进行增删改查,点击员工管理,能够看到员工的基本信息,通过列表的形式进行展现,具体如图5-1所示。
图5-1员工管理图
5.2考勤记录
出勤信息的管理是对员工的出勤信息进行统计和录入,可以方便而准确地计算工资。出勤信息包括月份、本月出勤的总天数以及员工姓名。建立一个信息化的管理系统是适应社会发展形势的必经之路。能够展示员工的具体考勤记录,并且能够对考勤记录进行增删改查,具体如图5-2所示。
图5-2考勤记录图
5.3考勤查询
该表记录员工出勤信息,包括编号、月份、员工ID、出勤天数能够展示员工的具体考勤查询信息,具体如图5-3所示。
图5-3考勤查询图
5.4假期申请
该表记录员工的请假信息,包括编号、员工编号、开始时间、结束时间、备注信息、审核状态、恢复信息。用户可以添加假期申请,添加后能够进行展示,其他的出差申请、加班申请等信息和假期申请一致,本文就不一一展示,假期申请具体如图5-4所示。
图5-4假期申请图
第六章系统测试
6.1测试目的
软件的测试是很有必要的,软件的测试就是使用某些技术手段来测试软件,可以使用人工的手段,也可以使用机器的手段进行测试,无论是人工手段还是机器手段,在测试过程中都要对测试的内容有一个预估结果,然后通过测试,看实际的结果和预估结果是否一致,如果一致说明程序是正确的,如果不一致说明程序是错误的[9]。
所有的软件交付给用户之前,系统需要进行测试,测试的时间甚至需要超过开发的时间,因为只有经过测试后的软件,才能够具有安全性和稳定性,只有经过系统测试的软件才能够立马交付使用,软件的质量才能够保证。在软件开发初期可能只需要软件开发人员来进行软件的测试,但是其实开发人员的的测试也可以称之为调试,并不是真正意义上的测试,调试出问题之后在进行修改,但是开发可能是不同的模块有不同的人员进行开发,这样就会导致开发人员调试本模块没有问题,但是当集成后,系统就会出现问题。为了更好的理解软件测试,需要更好的了解需求,针对需求进行测试,测试的过程其实就是验证做出来的软件是否满足客户需求,在满足客户需求的前提下,需要具备稳定性和安全性。
任何的软件其实都需要测试,在成熟的益田文化公司里面都会有开发工程师和测试工程师,开发工程师是为了开发程序,在开发的时候可能会针对开发的项目进行单元测试,但是其实测试工程师也是必不可少的一个过程,有人认为没有必要招聘测试工程师,但是这是不正确的,因为软件都是人编写的,只要是人编写的软件,就不可能不反错误,有可能自己犯的错误,自己测试时很难测试到的,需要软件测试师进行软件的测试,测试的工具也有很多,现在大部分测试所采用的是采用黑盒或者是白盒测试[10]。
6.2测试的环境
本系统测试环境如下。
硬件要求:
服务器端:服务器/高性能PC机,Core i5(3.4GHz),内存4G以上。
客户端:普通PC机。
软件要求:
服务器端:Mysql5.6,Tomcat7.0,MyEclipse2010。
客户端:Windows系列,CentOS,Ubuntu等。
浏览器:IE8.0以上,Chrome等。
6.3测试用例
1、系统登录测试。
2、增加考勤测试
表6-2增加考勤测试用例
6.4非功能性测试
性能测试主要是系统运行的过程中的响应测试、负载测试、压力测试、测试目标,系统交付用户正式使用前,需要通过性能测试,如果未经测试就强制部署上线,很可能会出现系统崩溃的情况,所以需要在实施前对系统进行性能测试,以检测是否达到客户提出的需求,确定系统性能中存在的问题,并对其进行优化处理。高性能体现在系统的高并发性和负载方面。稳定性主要表现在系统能够持续稳定地运行,不容易受到外界因素的影响。流畅性体现在系统的响应时间较短等方面[11]。
这里选择使用了Analysis工具来完成对系统性能的测试。首先是系统登录功能的性能指标测试,具体结果即为表中展示。随着并发数目的增大,其响应时间也会随着增大,当其并发数是10000时,响应时间最大增大到1.632s,此时的平均响应时间大小是1.257s,通过结果可以看到在并发性方面是能够满足日常的使用要求的[12]。
表6-3登录性能测试用例
表6-4登录测试性能表
通过上述测试过程可以明显的看到,在并发数持续增大的过程中,对应的响应时间也在变化。同时出现较多的查询请求时,系统仍然能够以较高的查询速度将查询结果进行展示[13]。当并发数是10000时,其最大响应时间是1.532,最小是0.989,平均是1.22s,此时间能够达到用户正常的使用需求。
表6-5信息查询测试
表6-6信息查询性能测试结果表
通过上述测试过程可以证明查询过程具有较高的并发量,响应时间也会随着用户数目的增大而变大,并发数是10000时,最大的响应时间是1.845,最小是1.167,平均响应时间为1.411s能够满足用户的实际查询需求[14]。
结束语
本文以考勤为载体设计了一套信息化系统,具体包括考勤记录、假期申请、出差申请、加班申请、调休申请、考勤查询、数据字典、员工管理
考勤信息管理系统的设计的过程对我来说是不断学习,发现不足的一个过程,经过这次的锻炼使我的各方面的知识都得到了提高,但是对于本次设计而言,失误总是不可避免的,以后我会继续努力学习,继续加强。
但是由于本人的知识架构并不是很全面,系统很多模块的实现办法并不是最好的,有可能还有更好的实现思路,需要在系统运行一段时间后,进行再次检验,完善系统功能。
谢辞
首先,感谢我的毕业设计指导老师对我提交的论文设计给了很有指导性意见,老师从整体方面要具有完整性到细节排版方面word中表格文字的编辑技巧,这让我在写论文的时候有了很大的帮助。在论文撰写过程中遇到困难与疑惑时提供了悉心的指点,提出了一些有益的改善意见,并在此过程中投入了许多心血与精力。老师严谨求实的治学态度、高度的敬业精神、兢兢业业的工作作风对我产生了重要的影响,本论文是在老师的精心指导与大力支持下完成的。
其次,感谢学校的老师们,他们的悉心教导使我学到了专业的知识,掌握了扎实的专业技能。
毕业设计不单单是对所学知识的检验,更是对自身运用知识解决问题的实践能力的一种考核。技术永无止尽,只有拥抱技术,而不是拒绝技术,才能紧跟时代的步伐,只有不断提高的综合实力,才是自己的安身立命之本。
参考文献
[1]李刚.《疯狂Java:突破程序员基本功的16课》[M]..人民邮电出版社,2010年版.
[2]刘钊.《Java程序设计基础》[M]..清华大学出版社,2007年版.
[3]王克宏.《Java技术教程(基础篇)》[M]..清华大学出版社,2002年版.
[4]孔祥盛.《MySQL数据库基础与实例教程》[M].人民邮电出版社,2014年版.
[5]福塔(Ben Forta):《MySQL必知必会》[M].人民邮电出版社,2009年版.
[6]李刚.《疯狂Java:突破程序员基本功的16课》[M].人民邮电出版社,2010年版.
[7]刘钊.《Java程序设计基础》[M].清华大学出版社,2007年版.
[8]王克宏.《Java技术教程(基础篇)》[M].清华大学出版社,2002年版.
[9]孔祥盛.《MySQL数据库基础与实例教程》[M].人民邮电出版社,2014年版.
[10]福塔(Ben Forta):《MySQL必知必会》[M].人民邮电出版社,2009年版.
[11]马玉凤.基于Java技术的企业员工考勤系统开发策略[J].电子技术与软件工程,2018(12):30.
[12]赵然,李建军.基于JAVA技术的企业员工考勤系统开发[J].科技视界,2017(04):309-310.
[13]魏丽娟.JAVA技术的企业员工考勤系统开发[J].信息通信,2018(07):112-113.
[14]官亚芬.计算机软件开发中JAVA编程语言及其实际应用[J].中国新通信,2020,22(04):98-99.
[15]周春杰.基于人脸识别及行人重识别技术的考勤系统[J].工业控制计算机,2019,32(08):152-153.
1、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“文章版权申述”(推荐),也可以打举报电话:18735597641(电话支持时间:9:00-18:30)。
2、网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
3、本站所有内容均由合作方或网友投稿,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务。
原创文章,作者:1158,如若转载,请注明出处:https://www.447766.cn/chachong/174143.html,