工资管理系统分析

合集下载

工资管理系统需求分析报告

工资管理系统需求分析报告

工资管理系统需求分析报告引言:工资管理是一项重要的人事管理工作,它的准确性和及时性直接影响着员工的工作积极性和公司的和谐发展。

为了提高工资管理的效率和准确性,开发一套工资管理系统是必不可少的。

本报告将对工资管理系统的需求进行详细分析,以满足人力资源管理部门的实际需求。

一、背景随着企业规模的扩大和工资结构的复杂性增加,传统的手工工资管理已经无法满足工资核算的需求。

工资管理系统的开发旨在提高工资核算的准确性、提高工资核算的效率、降低工资管理的成本,并为员工提供更方便的查询和自助服务。

二、需求分析1.工资核算-系统应能自动根据员工的基本工资、绩效奖金、加班工资等进行工资核算,并及时生成工资发放明细表。

-系统应支持按照月份进行工资核算,同时能够根据用户需求进行多种统计分析,如不同岗位之间的工资差异比较等。

-系统应支持灵活的工资核算参数配置,方便根据不同岗位或不同部门的工资计算规则进行定制。

2.工资发放-系统应提供工资发放的自动化功能,能够根据工资核算结果生成工资条,并将工资条通过电子邮件或其他方式发送给员工。

-系统应支持工资发放的批量处理,能够根据员工的工资发放日期和工资发放方式进行自动化操作,减少手工操作的工作量。

-系统应提供工资发放的审批流程,确保工资发放的准确性和合规性。

3.工资查询和自助服务-系统应提供员工自助查询功能,能够查询个人的工资发放明细、个人所得税等信息,并能够进行工资变动的申请和查询。

-系统应提供管理人员查询功能,能够查询全公司或部门的工资统计数据并生成相关报表。

-系统应提供系统管理员的权限管理功能,能够对系统的各项功能进行权限的控制和管理。

4.数据安全-系统应具备较高的数据安全性,能够保护员工工资数据的机密性和完整性。

-系统应具备数据备份和恢复功能,确保员工工资数据不会因系统故障而丢失。

三、总结通过对工资管理系统的需求进行详细分析,我们可以得出以下结论:工资管理系统的开发对于提高工资管理的效率和准确性具有重要意义。

人事工资管理系统分析与设计

人事工资管理系统分析与设计

人事工资管理系统分析与设计人事工资管理系统是企业中管理人力资源和薪酬的重要工具,是一种高效、安全、便捷的信息化工具。

该系统的主要目的是为企业提供一个全面、精准、安全、稳定的人事工资管理服务,实现人力资源与财务管理的有机结合以提高企业的效益。

一、需求分析1.系统用户:企业中的管理人员、财务人员、人力资源专员和员工。

2.系统功能:(1)员工信息管理:录入、查看、修改、删除员工的个人信息、合同信息和家庭信息。

(2)工资管理:根据员工的职位、级别、薪酬等信息,自动生成工资单,并可进行查询、修改和删除。

(3)考勤管理:自动生成员工考勤记录,支持手动修改并计算出应扣除的工资。

(4)年终奖管理:系统可以自动计算员工的年终奖,并在相关时期发放。

(5)假期管理:自动生成员工的休假记录,可随时查看员工休假情况,支持手动修改。

(6)报表生成:系统会自动生成员工工资报表、考勤报表、假期报表等。

3. 应用场景:(1)管理人员和财务人员可以通过系统方便快捷地查询员工的工资情况,减少人工操作,提高管理效率。

(2)员工可以通过系统查看自己的工资单、考勤记录、休假情况等,方便快捷。

二、系统设计1.系统架构:本系统采用B/S架构,即基于浏览器的应用程序。

前端采用HTML、CSS、JavaScript等技术,后端采用Java语言,使用MySql作为数据库。

2.数据库设计:该系统主要包括6张表:员工表、部门表、薪资表、考勤表、假期表和用户表。

员工表包括员工基本信息、职位和薪资等信息。

部门表包括部门名称和部门编号等信息。

薪资表包括薪资、津贴、加班费等信息。

考勤表包括考勤记录和请假时间等信息。

假期表包括休假记录和假期余额等信息。

用户表包括用户名、密码和权限等信息。

3.系统模块设计:本系统设计了员工信息管理、工资管理、考勤管理、年终奖管理、假期管理和报表生成六个模块。

(1)员工信息管理模块:此模块主要实现员工资料录入、查看、修改、删除功能。

工资管理系统

工资管理系统

工资管理系统工资管理系统是一种可以帮助企业有效管理员工工资信息和薪资发放的软件系统。

