软件综合课程设计企业人事管理系.docx
《软件综合课程设计企业人事管理系.docx》由会员分享,可在线阅读,更多相关《软件综合课程设计企业人事管理系.docx(20页珍藏版)》请在冰豆网上搜索。
软件综合课程设计企业人事管理系
软件综合课程设计
题目:
企业人事管理系统
院(系):
计算机科学与工程学院
专业:
计算机科学与技术
班级:
姓名:
学号:
小组成员:
指导教师:
2013年09月
1.1目的和意义
目前我国的一部分企业对于员工人员信息的处理还处在通过纸介质或半自动(由电脑处理一部分数据,由人工处理一部分数据)来进行的基础上,这样的机制已经落后于时代的发展,浪费了许多人力和物力,在信息时代这种传统的管理方法必然被以计算机为工具的信息管理技术所取代。
所以我认为有必要根据企业现在实际的人事管理情况开发一套企业人事管理系统。
1.2系统设计思想
人事管理系统应该具备MIS的各项基本特征。
主要提供人事管理的整体解决方案,实现人事操作的合理化和电子化,提高工作效率。
本系统应该具备软件体积小,操作界面简洁,基本功能稳定,运行速度较快,通过计算机技术及网络技术结合开发出客户端与服务器端,以方便快捷清晰的进行数据传输。
(1)实用性:
系统以用户需求为目标,以方便用户为原则。
根据用户实际的需求情况,从用户角度出发尽可能方便用户使用,满足基本的用户需要,成为公司通用的系统。
(2)采用标准技术:
本系统的所有设计遵循国际上现行的标准进行,以提高系统的开放性。
(3)经济性:
建立适合企业自身需求的网络平台,提供广泛的涵盖用户多种需求的功能,数据处理方式灵活以满足需求,节省网站建设成本,并确保其较好的拓展性和开放性;同时网站具有基于WEB界面的管理后台,能够自主的对网站中大部分内容作更新、修改操作,节省了企业网站的运营成本,提高了信息更新、传播效率。
(4)可维护性:
系统的设计要求方便维护,包括硬件的维护,软件的维护(更改,升级等)和网络的维护。
(5)可扩展性及灵活性:
系统的设计以方便未来业务的扩展和系统扩充为目标,系统要求能够方便的升级,充分保护系统的投资。
(6)智能性:
系统在设计时,充分考虑系统运行的智能性,在使用系统一段时间后,系统可以适应于任何局域网。
1.3开发工具介绍
MyEclipse8.6SQLServer2005windows2007
2可行性研究
本章对企人事管理系统进行可行性分析。
经过现状调查,从技术、经济、法律等方面分析系统开发的可行性。
目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。
2.1经济可行性
建立适合企业自身需求的网络平台,提供广泛的涵盖用户多种需求的功能,数据处理方式灵活以满足需求,节省系统建设成本,并确保其较好的拓展性和开放性;同时网站具有基于WEB界面的管理后台,能够自动的对系统中大部分内容作更新、修改操作,提高了信息更新、传播效率。
而且本系统是跨平台的,无论在Windows、Linux或Unix操作系统上都能正常运行,大大节省了企业成本。
2.2技术可行性
Internet起源于20世纪60年代的美国,它在近几年迅速风靡全球,其根本原因是它不仅拥有卓越的国际通信功能,而且拥有巨大的信息资源。
所谓的Internet是指由分布在全世界成千上万的计算机网络遵循一定的通讯协议,并相互联系在一起而形成的国际互连网络,也就是说,Internet是建成立和使用这些网络的人群、群体、公司及各种网络资源的集合体。
随着网络技术的不断发展,单纯的静态页面已经不能满足发展的需要,因为静态页面是用单纯的HTML语言组成的,它没有交互性。
因此,为了满足实际的需要,许多网页文件扩展名不再只是“htm”,“html”,出现了以“php”,“asp”,“jsp”,“shtml”等为后缀的网面文件,这些都是采用动态网页技术制作出来。
所以本系统采用了动态的网站技术。
此外从硬软件的性能要求、环境条件、操作人员水平和数量等方面去考虑和分析本系统实施的可行性,在软件方面选择了MyEclipse5来进行开发管理平台的设计,使用SQLserver2005数据库存储数据。
在硬件方面,则选择空间较大,只要是PentiumIII系列及以上的计算机,内存在512M以上,硬盘在80GB以上,都可以满足系统的开发需要!
当然,硬件的配置越高,系统的开发与运行会更流畅。
考虑到如今的家用或商用电脑硬件的整体配置水平,系统在硬件方面是可行的。
2.3操作可行性
本系统具有良好的操作界面。
显示内容简单明了,使操作者不必具有较高的计算机专业知道,也不必进行专门培训,稍一接触就可以上手进行所有操作。
对于用户来说,本系统只要求使用者掌握一定的上网经验,经过仔细设计和测试之后的系统具有操作简单,方便灵活等优点,足可以满足各种用户的不同需求,同时也方便了公司的内部管理。
管理人员及用户一不定期会在短时间内掌握并熟练使用。
只要动一动鼠标键盘就可以达到想要的效果。
2.4法律可行性
本系统为独立开发,使用的开发软件都选用正版。
所有技术资料都是共享资源。
在开发过程中没有侵犯任何人的着作权,也没有侵犯国家、集体或他人利益;无合同制定,不涉及承担任何法律责任。
3.1MIS系统的产生和发展情况
所谓管理信息系统(ManagementInformationSystem)系统,是一个由人、计算机及其他外围设备等组成的能进行信息的收集、传递、存贮、加工、维护和使用的系统,是一门新兴的科学,其主要任务是最大限度的利用现代计算机及网络通讯技术加强企业的信息管理,通过对企业拥有的人力、物力、财力、设备、技术等资源的调查了解,建立正确的数据,加工处理并编制成各种信息资料及时提供给管理人员,以便进行正确的决策,不断提高企业的管理水平和经济效益。
3.2业务流程图
人事管理系统在企业中占有极其重要的地位,它关系着企业内部每个员工的档案,其中包括新员工的增加,员工信息查找,员工的详细资料等等。
对于企业来讲,人事管理系统是不可缺少的组成部分,它有效地管理企业的员工,对企业内部人事的流动和分配起着重要的管理作用,它正确地反映着企业的人事变化。
业务流程图如图3.1如示。
图3.1 业务流程图
3.3企业人事管理系统的需求分析
人事管理系统是一种当前绝大多数企业都已经采用的,用来管理企业人事的软件。
因此,必须用行之有效的方法对软件需求进行严格的审查验证。
需求分析的一般过程如图3.2所示。
图3.2需求分析的一般过程
需求分析过程是整个系统开发的重要阶段,分析的成功与否,决定着整个系统功能的完善性以及稳定性。
在该阶段需求分析人员需要确定整个产品的功能要求,并且将现实事务抽象成对象并建模。
3.3.1数据流图
数据流程图说明了系统内数据的处理,但未对其中数据的明确含义、结构和组成作具体的说明。
因此,仅有数据流程图还不能完整地表达系统的全部逻辑属性。
数据字典就是用来描述数据流程图内数据的这些逻辑性质的。
系统数据流图如图3.3所示。
图3.3 系统数据流图
3.3.2数据字典
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。
数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用,只有数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明。
以下为本系统数据字典。
数据字典的作用是在软件分析和设计的过程中给人提供关于数据的描述信息。
它主要是对数据流图中的数据流、处理逻辑、外部实体、数据存储和数据项等方面进行具体的定义。
数据流程图配以数据字典,就可以从图形和文字两个方面对系统的逻辑模型进行完整的描述。
表3.1 系统数据项定义
编号
名称
别名
类型
长度
I01-01
emp_id
员工号
int
4
I01-02
emp_name
员工姓名
varchar
10
I01-03
emp_sex
性别
varchar
10
I01-04
emp_birthday
出生日期
smalldatetime
4
I01-05
emp_place
籍贯
varchar
50
I01-06
emp_nation
民族
varchar
10
I01-07
emp_politics
政治面貌
varchar
10
I01-08
emp_marriage
婚姻状况
varchar
10
I01-09
emp_shen
身份证号
varchar
20
I01-10
emp_education
学历
varchar
10
I01-11
emp_zhuanye
专业
varchar
50
I01-12
emp_xuexiao
毕业学校
varchar
50
I01-13
emp_biyedate
毕业时间
smalldatetime
8
I01-14
emp_phone
联系电话
varchar
20
I01-15
emp_mphone
手机号码
varchar
20
I01-16
emp_address
家庭住址
varchar
50
I01-17
jc_rp
奖/惩
varchar
10
I01-18
jc_name
奖惩名称
varchar
50
I01-19
jc_ren
奖惩人员
varchar
10
I01-20
jc_beizhu
奖片原因
varchar
50
I01-21
jc_date
创建时间
datetime
8
I01-22
jc_dept
部门
varchar
20
I01-23
jc_banren
经办人
varchar
10
I01-24
jc_bandept
批准部门
varchar
20
I01-25
xinzi_gong
工资
varchar
10
I01-26
xinzi_butie
补贴
varchar
10
I01-27
xinzi_jiang
奖金
varchar
10
I01-28
xinzi_kou
扣缴
varchar
10
I01-29
xinzi_zong
合计
varchar
10
I01-30
dept_id
部门号
varchar
10
I01-31
kao_zao
上班时间
smalldatetime
4
I01-32
kao_xia
下班时间
smalldatetime
4
I01-33
kao_chi
迟到
varchar
10
I01-34
kao_tui
早退
varchar
10
I01-35
kao_bing
请假
varchar
10
(1)数据项定义有员工的基本信息表、考勤信息表,奖惩信息表等各表中的数据项,
如表3.1所示。
(2)数据流定义:
数据流编号:
D1-01
数据流名称:
员工基本信息
数据流来源:
管理员
数据流去向:
P1-01--->
总体设计是在系统分析的基础上由抽象到具体的过程。
主要目标是将系统分析阶段所提出的反映了信息需求的系统逻辑方案转换成可以实施的基于计算机与通信系统的物理(技术)方案,为下一阶段系统实施提供必要的技术资料,应符合系统性,灵活性,可靠性的要求。
4.1系统模块总体设计
利用层次图来表示系统中各模块之间的关系。
层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。
树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表各个数据的子集,最底层的各个矩形框代表组成这个数据的实际数据元素(不能再分割的元素)。
随着结构的精细化,层次方框图对数据结构也描绘得越来越详细,这种模式非常适合于需求分析阶段的需要。
从对顶层信息的分类开始,沿着图中每条路径反复细化,直到确定了数据结构的全部细节为止。
本系统一共分为五个模块,每个模块之间虽然在表面上是相互独立的,但是在对数据库的访问上是紧密相连的,各个模块访问的是同一个数据库,只是所访问的表不同而已。
每个模块的功能都是按照在调研中搜集的资料进行编排制作的。
依据上述功能的分析,系统中模块分别为:
员工基本信息管理、部门管理、奖惩管理、考勤管理、培训管理、薪酬管理、用户管理
各功能模块的具体功能如下:
(1)员工基本信息管理:
对人员的基本信息管理,进行人员信息的添加、更新及打印出报表;对人事变动进行管理对员工上、下班签到管理;员工培训信息管理等。
(2)部门管理:
对新增部门进行添加,对部门人员或部门名进行修改,也可对现有部门进行缩减等。
(3)奖惩管理:
对员工的表现进行评定,对奖惩信息进行添加、更新和删除。
(4)薪酬管理:
对员工薪资进行管理。
如添加、修改等操作。
(5)用户管理:
对登录用户信息进行管理。
如修改密码,更改用户名,增加新用户,删除已经不存在的用户等。
系统功能结构图如图4.1所示。
图4.1 系统功能结构图
4.2数据库设计
4.2.1数据库设计概述
数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求,在数据库领域内,常常把使用数据库各类系统统称为数据库应用系统。
性能良好的数据库是应用系统成功的基础和保证。
但一个性能良好的数据库的设计和开发却是一项庞大而复杂的工程。
从事数据库设计的人员,不仅要具备数据库知识和数据库设计技术,还要有系统开发的实际经验。
数据库设计人员必须深入实际环境,密切联系用户,了解需求,学习业务,这样可以少走弯路,提高设计的成效,数据库设计的基本问题是为应用领域给出优化的数据库逻辑结构和物理结构,使之满足用户的信息管理要求和数据操作要求,支持应用系统的开发和运行。
设计目标是为用户和应用系统提供高效率的运行环境。
效率是指数据库存取效率和存储空间的利用率。
约束条件是计算机软硬件环境、数据库管理系统的能力、用户操作要求和信息要求、完整性和安全性约束。
设计问题是在给定约束下求解一个数据库模式使运行成本最小化。
数据库设计过程如图4.2所示:
现实世界
需求分析
概念数据库设计
逻辑数据库设计
物理数据库设计
需求分析说明书
概念数据库模式
逻辑数据库模式
物理数据库模式
图4.2数据库设计过程
4.2.2数据分析
数据分析过程同数据库的逻辑结构和物理结构密切相关,需要确定、编制、组织、筛选应用程序所使用的信息。
它以一种能够分析和分类的方式来捕获用户的所有信息,这使得某一模型可以直接转化成数据库结构。
我们使用一种信息建模技术,这种技术是通过实体、关系、属性三种基本对象来定义信息。
实体是需要维护和使用的相关特性的集合体;属性是实体的特性或特征;关系是实体之间的联系,关系为实体记录(实例)之间的联系和交互作用方式建立了模型。
要确定实体和关系的性质,用户必须确定单个实体和他们相关的属性。
为每个对象定义一个完整的与商业相关的描述以及他单独使用的要求,这也包括确定此实体是否使用应用程序的永久需求,每种关系的基本定义使用了商业定义和与关系相连接的需求。
在为实体确定相关的属性过程中,也需要确定此实体的主键和索引,并且要确定在每个实体中怎样组织这些属性,确定属性的数据类型和它是否为空值。
在高层次的描述过程中,还可以确定所有扩展属性信息,包括长度、格式、编辑风格、校验规则和初始值。
单独实体的属性被组织起来,用户就能够开始以某一种组织方式来给实体分类。
用户必须通过关系,来为实体分组的方式确定分类的模式,这是抽象化的初始层,或者说是通过隐藏模糊的信息来提高对分析的理解,通过将数据分类成组,就产生了相关分组的不同类型,这样,更加易于观察和分析。
4.2.3数据库的详细设计
1.原始单据与实体之间的关系
可以是一对一、一对多、多对多的关系。
在一般情况下,它们是一对一的关系:
即一张原始单据对应且只对应一个实体。
在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实体,或多张原始单证对应一个实体。
这里的实体可以理解为基本表。
明确这种对应关系后,对我们设计录入界面大有好处。
2.主键与外键
一般而言,一个实体不能既无主键又无外键。
在E—R图中,处于叶子部位的实体,可以定义主键,也可以不定义主键(因为它无子孙),但必须要有外键(因为它有父亲)。
主键与外键的设计,在全局数据库的设计中,占有重要地位。
主键是实体的高度抽象,主键与外键配对,表示实体之间连接。
3.基本表的性质
基本表具有如下四个特性:
原子性:
基本表中的字段是不可再分解的。
原始性:
基本表中的记录是原始数据(基础数据)的记录。
演绎性:
由基本表与代码表中的数据,可以派生出所有的输出数据。
稳定性:
基本表的结构是相对稳定的,表中的记录是要长期保存的。
4.在给定的系统硬件和系统软件条件下,提高数据库系统的运行效率的办法是:
(1)在数据库物理设计时,降低范式,增加冗余,少用触发器,多用存储过程。
(2)当计算非常复杂、而且记录条数非常巨大时(例如一千万条),复杂计算要先在数据库外面,以文件系统方式用C#语言计算处理完成之后,最后才入库追加到表中去。
这是电信计费系统设计的经验。
(3)发现某个表的记录太多,例如超过一千万条,则要对该表进行水平分割。
水平分割的做法是,以该表主键PK的某个值为界线,将该表的记录水平分割为两个表。
若发现某个表的字段太多,例如超过八十个,则垂直分割该表,将原来的一个表分解为两个表。
(4)对数据库管理系统DBMS进行优化,即优化各种系统参数,如缓冲区个数。
(5)在使用面向数据的SQL语言进行程序设计时,尽量采取优化算法。
总之,要提高数据库的运行效率,必须从数据库系统级优化、数据库设计级优化、程序实现级优化,这三个层次上同时下功夫。
5.数据库E—R图,员工部分,如图4.3所示:
图4.3员工部分E-R图
本系统的数据库命名为:
people,用来存该系统中用到的所有数据。
people数据库中共分7张表,信息表如表4.1至4.7所示。
(1)用户表:
主要是用户登录的基本信息,如表4.1所示。
表4.1yonghu(用户表)
序号
英文名
中文名
类型
长度(字符)
1
userid
编号
int
4
2
username
用户名
varchar(10)
1-10
3
password
密码
varchar(20)
1-20
4
limit
权限
varchar(10)
1-10
(2)员工表:
主要包括员工的基本信息,如表4.4所示。
表4.2dept(部门表)
序号
英文名
中文名
类型
长度(字符)
1
id
序号
int
4
2
dept_id
部门号
varchar(10)
1-10
3
dept_name
部门名
varchar(10)
1-10
4
emp_ren
部门人数
varchar(10)
1-10
5
emp_beizhu
备注
varchar(50)
1-50
(3)部门表:
包括部门号、部门名、部门人数和备注,如表4.2所示。
表4.3jc(奖惩表)
序号
英文名
中文名
类型
长度(字符)
1
id
序号
int
4
2
jc_id
奖惩编号
varchar(10)
1-10
3
emp_id
员工编号
varchar(10)
1-10
4
jc_rp
奖/惩
varchar(10)
1-10
5
jc_name
奖惩名称
varchar(50)
1-50
6
jc_ren
奖惩人员
varchar(10)
1-10
7
jc_beizhu
奖惩原因
varchar(50)
1-50
8
jc_date
创建时间
datetime
8
9
jc_dept
部门名
varchar(20)
1-20
10
jc_banren
经办人
varchar(10)
1-10
11
jc_bandept
批准部门
varchar(20)
1-20
表4.4employee(员工表)
序号
英文名
中文名
类型
长度(字符)
1
emp_id
员工编号
varchar(10)
1-10
2
emp_name
员工姓名
varchar(10)
1-10
3
dept_id
部门号
varchar(10)
1-10
4
emp_sex
性别
varchar(10)
1-10
5
emp_birthday
出生日期
smalldatetime
4
6
emp_place
籍贯
varchar(50)
1-50
7
emp_nation
民族
varchar(10)
1-10
8
emp_politics
政治面貌
varchar(10)
1-10
9
emp_marriage
婚姻状况
varchar(10)
1-10
10
emp_shen
身份证号
varchar(20)
1-20
11
emp_education
学历
varchar(10)
1-10
12
emp_zhuanye
专业
varchar(50)
1-50
13
emp_xuexiao
毕业学校
varchar(50)
1-50
14
emp_biyedate
毕业时间
smalldatetime
4
15
emp-phone
联系电话
varchar(20)
1-20
16
emp_mphone
手机号码
varchar(20)
1-20
17
emp-address
家庭住址
varchar(50)
1-50
(4)奖惩表:
记录员工奖惩的信息。
如表4.3所示。
(5)培训表:
包括员工号、培训内容、培训时间等,如表4.6所示。
表4.5xinzi(薪酬表)
序号
英文名
中文名
类型
长度(字符)
1
id
序号
int
4
2
emp_id
员工编号
varchar(10)
1-10
3
xinzi_gong
工资
varchar(10)
1-10
4
xinzi_butie
补贴
varchar(10)
1-10
5
xinzi_jiang
奖金
varchar(10)
1-10
6
xinzi_kou
扣缴
varchar(10)
1-10
7
xinzi_zong
合计
varchar(10)
1-10
表4.6train(培训表)
序号
英文名
中文名
类型
长度(字符)
1
id
序号
int
4
2
train_id
培训编号
varchar(10)
1-10
3
emp_id
员工编号
varchar(10)
1-10
4
train_name
培训名
varchar(50)
1-50
5
train_shi
培训内容
varchar(50)
1-50
6
startdate
开始日期
smalldatetime
4
7
enddate
结束日期
smalldatetime
4
8
train_addr
培训单位
Varchar(50)
1-50
9
train_jieguo