人力资源管理系统设计与实现案例分享

酒店管理系统设计与实现    3
123123123213123  李白   指导教师  孔子    3
一、绪论    3
(一)研究目的    3
(二)研究方法    3
(三)国内外发展趋势    3
二、可行性分析    4
(一)技术可行性    4
(二)经济可行性    4
(三)操作可行性    4
三、系统需求分析    5
(一)功能需求    5
1、管理员模块    5
2、员工模块    5
(二)系统性能要求    5
(三)运行环境    6
四、系统总体设计    6
(一)系统代码架构    6
(二)数据库设计结构    9
1、数据库需求分析    9
2、数据库概念结构设计    13
3数据库表结构物理设计    17
表关系图:    17
(三)系统角色设计结构    18
五、系统详细设计与实现    20
(一)考勤管理模块的设计与实现    20
(二)薪资管理模块的的设计与实现    21
(三)员工管理模块的设计与实现    22
(四)部门管理模块的设计与实现    25
(五)人事管理模块的设计与实现    27
(六)系统总体页面的设计与实现    27
六、系统化测试    29
(一)软件测试工具介绍及其基础的理论    29
(二)软件测试目的    29
(三)软件测试方法分类    29
(四)系统测试    30
七、总结    31

人力资源管理系统设计与实现案例分享_第1张图片

 人力资源管理系统设计与实现
123123123213123  李白   指导教师  孔子

摘要:当前我们开发的人力资源管理系统它是通过三个架构进行组合开发的,它们分别是Spring,Struts2,Hibernate。运用这个SSH框架技术所开发的人力资源管理系统主要是要完成一个具备通过一个web端实现对人才的调离职,打卡考勤,薪酬发放计算等功能。该系统主要是采用当下已经比较成熟的SSH的框架式开发,采用SQLserver的数据库。使用SSH的框架开发技术,使得我们开发起来思路变得更加明晰,设计时采用了MVC设计模式,使得系统更加满足可延展性的发展需求和低耦合。并且使用了SSH框架开发技术也让我们的项目结构变得清晰明了,对于开发起来后期的维护工作也会相当的方便。该系统主要分为两大模块,一个是管理者模块,一个是员工模块。在管理端,可以对员工进行调离职,对员工进行考勤,对员工进行薪酬计算发放。
关键词:SSH;MVC设计模式;人力资源管理系统