它通过计算、记录和监控员工的工资数据,帮助企业实现工资发放的自动化,提高工资管理的效率和准确性。

本文将阐述工资管理系统的定义、功能、价值以及其应用前景。

一、工资管理系统的定义工资管理系统是一套软件系统,用于对企业的员工工资进行管理和监控。

它涵盖了工资计算、薪资结构、工资发放、工资报表生成等多个方面,可帮助企业自动化地处理工资管理流程,提高效率和准确度。

二、工资管理系统的功能1.员工信息管理:工资管理系统可以记录和管理员工的基本信息,包括姓名、职位、部门、岗位等。

通过系统可以快速查询和更新员工信息,方便企业管理人力资源。

2.薪资结构管理:系统提供了灵活的薪资结构管理功能,可根据企业的实际情况设置不同的薪资组成和计算方式。

企业可以根据员工的职位和业绩情况,制定不同的薪资政策,并通过系统自动计算和更新薪资数据。

3.工资计算与发放:系统根据预设的薪资结构和员工信息,自动计算每位员工应获得的工资金额。

同时,系统还提供了工资发放的功能,可以根据设定的发放周期和方式,自动完成工资的发放流程。

4.工资报表生成:工资管理系统能够生成多种工资报表,包括工资总额统计、个人工资明细、部门工资对比等。

这些报表可以帮助企业更好地了解工资状况,进行薪资分析和预算。

三、工资管理系统的价值1.提高工资管理效率:工资管理系统的自动化特性,能够大大减少手工操作和重复劳动,节省工资管理的时间和人力成本。

企业可以将更多精力和资源用于提升核心业务的发展。

2.提高数据准确性:系统能够准确地计算工资金额,避免了手工计算中可能出现的错误。

同时,系统存储了员工的历史工资数据,可提供准确的工资查询和分析功能,有助于减少数据错误和争议。

3.强化工资管理控制:工资管理系统可以制定严格的权限控制,对不同角色的员工进行权限限制,确保工资数据的安全性和保密性。

只有授权人员才能访问和修改工资数据,减少了数据泄露和滥用的风险。

工资管理系统概述

工资管理系统概述

工资管理系统概述工资管理系统是一个企业内部管理的重要组成部分。

工资管理系统主要是用于管理企业员工的薪资、奖金、福利和社保等与钱财有关的事项。

对于企业而言,一个良好的工资管理系统能够增强企业与员工之间的信任度,减少劳动纠纷的发生,提高员工工作积极性和企业的运营效率。

本文将对工资管理系统进行全面的概述,包括其定义、特点、优点和构成组成等方面。

1.定义工资管理系统是一种管理员工薪酬、奖金、福利和社保等相关事项的信息系统,其主要目的是用于企业内部对员工薪资管理的计算、发放及统计等方面的处理。

2.特点1.减轻人力工资管理系统能够自动化地处理大量与员工薪资有关的数据,大大减轻了人力成本。

2.提高精度工资管理系统能够准确地计算员工的收入、福利和社保等,极大地提高了精度,减少了计算错误的发生。

3.保护敏感数据工资管理系统通过严格的权限控制,保护了敏感数据的安全,防止数据泄露和误用。

4.提高效率工资管理系统能够实现信息化处理,提高了处理效率,同时也方便了员工的查询。

5.增强透明度工资管理系统可以提高透明度,让员工及时了解收入的情况,减少疑问和争议。

3.优点1.提高工作效率工资管理系统可以自动化地处理工资相关事项,提高了工作效率,节省了时间和人力成本。

2.减少错误率工资管理系统能够准确计算员工的薪酬、福利等方面的数据,可以有效减少错误率,提高数据处理的准确性。

3.保护敏感信息工资管理系统通过严格的权限控制,保护了敏感信息的安全,减少了信息泄露和误用的风险。

4.减少劳动纠纷工资管理系统能够提高薪资透明度,让员工及时了解收入情况,减少了因薪酬问题引起的劳动纠纷。

5.成本效益高通过使用工资管理系统,企业能够节省人力、缩短处理时间,并减少人力资源成本和统计成本。

6.实时更新工资管理系统能够实时更新员工信息,有利于及时处理员工的薪资、福利和社保等相关事项。

4.构成组成工资管理系统包括以下模块:1.基础数据管理:包括员工信息、应发工资、应扣项目等相关数据。

职工工资管理系统可行性分析

职工工资管理系统可行性分析

工资管理系统可行性分析一、系统开发的必要性随着计算机技术的飞速发展,计算机在企业和大学管理中应用的普及,利用计算机实现人事工资的管理势在必行.利用计算机支持企业高效率完成劳动人事管理的日常事务,是适应现代企业制度要求、推动企业和大学劳动人事管理走向科学化、规范化的必要条件。

