• 1.48 MB
  • 2022-04-22 13:33:58 发布

企业人事管理系统开发的现状及模块设计毕业论文.doc

  • 47页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'企业人事管理系统开发的现状及模块设计毕业论文目录摘要IIIAbstractIV引言1第一章绪论21.1系统开发背景及现状21.2系统开发工具及开发环境2第二章系统设计的关键技术32.1VisualStudio.NET主要特点32.2C#技术概述42.3SQL2008主要特点8第三章系统可行性和总体分析113.1系统可行性分析113.2系统设计原则123.3开发及运行环境16第四章系统的总体设计174.1系统模块设计174.2数据库设计194.3数据库链接26I 4.4系统异常处理设计274.5系统的安全与维护28第五章系统的实现295.1系统设计理念295.2管理员主要功能模块305.3基础信息主要功能模块345.4人事管理主要功能模块355.5备忘记录主要功能模块375.6工具管理主要功能模块38第六章系统测试406.1测试叙述406.2系统部分单元测试实例406.3测试结果42结束语43致谢44参考文献45I 企业人事管理系统46 企业人事管理系统第一章绪论1.1系统开发背景及现状在国内企业中,人事管理工作是非常重要的一项工作,它负责了整个企业的日常人事安排,人员的人事管理等工作。以前都是人手工进行作业。随着企业规模的日益扩大,人事管理的工作量也大大地加重。随着计算机应用程序的发展,人事工作者急切希望能够将大部分繁琐的工作交给计算机处理,以减轻人工的压力并有效提高工作效率。而计算机的发展加快人事管理系统的产生。人事管理系统的主要任务是为实现企业的整体目标提供合适用人方法,这就要求人事部门进一步加大人事制度改革的力度,建立好每个人的档案,为企业选拔有能之士并创造一个良好的工作环境,使员工用其所长、人尽其才;关心并改善员工的生活条件,使员工无后顾之忧,充分发挥自己的内在潜能。企业人事管理的根本目的就是通过合理地使用人才去达到最大利益。企业人事管理工作的好坏对企业的发展有大的影响,企业对人事管理都很重视。通过近年来互联网查询的资料来看,目前国内类似的系统大多是针对企业员工管理,而对企业引进人才方面以及与员工交流平台方面所做的工作并不多[3]。1.2系统开发工具及开发环境系统的开发语言:C#语言系统的开发技术:ASP.NET技术系统的开发环境:Windows7操作系统系统的开发工具:MicrosoftSQLServer2008数据库平台MicrosoftVisualStudio2010开发平台系统所应用工具:Visio2007、PhotoShopCS3Office2007文档开发工具46 企业人事管理系统第二章系统设计的关键技术企业人事管理系统的研发是一个复杂的工程,它涉及到计算机处理技术、系统理论、组织结构、管理功能、管理知识等各方面的问题,到现在都没有一种统一完备的系统。但是每一种系统都要遵循相应的开发策略:1.系统要解决的问题。2.系统可行性研究,以确定系统要实现的目标。3.系统开发原则。4.系统开发前很多的准备工作。5.系统开发方法的很多的选择和大量的开发计划的定制。2.1VisualStudio.NET主要特点2.1.1提供加速开发过程的高效工具VisualStudio.NET是一个统一的、紧密集成的可视化编程环境,用来帮助用户简化开发网络应用程序的过程,缩短了学习使用方法的时间。它提供了一种新的语言——C#。通过共享的HTML、XML和样式单编辑器,用户可以轻松地了解并借助包括C#在内的任何一种VisualStudio语言来开发网络应用程序。2.1.2提供对各种网络应用程序的快速设计能力通过WebForm,用户可以用他们在研发基于窗体的桌面应用程序时所使用的技巧来创建跨平台、跨浏览器的网络应用程序软件。2.1.3利用XML和WebService来简化分布式计算WebService是通过标准的Internet协议在网络上来调用商务逻辑。HTTP被用来WebService传输的基础协议,该协议使得对功能的请求能够穿越各种团体所使用的防火墙。XML被作为对上述功能请求的参数进行格式统一,从而将这些请求能够使用于所有的软件和硬件。这样就对Web46 企业人事管理系统Service的访问可以通过任何一种语言、使用任何一种组件模型在任何一种操作系统上运用。2.1.4快速构建中间层商务组件VisualStudio的一个核心目标就是要为了基于服务器的应用程序提供应用程序快捷的部署工具。利用VisualStudio.NET创建的组件将为您的很多作业提供足够的功能和伸缩性。2.1.5构建可靠的可伸缩解决方案利用VisualStudio.NET,用户可以非常轻松快捷地创建具有自动伸缩能力的可靠的应用程序及相关的组件[4]。2.2C#技术概述C#在带来对应用程序的快速研发能力的同时,并没有牺牲C与C++程序员所关心的各种特性和问题。它忠实地继承了C和C++的优点。如果你对C或C++有所了解,你会发现它是很熟悉的。即便你是一位新手,C#也不会给你带来很多不必要的麻烦,快速应用程序开发(RapidApplicationDevelopment,RAD)的思想与简洁的语法也会使你迅速成为一名熟练的研发人员。C#是专门为.NET应用而研发出的语言。这从根本上保证了C#与.NET框架的完美结合。在.NET运行库的支持下,.NET框架的各种优点在C#中表现得淋漓尽致。C#的有以下突出的特点[5]●精简的语法●精心地面向对象设计●与Web紧密的结合●完整的安全性与错误处理能力46 企业人事管理系统●版本处理技术完善●灵活性与兼容性的完善2.2.1精简的语法在缺省的情况下,C#的代码在.NET框架提供的“可操纵”环境下运行时,不允许直接地内存操作。它所带来的最大的特色是没有指针。与此相关的是,那些在C++中被大量使用的操作符(例如:“::”、“->”和“.,”)已经没有出现。C#只支持一个“.”,对于我们来说,现在需要理解的一切仅仅是名字的嵌套使用而已。C#用真正的关键字换掉了那些把活动模板库(ActiveTemplateLibrary,ALT)和COM弄得乱七八糟的伪关键字,如OLE_COLOR、BOOL、VARIANT_BOOL、DISPID_XXXXX等等。每一种C#操作符在.NET类库中都有了新名字。语法中的冗余问题是C++中的常见的问题,比如"const"和"#define"、各种各样的字符类型等等。C#对此进行了精简,只保留了常见的形式,而别的冗余形式从它的语法结构中被清理了出去[8]。2.2.2精心地面向对象设计从Smalltalk开始,面向对象的话题就始终纠缠着任何一种现代程序设计语言。的确,C#也具有面向对象的语言所应有的一切特性:封装、继承与多态性,这并不奇怪。然而,通过精心地面向对象设计,从高级商业对象到系统级应用,C#创建了广泛组件的绝对选择。在C#的类型系统设计中,每种类型都可以看作一个对象。C#提供了一个叫做装箱(boxing)与拆箱(unboxing)的机制来完成这些操作,而不会给使用者带来不必要的麻烦,这在以后的章节中将进行更为详细的介绍。C#只允许单继承,即一个类不会含有多个基类,从而避免了类型定义时的混乱。在后面的学习中你会发现,C#中没有全局函数,没有全局变量,也没有全局常数。一切的一切,都必须封装在同一个类之中。你的代码将会具有更好的可读性,并且减少了发生命名冲突时的可能。整个C#的类模型都是建立在.NET虚拟对象系统(VisualObject46 企业人事管理系统System,VOS)的基础之上,其对象模型是.NET基础架构的一个部分,不再是其本身的组成部分。在下面将会谈到,这样做的另一个好处是有更好的兼容性[11]。借助于从VB中得来的丰富的RAD经验,C#具备了良好的研发环境。结合自身强大的面向对象的功能,C#将使得开发人员的生产效率得到极大的提高。对于公司而言,软件开发周期的缩短将会使它们更好地应付网络经济的竞争。在功能与效率的杠杆上人们也找到了支点。2.2.3与Web的紧密结合.NET中新的应用程序开发模型意味着很多的解决方案需要与Web标准相统一,例如超文本标记语言(HypertextMarkupLanguage,HTML)和XML。因历史的原因,现今存在的一些开发工具将不能与Web紧密地结合。SOAP的使用使得C#克服了这个缺陷,大规模深层次的分布式开发从此也将成为可能。由于有Web服务框架的帮助,就程序员而言,网络服务看起来就像是C#本地的对象。程序员们能够运用他们已有的面向对象的知识与技巧来开发Web服务。只需要运用简单的C#语言结构,C#组件就能够更加便捷地为Web服务,并允许它们通过Internet被运行在任何操作系统上的任何语言所调用。例如,XML已经成为网络中数据结构传递的标准,为了提高效率,C#允许直接将XML数据映射成为结构。这就可以有效的处理各种数据。2.2.4完整的安全性与错误处理能力语言的安全性与错误处理能力,是衡量一种语言是否优秀的重要依据。每个人都会犯错误,即使是世界上最熟练的程序员也不例外:忘记变量的初始化,对不属于自己管理范围的内存空间进行修改,这些错误常常照成难以预见的后果。一旦这样的软件被运用,寻找与改正这些简单错误的代价会是让人无法承受的。C#的先进设计思想可以消除软件开发中的许多常见错误,并提供包括类型安全在内的完整的安全性能。为了减少开发时的错误,C#会帮助开发者通过更少的代码完成类似的功能,这不仅减轻了编程人员的工作量,同时更加有效地避免了错误的发生[12]。46 企业人事管理系统.NET运行库提供了代码访问安全特性,它允许管理员及用户根据代码的ID来配置安全等级。在缺省情况下,从Internet和Intranet下载的代码都不允许访问任何本地的文件和资源。打个比方,一个在网络上的共享目录中运行的程序,如果它要访问本地的一些资源,那么异常就会被触发,它就会无情地被异常扔出去,若copy到本地硬盘上运行则一切正常。内存管理中的垃圾收集机制减轻了开发人员对内存管理的负担。.NET平台提供的垃圾收集器(GarbageCollection,GC)就负责资源的释放与对象撤销时的内存清理工作。变量类型是安全的。C#中不能使用没有初始化的变量,对象的成员变量由编译器负责将其置为零,当局部变量没有经过初始化而被使用时,编译器就做出提醒;C#不支持不安全的指向,不会将整数指向引用类型,例如对象,当进行下行指向时,C#将自动验证指向的有效性;C#中提供了边界检查与溢出检查等功能[13]。2.2.5版本处理技术完善C#提供内置的版本支持来减少开发费用,使用C#将会使研发人员更加简易地研发和维护各种商业用户。升级软件系统中的模块是一件容易产生错误的工作。在代码修改过程中可能对现存的软件产生错误,很有可能导致程序的崩溃。为了帮助开发人员处理这些问题,C#在语言中内置了版本控制功能。比如:函数重载必须被显式声明,而不会像在C++或java中经常发生的那样不经意地被进行,这就可以防止代码级错误和保留版本化的特性。另一个相关的特性是接口和接口继承的支持。这些特性可以保证复杂的软件可以被便捷地开发和升级。2.2.6灵活性和兼容性的完善在简化语法的同时,C#并没有失去灵活性。尽管它不是一种无限制语言,例如:它不能用来开发硬件的驱动程序,在默认的状态下没有指针等等,但是在学习过程中你会发现,它依然是那样的灵巧。如果需要,C#允许你可以将某些类或者类的某些方法声明为非安全的。这样一来,你将能够可以使用指针、结构和静态数组,并且调用这些非安全代码不会带来其它的问题。此外,它还提供了一个另外的东西来模拟指针的功能--delegates。也就是说C#不支持类的多继承,但是通过对接口的继承,你可以得到这一功能[6]。46 企业人事管理系统2.2.7安全性正是由于它的灵活性,C#允许与C风格的需要传递指针型参数的API进行交互操作,DLL的任何入口点都是可以在程序中进行访问。C#遵守.NET公用语言规范(CommonLanguageSpecification,CLS),从而确保了C#组件与其它语言组件间的互操作性。元数据(Metadata)概念的引入既保证了兼容性,也实现了类型得安全性[14]。2.3SQL2008主要特点2.3.1.NET框架使用SQLServer2008,开发人员通过使用类似的语言,例如微软的VisualC#.NET和微软的VisualBasic,将能够创建数据库对象。研发人员还将能够创建两个新的对象——用户定义的类和集合。2.3.2XML技术在使用本地网络或互联网的情况下,在不同应用软件之间散步数据的时候,可扩展标记语言(XML)是一个很重要的标准。SQLServer2008将会自身支持存储和查询可扩展标记语言文件。2.3.3ADO.NET版本从对SQL类的新的支持,到多活动结果集(MARS),SQLServer2008中的ADO.NET将推动数据集的存取和操纵,实现更加大的可升级性和灵活性。2.3.4增强的安全性SQLServer2008中的新安全模式将用户和对象分开,提供fine-grainaccess的存取、并允许对数据存取进行更加大的控制。另外,所有系统的表格将作为视图得到实施展现,对数据库系统对象进行了更大程度的控制。46 企业人事管理系统2.3.5Transact-SQL的增强性能SQLServer2008为开发可升级的数据库应用软件,提供了新的语言功能。这些加强的性能包括处理错误、递归查询功能、关系运算符PIVOT,APPLY,ROW_NUMBER和其他数据列排行功能等等。2.3.6SQL服务中介SQL服务中介将为大型、营业范围内的应用软件,提供了一个分布式的、异步的应用框架。2.3.7通告服务通告服务使得业务可以创建丰富的通知应用软件,向任何设备,提供个人化的和及时的信息,比如股市警报、新闻订阅、包裹递送警报、航空公司票价等等。在SQLServer2008中,通告服务和其他技术更加紧密地结合在了一起,这些技术包含分析服务、SQLServerManagementStudio[16]。2.3.8Web服务使用SQLServer2008,研发人员将能够在数据库层开发Web服务,将SQLServer当作一个超文本传输协议(HTTP)侦听器,并为网络服务中心应用软件提供了一个新型的数据存取功能[9]。2.3.9报表服务利用SQLServer2008,报表服务可以提供报表控制,可以通过VisualStudio2010发行。2.3.10全文搜索功能的增强SQLServer2008将支持丰富的全文应用软件。服务器的编目功能将得到加强,对编目的对象提供更大的灵活性。查询性能和可升级性将大幅得到改进,于此同时新的管理工具将为有关全文功能的运行,提供了更深入的了解。46 企业人事管理系统46 企业人事管理系统第三章系统可行性和总体分析3.1系统可行性分析毕业论文至此就已经完成,这也意味着我大学四年的学习生活即将结束,既兴奋又担忧,兴奋的是终于可以步入社会,担忧的是如今社会竞争是如此的激烈,但是我坚信在我人生中最重要的两位老师的指导下,我定然会闯出属于我自己的一片天地。3.1.1经济可行性主要是对项目的经济效益进行了评价,本系统作为一个实习的项目,无需开发经费,而且本系统实施后可以作为一个产品向能够使用该系统的企业或个人进行推销,只要系统做的足够强大能够符合企业或个人的需求,则还能一定程度上带来经济效益。采用传统的手工输入方法,不仅工作繁琐且需要人力多,记录容易出错,那样产生了成本高,效果差的弊病,对于一个企业的资料库建立是非常困难和麻烦的。而采用这种系统所发费的成本,精力都远远低于手工,并且十分实用方便,更新也简易,每个部门只需一个人统一管理就可行了,对企业实现办公无纸化能起到了很大的作用。所以此系统经济可行性也具备了[12]。3.1.2社会可行性随着计算机的发展与普及和互联网技术的扩展,日常劳资人事管理必将实现无纸化办公作业,并且加入到公司内部的Intranet或者是Internet上去,实现数据资源的共享,这样有益于劳资人事信息在单位内部的查询,提高了数据资源的利用,并且能及时的得到更新,不需要像以前那样浪费大量的人力物力去进行抄写,提高了工作的效率,故该系统具有社会可行性。3.1.3管理可行性本系统采用了系统数据备份、恢复的功能,而且界面层次分明,一目了然,加上设计方面加入了人性化元素。管理此系统并不难,易学易会,故该系统具有管理可行性。46 企业人事管理系统3.1.4技术可行性VisualStudio.NET提供了一个统一的、紧密集成的可视化编程环境,精简了研发应用程序的过程,缩短了实用方法的时间。利用VisualStudio.NET,可以非常轻松地创建具有自动伸缩能力的可靠的应用程序及其组件。而且微软的优秀成果c#语言保持了c/c++所特有的强大功能和控制能力。与c++十分类似的模型和语法,具有与COM+服务完全的交互性和完全支持能力,能够轻松地移动现有的代码。数据库方面SQL2008已经可以满足中小型企业的数据要求,甚至很多大型企业都可以达到要求。如今计算计普及程度日益推广,计算机配置更加强大,能承载此系统的机器就如办公的机器都可以达到要求,故该系统具有技术可行性。3.2系统设计原则3.2.1实用性原则要力求最大限度地满足实际工作的需要,充分考虑各业务层次、各管理环节数据处理的实用性,使客户生产和管理业务得到满足[15]。3.2.2可扩展性和可维护性原则为适应将来的发展,MIS系统应该具有良好的可扩展性和可维护性。软件设计尽量模块化、组件化、是应用系统可灵活配置,适应不同的情况。3.2.3安全可靠性原则应用软件与数据库系统的设计要求做到安全可靠,防止非法用户的入侵。数据库的备份策略要恰当,以防灾难性事故发生。3.2.4用户界面设计原则46 企业人事管理系统图形化原则:用户界面的设计应做到精简美观大方。用户界面应直观、明了、条理清晰。实现“傻瓜型”管理——易学、易操作、易管理。3.2.5数据库设计原则对数据库的设计应该展现一致性、完整性、安全性、可伸缩性和规范化。3.2.6需求描述用户管理权限用例描述如表3.1描述项说明用例名称用户权限管理执行者系统管理员用例描述系统管理员对系统的用户权限进行管理,包括权限的分配,修改,删除前置条件职员升级为经理的;允许职员拥有其它功能权限的;后置条件经理可对拥有管理加班,批假,培训安排,查看意见等权限;普通员工拥有一般系统模块的访问权限基本事件流登录系统进入、用户权限模块;选择部门人员进行权限管理发生频率偶尔涉及业务实体人事管理员,用户权限管理表表3.1用户管理权限用例表46 企业人事管理系统3.2.7用例模型图3.1管理员用例图图3.2员工用例图46 企业人事管理系统3.2.8系统的分析类图1.描述了员工信息包中的类图图3.3员工信息类图2.描述了合同信息包中的类图图3.4合同信息类图3.描述了实发工资包中的类图图3.5实发工资类图46 企业人事管理系统3.3开发及运行环境本系统开发的操作系统是Windows7,使用的研发工具是微软的MicrosoftVisualStudio2010,使用前必须要安装好.NETFramework3.5。数据库使用了SQLServer2008。1.WindowsServer2003是微软Windows系列操作系统服务器版,支持高性能服务器,并且能够群集服务器,以便处理更大的负荷。通过这些功能实现了可靠性,有助于保证系统即使在出现问题时仍可用[9]。2.MicrosoftVisualStudio2010是美国微软公司的开发工具包系列产品的一种。是一个完善的开发工具集,它包括了软件整个生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境等等。其核心是.NETFramework,它提供了一个新的运行环境,在此环境下,可以用多种语言开发出在Windows平台上运行的各种复杂的分布式应用的程序。3.SQLServer2008是微软推出的综合、集成的数据研发平台,是一种进行数据管理和数据分析的数据解决方案。与SQLServer2005最大的区别是,SQLServer2008超越传统意义上的数据库管理系统,已经发展成为“用于大规模联机事务处理、数据仓库和电子商务应用的数据库和数据分析平台”。SQLServer2008数据库引擎为关系型数据和结构化数据提供了更安全稳定可靠的存储功能,实现了与MicrosoftVisualStudio、MicrosoftOfficeSystem以及新的开发工具包的紧密集成,由此可以为不同规模的企业构建和部署经济有效的解决方案[7]。46 企业人事管理系统第四章系统的总体设计4.1系统模块设计4.1.1系统总体模块及功能系统的主要模块如图4.1图4.1系统主要模块图46 企业人事管理系统系统分为七大管理板块:基础信息管理、人事管理、备忘记录、数据库维护、工具管理、系统管理、帮助,各功能模块即可独立工作,又相互联系,各管理模块数据独立。系统能够实现分级管理,通过先进的加密和授权管理,确保数据高度安全和保密。实现各类报表的打印以及相关统计图;能够实时掌握人事资料查询、人事资料统计等等各个环节的流转;实现基础数据、人事档案管理等等信息化管理,有效提高了企业人事管理的高效性、科学性以及信息化[8]。4.1.2系统管理系统启动的时候有一个管理员用户,使用这个用户登陆以后,可以添加其他用户,而且每个用户都可以更改自己的密码,系统还可以重新登录,退出系统,简单明了。4.1.3基础数据管理1)添加员工信息:系统自动生成员工的编号。管理员可以添加员工的基本信息。包括姓名,性别,籍贯,年龄,生日,住址,学历,专业等。2)修改员工信息:选择一个员工,可以修改这个员工的基本信息。3)查询员工的基本信息:可以根据员工的编号,姓名或是籍贯进行查询员工的基本信息,并且可以针对查询结果进行修改和删除等工作。4)删除员工信息:直接从列表中选中要删除的员工信息,然后进行删除操作,或者首先查询要删除的员工信息,然后在删除。4.1.4人事管理1)人事档案管理:主要分有职工基本信息、工作简历、家庭关系、培训记录、奖惩记录、个人简历,还能添加员工信息,修改员工信息、删除员工信息。2)人事资料查询:可以通过员工民族类别,文化程度,政治面貌,职工类别,职务类别,工资类别,部门类别,职称类别等进行查询员工信息。3)人事资料统计:统计企业员工各个类别的人数,方便企业查询。4.1.5备忘记录1)日常记事:记录一些在企业公司里面的会议,领导视查,人事调动,交接班等事情的事情,也可对记录的事情进行查询。2)通讯录:记录企业公司里所有员工的电话号码,QQ号码,邮箱地址等信息。46 企业人事管理系统4.1.6数据库维护1)备份还原数据库:可以根据系统默认路径备份还原数据库,也可以更改备份还原数据库的路径。2)清空数据库:可以按员工类型进行选择清空哪一项的数据库,以达到更加便捷的操作。4.1.7工具管理计算机:用于企业日常计算的一些用途。4.1.8帮助帮助信息:显示本管理系统的版本,及设计者情况。4.2数据库设计4.2.1数据库概念设计在数据库概念设计阶段中,研发人员从客户的角度看待数据及处理要求和约束,产生一个反映客户观点的概念模式,然后再把概念模式变换成逻辑模式,将概念设计从设计过程中独立起来,使各阶段的任务相对单一化,设计复杂度大大降低,不受特定DBMS的限制。利用E-R方法进行数据库的概念设计,可分为三步进行:首先设计局部E-R模式,再把各局部E-R模式综合成一个全局模式,最后对全局E-R模式进行优化,得到最终的模式,即概念模式。软件系统本质上是信息处理系统,因此在软件系统的整个研发过程中都必考虑到两方面的问题—“数据”及对数据的“处理”。在需求分析阶段即要分析用户的数据要求又要分析用户的处理要求。为了把用户的数据要求清晰明确地表达出来,现采用最常用的表示概念性数据模型的方法—(实体-联系方法)。由此方法作出的E-R模型如下:员工基本信息E-R图:46 企业人事管理系统员工基本信息职务类别政治面貌员工姓名员工编号职工类别民族类别部门类别文化程度工资类别图4.2员工基本信息E-R图员工合同信息E-R图:员工姓名籍贯性别进入公司时间联系方式生日员工合同信息民族合同到期时间学历图4.3员工合同信息E-R图46 企业人事管理系统员工考勤信息E-R图:早退次数员工考勤信息迟到次数员工姓名员工编号目前日期下班时间刷卡时间上班时间图4.4员工考勤信息E-R图员工请假信息E-R图:员工请假信息员工编号当前日期时间病假天数事假天数图4.5员工请假信息E-R图46 企业人事管理系统4.2.2系统的状态图图4.6系统状态图4.2.3系统的类图图4.7系统类图46 企业人事管理系统4.2.4系统的活动图图4.8人事管理活动图图4.9登陆管理活动图统计结果46 企业人事管理系统图4.10查询管理活动图4.2.5系统的顺序图:图4.11人事管理系统顺序图46 企业人事管理系统4.2.6数据库分析由于概念设计的结果是E-R图,因此数据库的逻辑设计过程就是把E-R图转化为关系模式的过程。由于关系模型所具有的优点,逻辑设计可以充分运用关系数据库规范化理论,使设计过程形式化地进行。设计结果是一组关系模式的定义。本系统使用SQLServer2008作为系统支撑数据库来建立和设计数据库的内容,建立数据库nongkang。调查有关企业人事信息的需求,仔细分析可知本系统数据表如下所示:字段字段名类型长度性质1员工编号INT4PRIMARYKEY2姓名VARCHAR20NOTNULL3民族VARCHAR10NOTNULL4性别VARCHAR10NOTNULL5年龄INT4NOTNULL6学历VARCHAR20NOTNULL7部门VARCHAR20NOTNULL8职称VARCHAR20NOTNULL表4.1员工信息表字段字段名类型长度性质1员工编号INT4PRIMARYKEY2基本工资FLOAT4NOTNULL3加班工资FLOAT4NOTNULL4交通补助FLOAT4NOTNULL5总工资FLOAT4NOTNULL6考勤扣除FLOAT4NOTNULL7保险扣除FLOAT4NOTNULL8扣税FLOAT4NOTNULL9总扣除FLOAT4NOTNULL10实际工资FLOAT4NOTNULL表4.2工资信息表字段字段名类型长度性质46 企业人事管理系统1部门编号INT4PRIMARYKEY2部门名称VARCHAR20NOTNULL3部门经理VARCHAR20NOTNULL表4.3部门信息表字段字段名类型长度性质1假条编号INT4NOTNULL2员工编号INT4NOTNULL3起始日期DATANOTNULL4终止日期DATANOTNULL5天数INT4NOTNULL6原由VARCHAR20NOTNULL7状态VARCHAR20NOTNULL8批准人VARCHAR20NOTNULL表4.4假条信息表针对企业人事管理系统的需求,通过对员工工作过程的内容和数据流程分析,为本系统设计如下的数据项和数据结构:基本的员工信息:包括员工编号,员工姓名,性别,出生日期,籍贯,民族,学历,专业,进入本公司的时间,所在部门,参加工作时间,职称备注等。员工调动信息:包括员工编号员工姓名原部门新部门调出的时间调入的时间原职务新职务备注等。员工考勤信息:包括员工编号员工姓名所在部门出勤时间旷工时间请假时间早退时间迟到时间加班时间出差时间。4.3数据库链接46 企业人事管理系统连接到数据库服务器通常需要由几个需要软长时间的步骤组成。必须建立一个物理通道,必须与服务器进行初次连接,必须分析连接字符串信息,必须由服务器对连接进行身份验证等等。 实际上,大多数的应用程序都是使用一个或几个不同的连接配置。当应用程序的数据量和访问量增大的时候,这意味着在运行应用程序的过程中,许多相同的连接将反复地被打开或关闭,从而会引起数据库服务器效率低下甚至引发系统崩溃。本系统后台代码自定义数据库访问类用于对数据基本操作方法的集合,通过在类中定义连接字符串与最基础的打开数据库方法,以此来严格控制数据库连接的打开与关闭。其中包括连接数据库的方法与对数据库基本的查询与非查询公共方法,其他操作数据库的方法只要引用这个类的相应方法就行了。当你想把数据库迁移到另一个不同的服务器,你只需要修改此文件中的数据库连接配置信息而已,并不需要重新部署这个应用程序以适应新的服务器的要求。4.4系统异常处理设计4.4.1异常信息系统出错信息的提供分两个部分,一是该系统的错误信息,二是数据库错误信息和应用程序自动化的错误信息。系统的错误信息将以统一的面貌表现出来,采用Windows提示信息方式。系统的出错和故障分为如下几类:1.程序错误:此类错误属于程序研发时由于设计人员出错产生的错误,这种错误一般是不可以更改的,需由设计人员对程序错误进行修正,在系统调试时应尽量考虑设计管理系统的每一种使用情况,将程序错误的出现尽量减小到最小。2.基本配置错误:在与数据库建立连接时必须保证相应的应用程序的配置是正确的,由于用户安装其他软件或中途关机都有可能造成基本配置的改变,基本配置的改变就会导致客户断无法与服务器连通,使系统不能使用,恢复一般为系统重安装或由相关技术人员对系统进行重新配置。4.4.2补救措施46 企业人事管理系统对于系统出现的不可恢复的错误,这里指的不可恢复错误是无法对系统进行重新配置,使系统正常使用。一般处理方式为后备恢复,设计系统采用数据库级的备份等,二是建立很详细的事务日志,所有的操作都要记录在案。4.5系统的安全与维护系统对不同的用户级别给予了不同的权限,登录后系统通过ASP.NET的Session对象记录登录用户信息,根据记录的信息标识导入到不同的管理页面。管理员对系统的维护主要是可以对数据库数据进行处理,其操作通过ADO.NET组件对数据库的访问来实现。对于有要求输入的验证页面时采用ASP.NET提供的RegularExpressionValidator控件,一方面执行更为详细的验证服务;另外则过滤掉对系统安全有威胁的敏感字符。46 企业人事管理系统第五章系统的实现5.1系统设计理念本软件适用的设计理念是简洁性,适用性,可扩展性,先进性,直观性,保密性。本软件的使用者的范围比较广,软件的界面应该简洁大方,软件做到了不需培训或少量的培训就能使用。采用组件技术,完全根据企业人事管理的整体业务过程的量身定制而成,同时保持了一定的灵活性,可以配合企业人事的业务流程改造,实现最佳的实践。考虑到系统正式运转时,系统在容量和功能上考虑了今后的扩展,并预留各功能子系统接口。本系统根据企业人事管理的具体特点,采用了多种当前最先进的技术和独有的设计思想,采用了VisualStudio2010软件作为系统的开发平台;采用了C#作为开发语言;且支持各类通用大型分布式数据库系统。系统中的各类数据表格,所见即所得,均可打印输出或存为文档格式。系统设计为用户权限以及日志管理。企业人事管理系统流程如图下所示:正确否?开始是登录主页浏览查询输入用户名和密码否图5.1用户登录46 企业人事管理系统正确否?开始是登录主页增加删除输入用户名和密码否修改查询图5.2管理员登录5.2管理员主要功能模块5.2.1登陆界面系统用户都必须通过登陆验证才能进入系统进行相关操作,不同权限的用户,登陆后见跳转到不同权限的操作界面,登陆界面如图5.3图5.3用户登陆46 企业人事管理系统管理员登陆代码如下:if(textName.Text!=""&textPass.Text!=""){SqlDataReadertemDR=MyClass.getcom("select*fromtb_LoginwhereName=""+textName.Text.Trim()+""andPass=""+textPass.Text.Trim()+""");boolifcom=temDR.Read();if(ifcom){DataClass.MyMeans.Login_Name=textName.Text.Trim();DataClass.MyMeans.Login_ID=temDR.GetString(0);DataClass.MyMeans.My_con.Close();DataClass.MyMeans.My_con.Dispose();DataClass.MyMeans.Login_n=(int)(this.Tag);this.Close();}else{MessageBox.Show("用户名或密码错误!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);textName.Text="";textPass.Text="";}MyClass.con_close();}elseMessageBox.Show("请将登录信息添写完整!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);5.2.2用户管理系统管理员可添加新管理员,新用户,并为新用户指定角色,并提供用户信息编辑和账号锁定,操作界面设计如图5.4。46 企业人事管理系统图5.4用户管理用户管理权限代码如下:privatevoidtool_UserPopedom_Click(objectsender,EventArgse){if(ModuleClass.MyModule.User_ID.Trim()=="0001"){MessageBox.Show("不能修改超级用户权限。");return;}F_UserPopeFrmUserPope=newF_UserPope();FrmUserPope.Text="用户权限设置";FrmUserPope.ShowDialog(this);}5.2.3添加员工系统管理员可以添加员工信息,包括员工的一些基本个人信息,该模块界面设计如图5.546 企业人事管理系统图5.5添加员工员工信息代码如下:if(FrmName=="人事档案管理")//判断当前要打开的窗体{PerForm.F_ManFileFrmManFile=newPWMS.PerForm.F_ManFile();FrmManFile.Text="人事档案管理";//设置窗体名称FrmManFile.ShowDialog();//显示窗体FrmManFile.Dispose();}if(FrmName=="人事资料查询"){PerForm.F_FindFrmFind=newPWMS.PerForm.F_Find();FrmFind.Text="人事资料查询";FrmFind.ShowDialog();FrmFind.Dispose();}if(FrmName=="人事资料统计"){PerForm.F_StatFrmStat=newPWMS.PerForm.F_Stat();FrmStat.Text="人事资料统计";FrmStat.ShowDialog();FrmStat.Dispose();}46 企业人事管理系统5.2.4系统日志此模块为了记录用户的历史操作记录,什么时间、对数据库的那个表进行了什么操作,一方面为当用户操作失误时有记录可查询,另一方面规范了用户的操作,防止恶意人员的蓄意错误操作。同时还可以通过时间或登录用户名搜索其操作的日志。5.3基础信息主要功能模块5.3.1基础数据模块该功能模块主要包括了民族,职工,文化程度政治面貌,部门,工资,职务,职称,奖罚,记事本等设置,在这些设置里可以进行增,删,改,查等功能设置。界面的设计如图5.6图5.6基础数据模块同时民族类别设置,界面的设计如图5.7图5.7民族类别设置模块46 企业人事管理系统5.3.2员工提示模块该功能模块包括了员工生日提示和员工合同提示,在这些提示里可是设置提示时间并且保存,界面的设置如图5.8图5.8员工提示信息模块员工生日提示如图5.9图5.9员工生日提醒模块5.4人事管理主要功能模块5.4.1人事档案管理模块该功能主要包括了对员工的的基本信息,工作简历,家庭关系,培训记录,奖罚记录,个人简历进行了描述,并且实现了增添,修改,删除员工的信息。界面的设计如图5.1046 企业人事管理系统图5.10人事档案管理模块5.4.2人事资料查询模块该模块主要包括了查询员工的基本信息,该模块还能通过查看员工的工作时间,民族类别等类别来查看一些特定的信息。设计如图5.1146 企业人事管理系统图5.11人事资料查询模块5.4.3人事资料统计模块该模块可以按不同的类别来查询不同类型的员工信息以达到更加快速的查询员工信息。界面设计如图5.12图5.12人事资料统计模块5.5备忘记录主要功能模块5.5.1日常记事模块这个模块主要是关于公司事务,人事部事务,技术部事务的一些日常记事,记录一些公司上,或人事部,或技术部即将要更改或发生的一些事情,具体设计如图5.13图5.13日常记事模块46 企业人事管理系统5.5.2通讯录模块该模块主要功能是记录了公司员工的一些联系方式,里面有工作电话,私人号码,QQ号码,电子邮箱。具体设计如图5.14图5.14通讯录模块5.6工具管理主要功能模块5.6.1计算机模块该模块主要用来系统日常记事的一些事物,具体设计如图5.15图5.15计算机模块46 企业人事管理系统5.6.2记事本模块该模块主要用来记录一些公司的重要事情,具体设计如图5.16图5.16记事本模块46 企业人事管理系统第六章系统测试6.1测试叙述依据用户需求,设计测试用例,对软件进行系统级测试。测试的重点是对各项功能的正常运转进行全面测试。测试的目标是确保所开发软件的功能符合企业用户的要求。6.2系统部分单元测试实例测试方法:利用有效的和无效的数据来执行各个用例、用例流或功能,以核实以下内容:1.在使用有效数据时得到预期的结果2.在使用无效数据时则显示相应的错误消息或警告消息3.各业务流程规则都得到了有效的应用6.2.1登录界面的测试表6.1登录界面的测试测试数据预期结果测试结果1.账号输入xiaolinzi密码输入xiaolinzi进入系统管理员主界面进入系统管理员主界面(如图6.1)2.账号输入xiaolinzi密码输入1提示密码错误提示密码或用户名错误(如图6.2)46 企业人事管理系统图6.1成功登陆图6.2提示用户名或密码错误6.2.2退出系统的测试测试数据预期结果测试结果退出系统提示退出系统成功成功退出系统(如图6.3)46 企业人事管理系统图6.3提示是否退出系统6.3测试结果通过对该系统各功能模块的测试,得出以下结论:此系统的功能是可以基本满足用户需求,性能基本达到需求,具有可用性和友好性。但是测试用例有一定的局限性,测试环境和实际运行环境也存在着一定的差异,所以不可能完全地、准确地测试出系统存在的问题,还需要在后期的维护过程中,对系统暴露出来的问题进行纠正维护或更新。46 企业人事管理系统结束语通过本次毕业设计,使我在理论和实践两方面的能力都得到了进一步的锻炼。让我对Asp.NET平台体系和架构有进一步的认识,更加熟悉了MicrosoftSQLServer2008数据库平台和MicrosoftVisualStudio2010开发平台的运用;同时,让我更熟练的掌握Asp.NET的想关技术和对架构思想的运用。在这个过程中少不了周学清老师的帮助,在这周学清老师的带领之下,历时6个月的时间,才完成了本次系统;完成之后感觉非常有成就感,因为在自己辛苦的努力下见证了一个系统的诞生;但是,同时我也觉得自己要更加努力,尤其是看见别人做出的优秀系统并认识到自己的不足和许多可改进之处时,我要更加努力。总的来说,收获还是很多的,经过一个完整项目的开发我也对软件开发的过程也有了新的认识和理解,对面向对象的分析和设计通过实践有了更加深刻的认识和理解。毫无疑问,这次毕业论文设计是对我大学四年所学知识的一次诠释同时对我在今后的工作中进行程序设计时是有相当大的帮助作用的。由一个对计算机一窍不通的人到能单独开发工程的人,这显然已达到我入校求学的目的了,当然我会在今后更加努力上进的学习。46 企业人事管理系统致谢首先,在本次毕业设计中,非常感谢我的指导老师—周学清老师,我从我的指导老师身上学到了很多东西,是他从开始选题到最后论文的定稿给我了很多很好的建议和耐心的指导,也是他教会了我为人处事的道理,周学清老师认真负责的态度是我受益匪浅,他无论是理论和实践都教会了我们很多东西,使我在以后的生活和工作中都得到了巨大的帮助;同时,我也要感谢另外一位我敬重的老师—屠添翼老师,自从大一进入大学以来,在他的细心栽培下,把我从一个懵懂无知少年变成一个成熟稳重的青年,在大学的这段时间是我知识增长最快的一个阶段,也使我的人生画上了美丽的一幅画。其次,我还要感谢我的室友及其他同学,因为有你们在,我的论文才得以顺利完成。感谢你们,大学四年给我了那么多的帮助与鼓励,我不会忘记我们曾经一起走过的风风雨雨,那些开心的日子,我会收藏在永恒里。毕业论文至此就这样完成,这也将意味着我大学四年的学习生活很快就结束了,既兴奋又忧伤,兴奋的是终于可以步入社会,为自己的人生去画上更加漂亮的一笔,忧伤的是我们即将分开,或许各种原因不会再见,但是我坚信在我人生中最重要你们也一定会活出自己的一片天地。最后得感谢所有老师,正是您们辛勤的付出,才能有我们健康、茁长的成长,再次说一句您们辛苦了,即使以后离开,我也不会忘记您们的教导,您们永远活在我们心里,祝您们身体健康,工作顺利。46 企业人事管理系统参考文献[1] 王珊, 陈红. 数据库系统原理教程[M]. 北京:清华大学出版社, 2008:45-78. [2] 李晓喆.  SQL Server 2000管理及应用系统开发[M]. 北京:人民邮电出版社,2002: 101-156. [3] 侯晓霞, 柴洪辉. C#技术内幕[M]. 北京:清华大学出版社, 2008: 12-36. [4] 李敏波. C#高级编程[M]. 北京:清华大学出版社, 2009: 55-78. [5] 张志华, 刘云鹏. C#设计模式[M]. 北京:电子工业出版社, 2006,79-98.  [6] 张晓坤,谭立平,车树良.C#编程语言详解[M].北京:电子工业出版社,2007.[7] 周存杰. Visual.C#.NET.网络核心编程[M].北京:清华大学出版社,2008.[8] 姜力,高群.SQL Server数据库设计与管理[M].北京:中国林业出版社,2007. [9] Christopher P, Ben light.  A critical success factors model for eprimplement[M].  IEEE software, 2011: 16-30. [10] Chris Goode.  ASP.NET1.0入门经典-C#编程篇[M].  IEEE Trans on Systems, Man and Cybernetics, 2011,15(2): 16-35. [11] Dejan Sunderic. 陈浩奎,谢俊,石朝译. SQLServer2000存储过程与XML编程. Version2[OL].[12] [美] John Sharp Jon Jagger. 《Microsoft Visual C#.NETprogram 》. 北京: 北京大学出版社, 2002.[13] WSH.A Discipline for software Engineering. Addison. 2011: 97-142 [14] Sugeno M, Kang G T. Fuzzy modeling and control of multilayer incinerator [J]. Fuzzy Sets Syst.,2007,18(2): 329-346. [15]冉春玉,王洪成,李芳﹒ASP.NET技术及其在网站开发中的应用[J]﹒武汉理工大学学报.2002,24(3):56~60 [16]李建忠﹒.net框架程序设计(修订版)[M].北京:清华大学出版社,2003.1146'