一、绪论
(一)研究目的
当今社会最宝贵的资源就是人才,如果想成为一个优秀的企业一定要学会管理自己的优秀人才资源,这样才会企业才能更加的长治久安,一个优秀的管理系统能够让企业明确的看到人才年龄结构可以为企业以后长远的发展带来更好的计划制定。只有以人为本才能够使企业慢慢发展壮大,人服务于企业,企业管理人,形成优秀的企业文化和良性竞争的企业氛围。
人力资源管理系统对于企业来说方便了企业对于人才的管理,使得企业分工明确且,又能够统一管理,实现无纸化办公,异地化办公,大大提升了工作效率。对于管理人员来说,他们能够更好的管理员工,分配任务,减少了其管理的困难程度。对于员工来说,能够很明确的看到自己所需要做的分工事项,能够查询到自己应得的薪酬,加大员工的积极性。一个公司优秀的管理理念是成功的基石,形成“管理在前,执行在后”的先进理[1]。
(二)研究方法
基于Spring4+Struts2+Hibernate 技术框架进行对人力资源系统的开发完成核心功能。
(三)国内外发展趋势
国内外的研究状况:人力资源系统在国内外都是一个企业必备的系统之一,然而在当今时代,我们学习国外的管理方式。在国外人力资源系统的成熟都远远高于国内,但是其国外的环境多半是以工作为主,作为众多的外国资本主义社会。国外更加的讲究一个人能够为企业创造多大的价值,所以在制度考核等方面要远比中国的企业严格的多得多。在当下中国飞速发展的过程中,中国始终没有改变的就是以人为主的人性化,情亲化的社会环境,并非是制度化,这样虽然国外有许多优秀的管理理念和管理系统,但是在中国它的实用性和效率就会大打折扣,并且国外往往保护知识产权要多一些,对于一些个系统价格相比于国内的大环境价格显得过于高。在国内虽然我们的制度管理和管理思想上比起国外任然有很大很大的差距,但是随着不断对外学习,我们的管理方案和发展理念都开始有了一个质的飞跃。但是正是因为这样的环境出现了国内需要企业死硬的照搬照用国外的管理方式和方法使得企业本身与人才直接的融合产生了巨大的难度,导致最好的人才流失。这不仅是挑战也是我们的机遇,如果你拥有一个和你企业般配的专业人力资源管理系统,那么从某种意义上来说你的企业已经具备了许多人才向往的条件。所以在当下国内的环境中定制开发为自己的企业制作一个属于自己企业文化和管理思想的人力资源管理系统将会是以后的重中之重[2]。
发展趋势:为了适应中国众多的企业,今后的发展应该趋于订制化的人力资源管理系统。从而实现能各个阶段企业的发展和管理,能够更好解决各种可能面临的问题。当定制一个合适的人力资源系统,我们将结合中国的以人为本和国外的高效管理,在一些问题上严格处理,在一些问题上酌情处理。那么我们的系统就结合了中西方的优点,那么将会形成,企业为员工考虑,员工为企业奉献的双赢局面。这样让我们的企业的发展走的更快更远[3]。
二、可行性分析
(一)技术可行性 
在本系统的技术开发上我们使用ssh的开发框架结构。在数据库端的数据管理上我们选择使用Hibernate开发框架,Hibernate是一个能够简化数据库操作,基于JDBC的轻量级开发框架,从原理上来说它是一个将JDBC对数据库操作的代码进行了封装 ,从而简化了数据库繁琐的操作,使得我们能够管好的操作管理数据库,它和数据库表之间主要是通过映射的方式使用Java的反射机制,它的映射机制很灵活,并且它能够处理数据库表之间各种复杂的关系,是一个现代比较流行使用的轻量级框架,非常适合大中型项目的开发运用。当然Hibernate也有一些缺点就因为框架的ORM 原则,是的配置起来工程量比较巨大。
在mvc的框架模式选择中,我们选用了当下比较流行的Struts2 的应用开发框架,当然Struts2作为一个应用于JAVAEE 的应用程序架构,最为核心的三个部分分别是控制器模型,视图。当我们前端获取到数据时候将我们需要的参数调用Struts2中的业务逻辑处理,拦截器FilterDispatcher进行验证判断如果没有问题的话,就进行页面的跳转。只会映射到model对数据的状态进行一个保存,然后通过视图显示在需要展示的地方。我们使用Struts2框架进行开发其实是因为它具有几大优点,Struts2的mvc模式让我们能够开发起来对整个项目的把控更好,能够让我们在开发的过程中只需要关注业务逻辑上的实现,并且能够让开发者一目了然的根据我们的配置文件对系统进行维护。Struts2所编写的Action类对于我们开发人员来说它属于简单的POJO,也方便了我们对它进行测试安排,很大程度上解耦能够让我们维护起来更加方便可靠。但是也有一些缺点,在配置文件是过于繁琐。
Spring在我们的整个开发过程中充当了Struts2和hibernate直接的粘合剂,它使得我们能够通过控制反转使得松耦合,并且它能够为我们提供面向且面的编程 ,让我们能够尽可能分离业务逻辑和事务进开发。作为一个轻量级的框架它能够帮助我们尽可能的实现高内聚低耦合。
只要理解了三大框架的工作原理,和明白他们在系统开发中所扮演的角色位置,开发应该是没有太大的问题。当然三个框架结合起来使用这也让我们开发起来难度变得更低一些,使得项目整个框架结构变得清晰明了,当然SSH框架结构最难的点就在于我们对于框架的环境配置[4]。
(二)经济可行性
本系统涵盖了在管理者端拥有人事管理(人员调离职,人员信息修改),人员薪酬管理(薪酬计算发放,薪酬记录),部门管理(查看部门信息),考勤管理(员工考勤记录)。
在员工端拥有员工信息管理(个人基本信息修改),薪酬管理(个人薪酬查询),考勤管理(个人打卡记录)。
拥有四个核心的管理端功能模块和三个员工端功能模块。
通过这些功能的使用来对人员进行管理,能够使公司节约很大的人员管理成本,并且还能购增加员工的使用效率,可谓是一举多得。
此类软件在人力资源系统的市场里大型的软件售价都在数十万以上,这类大型软件确实值得这个价钱,但是对于一些中小企业确不太适用,本系统能够在基础功能的条件下,对企业需求进行定制开发,减少了企业为不需要的功能买单,更加符合适用于公司的发展,因此开发费用较低[5]。
(三)操作可行性
本系统拥有简便快捷的操作使用,能够使操作人员迅速上手。当然这还需要企业和员工们的配合。公司需要对软件的使用进行推广,对软件的操作人员进行一定的软件使用培训。
 