工资管理是任何企业单位都需要进行的一项工作,因此,开发制作工资管理系统具有较大的社会现实意义。

而工资管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,一般不允许出错,实行电子化的工资管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。

职工工资管理信息系统的实现可以减轻比较繁琐的手工工资管理更加针对性、便捷性、可视化的管理职工工资。

工资管理是企业管理的重要组成部分,它与企业的人事管理、财务管理有着密切的联系.对于劳资关系相对复杂的大中型企事业单位,手工进行工资的发放工作往往需要耗费大量的人力与时间。

由于工资发放在时间和操作上存在着一定的重复性、规律性,这使得工资管理的计算机化成为可能,该项目的提出正是为了在此基础上进一步实现企业员工工资管理的规范化和自动化。

二、系统规划情况可行性分析是指在客观条件制约下,对系统开发的必要性和可行性进行分析论证。

它是在项目系统实施前进行的一项重要工作,对系统能否正常运行、能否从中获得经济效益起着决定性的作用。

系统的可能性是只指研究系统开发的条件是否具备,而系统的必要性是指客观上是否需要。

可能性与必要性相符相成,缺一不可。

(一)系统设计的必要性由于工资核算及汇总烦琐混乱且容易出错,与职工档案相关联,所得税核算复杂,因此迫切需要一套计算机信息管理系统来实现可靠、便捷的管理.(二)系统背景●项目的任务提出者:***公司●系统开发者:“***”财务小组●系统用户: “****"财务人员(三)系统目标1、提供职工档案管理程序(即能够支持增加职工记录,修改职工档案数据的程序)2、设计输入每个已建档的职工的各项工资款3、计算每个职工工资总额并自动计算代扣个人所得税、4、汇总职工工资编制输出工资汇总表三、系统开发的可行性运用计算机的便捷性,程序的可操作性,让我们更能够方便快捷的对信息系统进行科学性的管理.与此同时,我们能够利用专业知识来解决实际问题.在各种计算机语言中,VB是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言;VB可用于开发Windows环境下的各类应用程序;在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具。

工资管理系统

工资管理系统

一、工资管理系统的需求分析工资管理系统包括信息浏览查询、数据库维护、基本信息管理.1。

系统功能需求(1)员工可以进入此系统查询工资和查看基本的信息。

(2)管理员可以对员工的信息进行添加,删除,修改。

并对数据库中的数据维护,包括数据备份,导入数据,导出数据。

满足上述需求的系统主要包括下面几个模块(1)数据库维护模块:管理员要对数据库内所有的数据进行备份和恢复,并可实现数据导入导出功能.(2)基本信息管理模块:实现对员工基本信息的管理操作,包括员工基本数据信息的添加、修改、删除和查询等功能。

(3)信息浏览查询模块:用户对系统中的信息进行查询。

可根据条件查询员工历史工资数据(如按月份查询、按姓名查询、按部门查询等)。

2数据库维护模块数据备份:将一个月的数据进行复制.数据导入:每天将数据导入到数据库中。

数据导出:每天下班将数据导出数据库。

3基本信息管理模块删除员工信息:如果有员工辞职则删除该员工的信息.添加员工信息:如果聘用了新员工则添加员工信息.修改员工信息:如果有员工的信息有所变动则修改。

4信息浏览查询模块查询员工信息:员工查询自己的信息。

查询工资:员工查询自己的工资情况。

功能需求细化:①在工资管理系统中,需要员工的参与,员工可以查询工资的历史数据并领取工资,还可以通过员工编号查看员工的基本信息。

②管理员是此系统的核心,管理着整个系统。

他要对所有的员工的信息的管理,对数据进行添加,删除,修改。

管理员还要对系统进行相关维护操作,数据备份,数据恢复,数据导入等以及更新数据库。

(1)系统用户参与的总的用例图管理员和员工都可发从用户这个参与者中泛化而来,用户是指此系统的所有使用者,以登录系统完成相应的操作.系统用户参与的总的用例图如下图所示.从图中可以清楚地看到泛化关系与各个参与者所参与的用例。

图2.1系统用户参与的总的用例图(2)工资统计的用例图此用例图清晰看出工资发到员工手里的过程。

有四个参与者,包括经理,职工,行政部门,业务部门。

工资管理系统设计

工资管理系统设计一、系统需求分析1.功能需求(1)员工信息管理:包括员工基本信息、薪资标准、薪资档案等;(2)考勤管理:记录员工的出勤情况,包括迟到、早退、缺勤等情况;(3)计算工资:根据考勤记录和薪资标准,自动计算每个员工的工资;(4)工资发放:生成工资条,记录发放日期和金额;(5)统计报表:生成工资统计报表,包括总工资、平均工资、最高工资、最低工资等。

