1、第 1 页(共 18 页)本科毕业论文(20 届)企业人力资源管理系统数据库的设计与实现所在学院专业班级 信息与计算科学学生姓名指导教师完成日期第 2 页(共 18 页)企业人力资源管理系统数据库的设计与实现摘 要:随着当今时代高新技术的日益蓬勃发展,系统化、信息化、规范化、科学化管理在各企业竞争中的作用日益突出。特别是在人力资源管理当中,一个高质量、易操作、可维护的人力资源管理系统大大地提高了企业的核心竞争力。这不但给企业带来了经济上的效益,还大量地减少了人力物力上的开支。其中,数据库支撑着整个系统的根基,成为了科学研究和决策管理的重要技术手段。可以这样说,是否规范化地数据库设计直接决定了整
2、个管理系统的质量。所以,我们应该更加注重于对它的设计与实现环节的分析与把握。关键词:数据库;规范化设计;企业人力资源管理系统Abstract:With the booming development of advanced technology, systematization、informatization and standardization play a very essential role in the competitions among companies. Especially in Human resource management, A human resource ma
3、nagement system that is high-quality、easy-operated and maintainable can improve the key competitive power, which can not only brings companies a lot of profit, but also cuts the cost And the databases supporting the whole system become the important means of scientific research and decision-making m
4、anagement. Indeed, the quality of the management system is straightly decided by the standardized design of the databases. So, we should pay more attention to its design and how to analyze and control it.Key words: Database; Standardized Design; EHRMS第 3 页(共 18 页)1 引言1.1 设计背景当今我国社会处于一个知识与经济全球化相结合的时代
5、,产品的各个业务流程都离不开人的参与,员工素质已成为企业生存与发展的基础。越来越多的企业开始推动人力资源管理的变革,期望借助良好的人力资源管理为企业营造良好的人才发展环境,从而能有效地挖掘并放大人力资源的潜在价值,提升企业的竞争力。那么一个高质量的人力资源管理系统软件对于企业来说无疑是个很不错的管理工具,它以其廉价的开发成本、可移植的应用平台、易维护的软件管理等优势获得了企业界的普遍认可和推广。1.2 设计目的企业人力资源管理系统重中之重在于数据库,设计数据库系统的目的是使数据库中的数据相互关联且具有最小冗余度,可共享,具有较高数据独立性。此外,数据库系统还必须提供所存储信息的安全性、完整性和
6、稳定性保证。如果数据将被多用户共享,那么系统还必须设法避免可能产生的异常结果且能在多用户下仍保持足够的响应能力,海量的存储能力,极强的数据处理能力。它还需要有完善的管理开发工具和应用编程接口,完备的数据库驱动程序,以及运行速度的要求等。企业人力资源管理是数据库系统中比较具有代表性的应用,主要用于存储部门、员工、招聘、培训、薪资、奖惩等信息,以及系统管理等。1.3 设计思路本系统是为“基于 SSH 框架的企业人力资源管理系统的设计与实现“设计的数据库。阐述了系统需求分析、E-R 模型设计(概要设计) 、E R 模型向关系模型的转化(逻辑设计) 、表结构和表间的关系、物理设计、运行与维护设计等。而
7、在模块功能的实现中对于有关数据的操作采用 Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序第 4 页(共 18 页)员可以随心所欲的使用对象编程思维来操纵数据库。2 需求分析2.1 系统分析首先,通过调查企业机构情况,了解该企业的部门组成情况、各部门的职责等,为分析信息流做准备。其次,调查各部门的业务活动情况,包括了解各部门输入和使用什么数据、如何加工和处理这些数据、输出什么信息、输出到什么部门、输出格式如何等。在上述工作的基础上,协助用户明确对新系统的各种要求,包括信息存储要求,信息处理要求、安全性和完整性要求等。再次,
8、通过研究分析目前正在使用的系统,导出系统的逻辑模型,确定总的功能要求,所以企业人力资源管理系统主要分为部门管理、员工管理、招聘管理、培训管理、薪资管理、奖惩管理、系统管理这七大功能。部门管理主要实现增、删、查部门信息,查询时可以看到该部门下的员工人数和部门职责等信息;员工管理主要实现增、删、改、查人员信息,其中查看员工的详细信息显得尤为重要;招聘管理主要实现增、删、改、查招聘信息,其中查分别录用员工查询和非录用人员查询。培训管理、薪资管理、奖惩管理这三个功能相对来说比较简单,主要是对于各自一些基本信息的管理;系统管理主要是对用户数据信息的管理,实现正常登录和安全退出。对于以上的分析,可以简要地
9、用下面的系统流程图加以说明理解。如图 2-1。第 5 页(共 18 页)用户登录程序正确企业人力资源管理系统主界面程序部门管理程序员工管理程序招聘管理程序培训管理程序薪资管理程序奖惩管理程序系统管理程序错误安全退出账号密码开始用户信息表部门信息员工信息招聘信息培训信息薪资信息奖惩信息图 2-1 系统流程图2.2 数据流图(DFD 图)数据流图表达了数据和处理过程的关系。根据企业人力资源管理系统的系统流程图,可以描述企业人力资源管理系统的数据流程图,如图 2-2 所示。管理员用户企业人力资源管理系统各个部门录入员工信息录入招聘信息录入培训信息录入薪资信息录入奖惩信息输出员工信息员工输出招聘信息输
10、出培训信息输出薪资信息输出奖惩信息(1) 顶层数据流图部门管理管理员用户各个部门输入部门信息D 1 部门信息输出部门信息第 6 页(共 18 页)员工管理管理员用户员工输入员工信息D 2 员工信息输出员工信息D 1 部门信息读取*招聘管理管理员用户员工输入招聘信息D 3 招聘信息输出招聘信息D 1 部门信息读取D 2 员工信息*培训管理管理员用户员工输入培训信息D 4 培训信息输出培训信息D 2 员工信息读取*薪资管理管理员用户员工输入薪资信息D 5 薪资信息D 2 员工信息读取*第 7 页(共 18 页)奖惩管理管理员用户员工输入奖惩信息D 6 奖惩信息输出奖惩信息D 2 员工信息读取*(2
11、) 零层数据流图图 2-2 数据流图(DFD)2.3 数据字典数据字典是需求分析阶段的另一个工具,它用于对系统中的各类数据进行详尽的描述,其目的是对数据流程图中的各个元素做出详细的说明,是对各类数据描述的集合,通常包括数据项、数据结构、数据流、数据存储和处理过程五大部分。因此,根据数据字典的描述定义,本企业人力资源管理系统的数据字典列举如下表:表 2.3.1 数据项数据项目 数据项含义 别名 数据类型 取值范围 取值含义id 唯一标识每一个用户 ID 用户编号 int 0 4294967295 顺序编号account 标识每一个 用户名 用户名 varchar(20)password 标识每一
12、个 密码 用户密码 varchar(30)level 标识每一个 级别 用户级别 varchar(10) 0 或 11 表示超级用户、2 表示普通用户dt_id 唯一标识每一个部门 ID 部门编号 int 0 4294967295 顺序编号dt_name 标识每一个 部门名 部门名称 varchar(10)dt_createtime 标识每一个 创建时间 创建时间 varchar(20)YYYYMMYYYY 年MM 月第 8 页(共 18 页)dt_bz 标识每一项 职责 职责 varchar(150)dt_number 标识每一项 人数 人数 int 0 4294967295dt_extra
13、 标识每一个 备注 备注 varchar(200)em_id 标识每一个 员工 ID 员工编号 int 0 4294967295前 5 位表示部门编号,紧随后两位代表职务,剩下的代表排名em_name 标识每一个 员工姓名 员工姓名 varchar(10)em_sex 标识每一个 员工性别 性别 varchar(5) 男或女em_xl 标识每一个 员工学历 学历 varchar(10)em_bz 标识每一个 员工职务 职务 varchar(30)em_statute 标识每一个 员工状态 人员状态 varchar(10) 录用或非录 用em_createtime标识每一个员工参加工作时间参加工
14、作时间 varchar(50)YYYYMMYYYY 年MM 月em_picture 标识每一个 员工相片 图片 BLOBem_future 标识每一个 员工前景 行业前景 varchar(50)em_hobby 标识每一个人技术特长 技术特长 varchar(50)表 2.3.2 数据结构数据结构名 含义说明 组成部门是部门管理子系统的主体数据结构,定义了一个部门的有关信息序号、部门名称、创建时间、部门人数、职责、备注等等员工是员工管理子系统的主体数据结构,定义了一个员工的有关信息员工编号、姓名、性别、部门、职务、学历、参加工作时间、人员状态(在职/兼职/离职) 、图片(正装照/身份证扫描/学
15、历证书扫描) ,除此之外,还可以选择定义行第 9 页(共 18 页)业背景、技术特长等等招聘是招聘管理子系统的主体数据结构,定义了一个招聘的有关信息编号、姓名、性别、应聘职务、学历、工作经验等培训是培训管理子系统的主体数据结构,定义了一个培训的有关信息编号、培训人、培训主题、培训时间、培训地点等奖惩是奖惩管理子系统的主体数据结构,定义了一个奖惩的有关信息编号、奖惩主题、奖惩类型、奖惩金额、奖励时间等薪资是薪资管理子系统的主体数据结构,定义了一个薪资的有关信息员工编号、员工姓名、当前月份、基本工资、加班费、工龄费、考勤费、旷工费、保险费、实发工资等系统是系统管理子系统的主体数据结构,定义了一个系
16、统的有关信息序号、账号、密码等表 2.3.3 数据流数据流名 说明 数据流 来源 数据流 去向 组成 平均流量 高峰期 流量员工录用 企业招聘员工 应聘者的报名 待录用存储表姓名、性别、年龄、出生日期、应聘职位、所学专业、工作经验、文化程度、联系电话、毕业院校、家庭地址、登记时间、是否录用、个人简介每年 100个每年 200个员工培训 企业对员工的培训企业现有状态为录用的所有员工培训员工信息存储表培训人、培训主题、培训宗旨、培训时间、培训地点、参加人员、备注信息每月 5 个 每月 10 个表 2.3.4 数据存储数据存储 说明 流入的 流出的 组成 数据量 存取方式第 10 页(共 18 页)
17、数据流 数据流录用 已录用员工信息表 录用表 录用表 录用表 100000 个记录 顺序存储培训已参加培训的员工信息表培训表 培训表 培训表 100000 个记录 顺序存储表 2.3.5 处理过程处理过程名 说明 输入数据流 输出数据流 处理录用 已录用员工 信息表 录用表 录用表记录录用编号、员工编号、录用日期等信息培训 已参加培训的 员工信息表 培训表 培训表记录培训编号、员工编号、培训日期、培训主题等信息3 概要结构设计3.1 数据抽象基于需求分析的基础之上,企业人力资源管理系统分为七大功能,因此可以相应地抽象出七大类,它们分别是部门、员工、应聘者、培训者、薪资类、奖惩者、系统管理类。然
18、后分别列举各类的自身属性,例如,部门有部门编号、名称、人数、创建时间、职责、备注等属性;员工有员工编号、姓名、性别、职务、学历、技术特长、参加工作时间、行业背景、图片等属性;应聘者有应聘编号、姓名、性别、学历、工作经验、应聘职务等属性;培训者有培训编号、培训主题、培训地点、培训时间等属性;薪资有薪资编号、当前月份、基本工资、考勤费、工龄费、加班费、旷工费、保险费、实发工资等属性;奖惩者有奖惩编号、主题、类型、时间、金额等属性;系统管理类有用户账号、密码等属性。3.2 局部视图设计局部视图设计就是将上述的数据抽象结果用 E-R 图表示,实体用矩形框表示,属性用椭圆矩形框表示,实体和该实体的属性之间用线段连接起来。这种