三、系统需求分析
(一)功能需求
1、管理员模块
考勤管理:需要实现管理人员能够查看员工的出勤和缺勤的情况和原因,当员工当月达到全勤时候能够获得全勤奖励。
部门管理:管理人员能够为公司新增部门或是撤销部门,修改部门的信息,能够查看公司当前都有哪些部门和知晓部门的人员数量。
人事管理:管理人员能够对人员在职的岗位进行调整,能够修改人员的基础信息,能够新增人员,或者开除人员。可以对人员信息进行查询。
4.薪酬管理:能够实现对月底所有工资项所得的计算,能够修改新增公司的工资制度等级,修改公司制度等级,删除公司制度等级,可以为员工修改工资等级信息。可以查询工资的发放记录。
2、员工模块
个人信息管理:员工能修改一些基本的个人信息,能够修改自己的账户密码
个人工资查询:员工可以看到自己工资的发放情况,能够查看自己工资的发放记录
个人考勤管理:员工可以在上面进行打卡签到,和缺勤请假
制度公共查询:员工能看到工资等级,福利发放等公开透明的公司制度规定
系统功能图[6]:

 
图3-1 系统功能图
(二)系统性能要求
简便性:操作流程比较简单,容易让员工和管理者上手。
可延展性:该系统满足了企业一次投资多处收益的想法,为公司节省开支,提供对员工更好的管理,能够满足企业的持续发展性,能够根据企业进行的发展扩展系统的功能。
可靠性:在系统运行的过程中正常情况下不出现错误。
高效性:能够快速查询修改添加信息,能够在两三秒之内迅速反应。
安全性:确保系统拥有加密设置。
(三)运行环境
需要设备:一台pc设备 注:PC设备更具企业的规模选择合适的内存储备电脑。
操作系统平台:本系统是基于windos10进行开发的,也适用于支持其他windos版本。
系统开发所需要配置的软件环境:安装MyEclipse 作为我们进行后台的代码编写以及框架环境的搭建,提供一个能够存储数据的Sqlserver数据库 ,当然在前端的制作上最好也可以使用比较快捷方便的开发软件HBuilder。
基本使用环境:需要配备一个最低支持Sqlserver2008的数据库来作为数据源的存储,也可以通过云服务将我们的数据存储在云端服务器上。
四、系统总体设计
(一)系统代码架构 
 
  
 
 
图4-1系统项目结构图
(二)数据库设计结构 
1、数据库需求分析
通过对系统需求的分析为了在系统的操作中实现模块功能主要通过一下几个实体来进行数据的存储调度
员工数据实体:员工编号,员工姓名,性别,出生年月,民族,毕业学校,所属部门id,在岗状态,联系电话,身份证号,住址,所学专业
用户数据实体:用户编号,用户名,用户类型,用户邮箱,用户电话
工作考勤数据实体:考核编号,考核员工编号,考勤状态,考勤日期
公司部门数据实体:部门编号,部门名称,部门领导,部门邮箱,部门电话,部门描述
公司职务表数据实体:职务编号,职务名称,职务工资,工资等级
工资制度数据实体:工资等级编号,等级名称,基础薪资,全勤奖励,缺勤扣款
工资记发数据实体:记放编号,等级编号,员工编号,税前薪资,税率,应发薪资
照片存储数据实体:照片编号,照片名,可用状态
数据表说明:
1.    用户表(T_User  )
表4-1 T_User 用户表
 
 
 
 
  
 
 
  
 