2.性能需求(1)数据安全性:保护员工的个人隐私和工资信息,确保系统安全可靠;(2)操作便捷性:界面友好,操作简单方便,提供快速查询和查看功能;(3)计算准确性:计算工资的准确性是系统的关键,要确保计算结果精确无误;(4)数据存储和查询速度:要求数据库的存储和查询速度较快,以提高系统的响应速度。

二、系统设计1.数据库设计(1)员工信息表:包括员工ID、姓名、性别、部门、岗位、入职日期等;(2)考勤记录表:包括员工ID、打卡日期、上班时间、下班时间等;(3)工资标准表:包括工资标准ID、基本工资、奖金、补贴等;(4)工资发放表:包括员工ID、工资发放日期、金额等。

2.系统架构设计(1)前端设计:采用用户界面友好的Web页面,并提供登录、员工信息管理、考勤管理、工资计算及发放、统计报表等功能的页面;(2)后端设计:使用Java语言开发后台逻辑,实现与前端交互、数据的存储、计算和查询等功能;(3)数据库设计:使用关系型数据库如MySQL进行数据存储,设计合理的表结构和索引,保证数据的存储和查询速度;(4)系统安全设计:采用用户登录、权限管理和数据加密等手段,确保系统的安全性。

三、系统实施1.数据采集(1)员工信息采集:通过员工管理模块,录入员工的基本信息和薪资标准;(2)考勤记录采集:通过考勤管理模块,记录员工的打卡情况,包括上班时间、下班时间等。

2.工资计算与发放(1)根据考勤记录和薪资标准,自动计算每个员工的工资;(2)生成工资发放表,记录工资发放的日期和金额。

工资管理系统实验报告

工资管理系统实验报告工资管理系统实验报告一、引言随着社会的不断发展,企业管理的重要性日益凸显。

而工资管理作为企业管理的重要组成部分,对于保持员工积极性和提高工作效率具有重要意义。

为了更好地管理和分配工资,我们开发了一款工资管理系统。

本实验报告旨在介绍该系统的设计与实现过程,并对其进行评估和总结。

二、系统设计与实现1. 需求分析在进行系统设计之前,我们首先进行了需求分析,明确了系统的功能和特点。

根据企业的实际情况和需求,我们确定了以下主要功能:- 员工信息管理:包括员工基本信息、薪资等级、岗位职责等;- 工资计算与发放:根据员工的薪资等级和工作情况,自动计算工资并进行发放;- 绩效考核:根据员工的绩效情况,进行考核评定;- 工资报表生成:生成各种类型的工资报表,方便管理层进行分析和决策。

2. 系统架构基于需求分析的结果,我们设计了以下系统架构:- 前端界面:采用用户友好的界面设计,方便员工和管理层进行操作;- 后端数据库:存储员工信息、薪资等级、绩效考核结果等;- 业务逻辑层:负责处理前端与后端之间的数据交互和业务逻辑处理;- 数据报表层:生成各类工资报表,提供给管理层进行分析和决策。

3. 系统实现为了实现上述系统架构,我们采用了以下技术和工具:- 前端开发:使用HTML、CSS和JavaScript等技术,实现用户界面的设计与交互;- 后端开发:采用Java语言和MySQL数据库,实现业务逻辑和数据存储;- 数据报表生成:使用Python编程语言和数据分析库,生成各类工资报表。

三、系统评估与总结1. 优点通过实际应用和测试,我们发现该工资管理系统具有以下优点:- 简化工资管理流程:系统自动计算工资和绩效考核结果,减少了人工操作和错误率;- 提高工作效率:系统提供了快速查询和报表生成功能,方便管理层进行决策;- 提升员工满意度:准确、及时地发放工资,增加了员工对企业的信任和归属感。

2. 不足与改进然而,我们也意识到该系统还存在一些不足之处:- 用户体验待优化:界面设计可以更加美观和直观,提升用户体验;- 数据安全性有待加强:加强数据加密和权限管理,保护员工信息的安全性;- 功能扩展空间:考虑增加更多的功能模块,如福利管理和培训记录等。

工资管理系统实验报告

工资管理系统实验报告工资管理系统实验报告一、引言工资管理是企业管理中至关重要的一环。

一个高效的工资管理系统能够帮助企业实现工资发放的准确性、及时性和公正性,提高员工的满意度和工作积极性。

本实验旨在设计和实现一个工资管理系统,以提升工资管理的效率和准确性。

