本科毕业设计--基于javaweb人事管理系统的设计与实现.doc
河南科技大学本科毕业设计(论文)基于JavaWeb人事管理系统的设计与实现摘 要在当今社会,互联网空前的发展,给人们的工作和生活带来了极大的便利和高效,信息化、电子化已经成为节约运营成本,提高工作效率的首选。考虑到当前大量企业的人事管理尚处于单机系统阶段,不但效率低下、因为管理的不慎而出现纰漏,还常常形成信息孤岛。因此根据现在大多数企业的需求,设计此人事管理系统,以帮助企业达到人事管理办公自动化、节约管理成本、提高企业工作效率的目的。本人事管理系统采用面向对象语言JavaWeb进行设计与实现,数据库采用SQL Server 2005。开发之前,首先经过调研,得到系统功能需求,根据需求分析确定开发的内容,其次对系统功能进行模块化设计,得到初步的系统总体结构,然后编写代码具体实现,最后对各个模块进行测试优化。本次开发的功能是人力资源管理系统中的一部分,主要有权限控制、查询员工信息、增加员工信息、批量增加员工信息、控制员工工作状态、签到、生日提醒等功能。通过本次系统的设计与开发,旨在对公司的人力资源进行个性化管理,从而提高公司的运作效率。本文详细介绍了人事管理系统的功能需求,系统设计和具体实现。简要介绍了系统开发采用的过程方法。关键词:人事管理系统,JavaWeb,数据库,批量增加,生日提醒JAVAWEB PERSONNEL MANAGEMENT SYSTEM BASED ON THE DESIGN AND IMPLEMENTATIONABSTRACTIn today's society, the Internet unprecedented development, to people's work and life has brought great convenience and efficiency, information technology, electronic technology has become operational cost savings, improve efficiency of choice. Considering the current large number of companies still in the stand-alone system, personnel management stage, not only inefficient, because of careless management flaws, often forming islands of information. Therefore, according to the needs of most businesses now, this personnel management system designed to help companies achieve the personnel management office automation, saving management costs, improve work efficiency. The personnel management system using object-oriented language design and implementation JavaWeb the database using SQL Server 2005. Development, first through research, get the system functional requirements, according to the development needs analysis to determine the content, followed by the modular design of the system function, the preliminary overall system structure, and then write the code specific implementation, the final test of each module optimization. The development of the human resource management function is part of the system, there are access control, query employee information, and increase employee information, batch add employee information, control staff working status, attendance, birthday reminders and other functions. Through this system design and development, aimed at the company's human resources personalized management, thereby enhancing its operational efficiency. This paper describes the personnel management system functional requirements, system design and implementation. Briefly describes the process of system development methods used.KEY WORDS:Management Information System,JavaWeb,Database ,Batch increase employee information ,Birthday remindersV目录 前言1第1章 问题陈述3§1.1 项目背景3§1.2 开发语言和环境3§1.2.1 B/S架构3§1.2.2 配置环境4第2章 需求分析5§2.1 需求分析内容的收集5§2.1.1 调查的目的5§2.1.2 调查内容5§2.1.3 调查方式5§2.2 需求分析内容的整理6第3章 系统分析7§3.1 系统的初步调查7§3.2 系统的可行性研究7§3.2.1 营运可行性7§3.2.2 技术可行性7§3.2.3 营运可行性8第4章 系统设计9§4.1 系统功能设计9§4.2 系统的功能模块图10§4.3 系统业务流程设计11第5章 数据库的设计12§5.1 数据库表的设计12§5.1.1 概念模型设计12§5.1.2 数据库物理设计14§5.2 安全设计16第6章 系统详细设计与实现17§6.1 系统的功能概述17§6.1.1 系统的登录功能17§6.1.2 修改密码功能17§6.1.3 请假功能18§6.2 管理员的功能概述18§6.2.1 登录后的界面18§6.2.2 增加员工的设计与界面18§6.2.3 更新员工的设计与界面21§6.2.4 查询员工的设计与界面22§6.3 部门经理的功能概述23§6.3.1 登录后的界面23§6.3.2 查询部门员工的设计与实现23§6.4 普通员工的功能概述24第7章 测试25§7.1 测试目的25§7.2 测试设计25结论27参考文献28致谢29附录30前言随着信息化、自动化时代的到来,电脑在我们生活中扮演重要的角色,特别是对公司而言,如果公司采用电脑来管理员工,公司的运行效率将会得到很大的提高。一个公司多达上万人,如果没有一个好的管理制度,管理起来将会很麻烦。而如果采用人事管理系统,管理会简单很多,一个好的人事管理系统可以给人们的生活带来极大的便利和高效,可以很好的提高人们工作效率,为企业创造更多的价值。本次毕业设计的目的,是做一个网络版人事管理系统,以对企业人员的基本信息进行增删改查,对企业中不同职位的人进行权限的配置,旨在更好和个性化的管理企业中的各个员工。国外专家学者对人事管理系统的研究起步比较早,发达国家的企业非常注重自身人事管理系统的开发。特别是一些跨国公司,更不惜花费大量的人力和物力来开发相应的人事管理系统,他们主要基于ASP.NET来开发人事管理系统(B/S结构);当然随着Java继续的流行,基于Java开发的人事管理系统也逐渐变的流行起来(本系统也是基于Java开发的B/S结构)。他们通过这些技术开发一个企业级的人事管理系统,建立一个多信息数据流和业务流的开发性系统实现真正意义上的人事管理目标,挑选和留住最佳人才,同时不断提高这些人才的工作效益。目前,我国企业对于人事管理系统的应用基本上还处于初级阶段,主要表现在应用范围比较窄、水平比较差和效果不理想等方面。虽然目前存在这些问题,但很多企业还是根据自身的条件和需求,开始实施应用人事管理系统,以加强和深化人事管理工作。所以说,采用人事管理系统能够为用户提供充足的信息和快捷的查询手段,而实施一套既有国际化管理理念,又能够满足中国特殊的人事管理环境的管理信息系统,则是实现高效的人事管理的一种重要途径,能够使人事管理都能专注于人力资源的发展和规划,并大幅提升工作效率和水平。本次课题的目的是通过人事管理系统,使公司方便对各个员工进行个性化管理,提高企业各个员工的办事效率,从而增加员工工作的积极性和提高企业的运行效率。人事管理系统当然少不了对员工信息的增删改查和权限的分配;然而现在开发的人事管理系统往往存在一些问题,功能不够完善。例如,增加用户信息,很多管理系统在增加用户信息时候,都是一条条输入,这样即浪费时间,而且也容易出错。所以我设想设计一个可以批量增加员工信息的页面,你只要把员工的信息预先按格式写一个.txt文本文件,就可以完成批量增加,从而提高的办公的效率;还有就是生日提醒功能,当然这不是一个大的问题,但是它可以使企业更个性化和人性化。本人事管理系统主要采用生命周期开发方法,具体步骤如下:(1) 问题陈述:项目的开发背景,开发目的和意义,当前编程语言的发展趋势;(2) 需求分析:进行调研,得到系统功能需求,根据需求分析确定开发的内容;(3) 系统设计:对系统功能进行模块化设计,得到初步的系统总体结构;(4) 详细设计:对各模块进行优化设计;(5) 数据库设计:根据系统功能需求进行数据库及其相关数据表的设计;(6) 编写源代码:对各模块进行计算机实现,计算机的运行环境搭建是在Myeclipse8.5、JDK6.0、Tomcat6.0。使用Java语言和JavaScript等语言,主要的实现技术是Ajax、Jsp和Servlet等;(7) 测试:首先是单元测试,集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能;然后是系统集成测试,把测试过的模块组装起来,对与设计相关的软件体系结构的构造进行测试;本系统主要是使用JavaWeb语言来开发,采用JSP和Servlet等实现技术,数据库采用SQL Server2005。第1章 问题陈述§1.1 项目背景 随着信息化、自动化时代的到来,电脑在我们生活中扮演重要的角色,特别是对公司而言,如果公司采用电脑来管理员工,公司的运行效率将会得到很大的提高。一个公司多着上万人,如果还按照传统的方法管理员工,管理起来将会很麻烦。而如果采用网络版多机人事管理系统,管理会简单很多,一个好的人事管理系统可以给人们的生活带来极大的便利和高效,可以很好的提高人们工作效率,为企业创造更多的价值。本次毕业设计的目的,是做一个人网络版多机事管理系统,可以对企业人员的基本信息进行增删改查,对企业中不同职位的人进行权限的配置,旨在更好和个性化的管理企业中的各个员工。 该系统主要完成目标是建立一个功能齐全、界面友好、使用方便、能够迅速准确地完成各种人事信息查询、修改等工作。§1.2 开发语言和环境本系统采用B/S结构(Browser/Server结构)即浏览器和服务器结构开发,开发语言采用Java,使用Java中的JSP和Servlet技术。配置开发环境为MyEclipse8.5、Tomcat6.0、JDK6.0和SQL Server 2005。§1.2.1 B/S架构B/S是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全 。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、速度快、效果优。§1.2.2 配置环境MyEclipse是一个十分优秀的用于开发Java、J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。可以说MyEclipse几乎囊括了目前所有主流开源产品的专属eclipse开发工具,所以本次开发也毫无疑问用MyEclipse8.5开发。Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。本次开发使用Tomcat6.0。JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品,包括了Java运行环境、Java工具和Java基础类库,本次使用的版本是JDK6.0。SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 2005数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能。第2章 需求分析§2.1 需求分析内容的收集为了充分地了解用户可能提出的要求,在调查研究之前,我们应该要充分的做好准备工作,要明确调查的目的、调查的内容和调查的方式。§2.1.1 调查的目的调查的第一步是了解一个企业的内部机构,主要业务活动和职能。其次,要了解本组织部门的大致工作流程和任务范围划分。这一阶段的工作是很多的。可能有些管理人员缺乏对计算机的了解,他们不知道或不清楚哪些信息对于数据库系统设计者是必要的或重要的,不了解计算机在管理中能起什么作用,做哪些工作。另一方面,数据库系统设计者往往缺乏对管理对象的了解,不了解管理对象内部的各种联系,不了解数据处理中的各种要求。由于管理人员与数据库系统设计者之间存在着这样的距离,所以需要管理部门和数据库系统设计者更加紧密地配合,充分提供有关信息和资料,为数据库系统的设计打下良好的基础。§2.1.2 调查内容调查的内容是需求分析收集的最重要环节,也是我们下一步开发项目的基础。首先我们应该对企业的内部结构和业务流程有充分的理解,这些是设计权限不可缺少的;其次了解各层管理员的工作内容,例如部门经理,他平时的工作都是什么,这些可以针对不同的人设置不同的工作内容,也是权限划分的一部分;然后就是普通员工,一个好的管理系统是针对公司的全体员工,这样就需要调查普通员工可能涉及的工作的内容;还有就是安全方面的考虑,例如一个员工离职了,他应该不能再次登录系统。§2.1.3 调查方式(1) 网上调查:在网上查看一些国外企业人事管理系统的设计(2) 开座谈会:直接面对面交流,可以更快的了解企业的需求(3) 查看业务记录:查看公司的业务记录,如一些票据等§2.2 需求分析内容的整理把收集到的信息转化为下一设计阶段可用形式的信息,必须对需求信息做分析整理工作。然后做业务流程分析,获得业务与数据联系的形式描述。5第3章 系统分析§3.1 系统的初步调查 系统初步调查的方式主要采用系统分析员与企业的管理者和人事信息管理人员的交流,并了解企业在人事管理方面的一些内容和工作流程情况,如他们在系统功能、性能等方面的要求及用户在硬件配置、开发周期处理方式等方面的意向与打算,把用户要求成文,完成系统分析报告。企业现行的人事信息管理方式主要是使用传统人工的方式,如果采用人事管理系统,利用人事管理系统的优点能够极大地提高人事管理的效率,也是单位的科学化、正规化管理,与世界接轨的重要条件。根据上述分析,可以安排可行性研究。§3.2 系统的可行性研究在对系统目标和环境精心分析的基础上,从技术可行性、经济可行性和营运可行性三个方面对本系统进行可行性研究。 §3.2.1 营运可行性本系统是面向企业内部的人事信息管理人员和在职的员工,可能有的员工并没有接触过这些类似的系统,但是Windows的友好界面和本系统容易安全使用,可以使员工在人事管理人员的帮助下,快速掌握人事管理系统的使用。同时用户也可以根据我们编写的详细操作说明书,来快速掌握本系统的使用。 §3.2.2 技术可行性从目前流行的数据库开发从管理软件来看,对于有关数据库的信息管理系统,用基于JavaWeb的架构开发B/S结构,在数据库方面采SQLServer 2005,无疑是实际应用中很合适的一种解决方案。本系统的开发环境是:MyEclipse8.5+JDK6.0+Tomcat6.0,并用IE7.0进行人事管理系统测试。此开发环境的搭配比较安全可靠,这也是目前比较流行的JavaWeb开发环境的搭配。开发本系统对电脑硬件的要求很高,然而运行本系统对电脑硬件的要求比较低,无论操作系统,内存和主屏,现在一般的电脑都已满足,所以用户不用担心电脑配置问题。§3.2.3 营运可行性大多数企业单位的人事信息管理目前还完全以传统的人工管理方式或单机方式进行管理,耗时多、效率低下并且极易出现错误。这样不仅给企业的正常运行带来问题,而且公司因为此运营效率低下,甚至带来无法估量的损失。而利用计算机来实现人事管理以成为当前社会逐渐发展的主流,特别是一些外国的企业,人事管理系统已经很普及了。开发一套能满足人事信息管理的软件是十分必要的,实现人事管理的自动化,在减少由于人为失误而造成损失的同时,也可以使人事信息管理部门减少许多费用支出,如实现自动化管理后可以精简人员,减少工资支出等。由上述三方面的分析可以看出,本系统的开发时机已经成熟,从多种角度考虑开发此系统都是可行的,并且也是十分必要的。7第4章 系统设计§4.1 系统功能设计权限设计:本系统对于企业的不同等级的员工应该设置不同的权限,主要分为三个权限:系统管理员、部门经理、普通员工。普通员工的权限最低,只能查看和修改自己的信息,不允许操作其它任何用户,当然签到、请假和生日提醒是每个用户都有的功能;部门经理可以查看自己部门的员工信息,此外还据有普通员工的权限,和增加本部门的员工信息。系统管理员据有的操作权限最高,它不但拥有用户的基本操作权限,还可以查询所有员工信息和增加员工信息,并对其进行修改和删去的权限;具体的功能设计:本系统总共分为六大模块:生日提醒、修改密码、增加员工、修改员工、查看员工、考勤管理。作为一个管理系统还附带用户的登录和退出等功能。修改密码:每个用户的初始密码都是000000,每人用户都可以修改自己的密码。增加员工:此模块主要分为两个模块。一个是增加单个员工,用户根据严格的格式要求,规范的填写要增加的用户信息,完成增加用户。二是批量增加员工信息,用户根据批量增加的格式要求,把规范的员工信息一条条的写在.txt文件中,通过系统的批量增加功能增加多个用户信息。修改员工:包括修改用户是否处于离职状态和修改用户的基本信息,如果用户被修改为已离职状态,那么用户不能登录该系统。查看员工:包括查看自己的基本信息和查看部门的基本信息,和查看所有用户信息,主要是根据用户的不同权限来设置的。考勤管理:包括签到功能和请假功能,用户每天只能签到一次;用户每天也只能请假一次。生日提醒:为了更加人性化的管理一个企业,设置了此功能。还有一个功能在界面上提现不出来,日志模块,用户的所有操作信息,都会有相应的日志与其对应,这样增加系统的安全性,而且测试系统时也比较方便。§4.2 系统的功能模块图系统的总体功能模块图如图4-1所示,它包括系统的权限模块和功能模块,以及这些模块的划分。图4-1 人事管理系统功能结构图§4.3 系统业务流程设计系统的总体流程图如图4-2所示,它包括不同权限的人登录,所进入不同的模块的流向。图4-2 人事管理系统流程图第5章 数据库的设计§5.1 数据库表的设计项目所涉及的系统数据库的表包括:权限表(Role)、部门表(Department)、员工表(Employee),联系表(Contact)、工资表(Salary)。§5.1.1 概念模型设计 概念性数据模型关心的是如何完整、正确地反映客观实际情况,不关心在数据库中如何实现。这种数据模式能真实地反应用户要求的实际情况,是一种容易被人们理解的直观的数据库结构模式。如图5-1到5-6是数据库表的数据图。图5-1 员工数据图图5-2 联系方式数据图图5-3 部门数据图图5-4 角色数据图图5-5 请假数据图图5-6 工资数据图§5.1.2 数据库物理设计 本系统的数据库采用SQLServer2005,设计的表如下:(1) 员工信息表(Employee)主要包含员工的基本信息,它本系统设计的核心,主要字段包括员工编号、用户名、密码、身份证号、部门号,角色编号等字段,如表5-1所示。表5-1员工信息列名数值类型是否为空备注EmployeeNochar(6)NOT NULL员工编号,主键UserNamevarchar(20)NOT NULL用户名,唯一Passwordchar(32)NOT NULL密码RoleIdchar(1)NOT NULL角色编号Namenvarchar(15)NOT NULL姓名IDNumberchar(18)NOT NULL身份证号,唯一BirthdaydatetimeNOT NULL生日Gendernchar(1)NOT NULL性别Statuschar(1)NOT NULL员工状态,默认0(在职)DepartmentIdchar(1)NOT NULL部门编号EmployFormdatetimeNOT NULL入职日期EmployTodatetimeNULL离职日期(2) 角色表(Role)是权限的划分,与员工信息表的RoleId字段相关联,如表5-2所示。表5-2角色列名数值类型是否为空备注RoleIdchar(1)NOT NULL角色编号,唯一RoleNamenvarchar(10)NOT NULL角色名,唯一(3) 部门表(Department)是部门的划分,与员工信息表的DepartmentId字段相关联,如表5-3所示。表5-3部门列名数值类型是否为空备注DepartmentIdchar(1)NOT NULL部门编号DepartmentNamenvarchar(20)NOT NULL部门名称(4) 工资表(Salary)主要有员工的基本工资和签到天数,设计到考勤部分,如表5-4所示。表5-4工资列名数值类型是否为空备注EmployeeNochar(6)NOT NULL员工编号,外键signinintNULL签到天数leaveintNULL请假天数wagefloatNULL工资signtimedatetimeNULL签到时间(5) 联系表(Contact)是员工的各种联系方式,与员工信息表主外键关联,如表5-5所示。表5-5联系列名数值类型是否为空备注EmployeeNochar(6)NOT NULL员工编号,外键Phonevarchar(12)NULL电话号码Mobilechar(11)NULL手机号码Emailvarchar(30)NULL邮箱Addressnvarchar(50)NULL地址(6) 请假表(Leave)是员工的请假信息,包括请假开始时间和结束时间等字段,如表5-6所示。表5-6请假列名数值类型是否为空备注EmployeeNochar(6)NOT NULL员工编号,外键starttimedatetimeNULL请假开始日期totaldayintNULL请假天数leavetimedatetimeNULL请假结束日期isagreechar(1)NULL是否同意,默认0(同意)reasonvarchar(200)NULL请假原因§5.2 安全设计由于数据库存在主外键关联和许多唯一的属性,所以安全设计是很重要的一部分,不然会造成数据库中数据的不完整。(1) 首先是员工信息表(Employee)中的员工号(EmployeeNo)字段,该字段为主键,所以在其它表(Salary、Leave、Contact)中,该字段作为外键,所以必须设置级联更行和级联删除。(2) 登录用户名(UserName)的唯一性,这个在系统中增加员工信息是有判断的,但如果在数据库直接插入信息,这需要有(unique)字段的约束。(3) 身份号(IDNumber)的唯一性和正确性,在系统中增加员工,对此都有验证,如果直接在数据中插入身份证号,应该注意和出生日期和性别的一致性。(4) 其它唯一性的约束都在表中有标出。15第6章 系统详细设计与实现 §6.1 系统的功能概述本系统从操作权限来分,分为三大模块(管理员、部门经理、普通员工)。其中登录、生日提醒、签到、请假、修改密码是每个角色都有的功能。§6.1.1 系统的登录功能 功能名:Login 用户在“登录”页面中输入:用户名(userName)、密码(password),然后提交系统对用户进行合法性检查,如果合法,进入到系统主页面。否则,返回到“登录”页面,并提示错误原因。如图6-1是登录界面:图6-1 登录界面图§6.1.2 修改密码功能功能名:ChangePassword 用户在“修改密码”页面中输入:原密码、新密码、确认密码,然后提交系统检查新密码与确认密码是否一致,如果一致,更新员工基本信息(Employee)中用户本人的密码(password)。返回到主页面。否则返回到“修改密码”页面,并提示错误原因。如图6-2是修改密码界面:图6-2 修改密码界面图§6.1.3 请假功能功能名:Leave请假功能是公司每个员工的具有的功能,如图6-3所示:图6-3 请假界面图§6.2 管理员的功能概述管理员负责系统中的数据维护工作,包括增加员工、批量增加员工、查询员工信息,删除员工休息等多重功能。§6.2.1 登录后的界面如图6-4是管理员登录后的界面图:图6-4 管理员登录后的界面图§6.2.2 增加员工的设计与界面(1) 功能名:AddEmployee 用户在“增加员工基本信息”页面中输入:用户名(UserName)、角色(RoleID)、姓名(Name)、身份证号(IDNumber)、所属部门(DepartmentID)、入职日期(EmployForm)、电话号码(Phone)、手机号码(Mobile)、电子邮箱(Email)、住址(Address),然后提交。系统检查:用户名的合法性、身份证号的合法性。检查电话号码、手机号码、电子邮箱格式的合法性。如果检查通过,增加员工基本信息(Employee):(1) 员工编号(EmployeeNo),根据先后顺序生成 (2) 用户名(UserName),输入 (3) 密码(Password),默认为“000000” (4) 角色(RoleID),输入 (5) 姓名(Name),输入 (6) 身份证号(IDNumber),输入 (7) 出生日期(Birthday),取自身份证号 (8) 性别(Gender),取自身份证号 (9) 状态(Status),默认为“在职” (10) 所属部门(DepartmentID),输入 (11) 入职日期(EmployForm),输入 并增加员工联系方式(Contact): (1) 员工编号(EmployeeNo),同员工基本信息(Employee) (2) 电话号码(Phone),输入 (3) 手机号码(Mobile),输入 (4) 电子邮箱(Email),输入 (5) 住址(Address),输入 如果员工信息已存在(身份证号、姓名相同),并且状态为“离职”,更新员工基本信息(Employee): (1) 密码(Password),默认为“000000” (2) 状态(Status),“在职” (3) 所属部门(DepartmentID),输入 (4) 入职日期(EmployForm),输入 (5) 离职日期(EmployTo),(空) 增加成功后调用“查询员工信息”功能,查询新增加的员工信息 如果检查未通过或增加失败,返回“增加员工信息”页面,提示错误原因,并恢复页面中所有的输入项,如图6-5和6-6分别是增加界面图和提示的界面图:图6-5 单个增加员工界面图图6-6 单个增加员工错误提示界面图(2) 功能名:BatchAddEmployee 用户事前可将“员工信息文件”保存到服务端的某一目录下(不需要通过页面上传文件)。员工信息文件的结构如下: (1) 员工信息文件为一纯文本文件(文件后缀为“.txt”) (2) 文件中的每一行为一条员工信息 (3) 每一条员工信息包括多个员工信息属性,属性使用分隔符“|”分隔 批量增加员工界面如图6-7所示:图6-7 批量增加员工界面图§6.2.3 更新员工的设计与界面(1) 更新员工联系方式功能名:ChangeContact 用户在“更新员工联系方式”页面中输入:电话号码(Phone)、手机号码(Mobile)、电子邮箱(Email)、住址(Address),然后提交。系统检查:电话号码、手机号码、电子邮箱格式的合法性。如果检查未通过,返回“更新员工联系方式”页面,提示错误原因。 系统根据当前登录的用户名查询员工基本信息(Employee)。再根据员工编号查询员工联系方式(Contact),用新的联系方式替换原联系方式。如果某项联系方式为空,则不替换该项原联系方式。更新成功后调用“查询员工信息。如图6-8所示:图6-8 修改员工联系界面图(2) 更新员工状态功能名:ChangeStatus 用户在“更新员工状态”页面中输入:用户名(UserName)、状态(Status)、离职日期(EmployTo),然后提交。 系统检查:用户名是否存在、离职日期是否大于入职日期。如果检查通过,更新员工基本信息(Employee)中的状态、离职日期。 更新成功后调用“查询员工信息”功能,查询更新的员工信息,如果检查未通过或更新失败,返回“更新员工状态”页面,提示错误原因。如图6-9所示:图6-9 更新员工状态界面图§6.2.4 查询员工的设计与界面(1) 查询所有员工功能名:QueryAllEmployee用户点击查询所有员工时,查询的员工信息在页面以表格的形式显示出来,信息过多采用分页显示,上面附带删去员工的功能。如图6-10所示:图6-10 所有员工信息界面图(2) 查询单个员工功能名:ShowInfo用户点击查询单个员工时,输入用户名,如果用户名正确,则显示该员工的信息。§6.3 部门经理的功能概述部门经理也可以增加员工,但是只能单个增加自己部门的员工;可以修改自己的联系信息,更新员工状态也只限本部门的员工。§6.3.1 登录后的界面如图6-11是部门经理登录后和管理员登录后不同的地方,其中在增加员工模块少了批量增加员工,在查询员工界面少了查询所有员工,上方的图是部门经理的增加模块和查询员工模块的界面图,与下方的管理员增加员工和查询员工做对比。图6-11 部门经理和管理员登录界面对比§6.3.2 查询部门员工的设计与实现功能名:ShowInfo用户点击查询员工时,输入部门名、起始页和用户名,其中部门名和用户名的部门必须相符才能查询该员工的信息。如图6-12是查询界面:图6-12 部门经理登录界面§6.4 普通员工的功能概述普通员工的权限比较低,只能操作签到、生日提醒、查看自己的信息和修改自己的联系方式等模块,与部门经理相比少了增加员工界面。如图6-13为登录后的界面图:图6-13 普通员工登录界面第7章 测试§7.1 测试目的软件测试是对软件需求分析、设计、编码实现的审查,它是软件正常运行保证的关键步骤。通常是这样定义测试的:软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故障,以确保开发。测试一般来说应该尽快执行,因为软件的质量是在开发过程中形成的,可能存在各种各样的缺陷。测试的目的就是设计测试案例,通过这些测试案例来发现软件的缺陷和排除缺陷。测试的目的是在最小的成本和最少的时间内,通过设计合适的测试用例,系统地发现不同类别的错误。§7.2 测试设计测试的难点是设计测试用例,本系统测试