人力资源管理系统项目方案摘要【摘要】随着计算机的普及和计算机科学技术的飞速发展,人们开始越来越多地利用计算机解决实际问题。
员工信息管理是企业信息管理的重要部分,面对大量的人事信息,采用人力处理即浪费时间、又浪费人力和物力,并且数据的准确性低。
因此,开发一个界面友好,易于操作的人力资源管理软件进行自动化处理变得十分重要,这正是本系统开发的目的和意义。
本文介绍了人事管理的开发过程。
论文详细介绍了从系统的需求分析、系统分析、概要设计、详细设计的整个开发过程。
【关键词】0 引言全球范围内的企业内部组织正在发生巨变,未来企业成功的关键的依靠企业人力资源,人才之争已经成为市场竞争中的核心内容之一,以人为本成为企业立足和发展的根本。
有效力管理企业的人力资源,为企业提供强有力的储备力量,使之成为企业发展的主动力。
通过人力资源的有效管理,掌握最新的、准确的企业人力资源信息,并对其进行复杂的统计与分析,从而充分发挥每个员工的潜能,为企业创造更大的价值。
网络化的今天,网络人力资源管理系统,使新的人力资源协作管理模式成为可能。
通过网络管理系统,专门的人力资源管理人员可以提高自身的工作效率,作好人力资源管理的协调工作,提高人力资源利用率;通过网络管理系统,员工可以直接管理自己的技能,有效地发现和挖掘自身的潜能,及时与自己的上级、下属、同事进行的沟通与交流,同心协作,积极为企业的发展与决策贡献力量。
通过网络人力资源管理系统对企业人力资源进行管理,使企业人力资源管理适应时代的发展要求,大大提高了企业的核心竟争力。
1 系统分析1.1 需求分析通过调查,要求系统需要有以下功能;❑全面管理企业的员工信息。
❑管理企业人力资源管理的基础信息。
❑人才招聘管理及企业人才库管理功能。
❑企业人才培训的全程跟踪管理。
❑提供企业员工考勤管理。
❑设置企业员工薪酬管理。
❑提供系统用户管理功能。
1.2 可行性分析❑经济性通过网络化的人力资源管理,大大的提高了企业人才的利用率,使之为企业创造了更大价值。
人才利用率的提高,增强了企业的核心竟争力,全面提升了企业的管理能力,从而企业适应了信息时代的网络化管理要求,。
❑技术性通过网络化管理,增强了员工之间的沟通,更好的协调员工之间的协作关系;对员工考勤与薪酬管理更加的科学;全程跟踪员工的培训,通过信息的记录,更好的作出员工培训方案。
2 总体设计2.1 项目规划人力资源管理系统由人事管理、考勤管理、招聘管理、培训管理、系统管理5部分组成,规划系统功能模块如下:人事管理模块:该模块主要功能是对人事管理的基础信息、员工基本信息、合同信息等进行管理招聘管理模块:该模块主要是对企业招聘信息、企业的应聘信息、企业人才库进行管理。
培训管理模块:该模块主要是对企业的培训计划、培训实施、培训材料等信息进行管理。
薪酬管理模块:该模块主要功能是对管理员工薪酬信息进入管理。
系统管理模块:该模块主要功能是对操作员信息、操作员操作权限进入管理。
2.2 系统功能结构图人力资源管理系统功能结构如图1所示。
图1 人力资源管理系统功能结构图3 系统设计3.1 设计目标本系统主要用于对企业中的“人”进行管理。
具体地讲,人力资源管理系统就是通过人力资源规划、员工考核、薪酬管理、员工激励、人才培训和开发等一系列手段来提高劳动生产率,最终达到发展目标的一种管理行为。
具体实现目标如下:❑实现对员工信息进行全面管理的功能。
❑设置人力资源基础信息管理功能。
❑设置员工考勤管理功能模块。
❑员工薪酬信息管理。
❑实现企业员工培训信息全程跟踪的功能。
❑实现企业的招聘信息、应聘信息的管理功能。
❑企业人才库管理功能。
❑系统用户信息的管理。
❑系统最大限度地实现了易安装性、易维护性和易操作性。
❑系统运行稳定、安全可靠。
3.2 开发及运行环境硬件平台:❑CPU:P41.8GHz;❑内存:256MB以上。
软件平台:❑操作系统:Windows XP/Windows 2000;❑数据库:SQL Server 2000;❑开发工具包:JDK Version1.4.2;❑JSP服务器:Tomcat;❑浏览器:IE5.0,推荐使用IE6.0;❑分辨率:最佳效果1024*768像素。
3.3 数据库设计本系统采用SQL Server 2000 数据库,系统数据库名为PersonManage,数据库PersonManage 中包括5个数据表。
关于数据库中的数据表请参见附录B4系统总体架构4.1 模块功能介绍人力资源管理系统是针对中小企业对现有员工和新聘员工的一个WEB管理平台。
主页功能模块主要包括以下功能模块:人员管理:主要包括浏览人员信息、添加人员信息、人员信息的添加、人员信息的修改。
招聘管理:主要包括应聘人员信息的详细查看、删除、添加以及信息入库。
培训管理:主要包括培训计划的详细信息、信息删除、添加培训计划和填写培训总结。
奖惩管理:主要包括奖惩详细信息、删除详细信息、添加详细信息、修改详细信息。
薪金管理:主要包括薪金的修改、添加、删除。
5 用户操作功能模块5.1 用户操作文件总体架构1.模块功能介绍用户操作模块主要包括用户登录和人员管理模块,具体功能如下:用户登录模块:用于登录系统。
人员管理模块:用于浏览、添加和修改人员信息。
5.2 用户登陆模块设计用户登录模块是用户进入主页面的入口,其运行结果如3所示。
图3 用户登录模块运行结果系统登陆是人力资源管理中最先使用的功能,因为用户登陆在数据库中使用的是人员表,人员表中有一个isadmin字段,是来标识是否是管理员的。
在登陆时要根据数据库的这个字段来判断此用户是否具有管理员的权限。
在网页里添写用户名和密码后点击【登陆】按钮,网页会访问一个URL,这个URL是“logon.do?action=logon”,代码如下:<form name="usersForm" method="post" action="logon.do?action=logon"><tr><td width="170" height="40" align="center" >用户名:</td><td width="230" height="40" ><input name="username" type="text" class="input"> </td></tr><tr><td height="40" align="center">密 码:</td><td height="40" ><input name="password" type="password" class="input" ></td></tr><tr><td height="40" colspan="2" align="center" ><input type="submit" name="Submit" value="登陆" class="button"> <input type="reset" name="Submit2" value="重置"class="button"></td></tr></form>在这个表单的name的值是usersForm,它是Struts的ActoinForm的实现类在配置文件中的名字,如下所示:<form-bean name="userForm" type="com.bOS.bPRO_ersForm" /> action是Struts的Action的URL,他们在Struts的配置文件中都是已经配好的,如下所示:<action path="/logon" type="com.bOS.bPRO_ersAction"name="userForm" scope="request"><forward name="success" path="/manage.jsp" /><forward name="failed" path="/failed.jsp" /></action>在这个配置文件中,可以了解到如下信息:❑根据name="userForm"可以找到与之相对应的ActionForm的实现类“com.bOS.bPRO_ersForm”。
❑根据type="com.bOS.bPRO_ersAction"可以找到处理用户数据的Action类。
❑根据<forward name="success" path="/manage.jsp" />和<forward name="failed"path="/failed.jsp" />可以了解,这个Action返回success时,页面会被转到manage.jsp文件,这就是登陆成功的页面。
如果当Action返回failed时,页面会被转到failed.jsp文件,这个文件是当用户登陆失败将要转到的页面。
Struts的Action的实现类是这个登陆页的核心内容,就来看看它是怎么实现的吧,如下所示:package com.bOS.bPRO_PersonManage.action;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import net.sf.hibernate.HibernateException;import org.apache.struts.action.Action;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import com.bOS.bPRO_ersForm;import com.bOS.bPRO_ers;import com.bOS.bPRO_ersDao;public class UsersAction extends Action {private UsersDao dao=new UsersDao();public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) throws Exception { String action =request.getParameter("action");// System.out.println("\nUsersAction*********************action="+action);if(action==null||"".equals(action)){return mapping.findForward("error");}else if("listuser".equals(action)){return listUser(mapping,form,request,response);}else if("adduser".equals(action)){return addUsers(mapping,form,request,response);}else if("logon".equals(action)){return logon(mapping,form,request,response);}else if("updateuser".equals(action)){return updateUser(mapping,form,request,response);}else if("deleteuser".equals(action)){return deleteUser(mapping,form,request,response);}else if("selectuser".equals(action)){return selectUser(mapping,form,request,response);}return mapping.findForward("error");}private ActionForward selectUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException { Long id=new Long(request.getParameter("id"));Users u=dao.loadUsers(id.longValue());request.setAttribute("user",u);return mapping.findForward("success");}private ActionForward deleteUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException { Long id=new Long(request.getParameter("id"));Users users=new Users();users.setId(id);dao.deleteUsers(users);return mapping.findForward("success");}private ActionForward updateUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException { UsersForm usersform=(UsersForm)form;Users users=usersform.populate();dao.updateUsers(users);return mapping.findForward("success");}private ActionForward logon(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException { UsersForm usersform=(UsersForm)form;Users users=new Users();users.setUsername(usersform.getUsername());users.setPassword(usersform.getPassword());boolean flag=dao.logonUsers(users);if(flag){request.getSession().setAttribute("users",users);return mapping.findForward("success");}else{return mapping.findForward("failed");}}private ActionForward addUsers(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException { UsersForm usersform=(UsersForm)form;Users users=usersform.populate();dao.addUsers(users);return mapping.findForward("success");}private ActionForward listUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException { request.setAttribute("list",dao.listUser());return mapping.findForward("success");}Struts的Action实现类的execute()方法是最先被执行的,这个方法本身也没有具体的事务,而是根据action的参数不同执行相应的方法。