二、系统设计与实现1. 系统需求分析在进行系统设计之前,我们首先进行了系统需求分析。

通过与企业管理人员的沟通和调研,我们确定了以下几个主要的系统需求:- 工资计算:系统能够根据员工的基本工资、绩效考核等因素,自动计算出每个员工的应发工资。

- 工资发放:系统能够自动将应发工资转账至员工的银行账户,并生成工资发放记录。

- 工资查询:员工能够通过系统查询自己的工资明细和历史工资记录。

- 统计分析:系统能够生成工资统计报表,包括平均工资、工资分布等。

2. 数据库设计根据系统需求,我们设计了一个包含以下几个主要表的数据库:- 员工表:存储员工的基本信息,包括姓名、工号、职位等。

- 工资表:存储每个员工的工资明细,包括基本工资、绩效工资等。

- 发放记录表:存储每次工资发放的记录,包括员工工号、发放日期等。

3. 系统界面设计为了提高用户的使用体验,我们设计了一个简洁直观的系统界面。

界面主要包括以下几个功能模块:- 员工信息管理:用于添加、修改和删除员工信息。

- 工资计算:根据员工的基本信息和绩效考核,自动计算应发工资。

- 工资发放:将应发工资转账至员工的银行账户,并生成发放记录。

- 工资查询:员工能够通过输入工号查询自己的工资明细和历史记录。

- 统计分析:生成工资统计报表,支持按部门、职位等条件进行筛选和排序。

4. 系统实现我们使用了Java语言和MySQL数据库来实现该工资管理系统。

通过使用Java的GUI库和MySQL的JDBC驱动,我们成功地编写了一个可运行的工资管理系统。

三、实验结果与讨论经过系统的设计和实现,我们进行了一系列的实验测试。

在测试过程中,我们模拟了不同的工资计算和发放场景,并对系统的准确性和稳定性进行了评估。

工资管理系统总结汇报

工资管理系统总结汇报工资管理系统是一种用来管理和计算企业员工工资的软件系统,具有自动化、高效性和准确性等优点。

通过该系统,可以实现工资的计算、发放、查询、统计等功能,大大提高了工资管理的效率和准确性。

下面就工资管理系统的功能、优点、实施过程和未来发展等方面对其进行总结汇报。

工资管理系统的功能主要包括以下几个方面:1. 工资计算:根据企业制定的工资计算规则,自动计算每个员工应发放的工资金额,包括基本工资、绩效工资、奖金、加班工资等。

2. 工资发放:生成工资发放表,记录每个员工应发放的工资金额,并提供相应的发放方式,如现金、银行转账等。

3. 工资查询:员工可以通过系统查询自己的工资信息,包括每月的工资明细、历史工资记录等。

4. 工资统计:根据企业需要,系统可以生成各类工资统计报表,如部门工资统计、岗位工资统计、年度平均工资等,为企业提供决策支持和管理参考。

工资管理系统的优点主要有以下几个方面:1. 自动化:通过工资管理系统,工资计算和发放等繁琐的工作可以自动完成,省去了人工计算和填写表格的时间和精力。

2. 高效性:工资管理系统可以实现快速计算和发放工资,提高了工资发放的效率,避免了延误和错误。

3. 准确性:由于工资管理系统的计算和发放都是自动化的,减少了人为因素的干扰和错误,提高了工资计算的准确性。

4. 信息安全:工资管理系统可以设置不同权限的用户账号,保证了工资信息的安全性和机密性,防止信息泄露。

工资管理系统的实施过程主要包括以下几个步骤:1. 需求分析:明确企业的工资管理需求,包括工资计算规则、工资发放方式、统计报表要求等。

2. 系统设计:根据需求分析结果,设计工资管理系统的功能模块和界面布局,确定系统的技术架构和数据库设计。

3. 系统开发:开发人员根据设计方案,编写工资管理系统的程序代码,包括前端页面和后台逻辑。

4. 系统测试:对已开发的工资管理系统进行功能测试和回归测试,确保系统的稳定性和准确性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

企业工资管理系统小组成员:马化腾,马云,王健林2015-11-17企业工资管理——工资管理子系统企业工资管理——工资管理子系统 (1)一.需求分析 (2)1.组织机构操作方式上的可行性 (2)本系统运行在通用的linux操作系统上,具有linux相似的操作界面。

具有简单易学,使用方便等特点,只需在计算机上进行相关的简单的设置即可,懂得计算机基本操作的人员经过短期培训培训即可熟练操作,熟悉计算机操作的人员不需要再经过专门的培训即可熟练操作。

所以,从组织机构操作方式上的可行性分析,该系统是可行的。

