![]() Computer Science and Application 计算机科学与应用, 2011, 1, 44-50 http://dx.doi.org/10.12677/csa.2011.12010 Published Online September 2011 (http://www.hanspub.org/journal/csa/) Copyright © 2011 Hanspub CSA Design and Implementation of Staff Certificate Information Management System Qi Liu, Ji Jian, Yang Xu College of Earth Sciences, Chengdu University of Technology, Chengdu Email: orangefay@126.com Received: Apr. 28th, 2011; revised: Jun. 28th, 2011; accepted: Jul. 17th, 2011. Abstract: In view of the current situation of Enterprise Human Resource Management, it adopts 3-tiered C/S model and utilizes too ls such as VS2008, Access2007, DevExpress etc. to create a Staff certificates Manage- ment information System for XX corporation. Practice shows th at this system helps serve for the moderniza- tion management of the enterp rise and the activ e factors of work and study of staffs are likely to be mobilized, thus help improves the comprehensive competitiveness of enterprise talents and makes contributions to sus- tainable development of enterprise. Keywords: Human Resource Management; 3-Tiered C/S Model; Staff Certificates Management Information System 员工资格证书信息管理系统的设计与实现 刘 奇,简 季,徐 阳 成都理工大学地球科学学院,成都 Email: orange f a y @126.com 收稿日期:2011 年4月28日;修回日期:2011 年6月28 日;录用日期:2011 年7月17日 摘 要:基于当前企业人力资源管理的现状,采用三层 C/S 结构,运用 VS2008、Access2007、DevExpress 等工具,实现了 XX 公司的员工资格证书管理系统。实践表明,该系统能很好的服务于企业的现代化管 理,调动员工的工作、学习积极性,从而提升企业人才的综合竞争力,为企业的可持续发展做出贡献。 关键词:人力资源管理;三层 C/S 结构;员工资格证书管理系统 1. 前言 20 世纪 90 年代末期,人才成为了企业最重要的 资产之一,同时个人电脑充分普及、数据库技术、客 户/服务器技术、特别是Internet/Intranet 技术得到很大 发展,使得人力资源管理从“数据管理”延伸到“流 程管理”,形成了面向员工服务的“员工门户”以及 面向人力资本开发与经营的“人力资本管理平台”。 从而实现了对数据、流程、人力资源的全方位管理[1]。 特别是在全球金融危机爆发的今天,加快企业人才资 源的优化管理成为企业应对危机,加强自身竞争力的 有效手段。实践证明,办公自动化信息系统 OA(Office Automation)的建设对企业人力资源的优化管理起到 积极作用。为适应新形势,越来越多的中小企业为了 适应信息革命的要求,提高自身的竞争力,正打算或 正在建立符合企业特色的办公自动化信息系统[2]。那 么,现代企业又应该如何建设办公自动化信息系统 呢? 在本研究中,最主要的问题是怎样使程序的运行 效率更高,使程序的后续扩展性以及程序部门功能的 移植性更好。面对这些问题,结合 XX 公司的业务需 求,以及员工资格证书的多样性、时效性,利用计算 机网络、数据库等技术,以及模块化思想设计建成了 XX 公司员工资格证书管理系统。 系统采用.NET架构,该架构是具有无关语言和平 ![]() 刘奇 等员工资格证书信息管理系统的设计与实现45 | 台的新一代的软件开发、服务平台,与之前的开发方 式相比,.NET平台具有明显的优点:例如:.NET的 公共语言运行时(CLR:Common Language Runtime) 是一种多语言执行环境,用于管理、执行用任何一种 微软编程语言以及针对.NET 平台推出的第三方语言 所编写的代码[3]。这样,运行语言可以调用并运行其 它编程语言所写的代码,解决了语言的集成问题,为 该系统以后的扩展奠定基础。通过创建一个公共的跨 编程语言的 API 集,.NET框架可实现跨语言继承性、 错误处理功能和调试功能[4]。 系统的操作系统:Windows XP professional。开 发 工具:VS.NET 2008作为开发工具,使用其中的 Windows 应用程序。采用 C#作为程序的开发语言。并 在系统的建设中使用 DevExpress 进行系统界面的设 计,以增强系统界面的美观性。数据库:本系统采用 微软公司发布的关联式数据库 管理系 统—— Access。 该数据库基于 Windows 操作系统下的集成开发环境, 可极大地提高开发人员的工作效率,使得建立数据库、 创建表、设计用户界面、设计数据查询、报表打印等 可以方便有序地进行[5]。 2. 系统结构与系统设计 2.1. 系统总体需求 以前,人们对计算机了解有限,加上过去的软硬 件水平很低,造成人们对信息管理系统(MIS)的要求不 高,因而在MIS 开发过程中的需求分析并不是人们关 注的焦点,人们更多的把精力盯在需求分析之后的软 件开发之上。现在,MIS 的需求具有涉及的领域多、 范围广,MIS 开发的失败最终多是因为需求的原因而 产生。需求分析之所以重要,就因为他具有决策性、 方向性、策略性的作用,他在软件开发的过程中具有 举足轻重的地位。 该员工资格证书信息管理系统的开发“以需求为 导向、以应用促发展”为出发点,按照“统一规划、 统一标准、讲求实效、安全保密”的基本原则进行, 实现了集团各级管理部门、子公司之间的员工资格证 书的有效管理;提供了快速的查询、统计功能;实现 了对即将到期员工资格证书的预警管理,达到了信息 化管理的目的。该系统将可以作为集团公司了解、管 理各子企业员工信息的窗口,增加子企业对员工的管 理能力的手段。该系统要求系统管理员承担整个系统 的日常管理工作,涉及系统组织机构管理、用户注册、 密码管理、功能维护、权限分配等主要工作;对集团 公司的所有员工进行登记注册,完成员工基本信息的 日常管理,例如员工数据的外部导入,员工基本信息 查询以及员工单位调度的修改等;需要对员工所取得 的证书进行信息录入,并且可以对资格证书的信息进 行修改、查询等操作,以满足用户的特定需求;系统 需要实现通过设定预警天数来完成该天数内到期的资 格证书的查询,并可导出打印,以便企业对企业员工 的日常管理;并根据状态的不同对数据库中的注册员 工、注册单位、证书进行分类统计,以便于企业领导 了解公司员工及证书的情况,为企业的可持续发展提 供帮助。 2.2. 系统结构 该系统采取了客户机/服务器(C/S)结构设计,可以 充分利用两端硬件环境的优势,将任务合理分配到 Client 端和 Server 端来实现,降低了系统的通讯开销 [6]。考虑到该系统建设的目标和用户需求,以及业务 与功能的紧密结合,将系统总体框架结构划分为三层 (如图 1所示),分别是表示层(UI)、业务逻辑层(BLL)、 数据访问层(DAL)[7]。 表示层(User Inte rfa ce):位于最外层,离用户最近。 用于显示数据和接收用户输入的数据,为用户提供一 种交互式操作的界面[8]。 业务逻辑层(Business Logic Layer):用于访问数据 层,从数据层提取数据、修改数据以及删除数据,并 将结果返回给表现层。业务逻辑层在体系架构中的位 置十分关键,是系统架构中体现核心价值的部分,处 于数据访问层与表示层中间,起到了数据交换中承上 启下的作用[8]。 数据访问层 (Data Access Layer):数据访问层即 是DBMS(数据库管理系统),负责管理对数据库数据 Figure 1. Three-tiered architecture 图1. 三层体系构架 Copyright © 2011 Hanspub CSA ![]() 刘奇 等员工资格证书信息管理系统的设计与实现 46 | 的查询、更新,通过对用户的授权,实现数据读写权 限的控制[9]。 三层结构是一种严格分层方法,业务逻辑层只能 被表示层访问,数据访问层只能被业务逻辑层访问, 用户通过表示层将请求传送给业务逻辑层,业务逻辑 层完成相关业务规则和逻辑,并通过数据访问层访问 数据库获得数据,然后按照相反的顺序依次返回将数 据显示在表示层[10]。 2.3. 数据库设计 鉴于系统的核心是用于对员工相关信息的管理和 操作,则系统数据库的设计是系统成败的关键。根据 系统的功能设计了四张数据表和一张数据表的 E-R 关 系图(图2)。表 1存储员工基本信息,只要是公司职员 都应该在该表中有相应的记录,为防止公司员工数量 庞大而可能产生同名的情况,表1的关键字段为员工 的身份证号 IdentityCard。鉴于员工资格证书系统的注 册用户可分为员工注册和单位注册两种方式,因此设 计表 2为员工注册库,表 3为单位注册库。在表2中 仍然以员工的身份证号IdentityCard 字段为其关键字 段,并在注册时分配该注册用户的权限。表 3中,单 位名称的唯一性,确定了 UnitName 为其关键字段, 一般单位用户注册时其权限设置为系统管理员。表 4 是员工资格证书,因为可能出现一人多证,以及一种 类别的证书多人持有的情况,表4中有IdentityCard Figure 2. The system’s E-R diagram 图2. 系统的 E-R 关系图 字段和 CertificateClass字段为其关键字段。而员工基 本信息表,员工注册表,员工资格证书表通过关键字 段IdentityCard区分员工的信息,在系统中可以实现 相应操作。在数据库维护的环节中,利用相关工具, 通过数据的提交–审核–查询过程,借助强有力的权 限管理系统,提供了较完善的业务流程控制[11]。 Table 1. The sheet of the staff’s basic information 表1. 员工基本信息表 字段名称 字段含义 字段类型 索引 IdentityCard 身份证号码 文本(25) 主键 StaffName 员工姓名 文本(10) Sex 员工性别 文本(10) Department 所属部门 文本(25) StaffPost 职务 文本(10) PostRank 职务等级 文本(10) StaffNation 民族 文本(10) BirthPlace 出生地 文本(25) OriginalPlace 籍贯 文本(25) StaffBirthday 出生日期 日期/时间 ResidentsAccount 户口地址 文本(50) PoliticalLandscape 政治面貌 文本(10) MaritalStatus 婚姻状况 文本(10) StaffPhone 员工电话 文本(25) StaffEducation 学历 文本(25) Positionn 所在岗位 文本(25) Professional- 职业- QualificationsLevel 资格等级 文本(25) StaffAddress 通讯地址 文本(50) Table 2. The sheet of the staff’s registry 表2. 员工注册表 字段名称 字段含义 字段类型 索引 IdentityCard 身份证号 文本(25) 主键 UserName 员工姓名 文本(10) Sex 员工性别 文本(10) RegisterDate 注册时间 日期/时间 Department 所属部门 文本(25) Remarks 备注 文本(255) Lights 权限 文本(10) Code 密码 文本(10) WordDate 口令日期 日期/时间 Positionn 所在岗位 文本(25) Table 3. The sheet of the unit’s registry 表3. 单位注册表 字段名称 字段含义 字段类型 索引 UnitName 单位名称 文本(25) 主键 PersonInCharge 负责人 文本(20) UnitAddress 地址 文本(50) UnitPhone 电话 文本(25) UnitEmail 邮件 文本(25) ZipCode 邮编 文本(10) Lights 权限 文本(10) Code 密码 文本(10) Remarks 备注 文本(255) Copyright © 2011 Hanspub CSA ![]() 刘奇 等 | 员工资格证书信息管理系统的设计与实现 Copyright © 2011 Hanspub CSA 47 Table 4. The sheet of the staff’s certificate 表4. 员工资格证书表 字段名称 字段含义 字段类型 索引 IdentityCard 身份证号码 文本(25) 主键 StaffName 员工姓名 文本(10) Sex 员工性别 文本(10) Department 所属部门 文本(25) StaffPost 职务 文本(25) CertificateClass 资格证书类别 文本(25) 主键 GainDate 证书取得日期 日期/时间 ServiceDate 证书有效期 长整型 2.4. 系统关键技术 三层结构的设计有利于系统的开发,使系统具有 较高的性能和较强的扩展性,与传统的二层结构具有 下列优势:当客户机增多,访问量和数据传输量很大 时,影响数据库的响应速度,降低系统性能。为解决 这些相应的技术问题和出于安全因素的考虑,采用中 间件组成三层结构应用体系可以很好解决上述问题。 以下为两层与三层结构应用体系的比较如图 3所示。 在业务数据库采用简单三层构架访问技术,实现 了数据与业务层的低耦合性,在业务层直接操作实体 对象而不需要更改数据层代码,实现的了工程的快速 开发。在系统中定义 Model,BLL,DAL 三层,以完 成对数据库的操作。 Model 是该系统的表现层:定义表 certificate, staff,unitt,staffmessage的字段构成,所有类定义封 装在这个 dll,这样其它项目工程调用时很方便。 BLL 是该系统的业务逻辑层:它定义出系统表现 层中对数据库中各张表所需要的相关操作,并根据表 现层的相关指令做出反应并访问数据访问层。这样, 所有业务操作封装在该 dll 中,窗体内的代码会很少。 DAL 是该系统的数据访问层:与数据库的交互, 用于实现业务逻辑层发出的指令,与数据库操作的代 码写入该 dll,这样修改某个字段名只要在该 dll 中进 行就可以了。本系统的数据库操作有对记录的删除, 更新,新建等操作。 例如:系统中员工资格证书的相关操作: {//新建资格证书 MIS.BLL.certificate bll = new MIS.BLL. certificate (); MIS.Model. certificate model = new MIS.Model. certificate (); model. StaffName = this.txtStaffName.Text; model. Sex = this.txtSex.Text; model. GainDate = this.dtpGainDate.Value; bll.Add(model)} {//删除资格证书 MIS.BLL. certificate bll = new MIS.BLL. certificate (); MIS.Model. certificate model = new MIS.Model. certificate (); if (bll.Exists(txtIdentityCard.Text&& tx tCertificateClass.Text)) bll.Delete(txtGxIndex1.Text);} {//修改员工资格证书 MIS.BLL. certificate bll = new MIS.BLL. certificate (); MIS.Model. certificate model = new MIS.Model. certificate (); if (bll.Exists(txtIdentityCard.Text)) {MIS.Model. certificate model2 = bll.GetModel(txtIdentityCard.Text); model. StaffName = this.txtStaffName.Text; model. Sex = this.txtSex.Text; model. GainDate = this.dtpGainDate.Value; bll.Update(model2);}} ![]() 刘奇 等员工资格证书信息管理系统的设计与实现 48 | Figure 3. The comparison of 2-tiered and 3-tiered application structure 图3. 两层与三层结构应用体系的比较 2.5. 系统基本功能 员工资格证书管理系统有系统管理,员工管理, 证书管理,报警功能,查询统计五大功能模块组成(如 图4所示)。 系统管理模块:系统管理员承担系统管理工作, 涉及系统组织机构管理、用户注册、密码管理、功能 维护、权限分配等主要工作。 员工管理模块:所有员工都必须在员工管理中注 册。员工管理功能包括员工注册,外部员工数据的导 入,员工查询以及员工单位调度的修改。 证书管理模块:所有员工具有的资格证书信息都 在此处输入,证书管理还包括了资格证书的信息修改、 查询等,以满足用户的特定操作。 报警功能模块:在该功能中,通过设定预警天数 来完成该天数内到期的资格证书查询并可导出打印, 以便企业对企业员工的日常管理。 查询统计模块:根据状态的不同对数据库中的注 册员工、注册单位、证书进行分类统计,以便于企业 领导了解公司员工及证书的情况,为企业的可持续发 展提供帮助。 3. 系统部分功能实现 3.1. 查询统计实现 主要是针对系统中队员工资格证书条件查询以及 员工信息的查询(如图 5所示),从而方便快捷的得到 有用信息支持决策。功能设计为可以定义单个条件或 者定义组合条件进行查询。例如,员工资格证书查询 功能实现的代码如下: QueryStr = "select 姓名,证书类别,证书日期 from [staff member] where 姓名='" + main.toolStripComboBoxByOne.Text + "'"; QueryStr = "select 姓名,证书类别,证书日期 from [staff member] where 证书类别='" + main.toolStripComboBoxByType.Text + "'"; Figure 4. The functional structure of the staff certificate information management system 图4. 员工资格证书管理系统功能结构 Figure 5. Condition query of the staff’s certificate 图5. 资格证书的条件查询 Copyright © 2011 Hanspub CSA ![]() 刘奇 等员工资格证书信息管理系统的设计与实现49 | 3.2. 信息管理实现 实现员工信息的快速录入,员工信息的更新,删 除等功能。在员工信息录入方面可以单个录入也可导 入外部数据实现批量录入。其中,外部其他格式文件 数据的批量录入可以实现员工信息快速、准确导入指 定数据库,以此也可实现系统与其他人事资源部门的 数据信息共享,其实现核心代码如下: DataTable dt = g_connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); for (int m_i = 0; m_i < dt.Rows.Count; m_i++) {toolStripComboBoxTable.Items.Add(dt.Rows[m_i][2].ToString()); xtraTabControl1.SelectedTabPage = xtraTabPage6;} 3.3. 人事调动实现 当企业人事发生变动时,需要对员工初次注册时 单位、部门等信息进行相应的改动,并要求其他相 的 关信息不发生变化(如图 6所示)。此功能可以方便、 快捷的实现员工调动产生的员工信息的修改而无需重 新建立员工信息,大大提高了管理的效率。其实现核 心代码如下: CAAC.Model.staffmessage model2 = bll.GetModel(main.listBoxControl_Staff.SelectedItem.ToString()); model2.Department= main.listBoxControlComPany.SelectedItem.ToString(); bll.Update(model2); 3.4. 预警查询实现 在此功能模块中,需要设定预警天数,以完成该 天数内到期的资格证书的查询,并可把查询结果导出、 打印。以便提醒持证员工进行再培训等(如图 7所示)。 public void CmpareDate(int Days,Main main) {if (TS.Days >= Days) {for (int j = 0; j < main.dataGridView2.Rows.Count; j++) {if (main.dataGridView2.Rows[j].Cells[2].Value != null && Convert.ToDateTime(main.dataGridView2.Rows[j].Cells[2].Value) == DTStaff) {main.dataGridView2.Rows[j].DefaultCellStyle.BackColor=Color.Red;} }} reader.Close();} 4. 总结和讨论 员工的资格证书是企业资质的基础,以前,资格 证书采用文档记录方式管理,浪费大量人力物力,且 效率低下,常常出现员工的资格证书因过期失效而造 成不必要的损失,也影响了员工的继续教育培训,并 对企业领导的决策带来不利影响。而伴随着该系统的 运行,进一步验证了设计阶段的功能的可靠性和实用 性,更说明办公自动化系统在现代企业管理中的重要 作用。 当然,由于系统时间的紧迫性和知识水平有限, 该系统还有许多待完善之处。譬如:因为 C/S 结构的 程序更新、维护和管理的难度大,一般用于小型局域 网,这样系统在设计时可以发展为 B/S结构或者 B/S 和C/S 相结合的混合模式。因为 Access 数据库的性能 Figure 6. The arrangement of the staff’s positions 图6. 员工人事调度 Copyright © 2011 Hanspub CSA ![]() 刘奇 等员工资格证书信息管理系统的设计与实现 50 | Figure 7. The result of warning query 图7. 预警查询结果 会随着访问人数和数据量的增加而急剧下降,所以可 以采用性能更为可靠的 oracle 等其他数据库。 5. 致谢 在此,非常感谢我的导师简季博士在论文构思和 写过程中给予的指导。 书 参考文献 (References) [1] 孙艳, 赵俊杰. 我国企业人力资源信息化管理[J]. 中国人力 资源开发, 2007, 4: 65. [2] 隋懿. 中小企业办公自动化系统设计与实现[J]. 现代经济信 息, 2010, 3: 196. [3] 王东明, 葛武滇等. NET程序设计与应用开发[M]. 北京: 清 华大学出版社, 2008. [4] 艾迪明. NET框架体系结构[J]. 计算机工程与应用, 2003, 40(2): 174-175. [5] Access 介绍概念, 技术内涵, 应用范围[URL]. http://zhidao.baidu.com/question/18583440 [6] c/s.百科名片[URL]. http://baike.baidu.com/view/679010.html?wtp=tt [7] 李雪梅, 李兵. 城市基础地理信息管理系统的设计与实现[J]. 地理空间信息与应用, 2010, 8(1): 50-51. [8] 三层构架. 百科名片[URL]. http://baike.baidu.com/view/687468.htm [9] 皮新玲, 李辉, 金晓萍. 高校重点实验室专项经费管理系统 设计与实现[J]. 实验技术与管理, 2010, 48(5): 178. [10] 木子屋. 理解ASP.NET 中的三层结构[URL]. http://homepage.yesky.com/3/7713003.shtml [11] 王妍, 孙德兵. 高校智能实验室管理系统开发与实践[J]. 实 验技术与管理, 2010, 48(6): 106. Copyright © 2011 Hanspub CSA |