ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:101.77KB ,
资源ID:7559568      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-7559568.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(软件工程课程设计工资管理系统Word文档格式.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

软件工程课程设计工资管理系统Word文档格式.docx

1、系统负责员工的工资表以及员工工资的历史记录及记录员工的请假信息和出差信息等意外情况。(4)系统可以给管理员提供权限增加删除修改系统用户以及其它实体信息,系统的部分权限不能下放给普通用户以保证系统的安全性以及数据的正确性。2.3 外部接口需求分析系统人机交互界面为半屏幕大小,采用上下左右居中方式显示,系统分辩率默认设置为1280*800,实际的界面大小由具体的屏幕决定。主界面包括标题栏,菜单栏,快捷工作区,帮助信息区(默认是隐藏的)。每一个菜单对应一个键盘快捷键区。2.4 性能需求分析系统在主频1.5GHZ,内存512MB,总线频率667MHZ的硬件平台上运行时,系统的响应时间、更新处理时间、数

2、据转换与传输时间、运行时间均能达到毫秒级。系统支持用户并发操作,事务采用可串行化隔离级别,防止在读写过程中产生的丢失修改、读脏数据、不可重复读等一系列由并发操作带来的不一致问题。系统的运行主存控制在1024KB以内,响应时间控制在1000ms以内,系统对数据的存储空间取决于数据库系统表空间的约束限制。2.5 软件属性需求分析系统必须保证所有操作结果以及存储数据的正确性,对于用户的非法操作,系统必须能够提出告警信息,对于用户的错误操作,系统能够提供错误信息以及错误源。在数据库操作上的异常,系统也应捕捉到并提供界面化的提示信息,对于可能会产生错误的操作,应当能够防范。另外系统必须提供一定的安全保密

3、性,一些保密信息只针对特定的用户提供。它人员无法访问。软件必须为中文操作界面,并且所有的中文功能菜单项描述须与其实际对应的功能相一致,不能存在功能不足或者功能不对的情况,软件采用面向对象技术架构,遵循代码编写规范,提供适当的代码注释,尽可能地采用可复用技术,提高软件的可维护性。概要设计3.1 系统设计总体思想当工资管理系统处理的事务主要有工资管理,员工信息管理,部门信息管理,职务信息管理,职称信息管理。职务和职称以及部门信息管理主要服务于工资管理和员工信息管理,系统接收的输入项目有员工信息,部门信息,职务信息,职称信息,请假信息,出差信息等。系统能够接受用户的请求,显示相应的查询信息,增加、删

4、除、修改相应的合法的信息。图3.1.1 工资管理系统HIPO图图3.1.1是工资管理系统的HIPO图,上图主要说明了系统的各个主要功能以及各功能模块之间的层次关系。上图的基本框架也是整个系统界面的基要框架。系统的人机交互采用图形化用户界面,考虑到系统的平台无关性,系统由JAVA语言实现,系统的界面元素也是采用了JAVA的JFC图形类库。系统可以在安装了JAVA运行环境的平台上运行。系统从登录界面开始,要求验证用户信息,用户通过验证后,进入系统主界面。主界面提供了一个菜单框架,可以通过各个菜单类的一个实例来加载菜单,这一步不是由主界面完成的,而是由所需要被加载的类完成的,但需要主界面类去生成这些

5、菜单英的实例。系统加载的功能主要包括系统管理,用户管理,工资管理,部门管理,职务管理,职称管理以及适当的帮助信息。系统管理主要向用户提供用户更改密码的操作以及退出程序的功能。用户管理允许管理员新建一个员工信息,比如当公司新增加了一个员工时,系统为该员工生成相应的工资关系,但新建这个员工的信息则是第一环节,当然如果公司离任了一名员工时,此员工与公司的工资关系已解除,则没有必要保留该员工的信息,系统应向管理员提供删除该员工的功能,同时删除与该员工相关的所有其它信息。公司所在的员工可能有部分具有相应的职称,考虑到职称的种类繁多,系统只添加本公司员工所拥有的职称的一个集合,而不考虑外界的因素,因此系统

6、提供了增加、删除、修改、查询等对职称的相关操作。例如,当公司一员工拿到高级职称后,管理员首选应该查看系统是否记录了相应职称的信息,如果有,则直接将该职称信息添加到员工信息中去,如果没有,则应当先增加这一职称信息,再执行上述操作。另外在删除一个职称的时候,系统要求必须没有员工拥有此职称,否则系统不能删除,如果确实要删除,则只能先删除拥有此职称的所有员工或者撤销拥有此职称的所有员工的此职称。3.2 系统功能模块设计图3.2.1 系统功能模块设计3.3 系统数据库设计 通过对工资管理系统的数据分析并根据业务之间的联系,我们可以得出与系统相关的实体有:员工、部门、职务、职称、请假信息、出差信息、工资。

7、工资管理系统的数据据库管理模式用语义描述如下:(1) 每一个员工只能属于一个部门,担任一个职务,但是可以拥有多个职称.(2) 每个部门可以有多名员工,有不同的职务.(3) 每个职务可以由多名员工担任,可以在相同的部门,也可以在不同的部门.(4) 每个职称可以授予不同的员工.(5) 每个员工每个月都会有一份工资记录,并且会有一份历史工资记录.(6) 员工每个月可以请假多次或者出差多次.但是要扣除相应的工资或者获得相应的补助.每个员工都有一分历史请假记录和历史出差记录。综合上述语义,可以得出系统的ER图如图3.3.1所示:3.3.1 工资管理系统ER图根据实体之间的联系,以及分析实体的属性,得出了

8、工资管理系统中各个实体的属性,相关属性列表见表3.3.1。表3.3.1 工资管理模型的相关属性列表实体或联系属性员工员工编号、姓名、性别、部门号、职务部门部门编号、名称、人数、电话职务职务编号、名称、基本工资职称职称编号、名称、职称津贴出差信息出差编号、员工编号、天数、出差年份、出差月份、出差补助员工职称信息员工编号、职称编号请假信息请假编号、员工编号、天数、年、月、扣除工资、请假原由工资工资编号、员工编号、工资所属年月、基本工资、扣除工资、出差补助、岗位工资、职称津贴、工资总额说明:加粗部分为主键,加底线部分为外键图3.3.2 实体及其相关属性图详细设计4.1 数据结构设计4.1.1 数据库

9、表结构设计Employee员工信息表字段名数据类型约束名称说明empnonumber(6)主键员工编号enamevarchar2(20)not null员工姓名sexvarchar2(4)性别deptno外键department(deptno)部门编号dutyno外键duty(dutyno)职务编号Department-部门信息表deptname部门名empnumnumber部门人数tel电话Duty-职务信息表dutynamevarchar(20)职务名dutypaydefault(0), check(dutypay=0)职务基本工资Title-职称信息表titleno职称编号titlena

10、me职称名titlepaydefault(0), check(titlepay职称津贴TitledEmployee-员工职称联系表组合主键, 外键employee(empno)yearnumber(4)年记录职称授予时间monthbetween 1 and 12月Leave-员工请假信息表leaveno请假编号外键employee(empno)请假员工leavedays请假天数leaveyear请假年份leavemonth请假月份deduction扣除工资reasonvarchar(60)请假原因BusinessTravel-出差信息表travelnoprimary key出差编号travel

11、days出差天数travelyear出差年份travelmonth出差月份travelpay出差补助Reward-奖励信息表rewardno奖励编号rewardyear奖励年份rewardmonth奖励月份rewardpay奖励金额奖励原由Penalty-罚金信息表penaltyno罚金编号penaltyyear罚金年份penaltmonth罚金月份penaltynum罚金额度罚金原由Salary-职工工资信息表salno工资编号payyear工资年份paymonth工资月份basepay基本工资请假扣除金额职务工资罚金totalpay工资总额4.1.2 程序数据结构设计(1)ADT Depa

12、rtmentBean 数据对象:D=deptNo,deptName,empNum,tel|deptNo,empNumt和tel均为整数,deptName为字符串 数据关系:R1=|deptNo为部门编号,deptName为部门号,tel为部门电话R2=|deptNo为部门编号,empNum为部门人数 基本操作:setDeptNo(int no):设置部门的部门号为no.getDeptNo ():返回部门的部门号。setDeptName(String name):设置部门的部门名为name.getDeptName():返回部门的部门号.setEmpNum(int num):设置部门的员工人数为n

13、um.getEmpNum():返回部门的人数.setTel(int telephone):设置部门的电话号码为telephone.getTel():返回部门的电话号码。ADT DepartmentBean(2)ADT JdbcD=dbUrl,theUser,thePsw,c,stmt,rs|dbUrl提供数据库对象,theUser,thePsw指定用户名和密码,c与数据库建立一个连接,stmt声明一条SQL语句,rs保存执行SQL语句的结果集.R1:用户登陆的验证信息用户名和密码.R2rs为语句stmt执行的结果集.Jdbc():加载数据库驱动,建立数据库连接.executeUpdate(St

14、ring sql):执行SQL更新语句,成功返回TRUE,失败则返回FALSE.executeQuery(String sql):执行SQL查询语句,返回结果集rs.close():关闭与数据库的连接.ADT Jdbc4.2 模块功能详细设计4.2.1 部门信息删除模块设计(1)类图设计图4.2.1.1 部门信息删除模块类图以下对部分类的属性和方法的说明:DepartmentMenu类:属性名称属性类型属性说明deptMenuJMenu顶层菜单项deptInqueryItemJMenuItem部门信息查询菜单项deptDeleteItem部门信息删除菜单项deptUpdateItem部门信息更

15、新菜单项UserUserBean用户业务类 当点击各菜单项时,会弹出相应的操作界面。DepartmentDelete类:方法名称返回值类型功能说明isDeptExist()boolean判断输入的部门号是否存在isDeptEmpty()判断输入的部门号是否为空executeDelete()void执行删除操作ShowAction 类:该类为内部类,是将各功能集成到系统的框架之中.ShowAction类的构造函数提供了一个命名菜单项的方法,主要功能引入了DepartMentDelete这个类到系统中。通过监听器ShowAction执行actionPerformed()方法,系统就应该可以产生期望

16、的动作。(2)界面设计图4.2.1.2 界面设计界面设计说明:该文本框为单行文本框,可以输入要删除的部门号,当系统监听到文本框中选项被确定,将会自动地将该部门信息从数据库中删除。(3)核心代码public class DepartmentDelete public DepartmentDelete() executeDelete(); private boolean isDeptExist(int deptno) ResultSet rs; Jdbc conn=null; boolean flag = false; try conn = new Jdbc(); rs = conn.execut

17、eQuery(select deptno from department ); while(rs.next() if( deptno = rs.getInt(deptno) flag = true; break; catch (InstantiationException e1) e1.printStackTrace(); catch (IllegalAccessException e1) catch (ClassNotFoundException e1) catch (SQLException e1) return flag; public boolean isDeptEmpty(int d

18、eptno) conn = new Jdbc(); rs = conn.executeQuery(select count(*) from employee where deptno=+deptno); if( rs.getInt(1) = 0) private void executeDelete() String deptnoStr = JOptionPane.showInputDialog(null,请输入待删除部门编号! int deptno=0; boolean flag =true; try deptno = Integer.parseInt(deptnoStr); catch(E

19、xception e) flag=false; if( isDeptExist(deptno) = true ) if( isDeptEmpty(deptno) = false ) JOptionPane.showMessageDialog(null,部门中有员工存在,无法删除! else Jdbc conn = null; int res=0; try conn = new Jdbc(); pstmt.setInt(1, deptno); res = pstmt.executeUpdate(); if( res !=0 ) JOptionPane.showMessageDialog(null, 成功删除部门

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2