(2)2.基础数据的可用性 (3)企业工资管理系统的基础数据都是一些比较常见的基础数据,比如职工编号,姓名,部门编号等等,在系统的设计过程中都是很好使用和编排的,所以,从系统基础数据可用性的角度看,该系统是可行的。

(3)3.经济上的可行性 (3)a.采用新的工资管理系统可取代原系统的单据手工传递工作,减少人工开支,节省资金,并且可大大提高信息量的取得,缩短信息处理周期,提高工资汇总的效率,使公司变的资金运转更加便捷。

(3)b.开发经费、投资方面的来源和限制:各种硬件及人员花费至少需8000元. (3)所以,从经济上的可行性分析,该系统是可行的。

(3)4.技术上的可行性 (3)本系统是一个数据库管理和查询的系统,现有的技术以较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。

职工工资管理系统开发与运行环境选择如下: (3)开发环境:ubuntu 14.04 ltx (3)开发工具:Java,Java软件可以选用eclipse (3)数据库管理系统:MySQL数据库 (3)5.目标分析 (3)做出一个简单实用工资管理系统,不需要功能复杂,只需要实用性强。

功能要在很多小型企业都能够使用。

操作性简单,要最大限度的减少使用用户的工作量。

(3)3.功能分析图 (7)该工资管理——工资管理子系统的总体功能可以从两个方面来分析,一是查找功能,二是编辑功能----包括修改,删除,和添加,总体功能设计如图3-4所示。

(7)查询功能 (7)编辑功能 (7)员工 (7)员工和管理员都可以通过在进入工资管理子系统后,对员工的基本,和基本工资信息进行查询 (7)无 (7)管理员 (7)管理员通过管理权限登录后,可根据改变员工信息,对基本工资表,工资表进行修改,添加和删除操作。

(7)图3-6 工资管理子系统功能分析图 (7)数据字典中有六类条目:数据元素、数据结构、数据流、数据存储、处理过程和外部实体。

不同类型的条目有不同的属性。

根据“数据流程图”,编写相应的“数据字典”,如下所示。

(7)5.数据加工处理的描述 (10)数据加工处理的工具主要包括:结构化语言,判断树,决策表。

下面用结 (10)6.管理信息系统流程设计图(新系统模型) (10)一.需求分析1.组织机构操作方式上的可行性本系统运行在通用的linux操作系统上,具有linux相似的操作界面。

具有简单易学,使用方便等特点,只需在计算机上进行相关的简单的设置即可,懂得计算机基本操作的人员经过短期培训培训即可熟练操作,熟悉计算机操作的人员不需要再经过专门的培训即可熟练操作。

所以,从组织机构操作方式上的可行性分析,该系统是可行的。

2.基础数据的可用性企业工资管理系统的基础数据都是一些比较常见的基础数据,比如职工编号,姓名,部门编号等等,在系统的设计过程中都是很好使用和编排的,所以,从系统基础数据可用性的角度看,该系统是可行的。

3.经济上的可行性a.采用新的工资管理系统可取代原系统的单据手工传递工作,减少人工开支,节省资金,并且可大大提高信息量的取得,缩短信息处理周期,提高工资汇总的效率,使公司变的资金运转更加便捷。

b.开发经费、投资方面的来源和限制:各种硬件及人员花费至少需8000元.所以,从经济上的可行性分析,该系统是可行的。

4.技术上的可行性本系统是一个数据库管理和查询的系统,现有的技术以较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。

职工工资管理系统开发与运行环境选择如下:开发环境:ubuntu 14.04 ltx开发工具:Java,Java软件可以选用eclipse数据库管理系统:MySQL数据库5.目标分析做出一个简单实用工资管理系统,不需要功能复杂,只需要实用性强。

功能要在很多小型企业都能够使用。

操作性简单,要最大限度的减少使用用户的工作量。

二.系统分析1.业务流程图图例说明:表示外部实体表示处理过程的说明表示系统表示生成文档表示表表示信息的传输过程根据需求分析,我们分析出一个工资管理系统中工资管理子系统业务的一般流程:首先,用户必须进行注册以及登陆,才能进入工资管理系统。

注册及登陆的流程如下:图3-1员工注册及登陆业务流程图其次,员工登陆进入工资管理子系统之后就要进行工资查询。

图3-2 企业工资管理——工资管理子系统业务流程图2.数据流程图图例说明:表示外部实体表示处理过程表示存储信息或文件带有名称的有向线段表示数据流图3-3 工资管理系统顶层DFD图3-4 工资管理系统的第一层DFD图3-5 企业工资管理——工资管理子系统的数据流程图3.功能分析图该工资管理——工资管理子系统的总体功能可以从两个方面来分析,一是查找功能,二是编辑功能----包括修改,删除,和添加,总体功能设计如图3-4所示。

