企业工资管理系统工程设计_第1页
企业工资管理系统工程设计_第2页
企业工资管理系统工程设计_第3页
企业工资管理系统工程设计_第4页
企业工资管理系统工程设计_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目 录目 录1一 项目开发计划书31.1 引言31.2 工资管理系统功能模块描述41.3 实施计划41.4 支持条件5二 可行性分析52.1 可行性研究前提52.2 经济上可行性62.3 技术可行性62.4 开发工具的选择62.5 开发工具概述62.5.1 JSP 概述62.5.2 SQL Server数据库简介7三 需求分析83.1 市场需求分析83.2 系统需求分析83.2.1 系统目标83.2.2 系统的分析和概要设计93.2.3 系统功能分析103.2.4 系统业务流程图113.3 系统E-R图123.4 数据流图133.5 数据字典15四 系统设计174.1 系统处理流程和数据流程174.2 系统数据库概念结构184.3 系统数据库逻辑结构184.4 系统数据库设计19五 系统测试225.1 部分代码225.1.1 登陆平台225.1.2 工资查询系统245.1.3 工资发放系统265.2 测试275.2.1 测试的作用和意义275.2.2 测试方法275.2.3 测试内容275.2.4 测试结果28六 总结29参考文献29附录:编码规范2929第一章 项目开发计划书1.1 引言企业工资管理系统是一个企业单位不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要,所以工资管理系统应该能够为用户提供充足的信息和快捷的查询手段。使其公司工资管理初步实行计算机化,让计算机在工资管理中得到初步应用。使工资管理者总是根据准确、及时的工资管理信息来进行决策,实现管理。只有计算机才能将现代化社会中,成倍增长的工资管理信息量,进行及时收集、加工、整理、贮存、检索、传递、反馈给决策者。而一个企业工资管理系统在企业对工资管理已不可或缺。其功能主要有:(1)对输入的工资管理数据,进行数值运算和逻辑运算,求解各种问题。(2)对工资管理信息进行加工来解决各种数据处理问题,为人事决策者在决策时提供依据。(3)对工资管理的各种资料数据进等统计计算,并将处理后的信息存贮起来。当前,不少单位的工资管理部门对于计算机的应用还仅限于简单的单机应用,随着时间的推移、任务的复杂、用户的需求,其应用还会扩大。随着计算机的广泛应用,计算机工资管理信息系统的建立,适应了社会经济发的客观要求,是工资管理现代化的一大进步。今天我们运用计算机进行了工资管理档案管理的初步现代化的开发和使用,它大大提高了工资管理工作者的工作效率,它把工资管理(档案、工资)从繁重的手工操作中解脱出来,用更多精力从事创造性的管理活动;它能使决策、计划和其它管理活动更加科学、精确、灵活。因此,建立计算机工资管理信息系统是一种客观发展必然趋势。尽管在工资管理方面还不可能普遍使用计算机,但从长远来说,工资管理现代化和计算机是不分割的。轻视或者拒绝利用计算机技术,就不可能真正地、全面地实现工资管理现代化。1.2 工资管理系统功能模块描述具体系统功能需求描述(1) 档案信息管理 提供对”人员档案信息”数据输入、查询功能。(2) 工资管理 提供对”职工工资表”数据的输入、查询、统计功能。(3) 工资统计 提供对“职工工资表”数据的月统计,由系统自行生成“职工工资构成情况表”实现该表的查询、打印功能。(4) 部门查询 提供以某一部门为索引的”人员档案信息”查询功能。(5) 特殊查询 提供对日期型字段和合同期限的”人员档案信息”查询功能。(6) 报表查询 提供对工资、职工履历的信息以报表的形式供用户查询、打印,另外用户还可以对这些基本信息进行更新和删除, 1.3 实施计划工作任务的分配与人员分工 组长: 任务: (1)系统总的开发计划书 (2)每周至少组织小组讨论一次,记录讨论内列出本周开发计划 (3)项目开发进度的管理 (4)团队的组织和协调设计: 任务:(1)参与小组讨论 (2)进行系统的需求分析和系统设计 (3)完成系统需求说明书和系统设计说明书 (4)编写测试计划,参与系统测试 (5)协助文档人员完成用户相关文档开发: 任务:(1)参与小组讨论 (2)根据设计完成编码,并注释 (3)进行单元测试系统规划阶段: 项标志性事件 开始到完成开发阶段: 目开发计划书的完成 6.5-6.7需求分析阶段: 系统需求说明书完成 6.8-6.10设计阶段: 系统设计说明书 6.11-6.13编码实现: 项目的形成 6.14-6.15测试阶段: 测试计划和Bug跟踪列表 6.16-6.17移交阶段: 项目的递交 6.17-6.181.4计算机系统支持操作系统需要 windows 2000以上版本;开发工具采用的是eclipse,所使用的开发语言是JSP,以SQL server作为数据库支持。第二章 可行性分析2.1 可行性研究前提要求:满足对工资管理的基本要求及功能,并对职工信息收集、处理、保存。目标:实现无纸化办公,节省成本,提高工作效率。条件、假定、限制:当企业工资管理的信息量和复杂程度达到某一限度时,即管理人员的劳动强度超过其承受能力时,就必须采用新的管理手段,如用计算机技术对信息的收集、加工、传递和存贮等,这样,一个工资管理系统就可以对企业职工工资进行高效、合理、恰当地管理。此系统成本低廉,自开发到运行结束至少可运行3年,开发成本不超过600人民币,开发软件到投入使用不超过1个月。2.2 经济上可行性开发成本:600元人民币。效益:大幅度地提高工资管理信息系统的工作质量和效率,让企业掌握整个工资管理系统的全面情况,为管理人员提供了准确的工资管理信息,促进工资管理工作的规范化及各项管理制度与指标体系的建立和健全;提供各种加工处理了的工资管理信息,以满足工资管理的特殊要求,适应新形势对职工队伍提出的新要求。效益/投资比:暂时无法估算。投资回收期:大约3个月。2.3 技术可行性软件需求:操作系统WINDOWS 2000 Advance Server以上。硬件需求:赛扬1.7G CPU、512M内存 80G硬盘的计算机。本系统采用JSP实现,依靠其强大的面向对象系统,与SQL Server2000数据库管理系统相结合,能在1个月内开发出系统。3.2.3 系统功能分析本系统是基于JSP和SQL Server数据库建立的B/S结构管理系统,考虑了两种角色:工资管理员和普通员工。他们通过相同的登陆页面,选择不同的登陆方式,各自进入自己的用户界面。管理员进入管理页面可以对员工发放工资,可以新添加新的员工,修改自己的密码,以及发布消息。普通用户可以查看自己的工资情况,可以根据需要查询具体每个月,或几个月的工资发放情况,察看最近的动态发布消息,同时也可以修改密码。2.4 开发工具的选择eclipse作为前台的开发工具,用SQL Server200作为后台支持数据库,通过JSP的数据库控件来连接SQL Server200中并对其编程来实现各种功能。2.5 开发工具概述2.5.1 JSP 概述JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。 JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。 JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。 JSP可用一种简单易懂的等式表示为:HTML+Java=JSP。2.5.2 SQL Server数据库简介SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase、Ashton-Tate等三家公司共同开发的,并于1988年推出了第一个在OS/2版本上运行的SQL Server系统。1992年Sybase和Microsoft这两家公司将SQL Server移植到了Windows NT操作系统上,后来Microsoft致力于Windows NT平台的SQL Server的开发,而Sybase则专注于SQL Server在UNIX上的应用。 近年来在Microsoft SQL Server的发展历程中不断更新版本,有两个版本具有重要的意义。即是在1996年推出的SQL Server6.5版本和在2000年8月推出的SQL Server2000版本。6.5版本使得SQL Server得到广泛的应用,而2000版本在功能和易用性上有很大的增强,并推出了简体中文版,它包括企业版、标准版、开发版和个人版等4个版本。第三章 需求分析3.1 市场需求分析工资管理系统是一个企业单位不可缺少的部分,它能为用户提供充足的信息和快捷的查询手段。(1)一个工资管理系统可以高效能、大容量地收集、处理、存贮工资管理信息,大幅度地提高工资管理信息系统的工作质量和效率。(2)能够为企业管理人员及时掌握整个工资管理系统的全面情况,提供系统的准确的工资管理信息,可以促进工资管理工作的规范化及各项管理制度与指标体系的建立和健全。(3)为企业提供各种加工处理了的工资管理信息,以满足工资管理的特殊要求,适应新形势对职工队伍提出的新要求,帮助管理人员选择方案,实现优化决策。虽然当前,不少单位的工资管理部门对于计算机的应用还仅限于简单的单机应用,随着时间的推移、任务的复杂、用户的需求,其应用还会扩大。3.2 系统需求分析3.2.1 系统目标企业工资管理系统可以用于支持企业完成工资管理工作,有如下3个方面的目标。(1)支持企业实现规范化的管理。 (2)支持企业高效率完成人事管理的日常业务,包括新员工加入时人事档案的建立,老员工转出、辞职、退休等。 (3)支持企业进行人事管理及其相关方面的科学决策,如企业领导根据现有的员工合同期限决定是否继续聘用等。3.2.2 系统E-R图职工编号籍贯婚否满勤缺勤性别出勤拥有职工民族职务管理工资设置管理员基本工 资技能工 资实发工资别资工 资查询报 表职 务月份工 资金 额职 工信 息 图3-1 E-R图3.2.3 数据流图图3-2 底层数据流图图3-3 工资管理第一层数据流图图3-5 本月工资管理的展开3.2.4 数据字典通过系统需求分析,对企业工资管理系统编制数据字典如下:(1) 数据流定义数据流名称:职工名单数据流编号:F1简述:职工信息数据来源:人事科数据去向:P1.1数据流名称:本月工资数据流编号:F2简述:对职工本月工资进行修改数据来源:劳资科数据去向:P2.1,P2.2(2) 数据存储定义数据流名称:职工发工资数据流编号:P2.2简述:根据工资条形成本月工资表输入数据流:D2-P2.2输出数据流:P2.2-职工处理:查询D1(本月工资表),打印本月职工工资条财务记账后传盘给银行。(3) 处理逻辑定义外部实体名称:人事科数据流编号:S1简述:对职工添加,删除进行管理的部门输出数据流:F1外部实体名称:劳资科数据流编号:S2简述:对职工工资进行管理的部门输出数据流:F2外部实体名称:财务科数据流编号:S3简述:发放工资,及工资记账管理。(4) 外部实体定义数据存储名称:职工信息表数据存储编号:D0简述:职工基本信息数据存储组成:职工编号+姓名+科室号+职称+体制+医保号+公积金号+养老金号+银行账号+有效标志关键字:职工编号相关处理:F1数据存储名称:本月工资表数据存储编号:D1简述:职工本月工资信息数据存储组成:职工号+工资日期+操作员+1薪金科目20+1扣款科目5关键字:职工编号+工资日期相关处理:F2第四章 系统设计4.1 模块分析和概要设计根据实际情况,我们使用原型法(Rapid Prototyping)即以少量代价快速地构造一个可执行的软件系统模型。使用户和开发人员可以较快地确定需求,然后采用循环进化的开发方式,对系统模型作连续的精化,将系统需具备的性质逐渐增加上去,直到所有的性质全部满足。此时模块也发展成为最终产品了。通过对用户需求的分析,我们可以分析出该工资管理系统大致可以分为六个模块:人事档案管理模块、职工工资管理模块、工资统计模块的实现、部门查询模块、特殊查询模块、报表查询模块。现在对这六个模块做具体说明: 人事基本情况管理模块: 输入:职工信息 输出:“人员档案表”功能:对人事基本信息的查询 职工工资管理模块 输入:人员月工资 输出:“职工工资表” 功能:完成员工工资的查询 工资统计模块输出:“职工工资统计表”功能:完成员工工资的统计和打印 部门查询模块输出:以部门为索引的“职工档案信息”功能:完成以部门为索引的“职工档案信息”的统计和查询 特殊查询模块的实现输出:满足查询条件的“职工档案信息”和职工合同的期限功能:完成满足查询条件的“职工档案信息”和职工合同的期限的查询 报表查询模块的实现 输出:员工履历信息和工资信息的基本情况 查询及打印功能功能:完成对员工履历信息和工资信息基本情况的查询及打印4.2 系统业务流程图普通员工管理员用户登录判断用户管理平台用户平台发放工资发布消息修改密码添加员工察看消息查询工资修改密码注销登录图4-1 系统业务流程图4.3 系统数据库逻辑结构图 4-2 系统数据逻辑结构图4.4 系统数据库设计由于考虑到本系统是应用在单机系统上,另外根据人员规模,我们只建立起一个数据库,在此数据库基础上建立起如下表:职工基本信息表employee_information_table职工工资表 employee_salary_table系统信息表 system_table 下面我们详细说明:表3-21 员工基本信息字段名类型长度允许职工编号数值型8No部门字符型6Yes职务字符型8Yes职工姓名字符型8Yes身份证号字符型18Yes性别字符型2Yes出生日期日期型10Yes婚否逻辑型2Yes文化程度字符型8Yes政治面目字符型6Yes毕业学校字符型16Yes联系电话数值型16Yes籍贯字符型10Yes民族字符型10Yes家庭地址字符型30Yes邮政编码数值型6Yes入单位时间日期型10Yes合同期限数值型8Yes职称字符型16Yes评定时间日期型10Yes备注备注型100Yes表3-22 部门查询表字段名类型长度允许职工编号数值型8No职工姓名字符型8Yes职务字符型8Yes实发工资数值型8Yes表3-23 员工工资表字段名类型长度允许职工编号数值型8No职工姓名字符型8Yes年/月日期型10Yes技能工资数值型8Yes工龄工资数值型8Yes岗位工资数值型8Yes职务工资数值型8Yes洗理费数值型8Yes房屋补贴数值型8Yes交通补贴数值型8Yes价格补贴数值型8Yes工会会费数值型8Yes房屋租金数值型8Yes养老保险数值型8Yes建房扣款数值型8Yes实发工资数值型8Yes表3-24 工资统计表字段名类型长度允许部门字符型8Yes人数数值型10Yes工资总和数值型20Yes表3-25 特殊查询表字段名类型长度允许职工编号数值型8No职工姓名字符型8Yes日期日期型8Yes表3-26 报表查询表字段名类型长度允许职工编号数值型8No部门字符型6Yes职务字符型8Yes房屋租金数值型8Yes养老保险数值型8Yes建房扣款数值型8Yes实发工资数值型8Yes日期日期型8Yes第五章 系统测试5.1 测试方法(1) 测试人员测试队伍由两位成员组成。软件的设计者在测试整个过程中负责整体测试方案的制定和测试进度的掌握以及白盒测试的测试者。第二位成员由未参加软件制作者担任,主要责任是进行软件的黑盒测试以及软件环境,硬件要求和极限测试工作。(2) 机器测试通过在计算机上直接运行被测程序,来发现程序中的错误。机器测试包括黑盒测试盒白盒测试。黑盒测试也称功能测试,将软件看作黑盒子,在完全不考虑程序的内部结构和特性的情况下,研究软件的外部特性。根据软件的需求规格说明书测试用例,从程序的输入和输出特性上测试是否满足设定的功能。白盒测试也称结构测试,将软件看作一个透明的白盒子,按照程序的内部结构和处理逻辑来选定测试用例,对软件的逻辑路径及过程进行测试,检查与测试是否相符。5.2 部分代码和测试结果5.2.1 登陆平台该平台可以实现员工和管理员的登录验证,根据登陆的身份不同进入不同的管理系统如:普通员工进入工资查询系统,管理员则进入工资发放系统。核心代码:5.2.2 登陆界面5.2.3 工资查询系统该子系统实现普通员工对工资的查询以及动态新闻的浏览以及密码修改核心代码: 5.2.4 工资查询系统截图5.2.5 工资发放系统该平台下,管理员可以为员工发放每月的工资,同时还可以修改密码以及发布动态的新闻。核心代码: 5.1.3 工资发放系统截图5.2.6 测试结果分析软件在运行、关闭及退出时保存记录的提示功能基本完成,在软件的不断启动关闭过程中没有出现死机、程序执行效率降低等各种不良现象,功能的实现较为完善。用户登录界面较友好,但软件界面的色彩选择、搭配上对于长期工作者而言仍然不会产生眼部不适感。可操作性及安全性能较好,能完成对不同管理级别者的限制工作,对软件涉及到的机密数据能进行良好的保护。数据库的可维护性良好,数据的录入能顺利完成,并能实现动态更新,删除和修改也能顺利完成。数据查询不够全面,只能按系统设定的少数查询条件进行搜索,以找到合适的答案。数据溢出、越界基本不能进行非法提示,以警告用户正确使用。对用户的非正常操作方式能提出警告。数据类型填写错误时,系统有报错功能,在数据输入错误时,使用者能够获知错误所在。软件兼容性有待提高,在Dreamweaver版本较低的机子上测试不断出现错误提示。5.3 测试的作用和意义系统测试是教师工资管理系统的开发周期中的一个十分重要环节。尽管在系统开发周期的各个阶段均采取了严格的技术审查,但依然难免会留下错误,如果没有在投入运行前的系统测试阶段被发现并纠正,问题迟早会在运行中暴露出来,到那时要纠正错误将会付出更大的代价。系统测试占用的时间、花费的人力和成本占软件开发的很大比例。统计表明,开发较大规模的系统,系统测试的工作量大约占整个软件开发工作量的4050。而对于一些特别重要的大系统,测试的工作量和成本更大,甚至超过系统开发其他各阶段的总和的若干倍。第六章 总结经过反复测试,系统完成后运行添加、修改、查询、报表等功能均正常,发布1.0版。此系统仍存在许多缺陷,但是通过该系统设计达到了系统设计目的意义,基本掌握了软件开发的主要步骤,了解了各环节在开发时要注意的问题,体会到开发一个系统应该注意的方面以及重视用户在系统开发过程中间的作用,开发出好的软件高质量的软件。另外在设计过程中也逐渐提高了软件开发技能和编程技能以及良好的软件开发思维模式。参考文献1 张海藩,软件工程(第二版)。北京:人民邮电出版社,20062 张海藩,牟永敏,面向对象程序设计使用教程(第二版)。北京:清华大学出版社,20073 金敏,周翔,高级软件开发过程。北京:清华大学出版社,20054朱如龙,SQL server 2000 数据库应用系统开发技术,机械工业出版社,20055谭浩强,软件工程系统分析与设计.,清华大学出版社,20056王少锋,面向对象技术UML教程,北京:清华大学出版社,20047张海藩,软件工程导论(第三版)。北京:清华大学出版社,19988郑人杰,殷人昆,陶永雷,实用软件工程(第二版)。北京:清华大学出版社,1997附录:编码规范编码规范对于程序员而言尤为重要,一个软件的生命周期中,80%的花费在于维护。几乎没有任何一个软件,在其整个生命周期中,均由最初的开发人员来维护。编码规范可以改善软件的可读性,可以让程序员尽快而彻底地理解新的代码。常见的编码规范总结如下:1开头注释(Beginning Comments)所有的源文件都应该在开头有一个风格一致的注释,其中列出类名、版本信息、日期和版权声明等,如下: /* * Classname * Version information * Date * Copyright notice */2包和引入语句(Package and Import Statements)在多数Java源文件中,第一个非注释行是包语句。在它之后可以跟引入语句。例如: package java.awt; import java.awt.peer.CanvasPeer;3缩进排版(Indentation)4个空格常被作为缩进排版的一个单位。4行长度(Line Length)尽量避免一行的长度超过80个字符,因为很多终端和工具不能很好处理长度超过80个字符的行。5换行(Wrapping Lines)当一个表达式无法容纳在一行内时,可以依据如下一般规则断开该行:在一个逗号后面断开。在一个操作符前面断开。宁可选择较高级别(higher-level)的断开,而非较低级别(lower-level)的断开。新的一行应该与上一行同一级别表达式的开头处对齐。如果以上规则导致你的代码混乱或者使你的代码都堆挤在右边,那就代之以缩进4个空格。6注释(Comments)Java程序有两类注释:实现注释(implementation comments)和文档注释(document comments)。实现注释是那些在C+中见过的,使用/*.*/和/界定的注释。文档注释(被称为doc comments)是Java独有的,并由/*.*/界定。文档注释可以通过javadoc工具转换成HTML文件。为了使程序更容易阅读,程序员应适当的在代码中添加注释。7每行声明变量的数量(Number Per Line)推荐一行一个声明,因为这样以利于写注释,如下: int level; / indentation level int size; / size of table不要将不同类型变量的声明放在同一行,例如: int foo, fooarray; 8避免声明的局部变量覆盖上一级声明的变量。例如,不要在内部代码块中声明相同的变量名,见下面的代码,定义了两个“count”,这种情况应避免。 int count; . myMethod() if (condition) int count = 0; . . 9简单语句(Simple Statements)每行至多包含一条语句,例如: argv+; /推荐使用 argv+; argc-; /不推荐使用10复合语句(Compound Statements)复合语句是包含在大括号中的语句序列,形如 语句 。复合语句的书写一般应遵守以下原则:被括其中的语句应该较之复合语句缩进一个层次。左大括号应位于复合语句起始行的行尾;右大括号应另起一行并与复合语句首行对齐。大括号可以被用于所有语句,包括单个语句,只要这些语句是诸如if-else或for控制结构的一部分。这样便于添加语句而无需担心由于忘了加括号而引入bug。 11空行(Blank Lines)空行将逻辑相关的代码段分隔开,以提高可读性。下列情况应该总是使用空行:一个源文件的两个片段(secti

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论