人事管理系统课程设计大数据库Word文件下载.docx
《人事管理系统课程设计大数据库Word文件下载.docx》由会员分享,可在线阅读,更多相关《人事管理系统课程设计大数据库Word文件下载.docx(26页珍藏版)》请在冰豆网上搜索。
这些优点能够极提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
因此,开发这样一套适用的人事管理软件成为很有必要的事情,在下面的各章中我们将以开发一套人事管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。
2.1需求分析的任务
需求分析的结果是系统开发的基础,关系到工程的成败和软件产品的质量。
因
必须用行之有效的方法对软件需求进行严格的审查验证。
下面简要叙述需求分析阶段的具体任务。
一、确定对系统的综合要求。
对系统的综合要求有下述四个方面:
1.系统功能要求
(1)登录管理
(2)人员管理
(3)部门管理
(4)报表打印
其中人员管理包括:
添加,浏览,修改,撤销,删除,查询等:
部门管理包括添加、修改,删除
2.系统性能要求
(1)对资源的使用状况作长期的监控和数据收集
–Snmp+MRTG
–Sar
(2)程序的优化和系统结构的优化比硬件的性能优化更有效
(3)避免不受限制的使用系统资源设置各项服务对资源的使用限额,如Apache,MySQL,PHP等
3.运行要求
(1)支持系统运行的系统软件有windowsxp,Linux
(2)数据库管理系统有Oracle系统,SQLserver,kingbose,OSCAR
(3)外存储器有硬盘,光盘,移动硬盘,网盘,U盘等。
4.将来可能提出的要求
后台数据库的管理,前台界面管理,工资管理
二、导出系统的逻辑模型
我们把上述每一个定义作为数据字典中的一个条目。
因此,在数据字典中有
类型的条目:
数据流条目、文件条目和数据项条目。
下面分别讨论。
1.数据流条目
数据流条目对每个数据流进行定义,它通常由四部分组成:
数据流名、别名、组成和注释。
其中,别名是前面已定义的数据流的同义词;
组成栏是定义的主要部分,通常是列出该数据流的各组成数据项;
注释栏用于记录其它有关信息,例如该数据流在单位时间中传输的次数等。
如果数据流的组成很复杂,则可采用“自顶向下,逐步分解”的方式来表示。
登录管理=管理人员登录+普通客户登录+会员登录
人员管理=部提升+外部招聘
部门管理=【财务部门|销售部门|市场部门|人力资源部门|行政部门】
在数据字典各条目的定义中,常使用下述符号:
=表示“等价”;
+表示“与”;
[|]表示“或”,即选括号中某一项,括号中各选择项用“|”隔开。
例如,三好学生=[甲|乙|丙|丁];
数据流条目的编写格式见表2-4-1、2-4-2“职工基本情况”和“查询条件”数据流条目。
表2-4-1
数据流名:
职工基本情况
别名:
无
组成:
职工号++性别+出生时间+参加工作时间+职称+工作部门+工资+婚否
注释:
表2-4-2
数据流名:
查询条件
[查工资情况|查工作部门|查职称|查职工号]
注释:
数据量:
约70次/天;
今后还要增加查询种类
2.文件条目
文件条目用来对文件(或数据库)进行定义。
它由五部分组成:
文件名、编号、组成、结构和注释。
其中组成栏的定义方法与前面的数据流条目相同。
结构栏用于说明重复部分的相互关系,比如指出是顺序或索引存取。
文件条目的格式见表2-4-3“人事档案文件”的条目。
表2-4-3人事档案文件
文件名:
人事档案文件
编号:
EMP
职工号++出生时间+参加工作时间+职称+工作部门+工资+婚否
结构:
以职工号为关键字、索引存取
今后还将增加数据项
3.数据项条目
数据项条目用来给出数据项的定义。
由于数据项是数据的最小单位,是不可分割的,因此数据项条目只包含名称、代码、类型、长度和值的含义容等。
对于那些足以从名称看出其含义的“自说明”型的数据项,则不必在条目中再解释其含义。
数据项条目的格式见表2-4-4所示的“人事管理系统的数据项条目”。
表2-4-4人事管理系统数据项条目
数据项名、代码、类型、长度、小数位、含义、别名、注释
职工号数值型6ZGH
字符型8XM
性别字符型2XB
出生时间日期型8CSSJ
参加工作时间日期型8CZSJ
婚否逻辑型1HF
职称字符型8ZC
工作部门字符型10BM
工资数值型6GZ
2
三、修正系统开发计划
根据在分析过程中获得的对系统的更深入更具体的了解,可以比较准确地估计系统的成本和进度,修正以前制定的开发计划。
四、开发原型系统
在计算机硬件和许多其它工程产品的设计过程中经常使用样机。
建造样机通常有两个主要目的:
检验关键设计方案的正确性及系统是否真正满足用户的需要。
对于软件系统的开发,使用“样机”(更正确的名称应该是原型系统)的主要目的是,使用户通过实践获得关于未来的系统将怎样为他们工作的更直接更具体的概念,从而可以更准确地提出和确定他们的要求。
2.2需求分析的原则
需求分析的前提是准确、完整地获取用户需求。
向问题领域的专家学习,进行用户需求查是需求分析的第一步。
用户需求通常可以分为功能需求和性能需求两类。
功能需求定义了系统应该做什么,系统要求输入什么信息,输出什么信息,以及如何将输入变换为输出。
性能需求则定义了软件运行的状态特征,如系统运行效率,可靠性,安全性,可维护性等等。
综合起来,应该获取用户需求的容包括:
(1)物理环境。
系统运行的设备地点、位置是集中式的还是分布式的,对环境的要求如何(如温度、湿度,电磁场干扰等)。
(2)系统界面。
要求与其他系统进行数据交换的容与格式,终端用户的类型与熟练程度,用户对界面的特定要求,用户操作的易接受性等。
(3)系统功能。
系统应该完成的功能以及何时完成,对于系统运行速度、响应时间或者数据吞吐量的要求,系统运行的权限规定,系统可靠性要求,是否要求可移植,未来扩充或者升级的要求。
(4)数据要求。
输入偷出数据的种类与格式,计算必须达到的精度,数据接收与发送的频率,数据存储的容量和可靠性,数据或者文件访问的控制权限,数据备份的要求。
(5)系统文档规格。
系统要求交付什么文档,各类文档的编制规和预期使用对象。
(6)系统维护要求。
系统出错后可以允许的最大恢复时间,对错误修改的回归测试要求,系统运行日志规格,是否允许对系统修改,系统变化如何反映到设计中。
在获取需求过程中遇到的典型问题是:
(1)如何理解问题。
大多数情况下,软件开发人员不是问题领域的行家。
但是要准确、完整的获取需求必须对问题具有深入的理解与把握。
许多问题即使是用户业务人员也可能没有自觉的认识。
(2)分析员与用户的通信问题。
分析员对问题的理解必须从信息处理要求出发,而用户更多的考虑是本身的业务领域。
与用户建立相互信任、有效的沟通是分析员的首要任务。
(3)用户需求的可变性。
用户需求通常是不断变化的,而软件开发人员则希望将需求冻结在某一时刻。
影响用户需求变化的因素可以是用户领域的业务扩充或者转移,市场竞争的要求,用户主管人员的变更等。
现实情况是分析员只能接受需求不断变化的事实,应该千方百计地使其工作适应需求的变化。
现实世界是复杂多变的。
为了将现实世界中问题的求解映射为信息处理模型,对问题进行分解与抽象是普遍有效的基本法则。
2.3可行性研究
2.3.1可行性研究的任务
并不是所有问题都有简单明显的解决办法,事实上,许多问题不可能在预定的系统规模之解决。
如果问题没有可行的解,那么花费在这项开发工程上的任何时间、资源、人力和经费都是无谓的浪费。
可行性研究的目的就是用最小的代价在尽可能短的时间确定问题是否能够解决。
必须记住,可行性研究的目的不是解决问题,而是确定问题是否值得去解。
怎样达到这个目的呢?
当然不能靠主观猜想而只能靠客观分析。
必须分析几种主要的可能解法的利弊,从而判断原定的系统目标和规模是否现实,系统完成后所能带来的效益是否大到值得投资开发这个系统的程度。
因此,可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。
首先需要进一步分析和澄清问题定义。
在问题定义阶段初步确定的规模和目标,如果是正确的就进一步加以肯定,如果有错误就应该及时改正,如果对目标系统有任何约束和限制,也必须把它们清楚地列举出来。
在澄清了问题定义之后,分析员应该导出系统的逻辑模型。
然后从系统逻辑模型出发,探索若干种可供选择的主要解法(即系统实现方案)。
对每种解法都应该仔细研究它的可行性,一般说来,至少应该从下述三方面研究每种解法的可行性:
(1)技术可行性使用现有的技术能实现这个系统吗?
(2)经济可行性这个系统的经济效益能超过它的开发成本吗?
(3)操作可行性系统的操作方式在这个用户组织行得通吗?
分析员应该为每个可行的解法制定一个粗略的实现进度。
当然,可行性研究最根本的任务是对以后的行动方针提出建议。
如果问题没有可行的.解,分析员应该建议停止这项开发工程,以避免时间、资源、人力和金钱的浪费;
如果问题值得解,分析员应该推荐一个较好的解决方案,并且为工程制定一个初步的计划。
可行性研究需要的时间长短取决于工程的规模,一般说来,可行性研究的成本只是预测
。
2.3.2系统流程图
在进行可行性研究时需要了解和分析现有的系统,并以概括的形式表达对现有系统的认识;
进入设计阶段以后应该把设想的新系统的逻辑模型转变成物理模型,因此需要描绘未来的物理系统的概貌。
2.5软件需求正确性验证
2.5.1软件需求正确性要求和验证方法
一般说来,应该从下述四个方面进行验证:
一致性所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾。
完整性需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能。
现实性指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的。
对硬件技术的进步可以做些预测,对软件技术的进步则很难做出预测,只能从现有技术水平出发判断需求的现实性。
有效性必须证明需正确有效的,确实能解决用户面对的问题。
3.1开发工具的选择
现在,市场上可以选购的应用开发产品很多,流行的也有数十种。
在目前市场上这些众多的程序开发工具中,有些强调程序语言的弹性与执行效率;
有些则偏重于可视化程序开发工具所带来的便利性与效率的得高,各有各的优点和特色,也满足了不同用户的需求。
然而,语言的弹性和工具的便利性是密不可分的,只强调程序语言的弹性,却没有便利的工具作配合,会使一些即使非常简单的界面处理动作,也会严重地浪费程序设计师的宝贵时间;
相反,如果只有便利的工具,却没有弹性的语言作支持,许多特殊化的处理动作必需要耗费数倍的工夫来处理,使得原来所标榜的效率提高的优点失去了作用。
本设计我将采用面向对象的方法,综合运用数据库技术、程序设计技术,结合企业人事管理知识,以VisualBasic6.0作为系统前台应用程序开发工具,Access作为后台数据库,通过VisualBasic6.0中的Data控件使两者进行连接从而进行系统软件开发。
1.软件Access的介绍
MicrosoftAccess是比较流行的关系型数据库管理系统之一,其基本核心是MicrosoftJet数据库引擎,是一些关于某个特定主题或目的的信息集合。
它的作用是用来存储,维护和检索数据。
同时,提供了VBA编程接口,可以为用户提供各种各样的编程功能。
2.开发软件VisualBasic6.0的介绍
VisualBasic6.0是微软公司推出的可视化编成工具,它提供了非常简单、快捷的开发方法,无论是初学者还是专业开发人员,只要稍有语言基础就可以快速掌握并精通。
Basic是Beginner’sAll-purposeSymbolicInstructionCode(初学者通用符号指令代码)的缩写,它诞生于20世纪60年代初期,因其简单易学、使用方便。
3.开发语言ASP简介
ASP错误!
未找到引用源。
是ActiveServerPage的缩写,意为“动态服务器主页”。
ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。
ASP的网页文件的格式是.asp,现在常用于各种动态中。
ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或Web应用程序。
ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。
利用ASP可以向网页中添加交互式容(如在线表单),也可以创建使用HTML网页作为用户界面的web应用程序。
4.数据库管理系统简介
本系统使用的是MicrosoftAccess错误!
,Access是一种关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。
Access的优点在于它能使用数据表示图或自定义窗体收集信息。
数据表示图提供了一种类似于Excel的电子表格,可以使数据库一目了然。
另外,Access允许创建自定义报表用于打印或输出数据库中的信息。
Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。
Access是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。
如上所述,Access作为关系数据库一切具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。
3.2系统分析
1.系统需求分析
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对人事信息进行管理,具有着手工管理所无法比拟的优点。
这些优点能够极提高人事管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
根据以上情况,决定实施建立人事信息管理系统,因为人事信息管理是一个企业单位不可缺少的部分,它的容对于企业的决策者和管理者来说都至关重要,所以人事信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。
随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算实现企业人事档案的管理势在必行。
当前企业信息管理系统正在从US结构向B/S结构转移,但是由于安全性等方面的因素,C/S结构的管理信息系统仍然占据企业管理信息系统的主流。
人事管理系统是现代企业管理工作不可缺少的一部分,是适应现代企业制度要求、推动企业劳动人事管理走向科学化、规化的必要条件。
2.可行性分析
人事管理系统后台数据库采用目前应用十分广泛的桌面型关系数据库MicrosoftOfficeAccess2003,由于其具有快速、方便、灵活和可移植性等特点被大多数软件开发者所使用;
前台采用VisualBasic6.0作为主要的开发工具,其可与Access2003数据库无缝衔接。
3.3系统功能设计
1.系统的功能分析
人事信息管理系统是一个典型的数据库开发应用程序,它由员工信息管理、工资管理、假条信息管理、系统用户管理等模块组成,具体规划如下:
(1)系统用户管理:
对使用系统的用户进行管理,为他们分配一定的权限,使他们规的使用系统。
本系统的用户分为两类:
管理员和一般用户。
管理员可以对系统的各个模块进行添加,删除,修改,查询;
而一般用户只能对各模块进行简单的查询,从而了解相关的信息。
(2)职工信息管理:
职工信息管理包括对职工基本信息和情况的记录进行查询、添加、删除和修改。
主要由管理员进行。
(3)职工工资管理:
职工工资管理主要是对职工工资的综合的核算,建立合理,规的企业工资核算制度,保障职工的合法权利。
(4)职工假条管理:
职工假条管理是对职工的出勤进行管理,方便人事处管理员对职工工资的核算,方便随时了解最新,最全面工作情况,从而合理的完成工作。
2.系统功能结构
系统功能结构图主要从功能的角度描述了系统的结构。
人事管理的系统功能结构如图1所示:
图1系统功能结构图
3.数据库设计
人事管理系统的数据库采用Access,系统数据库的名称为“data”。
数据库data中包含了4数据表。
下面分别给出数据表概要说明和主要数据表的结构。
(1)职工信息数据表:
用于储存员工的基本信息。
职工信息表见表1所示:
表1人员基本信息表
字段
字段名
类型
宽度
Nulls
1
编号
数值型
11
否
2
字符型
20
3
号
18
4
民族
10
5
性别
6
出生日期
7
学历
8
联系地址
9
联系
照片
(2)部门信息数据表:
用来存储部门的具体情况,包括编号和部门名称等信息。
部门信息表见表2所示:
表2部门信息表
部门编号
50
部门名称
3.4主要功能模块设计
3.4.1系统架构设计
人事管理系统的架构分为窗体和模块两个部分。
在窗体的部分有以下几个窗体,他们的作用分别是:
“frmAbout”是关于窗口,是对系统的说明;
“frmEdit.frm”是编辑窗口,可以对员工信息进行添加,删除的操作;
“frmHelp.frm”是帮助窗体,对新用户提供帮助;
“frmLogin.frm”是用户的登陆窗口,启动系统时就会出现这个窗口;
“frmmain.frm”是系统主界面,用户可以选择要执行的任务;
“frmPsw.frm”是密码修改,用户可以在此修改自己的密码;
“frmSearch.frm”是寻找窗口,用户可以进行模糊查询和逻辑查询;
“frmSetup.frm”是设置条目的窗口,管理员可以把可以对外公布的设置为显示条目,而对少数人公布的设置为隐藏条目,从而达到不同的使用者具有不同的使用权限;
“frmSys.frm”是关于用户窗体,在这个窗体中可以添加新用户,可以设置密码,也可以对用户权限进行授权,这个窗体和数据库也有密切的联系,可以在这里更新用户信息;
“frmTable.frm”是桌面窗体,它罗列了员工学历和部门的信息,同时可以进行添加,编辑和删除的操作。
系统架构说明见图2所示:
图2系统架构图
3.4.2控件准备和引用设置
控件准备和引用设置是目前制作应用程序的前提条件,在VisualBasic6.0默认的工具箱中,很多使用的部件没有显示,所以要将我们需要的部件添加进工具箱。
另外,包括一些库文件的函数,也是没有被引用,我们要先将这些具有特定功能的函数引用。
1.控件准备
人事管理系统中需要通过“工程”→“部件”命令添加到工具箱中的“ActiveX”部件,见图3所示。
图3人事管理系统的控件准备图
2.引用设置
人事管理系统中需要通过“工程”→“引用”命令引用库文件的函数,来完成数据库的连接,见图4所示。
图4人事管理系统的引用设置
3.4.3系统登陆设计
系统用户登录模块主要用于完成对登录系统的用户的验证,只有合法的用户才可以进入系统。
运行用户登陆模块,其结果见图5所示:
图5用户登录的运行结果
1.系统登陆窗体的功能
登录窗体是用户进入系统的钥匙,只有合法的登录才是有效的登录。
在本系统中预设了两种用户:
root超级用户和any一般用户,超级用户对一般用户有管理的功能。
超级用户和一般用户对系统的员工信息,假条信息,工资信息都有编辑,删除,查询,设置的功能。
2.系统登陆的代码设计
(1)登陆窗体代码设计
窗体代码主要实现了连接数据库的功能,这里用于连接用户信息表。
其程序如下:
PrivateSubForm_Load()
DimiAsInteger
IfApp.PrevInstanceThen
MsgBox("
程序已经运行,不能再次装载。
"
),vbExclamation
UnloadMe
EndIf
'
本段代码用于判定本程序是否已经装载于存中,以避免程序的多重启
i=0
OpenApp.Path+"
\user.ini"
ForInputAs#1
DoWhileNotEOF
(1)
Input#1,user(i),pws(i),state(i),Emplo(i)
Ifstate(i)="
A"
Then
Combo1.AddItemuser(i)
i=i+1
LoopClose#1
Combo1.ListIndex=1
在窗口装载阶段读取用户设置文件获取用户信息并装载于用户列表框中
EndSub
(2)“取消”按钮是退出登录界面,退出系统的。
其代码如下:
PrivateSubCmdCancel_Click()
End
EndSub
(3)“确定”按钮代码设计
“确定”按钮代码主要实现了用户登陆时,用户名和密码的认证,当用户名或密码错误时,系统提示错误。
PrivateSubcmdOK_Click()
IftxtPassword=pws(Combo1.List