图3-6 工资管理子系统功能分析图4.数据字典数据字典中有六类条目:数据元素、数据结构、数据流、数据存储、处理过程和外部实体。

不同类型的条目有不同的属性。

根据“数据流程图”,编写相应的“数据字典”,如下所示。

(1)数据元素条目(2)数据流条目(3)处理过程定义(4)数据存储5.数据加工处理的描述数据加工处理的工具主要包括:结构化语言,判断树,决策表。

下面用结6.管理信息系统流程设计图(新系统模型)图3-7 企业工资管理——工资管理子系统设计三.系统设计1.功能结构设计本学工资管理子系统主要分为三个模块,包括查询,添加,修改和删除。

本系统首先将员工的基本和基本工资信息输入,然后可以进行以下三种功能操作。

企业工资管理——工资管理子系统功能模块设计2.系统信息处理流程设计3.数据库物理设计数据库的设计分为三个部分,首先对雇员工资管理系统的设计进行需求分析,确定需要在数据库中保存的信息,然后应用E-R图对信息进行组织和连接,最后确定每个表的字段属性和主键等数据库信息。

a)数据库需求分析根据系统设计和业务逻辑分析,需要存放以下信息:i.雇员信息:雇员编号,雇员姓名,密码等。

ii.薪资信息:雇员编号,工资等b)E-R图的生成下列E-R图描述:4.数据库关系表5.数据库存储引擎设置这里比较复杂,由于系统功能比较简单,所以采用默认的存储引擎即可,若今后系统功能十分复杂了,就需要考虑重新设计数据库的存储引擎,还要建立索引,视图等一系列的东西。

四.系统实现部分1.程序框图(程序流程图)下面是程序的各部分关系图:2.源程序登陆界面:普通员工登陆进入系统后的界面,只有查询其他员工和自己的工资的功能,编辑员工不会显示出来。

这是管理员进入后的界面,全部可以操作,导航栏的链接可以全部显示出来,并可以操作。