userid     用户编号     
20    主键    非空            
username    员工姓名     
20        非空            
sex    性别     
20            男或女        男
birthday    出生年月     
20                    
nation    民族     
20                    
school    毕业学校     
50                    
deid     部门编号     
    外键                
jobstate    在岗状态     
20            是或否        是
tmobile    联系电话     
20                    
pid    身份证号码     
20                    
address    住址     
50                    
Pro    所学专业     
20                    
usertype    用户类型编号     
    外键                
userpwd    用户密码     
20                    
poid    职务编号     
    外键                
photoid    照片编号     
20    外键                

2.    用户类型表 (T_UserType)
表4-2 T_Usertyoe  用户表
 
 
 
 
  
 
 
  
 
id    用户类型编号     
    主键    非空        是    
uname    类型名     
50        非空            

3.工作考勤考核表(T_Evaluation)
表4-3 T_Evaluation 工作考勤考核表
 
 
 
 
  
 
 
  
 
evaid    考核记录编号     
    主键    非空        是    
evstate    考勤人员状态     
20            缺勤或全勤        全勤
evday    考勤记录日期     
20                    
evdescribe    考勤信息备注     
50                     
userid    用户编号     
20    外键                

4.公司部门表(T_Department)
表4-4 T_Department 公司部门表
 
      
 
  
 
 
  
 
deid    部门编号     
20    主键    非空        是    
dename    部门名称     
20                    
boss    部门领导     
20                    
demail    部门邮箱     
20                    
dephone    部门电话     
20                    
dedescribe    部门描述     
50                    

5.公司职务表(T_Post)
表4-5 T_Post 公司职务表
 
 
 
 
  
 
 
  
 
poid    职务编号     
    主键    非空        是    
poname    职务名称     
20                    
powages    职务工资     
                    
wagesgrade    职务工资等级     
20    外键                

6.工资表(T_Wages)
表4-6 T_Wages工资表
 
 
 
 
  
 
 
  
 
wagid    工资等级编号     
20    主键    非空            
wagname    等级名称     
20                    
basewage    基础薪资     
                    
reward    全勤奖励     
                    
deduction    缺勤扣款     
                    

7.工资记发表(T_Wagesrecord)
表4-7 T_Wagesrecord工资记发表
 
 
 
 
  
 
 
  
 
record    记发编号     
    主键    非空            
wagid    等级编号     
20    外键                
basewage    员工编号     
20    外键                
pre-tax    税前薪资     
                    
taxrate    税率     
                    
actualwages    应发薪资     
                    

8.    照片存储表
表4-8 T_Wages工资表
 
 
 
 
  
 
 
  
 
photoid    照片编号     
    主键    非空        是    
Photoname    照片名     
50                    
status    可用状态     
                    
2、数据库概念结构设计
从数据库的需求分析字段中通过实体对象,绘制出的相应E_R实体图 如下所示。
具体如下:
 
图4-2员工实体E-R图

 
图4-3用户实体E-R图
 
图4-4工作考勤实体E-R图

 
图4-5公司部门实体E-R图
 
图4-6公司职务实体E-R图

 
图4-7 工资制度实体E-R图
 
图4-8 工资记发实体E-R图

 
图4-9 照片存储实体E-R图
3数据库表结构物理设计 
表关系图 :
 
图4-10 数据库表关系图

表关系图说明:
这里的用户表作为整个数据库设计的核心,用户表是以用户标号为主键,他的外键分别是用户类型编号,部门编号,职务编号,照片编号。将其作为主键其他作为外键的原因是因为其他表依存于用户表。
公司职务表是以职务标号为主键,工资等级编号作为外键。因为在同一个岗位还需要有不同的级别,当然对应的等级级别越高获得的工资收入和福利待遇就越好。
 

你可能感兴趣的:(毕业论文,软件工程)