项目报告
基于jsp的企业员工信息管理系统的设计与实现
随着电子信息的飞速发展,计算机已经融入到了生活的各个方面,越来越多的企业开始使用电子计算机来对企业进行管理,信息化的时代已经到来,各个企业无论大小都需要一个信息化的管理系统来对自己公司内部的员工信息进行管理,企业员工信息管理系统是一个针对此问题而进行开发的系统,使得公司的员工管理不如现代化,开启了一个新的管理模式。
本文首先对比了国内外企业员工信息管理的现状,明确了需求的不同以及需要吸收借鉴的部分,然后在员工信息管理的需求基础上,通过系统的功能需求与系统的可行性分析,确立了企业员工信息管理系统的基本功能,构建了该系统的框架以及结构设计,然后对该系统的各个功能的主要代码进行分析、设计,最后对系统的各个功能进行测试,完成了本次系统的开发。企业员工信息管理系统分为两大模块,管理员模块和普通员工模块,管理员可以操作系统的所有功能,主要包括部门管理、员工信息管理、出勤管理、工资管理以及请假审核等功能;为了信息的保密以及系统的安全性,普通员工只具有查看工资以及请假的功能。
文章以需求分析,系统概要设计,系统功能实现,系统测试等为主要内容,详细介绍了一个基于Web技术的B/S结构的企业员工信息管理系统。本系统主要使用MyEclipse软件进行程序编写,使用JSP作为前台的开发语言,使用MySql作为后台的数据库管理系统,服务器采用tomcat,开发出的一个适应现代社会发展的企业员工信息管理系统。
员工信息,JSP,B/S结构
摘 要............................................................................... 1
ABSTRACT...................................................................... 3
1 绪论......................................................................... 1
1.1课题背景............................................................... 1
1.2目的和意义............................................................ 2
1.3研究的目标与内容................................................ 3
1.4软硬件需求............................................................ 4
1.5本文组织结构........................................................ 4
2 需求分析..................................................................... 6
2.1系统功能需求........................................................ 6
2.1.1系统功能需求............................................... 6
2.1.2用户特点....................................................... 8
2.2系统模型............................................................... 8
2.2.1参与者........................................................... 8
2.2.2管理员用例图............................................... 8
2.2.3普通员工用例图........................................... 9
2.3可行性分析.......................................................... 10
2.3.1技术的可行性............................................. 10
2.3.2经济的可行性............................................. 11
2.3.3操作可行性................................................. 11
2.3.4法律的可行性............................................. 12
3 系统概要设计........................................................... 13
3.1系统设计原则...................................................... 13
3.2系统架构设计...................................................... 14
3.3数据库设计.......................................................... 16
3.3.1数据库的概念结构设计.............................. 16
3.3.2数据库的逻辑结构设计.............................. 17
3.3.3数据库的连接原理...................................... 21
4 系统详细设计........................................................... 25
4.1系统登陆页面实现.............................................. 25
4.2管理员模块.......................................................... 32
4.2.1部门信息管理............................................. 33
4.2.1.1部门信息录入..................................... 33
4.2.1.2部门信息管理..................................... 34
4.2.1.3部门信息删除..................................... 37
4.2.2员工信息管理............................................. 38
4.2.2.1员工信息信息录入............................. 38
4.2.2.2员工信息管理..................................... 39
4.2.3出勤管理..................................................... 43
4.2.3.1出勤录入............................................ 43
4.2.4修改密码..................................................... 43
4.2.5工资管理..................................................... 43
4.2.6请假审核管理............................................. 44
4.2.7退出系统..................................................... 45
4.3普通员工模块...................................................... 45
4.3.1请假申请..................................................... 45
4.3.2我的工资浏览............................................. 46
4.3.3修改密码..................................................... 47
5 系统测试................................................................... 48
5.1系统测试目的与意义.......................................... 48
5.2系统测试方法...................................................... 48
5.2.1系统测试计划............................................. 48
5.2.2系统测试方法............................................. 49
5.2系统功能测试...................................................... 49
5.2.1主页面的登录模块测试.............................. 49
5.2.2修改密码的模块测试.................................. 50
5.2.3部门管理的模块测试.................................. 51
5.2.4员工管理的模块测试.................................. 51
5.2.5出勤管理的模块测试.................................. 52
5.2.6工资管理的模块测试.................................. 53
5.2.7请假审核的模块测试.................................. 54
5.2.8我的请假的模块测试.................................. 55
5.3其他错误............................................................. 55
6 总结与展望............................................................... 57
6.1论文的主要工作.................................................. 57
6.2存在问题............................................................. 57
结 论............................................................................. 59
参考文献......................................................................... 61
致 谢............................................................................. 62
外文原文......................................................................... 63
中文翻译......................................................................... 77
1.1课题背景
计算机网络技术的发展,给信息时代的人们带来了很大的方便。如今在Internet上,随处都可以看到种类繁多的信息管理系统,比如,企业办公化自动管理系统,电子商务系统,高校教务管理系统等等。随着信息技术的日益发展已深入到社会的各个角落,各个大的企业,都充分意识到传统的手工管理模式已经逐渐不能适应时代的发展,为了更好的发展,纷纷开发适合自己的管理系统。不管大企业。各种员工信息的小企业也是如此,企业的管理层也深深意识到这一点,以前管理大多为手工管理,效率低、易出错、手续繁琐,而且耗费大量的人力,物力,财力。他们希望有一个适合自己的管理系统,能够实现员工信息管理,部门管理,请假管理,考勤管理等功能。通过此系统,管理者可以对员工的信息做出及时的修改,通过电脑的数字化管理,方便的管理员工信息,这样可以提高工作效率,解放管理员的双手,也使得管理员工信息所需的各项信息能方便快速进行录入,查询和更新,各种功能能够相应的实现,对相应关键数据也能够方便的统计结果。
当前大量企业的员工管理不能及时的对员工的信息做出修改,管理员与员工之间不能进行良好的互动,尚需要进行手工传达信息,不但效率低下还常常因为信息不能及时的传达下去而造成损失。因此大多数企业需要设计一个高效的企业员工信息管理系统以帮助企业对员工进行更好、更快的管理,加强上级与下级之间的联系,达到提高企业工作效率的目的。员工信息管理系统设计的主要目的是对企业员工的信息进行集中管理,方便对员工的信息进行及时的更新,上级的命令能够准确、高效的传达下去,方便企业建立一个高效的、准确的员工信息数据库。它是以SQL 数据库作为开发平台,使用jsp编写程序完成数据的各项功能并使用SQL数据库形成数据进行数据存储。
1.2目的和意义
长久以来,企业员工信息管理工作基本上采用的都是过时的管理方式来记录员工的相关信息,这种管理方式的缺点很明显,比如说,员工请假方面需要员工亲自手工申请才能达到请假的目的,严重浪费了太多时间,减少了企业的工作效率。对于小规模企业来说,员工想对较少,这种管理方式还勉强可以接受,但对于规模比较大的企业来说,员工的信息比较多,人工记录非常容易出错,极大的增加了信息管理人员的负担。在国内,大多数企业原有的管理方式已经适应不了形势的发展,急需进行改进,当前的形势下,计算机的出现加强了企业的发展,急需一个信息化管理的系统来实现对员工信息的管理,加强企业的管理模式,使企业更好的适应社会的发展,能够在当前全速发展的浪潮中全速发展。建立一个信息化管理的员工信息管理系统是企业适应社会发展形势的必经之路。
为满足企业发展需求,决定采用各种编程语言JSP开发了基于B/S架构的员工信息管理系统,员工信息管理系统是涉及信息科学、数据计算和计算机技术的复杂的人机交互系统。通过该系统,可以对员工信息管理工作以及考勤工作进行信息化管理,加强上下级之间的联系,有效地记录并查询员工信息、考勤等情况,使企业的员工管理更加高效。
1.3研究的目标与内容
本次论文是企业员工信息管理系统,通过现代化的计算机技术,实现员工信息的高效、快速的管理,有利于加强企业对员工的管理,缩短了企业在员工管理方面的时间,通过该系统能够对员工信息进行整理,分类管理,有利于企业的长久发展。
该系统主要是方便企业对员工信息的管理,主要包括一下几个方面:
- 能够对部门信息进行管理,方便添加、 修改、删除部门信息,来适应企业今后的发展;
- 对员工信息进行管理,方便对员工的归属部门,以及员工的基本信息进行录入、管理等操作,实现规范化管理;
- 对员工的出勤、工资等信息进行电脑化管理,方便企业的一体化管理。
- 保证员工信息的安全、完整,避免造成信息的泄漏, 员工造成不必要的损失。
1.4软硬件需求
硬件需求:
CPU:Core(IM) i5以上计算机
内存: 4G以上
软件需求:
操作系统版本:Windows XP以上系统
开发工具:MyEclipse 8.5
后台服务器:Apache Tomcat 6.0
开发语言:Java
浏览器:IE8.0
1.5本文组织结构
本文共分为五章,安排如下:
第一章阐述了项目的背景与意义,简单介绍了本次研究的内容与系统软硬件方面的需求。
第二章对系统进行需求分析,通过对系统的功能需求分析以及技术可行性、经济可行性分析、操作可行性分析和法律可行性分析,确立了系统的基本功能,设立了系统的基本模型。
第三章对系统进行概要设计,首先介绍了系统的设计原则,接着对系统的功能进行模块划分,然后对系统进行概念结构设计以及物理结构设计等。
第四章对系统进行详细设计,首先对系统的登录界面进行设计,然后分别对管理员模块和员工模块进行设计,其中管理员模块和员工模块分别又分为若干的小模块,依次对其进行设计。
第五章主要对系统的功能进行测试,首先介绍了系统的测试计划以及方法,然后对系统的各个模块分别进行测试,确保系统能够正常运行。
第六章对本文所做的工作进行全面总结,对存在的问题进行说明并提出解决办法,对进一步工作进行展望。
2 需求分析
2.1系统功能需求
本系统主要针对的是企业员工的信息管理项目而设计。在项目的确立之初,通过与企业管理人员的相互交流,发现了目前所用系统中所存在的一些问题,并对其进行研究,根据企业对员工信息管理方面的需求,做出了以下几方面的需求分析。
2.1.1系统功能需求
系统用户分为两级:管理员与普通员工。系统采用基于Web技术的B/S框架进行设计,确立了企业员工信息管理系统主要功能需求有以下几个方面:
- 管理公司员工的基本信息:
员工基本信息管理主要负责对员工的基本信息进行管理与更新,基本信息包括姓名,性别,年龄,职位,部门,是否领导,帐号,密码。通过对基本信息的管理,可以清楚的了解员工的信息,及时对员工信息的更新,有助于增加企业对员工的管理。普通员工只能修改自己的密码,不用更改其他信息。
- 管理公司的部门信息:
公司部门信息的管理主要用于对员工进行分类,分布于各个部门之下,能够及时并准确的找出该员工目前的工作状态。部门管理主要包括添加部门以及添加子部门,删除部门等操作,便于及时更新部门信息。
- 管理员工的出勤信息:
员工出勤信息的管理主要用于对员工的出勤月份以及天数进行管理,便于计算员工的工资等。出勤信息主要包括月份,天数以及员工姓名,管理员可以录入员工的出勤天数,普通员工只能查看而不能进行更改。
- 管理员工的工资信息:
员工工资信息的管理主要用于对员工的每个月的工资进行管理,便于对员工的工资进行管理。工资信息主要包括月份,金额以及员工姓名,管理员可以录入员工的工资信息,普通员工只能查看而不能进行更改。
- 员工的请假审核信息:
员工的请假审核主要用于管理员对员工的请假进行审核并加以回复,便于对员工的请假进行管理。请假主要包括姓名,开始时间,结束时间,请假事由,审核状态以及回复信息,管理员进行回复时说明是否批准以及回复信息,使员工有一个直观的了解,员工可以进行请假申请并查看自己当前请假的状态。
2.1.2用户特点
1.主要用于公司内部使用,要求操作简单使用,便于企业人员进行操作使用。
2.对于中小型公司,员工较少,相应的对系统的要求也比较少,一般的数据库便足以使用。
3.由于涉及到用户的基本信息,因此系统具有相应的安全措施,防止用户信息的泄漏。
2.2系统模型
2.2.1参与者
参与者是系统的外部用户。系统用户分为两级:管理员及普通用户。管理员主要是企业的系统管理者,管理着主要用来管理公司的部门信息,员工的基本信息,出勤,工资以及请假审核等,主要用来录入员工的一切信息,并及时进行核实,防止有错误发生。由于系统的功能比较简单,对于电脑有一定的基础便可完成系统相应的需求。普通用户为底层用户,可以查询自己的出勤,工资以及请假状态,不能对其做出更改。
2.2.2管理员用例图
管理员是系统的管理者,其中包括六大功能模块,管理员拥有系统的最高权限,可以操作部门、员工、工资等信息,对所有的信息进行更改,适应公司的变化。用例图如图2.1所示:
图2.1 管理员用例图
2.2.3普通员工用例图
出于安全性的考虑,普通员工用户只有请假申请、浏览工资和浏览出勤等功能,其他的删除修改功能都没有设计。普通员工用例图如图2.2所示:
图2.2 普通员工用例图
2.3可行性分析
开发任何一个管理系统,都会受到来自各方面的限制,其中人力、物力上的限制更为明显。因此,在每一个软件项目开发之前,都需要进行可行性分析,来减少项目中所可能走的弯路,减少项目的开发时间以及资源上的浪费。下面就技术、经济、操作和法律四个方面来介绍。
2.3.1技术的可行性
本系统采用的开发工具是MyEclipse和MySQL数据库,MyEclipse是在eclipse 基础上加上自己的插件开发而成的,已经具有多年的历史,技术也已经成熟,具有功能强大的集成开发环境;开发语言是Java,主要使用了J2EE的技术,在大三期间就系统的学习了J2EE的技术,难度不大,java是一种面向对象编程语言,简单易学而且灵活方便,能够熟练的掌握并应用与时间中。JSP与Servlet一样,是在服务器端执行的,Java Servlet是JSP的技术基础,JSP具备了java技术的简单易用,页面由HTML代码和嵌入其中的Java代码所组成。大二期间就学习了java课程,对Java的相关技术也有了一定的了解,能够完成系统基本的开发,也系统的了解了J2EE的知识,企业员工信息管理系统在技术上的问题并不大,大学期间学习的只是完成能够完成本次的开发任务。
在大学期间学习了软件工程导论,java基础,面向对象编程,软件开发等课程,每门课程都会有相应的实验来完成,初步学习了简单的的系统分析、设计、测试和维护,基本掌握了软件开发的流程。因此,完成该系统在技术上完全具有可行性。
2.3.2经济的可行性
现如今已经进入了信息化时代,各行各业都在朝着信息化发展,信息化管理可以使员工信息管理工作在时间空间上都得到很大的提高,相应的减少了企业在这方面所花费的人力、物力等不必要的资源,虽然短期内开发系统的的花费更高,但从长远来看,这用一劳永逸的办法是可行的。通过信息化管理,可以为企业带来较高的工作效益和经济效益,在提高工作效率的基础上,可以考虑减少员工信息管理人员的数量,本系统对计算机配置的要求不高,企业机房更换下来的低配置电脑都可以完全满足需要,再者,企业在管理工作上的高效率和便捷性远远超过了开发本系统的成本,所以在经济上具有完全的可行性。
2.3.3操作可行性
本系统操作简单,现有的开发工具和技术JSP、MySQL
完全能够实现。输入信息页面大多数都是下拉框的选择形式,在某些页面,信息可以自动生成,无需输入,时间的输入也是用的日历控件,操作简便,对操作人员的要求很低,只需对WINDOWS操作熟练,加之对本系统的操作稍加培训即可工作,本系统对管理人员和用户没有任何的特殊要求实际操作基本上以鼠标操作为主并辅以少量的键盘操作操作方式很方便。因此该项目便于操作,具有基本的电脑只是便能够熟练使用该系统,具有良好的易用性。
2.3.4法律的可行性
本员工信息管理系统是自行开发的管理系统,是很有实际意义的系统,开发环境软件和使用的数据库都是开源代码,开发这个系统不同于开发普通的系统软件,不存在侵权等问题,即法律上是可行的。
综上所述,开发一个员工信息管理系统与人工记录的方式相比具有速度更快,操作更准确,节省开支等有利之处,因此,建立一个员工信息管理系统是必要可行的。
3 系统概要设计
概要设计主要完成系统软件结构及数据结构的设计。本章主要探讨了系统设计的相关内容,包括功能模块划分以及数据库设计。
3.1系统设计原则
设计思想遵循以下几点:
- 采用B/S模式进行开发,是WEB兴起后的一种网络结构模式,其优点是后台与前台处理层次分明,大多数用户都已经习惯了传统的网页模式,不需要进行更大的改动就能够适应该系统。对员工的出勤、工资等信息进行电脑化管理,方便企业的一体化管理。
- 采用面向对象的开发与设计理念。可以进行一抽象数据类型为特点的基于对象的程序设计,他的前提是对系统的整体有一个全面的了解,通过他可以保证系统的优良,来保证开发出的系统具有良好的稳定性与实用性。
- 采用模块化设计。是将系统分为若干个功能模块,逐个实现系统的功能,有利于软件的开发、测试以及维护等功能,加强了系统的稳定性以及后期的维护过程。
- 简单方便的系统界面。设计简单友好的系统界面,方便用户较快的适应系统的操作。
- 速度优先原则。在开发过程中由于实际的需要,所开发出来的系统要尽量做到简洁,一方面利于测试人员的工作,最主要的是要是整个系统所占的资源达到最少,运行速度尽可能的达到最快,来实现企业快速发展的需求。
- 设计既要突出重点,又要细致周到。要符合企业的基本需求,在有缺陷的地方同企业进行商量并改进,使系统能够完全实现用户的需求,并尽可能的实现在后期添加功能的需求。
3.2系统架构设计
本系统针对的是企业员工信息管理系统设计的,根据需求分析,系统分为两大功能模块:管理员模块和普通员工模块。如图3.1所示:
图3.1功能结构图
- 管理员模块又分为六个子模块,,以下是六个模块的详细说明:
修改密码:管理员用来修改自己的密码,防止因为密码的泄漏而造成用户信息的泄漏,提高系统的安全,
部门管理:用来管理企业的部门信息,便于对员工进行分类管理。
员工管理:用来管理员工的基本信息,及时对员工的基本信息进行管理,便于企业掌握目前的员工状态,对员工做出合理的安排。
出勤管理:用来管理员工的出勤信息,及时对员工的出勤天数进行录入与修改,便于对员工应得的工资做出合理的安排。
工资管理:用来管理员工的工资信息,根据员工的出勤天数以及工作进行工资录入,及时更新员工的工资,有利于员工的安定,促进企业的发展。
请假管理:用来对员工的请假进行审核,关注员工的请假信息,并及时做出回复,加强对员工当前状态的了解。
- 员工用户分为三个子模块,以下是三个模块的详细说明:
修改密码:及时修改自己的密码,防止自己的信息造成泄漏。
请假申请:在系统中提出自己的请假申请,填明请假时间级原因,便于管理员做出合理的安排。
查询工资:能够及时查询自己的工资信息。
3.3数据库设计
企业员工信息管理系统以数据库为核心,在数据库管理系统的支持下,进行信息的收集、整理、存储、检索、更新、加工、统计和传播等操作。数据库已经成为现在信息系统等计算机系统的基础与核心部分。数据库设计的好坏直接影响到整个系统的质量和效率。
数据库的设计一般经过需求分析阶段、概念设计阶段、逻辑设计阶段、数据库物理设计阶段、数据库实施阶段以及数据库运行与维护6个步骤。
3.3.1数据库的概念结构设计
数据库的概念结构是由分析到生成概念产品的一系列过程,概念设计是完整而全面的过程,设计采用实体—联系(E-R)模型设计方法。E-R模型法的组成元素有:实体、属性、联系,E-R模型用E-R图表示,是提示用户工作环境中所涉及的事物,属性则是对实体特性的描述。
概念设计的目标是产生用户所需求的概念信息,直观的展示出不同用户所具有的不同的功能,即概念模式。
根据以上对信息管理系统的需求分析,以及对系统概念模型的了解,首先建立E-R模型图。
实体 |
属性 |
3.3.2数据库的逻辑结构设计
逻辑结构设计是将概念设计阶段所得到的概念模型转换为逻辑结构模型,E-R模型向关系数据库模型转换应遵循下列原则:
1)每一个实体要转换成一个关系
2)所有的主键必须定义非空(NOT NULL)
3)对于二元联系应按照一对多、弱对实、一对一、多对多等联系来定义外键。
根据E-R模型的特点,员工信息管理系统相应的建立了各个信息的逻辑模型。
以下是不同表的基本信息
(1)部门表主要是记录了部门的基本信息。表结构如表3.1所示。
表3.1部门表(t_organization)
列名 | 数据员工信息 | 长度 | 允许空 | 是否主键 | 说明 |
id | int | 4 | 否 | 是 | 部门ID |
name | varchar | 50 | 否 | 否 | 部门名称 |
description | varchar | 50 | 否 | 否 | 部门描述 |
p_id | Int | 5 | 否 | 否 | 父部门ID |
(2)员工信息表主要是记录了员工的基本信息,表结构如图3.2所示。
表3.2员工信息表(t_yuangong)
列名 | 数据员工信息 | 长度 | 允许空 | 是否主键 | 说明 |
id | Int | 4 | 否 | 是 | 编号 |
org_id | Int | 4 | 否 | 否 | 部门ID |
bianhao | varchar | 50 | 否 | 否 | 工号 |
name | varchar | 50 | 否 | 否 | 姓名 |
sex | varchar | 50 | 否 | 否 | 性别 |
bumenlingdao | varchar | 50 | 否 | 否 | 是否部门领导 |
loginname | varchar | 50 | 否 | 否 | 登陆账号 |
loginpw | varchar | 50 | 否 | 否 | 登陆密码 |
(3)出勤信息表主要是记录了员工出勤的基本信息,表结构如图3.3所示。
表3.3出勤信息表(t_chuqin)
列名 | 数据员工信息 | 长度 | 允许空 | 是否主键 | 说明 |
id | Int | 4 | 否 | 是 | 编号 |
yuefen | varchar | 4 | 否 | 否 | 月份 |
tianshu | varchar | 50 | 否 | 否 | 出勤天数 |
yuangong_id | Int | 4 | 否 | 否 | 员工ID |
(4)请假信息表主要记录了员工的请假信息,表如图3.4所示。
表3.4请假信息表(t_qingjia)
列名 | 数据员工信息 | 长度 | 允许空 | 是否主键 | 说明 |
id | int | 2 | 否 | 是 | 编号 |
kaishishijian | varchar | 50 | 否 | 否 | 开始时间 |
jieshushijian | varchar | 50 | 否 | 否 | 结束时间 |
yuangong_id | int | 50 | 否 | 否 | 员工编号 |
beizhu | varchar | 50 | 否 | 否 | 备注信息 |
shenhezhuangtai | varchar | 50 | 否 | 否 | 审核状态 |
huifuxinxi | varchar | 50 | 否 | 否 | 恢复信息 |
(5)公告信息表主要是管理发布的公告订单信息,表结构如图3.5所示。
表3.5工资信息表(t_gongzi)
列名 | 数据员工信息 | 长度 | 允许空 | 是否主键 | 说明 |
id | int | 4 | 否 | 是 | 编号 |
yuefen | varchar | 4 | 否 | 否 | 月份 |
jiner | Int | 10 | 否 | 否 | 工资 |
yuangong_id | Int | 4 | 否 | 否 | 员工ID |
(6)管理员信息表主要记录的管理员的账号信息,表结构如图3.6所示。
表3.6管理员信息表(t_admin)
列名 | 数据员工信息 | 长度 | 允许空 | 是否主键 | 说明 |
userId | int | 4 | 否 | 是 | 编号 |
userName | varchar | 50 | 否 | 否 | 用户名 |
userPw | varchar | 50 | 否 | 否 | 密码 |
3.3.3数据库的连接原理
采用JDBC连接数据库的方式,只需在工程中导入对应数据库的jar包,就可以方便的对数据库进行连接,在程序中,用Class.forName()方法来加载驱动程序,在用DriverManager的getConnection()方法就可以创建一个数据库连接。程序采用的是DAO模式来操作数据库,DAO(Data Access Object,数据访问对象),是Java编程中的一种经典模式,已被广泛应用,也是J2EE架构中持久层框架的基础知识,基于分层次式的软件架构来实现对数据库的访问操作。DAO模式的主要思想就是从抽象数据源获取与操纵数据的方法。抽象数据的含义就是编写应用程序的程序员不必关心数据库的物理位置,已经是何种数据库,只需使用封装数据库中表示记录的数据对象即可。其思想如图3.7所示:
图3.7 DAO模式类图
图中BussinessObject是业务对象,是使用DAO模式的客户端;DataTransferObject数据传输对象,在应用程序不同层次之间传输对象,在一个分布式应用程序中,通常可以提高整理的性能;DataObjectAcces数据输入/输出对象封装了对数据源的一些基本操作;DataSource指的是数据源。可以从图中看出,DAO模式分离了业务逻辑和数据罗即将,是的编写的软件具有良好的层次式体系结构。本系统为了方便数据库的操作,主要使用DBContent的对象来接一个数据库(建立一个类DBContent),代码如下:
public DBContent(){
String CLASSFORNAME="com.mysql.jdbc.Driver";//连接数据库的驱动
String url="jdbc:mysql://localhost:3306/rlzy";
String user="root";//连接数据库的用户名
String password="123456";//连接数据库的密码
try{
Class.forName(CLASSFORNAME);
con= DriverManager.getConnection(url,user,password);//加载数据库的驱动
stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
}
catch(Exception ex){
ex.printStackTrace();
}
}
在程序需要连接数据库的地方,只需要生成一个DBConnet的对象,就可以对数据库进行连接并操作。
4 系统详细设计
在管理信息系统的生命周期中,仅过了需求分析、系统设计等阶段之后,便开始了系统实施阶段。在系统分析和设计阶段,系统开发工作主要是集中在逻辑、功能和技术设计上,系统实施阶段要继承此前面各个阶段的工作成果,将技术设计转化为物理实现,因此系统实施的成果是系统分析和设计阶段的结晶。
4.1系统登陆页面实现
1.描述:为了保证系统的安全性,要先使用本系统必须先登陆到系统中,并且不同角色的用户进入不同的界面,功能也随之不同。
2.程序运行效果图如图4.1所示:
图4.1 系统登陆页面设计
3.在登陆页面输入用户名和密码以,选择登陆身份后,点击提交按钮,跳转到登陆的service中,在该service中会对用户名,密码,验证码进行判断,并根据相应的用户角色进入对应的页面,loginservice关键代码:
public String login(String userName,String userPw,int userType)
{
System.out.println("userType"+userType);
try
{
Thread.sleep(700);
} catch (InterruptedException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
String result="no";
if(userType==0)//系统管理员登陆
{
String sql="select * from t_admin where userName=? and userPw=?";
Object[] params={userName,userPw};
DB mydb=new DB();
mydb.doPstm(sql, params);
try
{
ResultSet rs=mydb.getRs();
boolean mark=(rs==null||!rs.next()?false:true);
if(mark==false)
{
result="no";
}
else
{
result="yes";
TAdmin admin=new TAdmin();
admin.setUserId(rs.getInt("userId"));
admin.setUserName(rs.getString("userName"));
admin.setUserPw(rs.getString("userPw"));
WebContext ctx = WebContextFactory.get();
HttpSession session=ctx.getSession();
session.setAttribute("userType", 0);
session.setAttribute("admin", admin);
}
rs.close();
}
catch (SQLException e)
{
System.out.println("登录失败!");
e.printStackTrace();
}
finally
{
mydb.closed();
}
}
if(userType==1)
{
String sql="select * from t_yuangong where del='no' and loginname=? and loginpw=?";
Object[] params={userName,userPw};
DB mydb=new DB();
mydb.doPstm(sql, params);
try
{
ResultSet rs=mydb.getRs();
boolean mark=(rs==null||!rs.next()?false:true);
if(mark==false)
{
result="no";
}
else
{
result="yes";
Yuangong yuangong=new Yuangong();
yuangong.setId(rs.getInt("id"));
yuangong.setBianhao(rs.getString("bianhao"));
yuangong.setName(rs.getString("name"));
yuangong.setSex(rs.getString("sex"));
yuangong.setShifoubumenlingdao(rs.getString("shifoubumenlingdao"));
yuangong.setLoginname(rs.getString("loginname"));
yuangong.setLoginpw(rs.getString("loginpw"));
yuangong.setOrg_id(rs.getInt("org_id"));
yuangong.setDel(rs.getString("del"));
WebContext ctx = WebContextFactory.get();
HttpSession session=ctx.getSession();
session.setAttribute("userType", 1);
session.setAttribute("yuangong", yuangong);
}
rs.close();
}
catch (SQLException e)
{
System.out.println("登录失败!");
e.printStackTrace();
}
finally
{
mydb.closed();
}
4.2管理员模块
1.描述:管理员主页面:左方页面展示了管理员可操作的六大功能,进入相关的管理页面可以链接到子菜单,并且高亮显示,每个管理模块下面都有相应的子菜单。
2.程序运行效果图如图4.2所示:
图4.2管理员主页面
在每个jsp页面将会对相关用户进行拦截操作,这样可以提高安全性,防止用户不经过登陆页面而进入任何子菜单页面:
if(session.getAttribute("user")==null)
{
out.print("<script>alert('请先登录!');window.open('../index.jsp','_self')</script>");
}
4.2.1部门信息管理
4.2.1.1部门信息录入
1. 描述:管理员输入部门相关正确信息后点击录入按钮,如果是没有输入完整的部门经理信息,都会给出相应的错误提示,不能录入成功。输入数据都通过form表单中定义的方法οnsubmit="return checkForm()"来检查,checkForm()函数中是各种的校验输入数据的方式。
2. 程序效果图如下图4.3所示:
图4.3 部门信息录入
3.流程图如下图4.4所示:
图4.4 部门经理信息录入流程图
4.2.1.2部门信息管理
1.描述:管理员点击左侧的菜单“部门管理”,页面跳转到部门管理界面,调用后台的servlet类查询所有部门经理。
2.程序效果图如下图4.5所示
图4.5 部门信息管理
部门管理关键代码:
public void orgMana(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
List orgList=new ArrayList();
String sql="select * from t_organization where del='no'";
Object[] params={};
DB mydb=new DB();
try
{
mydb.doPstm(sql, params);
ResultSet rs=mydb.getRs();
while(rs.next())
{
TOrganization organization=new TOrganization();
organization.setId(rs.getInt("id"));
organization.setName(rs.getString("name"));
organization.setDescription(rs.getString("description"));
organization.setP_id(rs.getInt("p_id"));
organization.setDel(rs.getString("del"));
organization.setParenOrganization(liuService.getOrg(rs.getInt("p_id")));
orgList.add(organization);
}
rs.close();
}
catch(Exception e)
{
e.printStackTrace();
}
mydb.closed();
req.setAttribute("orgList", orgList);
req.getRequestDispatcher("admin/org/orgMana.jsp").forward(req, res);
}
public void orgAdd(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
String name=req.getParameter("name");
String description=req.getParameter("description");
int p_id=Integer.parseInt(req.getParameter("p_id"));
String del="no";
String sql="insert into t_organization values(?,?,?,?)";
Object[] params={name,description,p_id,del};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("msg", "操作成功");
req.getRequestDispatcher("common/msg.jsp").forward(req, res);
}
public void orgDel(HttpServletRequest req,HttpServletResponse res)
{
int orgId=Integer.parseInt(req.getParameter("orgId"));
String sql="update t_organization set del='yes' where id="+orgId;
Object[] params={};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("message", "操作成功");
req.setAttribute("path", "org?type=orgMana");
String targetURL = "/common/success.jsp";
dispatch(targetURL, req, res);
}
4.2.1.3部门信息删除
1.描述:先是点击部门管理,页面跳转到部门管理界面,浏览所有的部门信息,点击要删除的部门,弹出的确定对话框,即可删除该部门信息。
2.程序效果图如下图4.6所示
图4.6 部门信息删除
4.2.2员工信息管理
4.2.2.1员工信息信息录入
1.描述:在此页面主要是输入员工的基本信息,包括姓名、性别、年龄、部门编号、登陆账号、密码等,年龄检验输入是否为数字,是否为空也是通过form表单中的οnsubmit="return checkForm()来检查。
2.程序效果图如图4.7所示:
图4.7员工信息信息录入
4.2.2.2员工信息管理
1.描述:管理员点击左侧的菜单“员工管理”,页面跳转到员工管理界面,调用后台的yuangongServlet类查询出所有的员工信息,并把这些信息封转到数据集合List中,绑定到request对象,然后页面跳转到相应的jsp,显示出员工信息。
2.程序效果图如下图4.8所示
图4.8 员工信息管理页面
员工管理关键代码:
public void yuangongAdd(HttpServletRequest req,HttpServletResponse res)
{
int org_id=Integer.parseInt(req.getParameter("org_id"));
String bianhao=req.getParameter("bianhao");
String name=req.getParameter("name");
String sex=req.getParameter("sex");
String shifoubumenlingdao=req.getParameter("shifoubumenlingdao");
String loginname=req.getParameter("loginname");
String loginpw=req.getParameter("loginpw");
String del="no";
String sql="insert into t_yuangong values(?,?,?,?,?,?,?,?)";
Object[] params={org_id,bianhao,name,sex,shifoubumenlingdao,loginname,loginpw,del};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("message", "操作成功");
req.setAttribute("path", "yuangong?type=yuangongMana");
String targetURL = "/common/success.jsp";
dispatch(targetURL, req, res);
}
public void yuangongDel(HttpServletRequest req,HttpServletResponse res)
{
int id=Integer.parseInt(req.getParameter("id"));
String sql="update t_yuangong set del=? where id=?";
Object[] params={"yes",id};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("message", "操作成功");
req.setAttribute("path", "yuangong?type=yuangongMana");
String targetURL = "/common/success.jsp";
dispatch(targetURL, req, res);
}
public void yuangongMana(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
List yuangongList=new ArrayList();
String sql="select * from t_yuangong where del='no' order by org_id desc";
Object[] params={};
DB mydb=new DB();
try
{
mydb.doPstm(sql, params);
ResultSet rs=mydb.getRs();
while(rs.next())
{
Yuangong yuangong=new Yuangong();
yuangong.setId(rs.getInt("id"));
yuangong.setBianhao(rs.getString("bianhao"));
yuangong.setName(rs.getString("name"));
yuangong.setSex(rs.getString("sex"));
yuangong.setShifoubumenlingdao(rs.getString("shifoubumenlingdao"));
yuangong.setLoginname(rs.getString("loginname"));
yuangong.setLoginpw(rs.getString("loginpw"));
yuangong.setOrg_id(rs.getInt("org_id"));
yuangong.setDel(rs.getString("del"));
yuangong.setOrganization(liuService.getOrg(rs.getInt("org_id")));
yuangongList.add(yuangong);
}
rs.close();
}
catch(Exception e)
{
e.printStackTrace();
}
mydb.closed();
req.setAttribute("yuangongList", yuangongList);
req.getRequestDispatcher("admin/yuangong/yuangongMana.jsp").forward(req, res);
}
4.2.3出勤管理
4.2.3.1出勤录入
1.描述:输入月份和出勤天数点击提交按钮即可。
2.程序效果图如图4.10所示:
图4.10 出勤录入
4.2.4修改密码
1.描述:输入用户名和用户的原有密码,输入新密码以后点击修改按钮即可修改密码成功。
2.程序效果图如图4.11所示:
图4.11 修改密码
4.2.5工资管理
1:描述:可以选择删除员工工资信息,也可一选择工资录入,进入员工工资录入界面。
2:删除员工工资如下图4.12所示:
图4.12删除员工工资
增添员工工资如下图4.12所示:
图4.12增添员工工资
4.2.6请假审核管理
1.描述:用于对员工请假进行回复管理。
2. 查看员工请假信息如下图4.13所示
图4.13查看员工请假信息
回复员工请假信息如下图4.14所示
图4.14
4.2.7退出系统
1.描述:点此按钮回到系统的主页面。
2.关键代码:主要是通过javascript语句来实现, item_word[8][4]="退出系统";
item_link[8][4]="javascript:window.open('../index.jsp','_self')";
4.3普通员工模块
4.3.1请假申请
1.描述:普通用户输入用户名和密码进入系统后,可以在线申请请假,输入请假时间,点击提交按钮即可,还可以查询请假是否批准。
2.程序效果图如图4.15所示:
图4.15 请假申请页面设计
图4.16查看请假信息
4.3.2我的工资浏览
1.描述:点击我的工资浏览菜单,既可查询自己的工资信息。
2.程序效果图如图4.17所示:
图4.17 我的工资浏览界面
4.3.3修改密码
1.描述:点击修改密码,输入原密码和新密码,点击提交便可修改成功。
2.程序效果如下图4.18所示。
图4.18修改密码
5 系统测试
5.1系统测试目的与意义
系统测试是企业员工信息管理系统开发周期中一个十分重要而漫长的的阶段。其重要性体现在他是保证系统质量与可靠性的最后关口,是对整个系统开发过程包括系统分析、系统设计和系统实现的最终审查。
系统测试的任务是尽可能彻底的检查出程序中的错误,提高软件系统的可靠性,其目的是检验系统“做得怎样”。这这阶段又可以分为三个步骤:模块测试,测试每个模块的程序是否正确;组装测试,测试模块之间的接口是否正确;确认测试,测试整个软件系统是否满足用户功能和性能的要求。测试发现问题之后要经过调试找出错误原因和位置,然后进行改正。是基于系统整体需求说明书的黑盒测试,应覆盖系统随偶联合的部件,系统测试是正对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出需求规格不符合或与之矛盾的地方。
5.2系统测试方法
5.2.1系统测试计划
进行软件测试需要建立一个详细的测试计划,才能使得测试任务圆满完成,目前的测试都是都是通过直观感受,去进行软件测试,这样测试出来的结果并不能完全满足系统的需求,还有可能存在着许多漏洞去解决。只有彻底清楚软件的各项功能,从根本上排除可能存在漏洞的地方,才能是系统能够正常、安全、长久的运行下去
5.2.2系统测试方法
目前的测试方法主要都是通过人来想出所有可能存在漏洞的地方,并加以测试,测试的质量与测试人员有着很大的关系,需要有更多的人参与到测试中才能是系统的所有功能都得到测试。
本次测试主要采取黑盒测试方法对软件进行测试,在测试人员知道系统完整的功能的前提下进行测试。黑盒测试就是在不知道系统的内部结构的前提下进行测试。
5.2系统功能测试
在测试之初,由于将数据库中的数据是随便输入,没有实用性,为了使系统更加完善,在系统测试的过程中,本系统将一开始编程随便输入的数据全部清理后,输入了一些有效的测试数据,这样可以更真实的反映系统的功能实现情况。
这样不断发现问题,经过反复的测试、调试,把问题一个个的解决,最终系统可以正常运行。
5.2.1主页面的登录模块测试
测试流程: 1.打开系统首页,输入错误的登录信息
2.登录
3.输入正确的登录信息
4.登录
5.测试结果
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
登录模块 | 用户名:null 密码:null | 弹出错误提示,请输入用户名 | 登陆失败,提示请输入用户名 | 通过 |
登录模块 | 用户名:m1 密码:null | 弹出错误提示,请输入密码 | 登录失败,提示输入密码 | 通过 |
登录模块
| 用户名:m1 密码:1 | 弹出错误提示,用户名或者密码错误 | 登陆失败,提示用户名或者密码错误 | 通过 |
5.2.2修改密码的模块测试
测试流程: 1.打开密码修改页面,输入错误的原密码和新密码;
2.点击修改;
3.输入正确原密码;
4.修改;
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
修改密码 | 原密码:null 新密码:null | 请输入原密码 | 请输入原密码 | 通过 |
修改密码 | 原密码:a 新密码:null | 新密码不能为空 | 新密码不能为空 | 通过 |
修改密码 | 原密码:aa 新密码:null | 原密码不正确 | 原密码不正确 | 通过 |
修改密码 | 原密码:a 新密码:aa | 修改成功 | 修改成功 | 通过 |
5.2.3部门管理的模块测试
测试流程: 1.打开部门管理页面,输入部门名称;
2.点击修改;
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
部门管理 | 部门名称: 人事部 | 操作成功 | 操作成功 | 通过 |
部门管理 | 部门名称:null | 请输入部门名称 | 请输入部门名称 | 通过 |
5.2.4员工管理的模块测试
测试流程: 1.打开员工管理页面,不输入部门,工号等信息;
2.点击提交;
3.输入信息;
4.提交;
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
员工管理 | 点击删除 | 删除成功 | 删除成功 | 通过 |
员工管理 | 点击添加 | 跳转到录入界面 | 跳转到录入界面 | 通过 |
员工管理 | 不选择部门 | 请选择部门 | 请选择部门 | 通过 |
员工管理 | 工号:null | 请输入工号 | 请输入工号 | 通过 |
员工管理 | 姓名:null | 请输入姓名 | 请输入姓名 | 通过 |
员工管理 | 年龄:null 职位:null | 成功 | 成功 | 通过 |
员工管理 | 帐号:null | 请输入帐号 | 请输入帐号 | 通过 |
员工管理 | 密码:null | 请输入密码 | 请输入密码 | 通过 |
员工管理 | 全部填写 | 成功 | 成功 | 通过 |
5.2.5出勤管理的模块测试
测试流程: 1.打开出勤管理页面,不选择员工,月份出勤天数信息;
2.点击提交;
3.输入信息;
4.提交;
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
出勤管理 | 员工:null | 请选择员工 | 请选择员工 | 通过 |
出勤管理 | 月份:null | 请选择月份 | 请选择月份 | 通过 |
出勤管理 | 点击出勤录入 | 跳转到出勤 录入界面 | 跳转到出勤 录入界面 | 通过 |
出勤管理 | 点击重置 | 信息清空 | 信息清空 | 通过 |
5.2.6工资管理的模块测试
测试流程: 1.打开工资管理页面,不选择员工,月份,金额信息;
2.点击提交;
3.输入信息;
4.提交;
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
工资管理 | 点击工资录入 | 跳转到工资 录入界面 | 跳转到工资 录入界面 | 通过 |
工资管理 | 员工:null | 请选择员工 | 请选择员工 | 通过 |
工资管理 | 月份:null | 请选择月份 | 请选择月份 | 通过 |
工资管理 | 金额:null | 请输入金额 | 请输入金额 | 通过 |
工资管理 | 员工:21 月份:4 金额:200 | 录入成功 | 录入成功 | 通过 |
工资管理 | 点击重置 | 信息清空 | 信息清空 | 通过 |
5.2.7请假审核的模块测试
测试流程: 1.打开请假审核页面,选择审核,删除等操作;
2.点击提交;
3.输入信息;
4.提交;
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
请假审核 | 点击审核 | 弹出操作窗口 | 弹出操作窗口 | 通过 |
请假审核 | 点击删除 | 删除成功 | 删除成功 | 通过 |
请假审核 | 回复信息:null | 操作成功 | 操作成功 | 通过 |
5.2.8我的请假的模块测试
测试流程: 1.打开我的请假页面,选择添加,删除等操作;
2.点击提交;
3.输入信息;
4.提交;
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
我的请假 | 点击删除 | 删除成功 | 删除成功 | 通过 |
我的请假 | 点击添加申请 | 跳转到请假 申请界面 | 跳转到请假 申请界面 | 通过 |
我的请假 | 不选择开始结束时间 | 请选择时间 | 请选择时间 | 通过 |
我的请假 | 事由:null | 请输入事由 | 请输入事由 | 通过 |
我的请假 | 点击重置 | 信息清空 | 信息清空 | 通过 |
5.3其他错误
在程序设计实现的过程中不可避免的会产生各种难以预料的错误,如书写错误、传值员工信息不一致、参数传递问题等等。这些都需要通过细心的检测与不断的调试才能够排除。比如在servlet路径配置时因粗心错误导致运行导致所报错误,如图5.1:
图 5.1 由于servlet路径配置错误,运行时的提示
6 总结与展望
6.1论文的主要工作
本文简要介绍了企业员工信息管理系统的开发设计过程。介绍了实现本系统所需要的开发环境以及工具,详细介绍了本系统的功能需求,以及系统的可行性分析,确立了系统的模型,再由系统的概要设计到详细设计,以及系统最后的测试环节,最终完成了本次系统的开发过程。企业员工信息管理系统的系统模块,基本实现了员工信息管理系统的基本功能,管理员能够及时更新部门、员工考勤以及工资信息,能够及时对员工的请假做出回应,确保公司系统的准确实行,员工能够通过该系统查看自己的工资信息,提出请假申请等操作。企业员工信息管理系统的实现,简化了企业管理员工的工作负担,提高了公司的工作效率, 促进了企业的发展。
本系统研究已经取得了一部分成果,但让存在一些问题有待改正,还需要进一步提高系统的性能,完善系统的各项功能,进一步加强公司领导与员工的沟通等,需要不断进行完善改进。
6.2存在问题
与一些大公司所应用的系统相比,该系统存在的问题比较明显,员工信息的修改需要重新进行删除、录入操作,浪费了太多不必要的时间,该系统的还没有实现管理员、领导与员工的三级操作,在公司的管理上并不是很方便,需要进一步进行改进。该系统的安全工作并不完善,只有简单的加密措施,有待进一步加强。
改进方案:在时间充足的情况下,实现以上功能并不难,但还需要进一步学习,才能使系统的功能更加完善。
结 论
本次毕业设计将我大学四年所学的软件工程理论知识用到了具体的实践中去,深化了理论知识,同时也锻炼了动手实践能力。在这段日子里,我查阅了许多有关员工管理信息系统的资料,翻阅了许多JSP的书籍,结合自己的经验,详细调查了员工信息管理的工作内容与细节,开发设计了这个员工信息管理系统,虽然企业每个学期都会有相应课程的课程设计和实训来作为动手练习训练,不过在本次毕业设计具体的实践的时候还是遇到了很多小问题,比如说在jsp页面将输入框设为不可用是添加属性readonly=“true”,而我在实际编程中却错写成disable=“true”,这样直接导致了request对象取不到数据,调试了程序很久才发现request对象获得的返回值一直是空,之前一直以为是代码哪里出了问题,总是在查源程序的逻辑。这些虽然都是小问题,但是由于不细心在具体实践中却浪费了不少时间,看来平时还是要多多实践才是。
在系统的开发过程中,我运用到了B/S三层结构技术和自己在平时学习中掌握的一些技术,通过这些技术的实现,整个系统的性能得到了大大的提高。这些技术都在论文中做了比较详细的介绍。本系统还存在许多的缺陷和不足之处,比如很多细节上做的还不行,有些功能模块还应再加强。希望在以后的时间里,我可以把这些缺陷都弥补过来,进一步完善系统。
通过本次毕业设计我锻炼了自己的自学、研究能力,也从中学到不少在企业在课堂上学不到的东西.通过实践我也深刻的体会到软件开发的艰辛及问题解决后的喜悦心情,培养我的独立思考问题的能力,同时也增强了我的理论联系实际的能力,这为自己以后的工作奠定了良好的基础。
本系统可以在很大程度上减轻企业员工信息管理人员的工作负担,但由于时间按和技术条件的限制,还存在一些不足之处,有些功能还需要改进,还应该做进一步的系统调查需求分析工作,更深入的完善系统。总之,一个紧跟时代步伐的真正使用的软件必需有一个不断完善改进的过程。
参考文献
1施维敏. 数据库设计的数据规范化问题[J]. 现代情报,2003(08).
2罗建平. 企业信息化平台的构建与精细化管理[J] . 石油化工管理干部学院学报, 2010(04).
3仲秋雁,陆牡丹.企业信息系统评价的复杂性研究[J] .科技管理研究. 2004(01).
4王锐芳. 基于身份的密钥管理研究[D]. 兰州:兰州理工大学,2007.
5郭军. 基于角色的访问控制分级授权管理的研究[D]. 西安:西安电子科技大学,2012.
6许清. 基于BS架构的动态口令统一认证平台研究[D]. 浙江:浙江工业大学,2012.
7罗建平.业信息化平台的构建与精细化管理[J].石油化工管理干部学院学报.2010(04).
8王志毅,陈宁. 基于信息化建设的企业数据库设计[J]. 商业时代,2010(05).
9 N.Darren.SP.NET 2.0 Web Parts in Action:Building Dynamic Web Portals.Journal of Women s Health,2006.
10 M.Rezayat.The Enterprise-Web portal for life-cycle support[J].Computer-Aided Design ,2000 (2).
11 A.Touran,R. Lopez.Modeling cost escalation in large infrastructure projects. Journal of Construction Research . 2006.
管理信息系统
MIS (Management Information System),它就是我们所说的管理信息系统,它强调在生活上的应用,并且在当今信息社会普及的背景下应用得越来越广泛。管理信息系统是一个学习的新分支,它跨越多种领域,例如,管理科学知识,系统科学,运筹学,统计与计算设备的科学知识。这以学习为基础,涉及生活的多种领域,并注意要以收集和处理为手段,从此形成了一个纵横交织的系统。
1.管理信息系统概述
20世纪,在整个世界经济蓬勃发展时期,许多经济学家提出的一个新的管理理论之一。西蒙对政府提出,信息和战略的意义的决定依赖于50年代,20世纪。同时,学科界承认控制论,并认为,政府便是一个控制程序。1958年,德?盖写到:“美国政府在准确获取信息的的前提下,降低成本和解决信息延迟问题,完成了很好的控制。”这种特殊的时期,计算机开始在会计工作中应用,提高了对数据的处理的效率。
1970年,瓦尔特提出了一个信息系统的定义:管理信息系统以书面或口头的形式,在适合的时间向经理、职员以及外界人员提供过去的、现在的、预测未来的有关企业内部及其环境的信息,以帮助他们做决策。
1985年,警戒信息系统的创始人,明尼苏达大学管理学教授高登?戴维斯给出了一个较完整的信息系统定义:管理信息系统是一个利用计算机硬件、软件、人工规划、管理和决策模型以及数据库,为组织作用、管理和决策职能提供信息的综合性人—机系统。
管理信息系统能实测企业的各种运行情况,利用过去的数据预测未来,从全局出发辅助企业进行决策,利用信息控制企业的行为,帮助企业实现其规划目标。
1.1管理信息系统的发展历程
电子数据处理系统是管理信息系统的早期形态,其研究的内容是实现企业管理的数据处理自动化,以提高工作效率。单项数据处理系统是第一阶段,用计算机孤立地处理部门中的一些事务,将处理产生的数据转化成信息。
第二阶段是综合数据处理系统。美国的航空公司于20世纪50年代有了很大的发展,飞机订票系统是综合数据处理系统发展的一种典型代表。那时航空公司在一分钟内便有1008个订票点可能同时处理600000位旅客的事务,并有27000航段正在航行,对整个系统的操作控制及其复杂,即使是一个点的控制。综合数据处理系统将一系列的管理业务,通过共享文件的数据把单项处理业务有机地联系起来。还有银行的业务系统对综合数据处理系统都有广泛的应用。因此,这是管理信息系统的初步阶段。
第三阶段是状态报告系统,它可划分为生产状态言论和服务的状态,并了解和研究,如情况报告制度等。它的类型代表是生产控制系统,这是IBM公司针对生产状况控制开发的,例如其中的语音系统。IBM公司是总所周知的世界上最大的计算机公司,成立与1964年IMB的工厂遍及美国各地,它所生产的中等计算机和计算机赶超的15000不同的组件,对有差异的和不同的组件元素相互协调计算,生产经过精密、装配、安装和运输的的过程及其复杂,因此,必须要有一个生产状态报告系统,以保证成功得制造。IBM建立完善的管理,它可以进行450个专业工作业务系统的原子吸收。
数据处理系统的状态报告制度仍然具有另一种形式,而且用于处理日常业务工作,情调手工任务的自动化,在生产过程中有效得洁身劳动力,这是数据处理系统通常无法提供的信息战略决策。
最后一个阶段是决策支持系统,是信息系统作为战略决策过程中的补充手段。
1.2 管理信息系统的应用
管理信息系统用于最基础的工作,像计算薪资和人力管理事务等,并发展了商业金融事务的管理和库存 和对个别时间,以便业务控制,这涉及电子数据处理系统。当建立企业资料库,实现数据共享,为整体计划和设计的顺利实施而建立信息系统,实现管理信息系统情况阶段。计算机技术进步和需求的进一步扩大驱动管理信息系统的进一步提升发展,因此人们更加强调管理信息系统的阶段发展。管理信息系统的发展强调是否能满足高层主管在制定战略决策时的多样、灵活和综合性决策眼球,更特别强调关于对企业外部的信息和数据仓库集成、模型库、方法库,并收集其他人工智能方法是否具有战略意义,这是支持系统(DSS)的任务作出的战略决策。
70年代初,管理信息系统开始应用与工作中,20世纪在全世界开始普及。截至目前,MIS已普及到每个国家,几乎涵盖了各个部门的每个工作阶段,
1.3 管理信息系统的发展方向
20世纪,管理信息系统的发展将有三个方面的现象:
A.美国政府正在建立管理信息系统,并造成管理的技术负责人的老龄化问题。
B.该系统的开发设计是在具有战略意义的基础上决定的,并在物资管理信息系统的主管在任何时候都感兴趣的信息服务。
C.总的来说,管理程序的设计是与具体的工作事务联系在一起。不只是大中规模的iqye普遍建立管理信息系统,一些小规模的企业也无不例外,也普遍建立像电子邮件和电子数据交换等公用数据网络,管理信息系统提供的良好的支持环境在是以互联网技术的迅速发展为前天的,特别是过去几年在商业界的发展。
通过国际技术水平的发展,看到20世纪90年代,出现了各种新的管理技术。
(1)业务流程再造(BPR)
企业流程再造是以企业流程为改造对象,从顾客的需求出发对企业流程进行基础性的再思考和根本性的再设计,以达到成本、质量、服务和速度现代关键业绩指标的巨大提高。
(2)智能化决策支持系统(IDSS)
在具有战略意义的智能化决策支持系统是充分考虑到工作的需求和更高的业务区分层次人才工作人员的功能。
(3)精益生产(LP)
对生产过程,进行全面质量控制和并行项目的生产技术的改革,最大限度的削减产品设计成本和生产周期,提高产品质量和降低货物储备,改善服务水平,以满足客户需求的不断变化。
(4)敏捷制造(AM)
一个商业管理模式,将柔性生产技术,有技术、有知识的劳动力与能够促进企业内部和企业之间合作的灵活管理(三要素)集成在一起,通过所建立的共同基础结构,对迅速改变的市场需求和市场实际做出快速响应。
2.管理信息系统的发展对商业业务管理的影响
管理信息系统的开发,改变了企业的业务管理模式,并对企业的未来发展具有深远的意义。
具有战略意义的决策,特别是战略决策,在管理信息系统的协助下,它的好坏直接影响可商业的发展。管理信息系统通过在与不同数学模型中的定量分析计算业务的管理问题,从而减少阻碍企业发展的因素。过去的管理,对管理中的问题很难测试,但管理信息系统可结合利用管理中任何信息,并提供足够的数据,并模拟产生对企业发展具有长远意义的管理方式。
在管理信息系统发展之后,许多分散的业务逐渐集中,企业可建立直属主管的信息系统部,业务操作的权威性,逐渐集中在高素质的管理人员手中,仿佛带来诸多部门办公室工作的减少,因此有人预言,中间层管理应该消失。实际上,中间管理层不仅没有下降,反而增加。
这是因为,尽管中间管理层的工作人员减少了每天繁琐的工作,但需要他们进行分析研究的工作却增加了,这便显示了中间管理层在战略决策上的重要作用。在MIS发展后,不断增加了对高技术人才需求,但是能力有限的事情,应该逐步淘汰。这迫使人们更加注重人才的培养。随着网络和文件传输系统的发展,对业务工作人员的数量减少,反而对创造性工作人员的需求增多,这导致了网上办公系统的发展,对于企业来说具有长远的发展意义。
目前,许多国家正在酝酿一个更加发达的制造业战略,制造企业迅速发展。它完全更具用户要求组织设计和制造,业务流程可在不同地区转移,并且要求对机械的资源和工作人员进行重组改造,构建适合企业发展的新颖的系统。快速制造企业建立了一个全新的策略整体对消费需求的依赖关系,并能唤起再次生产结构的革命。
管理信息系统是以一个组织进行全面管理和发展而设计的,为组织活动提供适合的决策程序。西方一些企业家把管理信息系统看成企业发展的灵丹妙药,能够治疗企业的各种疾病,但是也有人说,管理信息系统在组织活动中的应用有太多的失败。其实,管理信息系统的应用效应的实现是建立在企业是否选择了适合自己的管理信息系统,让它在我们的研究和组织活动中得到最大效用的发挥,同时企业组织和管理制度对管理信息系统提出更过的需求,从而发展管理信息系统,建立更有效的管理信息系统。
参考资料:
基于jsp的企业员工信息管理系统毕业设计(项目报告+答辩PPT+源代码+数据库+部署视频)https://download.csdn.net/download/dwf1354046363/87813584Java毕业设计174例,包含部署视频_易小侠的博客-CSDN博客
https://cv2022.blog.csdn.net/article/details/124463185?spm=1001.2014.3001.5502