企业人事管理系统设计与实现文档格式.docx
- 文档编号:18513314
- 上传时间:2022-12-18
- 格式:DOCX
- 页数:42
- 大小:578.55KB
企业人事管理系统设计与实现文档格式.docx
《企业人事管理系统设计与实现文档格式.docx》由会员分享,可在线阅读,更多相关《企业人事管理系统设计与实现文档格式.docx(42页珍藏版)》请在冰豆网上搜索。
[2]陈海山.深入JavaServlet网络编程[M].北京:
清华大学出版社,2010.
[3]耿祥义,张跃平.Java基础教程[M].北京:
清华大学出版社,2009.
指导教师签名:
专业负责人签名:
2015年3月3日
摘要I
ABSTRACTII
1绪论1
1.1开发背景1
1.2开发目标1
1.3开发思想2
2技术介绍3
2.1B/S结构3
2.2Java语言简介3
2.3MyEclipse介绍4
2.4SqlServer20084
2.5JDBC4
3可行性分析7
3.1技术可行性7
3.2运行可行性7
3.3经济可行性8
4需求分析5
4.1功能需求5
4.2性能需求5
4.3其他需求6
5概要设计9
5.1系统总体设计9
5.2各个模块设计9
5.3应聘子系统设计10
6数据库设计12
6.1数据分析12
6.2数据表实现13
7系统实现19
7.1各个模块实现19
7.2应聘子系统实现30
7.3关键方法32
8系统测试35
8.1用例设计35
8.2测试实施36
8.3测试结论37
结束语38
致谢39
参考文献40
摘要
随着现代企业的发展,企业组成的复杂度变得越来越大,单纯的手工管理在处理业务时效率低下,已无法满足企业的需求,开发一个简单方便、可靠性好的人事管理系统显得极为必要。
针对这些需求,在分析了业务逻辑后,进行人事管理系统的设计工作,采用B/S架构,Java作为开发语言,SqlServer2008作为数据库,主要实现了员工信息、部门管理、招聘管理、薪资管理、考勤管理、文件共享等功能。
另外设计了一个应聘子系统作为主系统的补充,让应聘者创建信息、浏览公司职位和查看自己的处理结果,增强系统的人事管理功能,以软件工程开发流程为指导,并借鉴MVC设计模式,最终完成了企业人事管理系统的开发。
该系统的实现为企业管理工作带来了便利,降低了管理成本,提高效率,可以基本满足中小型企业的需求,这也是该系统的开发目的所在。
关键词人事管理,B/S,SQLServer,JDBC
THEDESIGNANDIMPLEMENTATIONOFENTERPRISEPERSONNELMANAGEMENTSYSTEM
ABSTRACT
Withthedevelopmentofmodernenterprises,thecomplexityoftheEnterprisehasbecomemoreandmorebig,simplemanualmanagementisinefficiencyindealingwithbusiness,hasbeenunabletomeettheneedsofenterprises,todevelopasimple,reliable,appearsgoodpersonnelmanagementsystembecomeextremelynecessary.
Inresponsetotheseneeds,aftertheanalysisofthebusinesslogic,designworkandpersonnelmanagementsystem,usetheB/Sarchitecture,Javaasadevelopmentlanguage,SqlServer2008asadatabase,Hadachievedtheemployeeinformation,sectormanagement,recruitmentmanagement,payrollfunction,andattendancemanagementfunction,andotherfunctions.Alsowedesignedacandidatesubsystemtosupplementtheprimarysystem,sothatcandidatescreateinformation,visitthecompany'
spositionandviewtheirresults,andenhancethesystem'
spersonnelmanagementtosoftwareengineeringprocessesasaguide,andlearnMVCdesignpattern,finallycompletedthedevelopmentofpersonnelmanagementsystem.
Implementationofthesystemofenterprisemanagementismadeeasier,reducemanagementcosts,improveefficiency,itcanbasicallymeettheneedsofSmallandMediumEnterprises,whichisthesystem'
sdevelopmentpurpose.
KEYWORDSpersonnelmanagement,B/S,SQLServer,JDBC
1绪论
1.1开发背景
随着计算机技术的进步,中国的高速发展,企业的管理机制正在发生着重要变化,现代企业在管理中逐渐引入了现代化的管理技术,当今社会正在朝着信息化、科学化的方向快速发展,信息自动化的意义和作用已经越来越大,他可以使我们不再疲惫于繁重的人力资源管理工作,而是利用信息化的技术去进行管理[1]。
目前很多企业仍然没有一个系统化、规范化的人事管理软件,人事管理还处于最基础的人工管理阶段,效率低下,已经远远不能满足当今社会对人事管理的需求,并且人工管理有很多显而易见的弊病,会出现因为人为的操作失误,错误操作,造成数据的丢失、损坏、误报,给企业造成不可挽回的损失,另外,时间一长,这种管理方式会产生大量的文件,对于更新维护带来了不少困难。
这些现象层出不穷[2]。
人事管理是现代企业管理中不可忽视的一个重要组成部分,竞争对于企业管理者提出了更多的挑战,人事的管理另一种意义,就是对企业生命和前途的管理,人事是最宝贵的资源,一个企业没有了可用之才,那么这个企业会变得岌岌可危,实现办公自动化已经得到了企业的重视,企业要想在当今激烈的竞争中生存下来,就必须要引入信息化管理,做好人才的管理工作。
1.2开发目标
目前在市场上已经存在很多人事管理系统,人事管理系统在现代化的企业管理中越来越受到管理者的重视,但是这些都并不一定满足企业的日常应用,这些软件确实很好,但是对于企业来说,需要的是一个实用、高效、价格低廉的软件,购买一个这样的软件,本身就是一笔很大的开销,再加上日常的维护处理,带来的工作成本会大大提高,得不偿失。
在企业管理中并不需要特别大型的管理系统,操作简便、功能强大、满足基本的日常工作处理即可[3]。
降低人事管理的成本,提高效率,科学化的管理企业。
这就是本系统开发目标所在。
1.3开发思想
在设计一个系统之前,首先要对这个系统要有一个清晰的认识,知道要实现什么功能,要设计什么模块,以及权限控制,安全控制等,这些因素都要考虑到[4],这是对一个系统最基本的认识,一个简单好用的系统应该包括操作便捷、界面美观大方、运行速度快、学习成本小等等优点,让使用者可以快速上手,方便快捷的对企业进行管理。
由此分析出,此系统应该具有以下几个特点:
(1)高技术性:
采用比较先进的开发工具,本系统采用了Java开发最为流行的集成开发工具:
MyEclipse和SqlServer2008数据库相结合,进行开发和实现工作,MyEclipse是一个功能非常强大的IDE,微软开发的SqlServer在市场一直有着良好的评价,可以大容量的进行数据存储,使用Java作为开发语言,采用了MVC[5]思想进行模型构建,充分运用了先进的技术来开发本系统。
(2)实用性:
在开发系统之前,做了很多相关方面的调查,包括和公司领导进行沟通交流,发现在企业中的实际需求,以及上网查询资料,观察类似的软件都实现了什么功能,一切从需求出发,以需求为引导,以用户的方便为准则,进而提出了需求分析和概要设计,切实满足用户需求和要求,达到让用户满意的程度。
(3)严谨性:
企业最看重的是数据的安全问题[6],数据安全也是软件设计工作中的重中之重,为了保持数据的完整性和保密性,在充分调查了企业的需求之后,本系统设计了三种登录身份,一种是普通用户身份,权限最低,一种是管理员身份,可以对系统的各个模块进行操作,比如录入工资,更新公告,更新奖惩办法,处理请假申请等等一系列信息,但是不能对一些敏感数据进行操作,如果想进行操作,就需要以第三种身份进行登录:
超级管理员,可以对敏感信息进行操作,比如删除考勤记录、删除工资记录、用户管理等,防止有人恶意篡改数据,在一定程度上保证了数据的安全性。
(4)复用性:
采用模块化方法进行开发和设计,对于各个模块都相同的代码进行了通用类的设计,达到设计出高内聚,低耦合的程序的目标,提高了系统的复用性。
2技术介绍
2.1B/S结构
B/S结构,即服务器/浏览器结构,它是随着Web技术的发展建立起来的模型,在当前的Web开发中属于一种比较常见的模式,应用较为广泛,从传统的C/S(客户端/服务端)结构转变而来,是一种新的网络模式架构,其实本质就是三层的C/S架构,在B/S架构下,用户界面是用JSP编写,通过浏览器进行显示,在前端只执行极少数的业务逻辑,主要业务均在后端(Server端)实现,极大的简化了客户端的电脑负荷,使得日后的维护工作只要对服务器端进行维护即可,减轻了开发成本与系统维护、升级的费用[7]。
但是由此带来的后果是服务器负荷交大,对服务器的性能要求较高,具体结构如图2-1所示。
图2-1B/S模型结构示意图
2.2Java语言简介
当前有许多开发语言可以选择,面对这些开发语言,在项目开发的准备工作中,最终选择了Java作为开发语言,因为Java有强大的面向对象特性,可以很好的区分业务逻辑和页面开发。
Java是在1995年,由SunMicrosystem公司发布的一种面向对象的设计语言,以及开发平台的总称,最初命名是Oak,当初被作为嵌入式语言为消费类的电子产品而设计的,现在被广泛用于开发Internet程序,Java是一种平台无关的语言[8],可以跨平台编写开发应用。
自从Java被开发出来,让整个Web开发发生了翻天覆地的变化。
Java有着通用性、高效性等诸多特点,在各个平台可以很方便的进行移植,广泛的用于个人PC、数据库服务器、移动开发、游戏服务器、互联网开发、Web开发等领域,Java在全球的使用度和C不相上下。
2.3MyEclipse介绍
MyEclipse是在Eclipse的基础上,加入插件插件而形成的企业级应用开发环境,主要用于JAVA、JAVAEE以及移动应用的开发,MyEclipse因为其强大的功能,拥有者广泛的支持,对各种开源框架的支持也相当不错。
全称是MyEclipseEnterpriseWorkbench,是一个功能非常丰富的JAVAEE集成开发环境,是对Eclipse的IDE的扩展,利用Myeclipse可以使用数据库进行JAVASE、JAVAEE的开发,发布以及应用程序的整合,Myeclipse因为其强大的开发环境支持,可以大大提高工作进度和效率,包括了完整的编码、调试、发布功能。
Myeclipse几乎囊括了市场上所有主流的专属开发工具。
2.4SqlServer2008
SqlServer2008数据库是由微软公司推出的,在Sqlserver2005的基础上做出改进的关系型数据库系统。
可以在各个Windows操作系统上正常使用,Sqlserver是一个非常全面的数据库平台,可以为任何规模的企业和机构提供强大的信息管理解决方案,使用了智能的商业智能工具提供了企业级的数据管理[9],可以让开发者构建更为强大的数据应用程序,因此本系统采用了SqlServer2008作为系统数据库进行开发。
2.5JDBC
JDBC[10],全称是JavaDataBaseConnectivity,即Java与数据库的连接技术,是一组针对连接数据库而开发的API,可以支持多个数据库,提供统一的访问方法,是一种标准,开发厂商可以由此定制自己的开发工具和结构,使系统的开发人员可以用此让Java和数据库得到连接,JDBC是一种数据库连接的基准,JDBC开发标准的的接口,并为数据库厂商和使用者提供了标准的数据库连接方法,由一组用Java编写的类和接口组成。
有了JDBC技术,使从Java向数据库发送数据变得容易,就不必再为每个数据库再专门编写程序,使得程序员不必再为跨平台的问题而担心,不必再为不同的平台编写不同的程序,真正实现了“一次编写,到处运行”。
3可行性分析
在开展开发工作之前,需要对可行性进行分析和调查,可行性分析是一个系统在开发之前研究项目是否可行的技术,在分析系统之后,发现开发中存在的问题和可能性,主要从经济、技术、运行、进行分析和研究,减少开发风险,避免人力物力的浪费,调查的方式有很多种,包括上网查阅资料,观察其他类似系统是怎么实现的,以及走访企业,和系统分析员进行交流,和人事管理员进行沟通等等,并了解企业的工作方式和工作流程,以及具体的实施办法,分析结果是使用完善的企业人事管理系统可以非常方便的进行企业管理,极大的提高管理效率,根据上述分析,开始进行可行性研究工作。
3.1技术可行性
开发环境(IDE[11])可行性:
从目前主流的开发技术来看,使用基于JAVAEE的开发架构,B/S作为系统结构,使用Java开发语言以及SqlServer数据库完全可以胜任本系统的开发工作,Java语言向来比较安全,加上SqlServer强大的数据管理,以及MyEclipse的开发工具,完全满足本系统的开发环境要求。
开发硬件可行性:
系统在开发的过程中开发人员所具有的资料和计算机设备以及相关资源,以及在系统开发完成后,使用企业所具有的计算机设备以及其他资源,要综合考虑双方的情况,设计一个最合理的方案,保证系统在开发出来后,在客户的环境下可以完美运行,同时还要考虑性价比的因素。
本系统对于计算机的运行有一定的性能要求,内存不低于1G,硬盘容量大于40G,并需要安装JRE,如果低于这个需求,将会影响系统的正常运行,从目前来看,主流的计算机均达到了这个要求,所以在硬件方面是可行的。
3.2运行可行性
由于本系统是一个内部系统,不向外部公开,所以避免了外来的恶意访问,本系统在运行过程中只是面向企业内部使用,包括员工、组长、经理等,尽管这些人之前可能没有使用过相关管理软件的经验,但是本系统是建立在Windows操作系统之上,操作界面友好,简单明了,学习成本较低,操作人员无需进行专业的培训即可胜任此工作,可以在专业人员的知道下迅速的掌握系统的使用方法,如果有必要的话,可以编写一个操作说明书,供相关人员进行学习,正确的操作人事管理系统。
3.3经济可行性
由于现阶段企业的管理仍然存在很多问题,仍然存在很多人工管理的现象,耗时多,效率低下,极易出错,得不偿失,利用计算机来管理人事成为了当今管理的主流方式,开发一套人事管理系统是非常有必要的。
人事管理水平的提高,能够提高企业各方面的能力综合提高,利用本系统作为管理系统,减少因为操作事物造成的数据损失,也可以使企业在管理方面减少很多费用支出,比如实现了自动化操作,可以分配较少的人手去执行数据管理工作,精简人员,减少开支。
由以上三方面可以看出,本系统经过可行性分析,从多个方面来考虑,系统的开发工作是可行的。
4需求分析
需求分析又称为需求调查,是整个系统开发过程的重要组成阶段,也是一个系统开发的基础,它明确了这个系统要实现什么功能,有哪些模块,有哪些数据是要被输入到系统的,最后会获得什么结果,要充分分析用户对系统的要求,对用户提出的问题进行详细的分析,弄清楚客户要求,才能进行下一步的工作,系统开发是以需求为引导的一个过程,为了开发一个实用的系统,首先要进行的就是需求调查和需求分析,明确调查方式,明确调查目的。
要了解各个部门的大致工作流程和工作划分,由于开发者和使用者存在着各种各样的问题,提出需求的并不一定都是开发人员,个别用户不了解需要实现的功能,只是根据企业的业务需求提出要求,所以在系统的设计过程中需要两者紧密交流,充分了解对方的业务需求以及实际情况,明确用户需求,进行可行性分析,确认系统的开发工作是否可以进行下去,为系统的开发工作提供有力帮助。
在对企业需求进行了充分的分析工作后,对企业的业务需求有了一定的了解,对这些需求进行整理,并借鉴了软件工程的思想,最终分析出如下需求:
4.1功能需求
(1)功能完备,实现足够多的模块,要了解企业中各个部门的组成情况和主要业务,和相应的日常活动和职能,充分了解企业构造,一个完整的企业人事管理系统应该包括员工信息记录、考勤管理、薪资管理、应聘管理、请假管理、加班管理、公告、资料共享等,企业中的实际业务都要考虑到,并且在开发过程中与使用企业保持沟通,为企业量身定制,充分满足企业需求。
(2)有严格的权限管理机制,由于企业的日常工作中会涉及到商业机密,员工的薪资信息、考勤信息都要妥善保存,要防止人为破坏,在系统的设计中要体现业务的严谨性,要保证数据安全,仅仅设置两种身份是不够的,对一些敏感数据的操作对象也要加以限制。
4.2性能需求
(1)运行稳定,不易出错,系统在设计过程中应该以安全和稳定运行为原则,对错误输入要进行处理,在处理错误输入时要有良好的提示,避免因为操作不当而引起的系统错误,造成服务器宕机等恶劣后果。
(2)性能可靠,有一定安全保护措施,比如在实现后台方法时,避免使用Statement,要使用PrepareStatement来防止SQL注入攻击。
(3)在面对高并发操作时仍然具有良好的反应速度,比如在早晨员工签到的高峰期,以及晚上网络不好时,也应当可以正常的处理数据。
4.3其他需求
(1)易于学习,系统设计过程中应当保持注意页面的简洁,以及考虑操作的简便性,在系统实施的过程中保证使用人员可以迅速上手,降低学习成本。
(2)设计严谨,代码规范,可扩展性好,借鉴MVC设计模式,将业务层、控制层、显示层分开实现,方法不应当写在实体类中,而是要建立接口和实现类,当有一个模块需要改变时,可以只对该模块进行修改,而不会对其他模块产生影响,便于日后的修改维护和二次开发。
(3)运行和维护成本低,考虑到中小型企业的经济承受能力,要尽量降低对服务器的性能要求尽量减少资金投入,满足经济性要求。
总之,在系统开发之前,必须要对现有的系统进行调查,明确需求,保证所作的功能符合用户的需求,详细的调查情况,研究现有系统的内部结构,设计出一个精确的开发逻辑模型,为之后的开发打好基础。
避免耗费大量人力物力,最后却没有开发出让客户满意的系统的现象发生。
5概要设计
5.1系统总体设计
在这个模块中使用结构图来对本系统进行详细描述,树形结构的顶层代表了系统的名称和功能范围,下面的分支则代表相应的子集,最底层的元素则代表具体的功能模块和系统组成,这些模块是最小元素,不能再进行分割,
本系统一共包括十三个主要模块,已经基本覆盖了企业的日常业务,此外还有一个附加的应聘子系统,可以由应聘人员注册账号并登录,可以填写自己的应聘信息,以及查看公司的所有职位,还可以使用一些通用功能,以及查看自己是否被录用等等,但是这个系统是相对于主系统独立的,不能进入主系统的界面,为了保证系统的安全性,设计这个附属系统的原因是考虑到招聘录入资料的工作较为繁琐,可以让应聘者自行登录,进行资料的填写,作为主系统的补充,可以让整个系统变得更为完善。
本系统的总体设计图如图5-1所示。
图5-1人事系统总体结构图
5.2各个模块设计
本系统共有十三个功能模块,基本已经覆盖了企业日常的所有业务,各个模块实现的功能有:
(1)部门管理:
可以分页查看企业的所有部门列表,点击查看部门详细信息,以及查询部门信息,管理员则可以进行添加部门,以及修改部门信息,同时可以查看该部门有多少员工,可以查看员工详细信息,部门不能删除。
(2)职位管理:
员工可以查看企业的所有职位以及查看职位详细信息,查询职位,管理员则可以增加职位,以及修改职位信息,管理员可以查看每个职位有多少个员工,并可以查看这些员工的详细信息。
(3)员工信息:
员工信息是整个系统最重要的组成部分,员工可以查看自己的信息,以及对信息进行修改,但是不能查看其他人的信息,管理员则可以查询和查看所有员工的信息,但是不能修改。
(4)招聘管理:
本模块是专门为招聘人员设计,并且普通用户无法进入到该页面查看里面的内容,管理员可以添加应聘人员的信息,修改应聘人员的信息,以及查询某个应聘人员的信息,还可以根据应聘人员的处理状态进行分类查看,如:
未处理、未录用、已录用。
(5)薪资管理:
员工可以查看自己的薪资记录,管理员可以增加薪资信息,为了保证数据的完整性,薪资管理没有提供修改方法,只能删除。
(6)公告管理:
为了方便公司业务,员工身份也可以发布公告,管理员则可以修改公告和删除公告。
(7)奖惩管理:
员工可以查看和查询奖惩方法列表以及查看奖惩办法详情,管理员可以对奖惩信息进行增加、修改和删除。
(8)出勤管理:
员工每天进行签到,并且可以按月份查看自己的签到信息,出勤信息不能修改,不能手动增加,只有超级管理员可以删除出勤记录。
(9)请假管理:
员工可以申请请假,内容有请假天数,开始时间,理由等,以及查询自己的请假信息,请假信息初始为未处理状态,管理员可以处理请假申请,以及查询、删除请假记录。
(10)加班管理:
员工可以添加加班记录,添加后不能修改,管理员可以对加班信息进行修改和删除。
(11)资料共享:
所有人都可以上传和下载资料,方便企业的资料传递和交流,但是只有管理员可以删除。
(12)通用功能:
打开系统自带的计算器软件,方便日常使用。
(13)系统设置:
可以修改员工的身份,以及新建帐号、修改权限、禁用账号。
5.3应聘子系
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 企业 人事管理系统 设计 实现