这是登陆界面的核心代码:package org.zhli.app.action;import java.util.Map;import org.apache.struts2.interceptor.SessionAware;import org.zhli.app.domain.Employee;import org.zhli.app.service.EmployeeService;import com.opensymphony.xwork2.ActionSupport;public class LoginAction extends ActionSupport implements SessionAware {p rivate static final long serialVersionUID = -1106832005908886865L;p rivate Employee employee = new Employee();p ublic Employee getEmployee() {return employee;}p ublic void setEmployee(Employee employee) {this.employee = employee;}p ublic String execute(){return SUCCESS;}p ublic String toLoginPage() {System.out.println("success");return SUCCESS;}public String doLogin() {System.out.println(employee);boolean exists = validateLogin(employee);System.out.println(exists);System.out.println(sessionMap.get("employee"));if(exists) {return "employee";} else {return SUCCESS;}}private boolean validateLogin(Employee employee) {Employee e = new EmployeeService().validateLoginInfo(employee);System.out.println(e);System.out.println(employee);if(e != null&&e.getEmployeeNo().equals(employee.getEmployeeNo())&&e.getEmployeePasswd().equals(employee.getEmployeePasswd())) {e.setEmployeePasswd(null);sessionMap.put("employee", e);return true;}return false;}Map<String, Object> sessionMap;p ublic String exit() {sessionMap.clear();return SUCCESS;}p ublic void setSession(Map<String, Object> session) {sessionMap = session;}}工资查询的功能截图查询核心代码:package org.zhli.app.action;import java.util.Map;import org.apache.struts2.interceptor.SessionAware;import org.zhli.app.domain.Employee;import org.zhli.app.domain.Salary;import org.zhli.app.service.SalaryService;import com.opensymphony.xwork2.ActionSupport;public class QueryEmployeeAction extends ActionSupport implements SessionAware {p rivate static final long serialVersionUID = -2199348217069147504L;Salary salary = new Salary();S alary mySalary;S alary querySalary;p ublic Salary getSalary() {return salary;}p ublic void setSalary(Salary salary) {this.salary = salary;}p ublic Salary getMySalary() {return mySalary;}p ublic Salary getQuerySalary() {return querySalary;}p ublic String toQueryedResultPage() {System.out.println(salary);System.out.println(sessionMap.get("employee"));getSalaryMy();getSalaryQuery();return SUCCESS;}S alaryService ss = new SalaryService();p rivate Salary getSalaryMy() {Employee sessionEmployee = (Employee) sessionMap.get("employee");mySalary = ss.getSalary(sessionEmployee.getEmployeeNo());System.out.println(mySalary);return mySalary;}p rivate Salary getSalaryQuery() {querySalary = ss.getSalary(salary.getEmployeeNo());System.out.println(querySalary);return querySalary;}M ap<String, Object> sessionMap;p ublic void setSession(Map<String, Object> session) {sessionMap = session;}p ublic Map<String, Object> getSessionMap() {return sessionMap;}p ublic void setSessionMap(Map<String, Object> sessionMap) { this.sessionMap = sessionMap;}}编辑员工基本信息界面截图:这是添加员工的功能截图:编辑员工(含添加员工)的核心代码:package org.zhli.app.action;import java.util.LinkedList;import java.util.List;import java.util.Map;import org.apache.struts2.interceptor.SessionAware;import org.zhli.app.domain.Employee;import org.zhli.app.domain.EmployeeSalary;import org.zhli.app.domain.Salary;import org.zhli.app.service.BaseService;import com.opensymphony.xwork2.ActionSupport;public class EditEmployeeAction extends ActionSupport implements SessionAware {p rivate static final long serialVersionUID = 6273606100463539261L;p rivate List<Employee> employeeList;p rivate List<Salary> salaryList;p rivate List<EmployeeSalary> employeeSalaryList = new LinkedList<EmployeeSalary>();p rivate String no;p rivate EmployeeSalary employeeSalary;p rivate Employee employee;p rivate Salary salary;p ublic Employee getEmployee() {return employee;}p ublic Salary getSalary() {return salary;}p ublic void setEmployee(Employee employee) {this.employee = employee;}p ublic void setSalary(Salary salary) {this.salary = salary;}p ublic EmployeeSalary getEmployeeSalary() {return employeeSalary;}p ublic void setEmployeeSalary(EmployeeSalary employeeSalary) { this.employeeSalary = employeeSalary;}p ublic String getNo() {return no;}p ublic void setNo(String no) {this.no = no;}p ublic List<EmployeeSalary> getEmployeeSalaryList() { return employeeSalaryList;}public String toEditPage() {getEmployeeListInfo();getSalaryListInfo();mergeEmployeeSalaryDate();System.out.println(employeeSalaryList);return "toEditEmployeePage";}p ublic String deleteEmployee() {System.out.println(no);Employee employee = new Employee();employee.setEmployeeNo(no);Salary salary = new Salary();salary.setEmployeeNo(no);boolean deletedE = BaseService.delete(employee);boolean deletedS = BaseService.delete(salary);// System.out.println(deleted);return "delete";}p ublic String toAddEmployeePage() {return "toAddEmployeePage";}p ublic String addEmployeeAndSalary() {salary.setEmployeeNo(employee.getEmployeeNo());System.out.println(employee);System.out.println(salary);BaseService.add(employee);BaseService.add(salary);return "add";}p ublic String toUpdateEmployeePage() {System.out.println(no);employee = (Employee) BaseService.get(Employee.class, no);salary = (Salary) BaseService.get(Salary.class, no);employeeSalary = new EmployeeSalary(employee);employeeSalary.setSalary(salary.getSalary());System.out.println(employeeSalary);return "toUpdatePage";}p ublic String updateEmployee() {System.out.println(employeeSalary);Employee e = new Employee();e.setEmployeeNo(employeeSalary.getEmployeeNo());e.setEmployeeName(employeeSalary.getEmployeeName());Salary s = new Salary();s.setEmployeeNo(employeeSalary.getEmployeeNo());s.setSalary(employeeSalary.getSalary());BaseService.update(e);BaseService.update(s);return "update";}p rivate List<EmployeeSalary> mergeEmployeeSalaryDate() { System.out.println(employeeList);System.out.println(salaryList);if (employeeList != null) {for (Employee e : employeeList) {EmployeeSalary es = new EmployeeSalary(e);if (salaryList != null) {for (Salary s : salaryList) {if (e.getEmployeeNo().equals(s.getEmployeeNo())) {es.setSalary(s.getSalary());break;}}}employeeSalaryList.add(es);}}return null;}p rivate void getEmployeeListInfo() {employeeList = BaseService.queryForList("select * from employee", new Employee());System.out.println(employeeList);}p rivate void getSalaryListInfo() {salaryList = BaseService.queryForList("select * from salary", new Salary());System.out.println(salaryList);}M ap<String, Object> sessionMap;p ublic String exit() {sessionMap.clear();return SUCCESS;}p ublic void setSession(Map<String, Object> session) {sessionMap = session;}}3.模拟运行数据在新系统部分完成的时候,需要对程序进行调试,看程序是否运行正确,将各个数据输入道程序当中,进行调试。

相关文档
最新文档