




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、封面1 / 17 作者: PanHongliang 仅供个人学习目录第一章 可行性分析和需求分析 . 3 2 / 17 1.1 可行性研究 3 1.1.1 经济可行性 3 1.1.1 经济可行性 3 1.1.44 1.2 需求分析 4 1.2.1 需求规定 4 1.2.2 功能需求: 4 1.2.3 性能需求 5 1.2.4 其他需求 5 1.3 数据流图 5 第二章 数据库设计 7 2.1MySQL 地概述 7 2.2 系统数据实体结构描述 7 第三章系统测试 9 第四章系统运行结果 . 10 第五章 核心代码 11 工程总结 16 第一章 可行性分析和需求分析1.1 可行性研究1.1.1
2、经济可行性采用传统地手 工出入方法 ,不仅工作繁琐而且需要人力输入多 本高 ,效果差地弊病 ,对于一个企业地资料建立是十分困难和麻烦地,记录容易出错 ,那样穿绳成 .而采用这种系统所花费地成本 ,精力都远远低于手工 ,而且使用十分方便 ,更新也十分容易 ,每个部门只需要一个人统一管理,对企业实现办公无纸化能起到很大地作用 .锁业此系统可行性也就具备了 .1.1.1 经济可行性随着国内软件开发地日益发展壮大, 各种中小企事业单位已具备独立开发各种类型地软件地能力 , 能够满足不同行业地特别地需求 . 而这个系统尽管其在组织关系上存在着很大地复杂性 , 繁琐性 , 但是就整个系统地技术构成上来看
3、, 它还是属于一个数据库应用类地系统 . 其基本操作还是对存在数据库进行添加、删除、查找、编辑等 . 所以就单纯地数据库应用来看, 暂不存在太大地技术问题 . 3 / 17 1.1.4 人事管理系统1.2 需求分析登录对话框1.2.1 需求规定 员工工资, 并給企业员工发放登陆档案 在人事管理系统中管理 部门设置 用户管理, 管理员要为每个企业员工建立管理查询账户账户及密码 , 账户内存储员工地个人信息和工作记录信息 查. 企业员工可以通过自己地账户登陆系统 , 查询个人信息及一些公共信息 查 修, 添修删修, 无效则提示 , 若有修改登陆系统时 , 先输入自己地账号 看 改加 改 除 改 ,
4、 系统验证账户地有效性和登陆账户地权限 密其原因 , 有效则显示员工地基本信息. 然后打开自己所要查询或者管理地相关信息权限地管理人员, 即可进行相应地管理. 系统管理员定期或不定期对企业员工信息进行入库、修改、删除等人事信息管理以及注销, 包括基本信息管理 . 为系统维护人员提供权限管理、数据备份等通用功能 . 1.2.2 功能需求:1)员工档案实现员工信息地查询与添加 , 员工查询条件分员工姓名和员工编号两类 , 能够查询地基本信息为员工姓名、员工编号以及所属部门 . 添加新员工包含员工地详细信息 , 如姓名、性别、民族、政治面貌 , 出生日期、部门、职务、联系电话等等 . 工资管理工资管
5、理主要实现员工工资查询 , 查询条件含月份、员工姓名及员工编号 . 工资信息里除员工地基本信息如姓名、部门、职务等以外 , 还包含了员工工资所处银行 , 银行账号及实发工资 . 4 / 17 部门设置部门设置实现现有部门地信息显示以及部门管理 功能 , 也可实现部门地新增功能 . 用户管理 用户管理主要实现对当前用户地密码修改1.2.3 性能需求, 部门管理可实现对现有部门地删除、修改由于此开发工程针对企业单位 ,使用频度较高 ,使用性要求比较高 .为防止对信息资料和管理程序地恶意破坏 ,要求有较为可靠地安全性能 .总之 ,要求稳定、 安全、便捷 , 易于管理和操作 . 查询速度:不超过 10
6、 秒;其它所有交互功能反应速度:不超过 3 秒;可靠性:平均故障间隔时间不低于 200 小时 . 1.2.4 其他需求能快速恢复系统和故障处理,方便系统升级和扩充,故障恢复时间不超过5 小时 . 1.3 数据流图顶层图一层图企业员工人事管理管理员管理员企业员工系统系输入你地用户进入登录系统 系统设置进入进入进入5 / 17 P1 P2 P3 P4 二层图企业员工输入你的用户 查询 登录系统管理员返回修改档案管理返回查看介绍编号P4.1 信P1.1 P1 P2.1 系统设置 P2.2 P2.3 P3.1 P3.2 修 改添 加 新查部门员 工 编工 资返回主页面密 码看P4 简介号 对 应查询
7、P2 P3 和 用员工P1 P2 P3 全P4 部门部户员 工 档D2 数据存储 部 门 设工 资 管用 户 管修改员 工 档工 资 管部 门 设理 用 户 管D3 数据存储案理置理信更改删除添加返回P1.2 P1.3 P1.4 P1.5 P1.6 D4 数据存储修 改 信更 改 照删 除 员添 加 工返回信 息 清 D5 信信息息片 信息清单信息清单工 信息清单 返资信息 信息清单息息返数据存储清清单息返回返D1 数据存储 回单清清回回返回单单功能分解后地数据流图:D6 数据存储登入系统 系统设置员工档案管理管理 登入系统P1 P2 P3 P4 P5 员 工 档 C 案登入系统 员工详细信息
8、 工 资 管部 门 设用 户 管理置理P1 P2 P3 P2 P1 查 看 全添 加 新 P4 部员工 修 改 信更 改 照6 / 17 删 除 员返回员工添 加 工息片管理员工资信息第二章数据库设计,开发者为瑞典MySQL AB 公司 .在 20082.1MySQL地概述是一个小型关系型数据库管理系统MySQL年 1 月 16 号被 Sun 公司收购 .而 2009 年,SUN 又被 Oracle 收购 .对于 Mysql 地前途 ,没有任何人抱乐观地态度 .目前 MySQL 被广泛地应用在 Internet 上地中小型网站中 .由于其体积小、速度快、总体拥有成本低 ,尤其是开放源码这一特点
9、 ,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库 . 2.2 系统数据实体结构描述用户信息表:用于记录用户信息功能名称:用户信息表(user )主键: Id 存储位置: 用户信息存储组织:用户信息表信息一条记录说明数据元素数据采集方式Id 自动采集主键 , 必须输入Username 人工采集必须输入Password 人工采集必须输入相关数据主要功能模块:用户管理员工信息表:记录员工基本信息功能名称:员工信息表(personnel)主键: personnelid 存储位置: 员工信息存储组织:员工信息记录一条记录说明数据元素数据采集方式personnelid 自动采
10、集主键 , 必须输入name 自动采集不允许空值Sex 人工采集允许空值Nation 人工采集允许空值7 / 17 Faction 人工采集允许空值birthday 人工采集允许空值department 人工采集允许空值Position 人工采集允许空值Contactphone 人工采集允许空值Mobile 人工采集允许空值Usemodus 人工采集允许空值pohto 人工采集允许空值相关数据主要功能模块:员工文档管理部门信息表:记录部门信息功能名称:部门信息表(department)主键: CheckDate 存储位置: 部门信息存储组织:部门信息一条记录数据元素数据采集方式说明Depart
11、mentid 自动采集主键 , 必须输入Departmentname 人工采集允许空值Remark 人工采集允许空值相关数据主要功能模块:部门管理工资表:记录员工工资信息功能名称:工资表(wage)主键: Wageid 存储位置:工资表存储组织:员工工资一条记录数据元素数据采集方式说明Wageid 自动采集主键 , 必须输入Time 自动采集允许空值Name 人工采集允许空值Personnid 人工采集允许空值Department 人工采集允许空值8 / 17 Position 人工采集允许空值bank 人工采集允许空值Banknumer 人工采集允许空值Pay 人工采集允许空值相关数据主要功
12、能模块:工资管理第三章系统测试3.1系统测试分析在企业人事管理系统开发过程中采用了多种措施保证软件质量 , 但是实际开发过程中还是不可避免地会产生差错 , 系统中通常可能隐藏着错误和缺陷 , 示经周密测试地系统投入运行 , 将会造成难以想像地后果 系统开发过程中为保证软件质量必须进行地工作, 因此系统测试是企业人事管理 . 大量统计资料表明 , 系统测试地工作量往往占系统开发总工作量地 40%以上. 所以 , 我们必须重视测试工作 .由于程序中隐藏地缺陷只在特定地环境下才有可靠显露 , 系统缺陷通常是由于对某些特定情况考虑不周造成地. 因此测试不是为了表明程序正确; 成功地测试也不是没有发现错
13、误地测试 . 有意义地软件测试应该是从“ 破坏” 软件系统地角度出发 , 精心设计最有可以暴露程序系统缺陷地测试方案. 因此软件测试地目标应该是以尽可能少地代价和时间找出软件系统中潜在地错误和缺陷 .从产品角度看 , 测试计划中地测试工程包括软件结构中地分系统层、子系统层、功能模块层、程序模块层中地各类模块, 从测试本身看 , 分为单元测试 , 组合测试 ,确认测试等 . 测试对象是随阶段而异地 , 最基本、最初地测试是单元测试 , 后面地组 合测试、确认测试都是以被测过地模块作为测试对象地 .3.1.1单元测试单元测试也称模块测试或程序测试, 单元测试是对每个模块单独进行地, 验证模块接口与
14、设计说明书是否一致, 对模块地所有主要处理路径进行测试且与预期地结构进行对照 , 还要对所有错误处理路径进行测试 . 对源码进行审查 , 对照设计说明书 , 表态地检查源程序是否符合功能地逻辑要求, 是进行单元测试前地重要工作工. 单元测试一般是由程序员完成 , 也称程序调试 .9 / 17 3.1.2 组合测试组合测试也称集成测试或子系统测试, 通常采用自顶向下测试和自底向上测试两种测试方法 . 组合测试地对象是指已经通过单元测试地模块 , 不是对零散模块进行单个测试 , 而是用系统化地方法装配和测试软件系统 , 是一个严格地过程 , 必须认真地进行 , 其计划地产生和单元模块测试地完成日期
15、要协调起来 , 这种测试应在系统目标机上进行 , 造成系统应用地环境条件, 除了开发部分工程负责人参加以外, 还应该有相应系统地用户参加 , 给评审员进行演示 .3.1.3 确认测试确认测试是对通过组合测试地软件进行地, 这些软件已经存于系统目标设备地介质上 , 确认测试地目地是对表明软件是可以工作地 , 并且符合“ 软件需求说明书” 中规定地全部功能和性能要求. 确认测试是按照这些要求定出地“ 确认测试计划” 进行地 . 测试工作是由一个独立地组织进行 , 而且测试要从用户地角度出发.3.1.4 系统测试系统测试是对整体性能地测试, 主要解决各子系统之间地数据通信和数据共享问题以及检测系统不
16、否达到用户地实际要求 , 系统测试地依据是系统分析报告 .系统测试应在系统地整个范围内进行 , 这种测试不只对软件进行 , 而是对构成系统地硬、软件一起进行 . 系统测试与建构同时进行或略慢. 系统测试需要确认从头到尾地功能正常才算完成 , 应当尽量避免系统测试延到工程末尾进行 .3.1.5 用户验收测试在系统测试完成后 , 进行用户地验收测试 , 它是用户在实际应用环境中所进行地真实数据测试 .在具体地测试中 , 一般应遵循以下原则: 由程序设计者之外地人进行测试;测试用例应由两部分组成:输入数据和预期输出结果;应选用不合理地输入数据与非法输入测试; 不仅要检验程序是否实现预期功能, 还应检
17、查程序是否做了不应该做地工作;集中测试容易出错地程序模块;对程序修改以后 , 必须重新进行测试 .第四章系统运行结果4.1 首先在首页 , 输入用户名和登陆密码系统, 用户可是系统管理员, 也可以是普10 / 17 通员工 .4.2 然后进入地是系统地主页面 用户管理,其中主要包括: 1.员工档案管理 2.工资管理 3.4.3 下面显示地是员工档案管理地界面布局及所实现地功能:1.查看全部员工 2.添加新员工4.4 以下是工资管理项地界面,功能是:根据用户输入地内容和选择地查询条件,输出相应地员工工资4.5 以下是部门管理地页面 ,输出内容是员工编号所对应地部门及部门简介4.6 最后是用户管理
18、 ,实现地功能是修改用户地登陆密码第五章 核心代码UserDao:package biyesheji.struts.User。public interface UserDao public boolean Lonig(UserV o uv)。public void xiuugaipass(UserV o vo)。 package biyesheji.struts.User。UserFactry :public class UserFactry public static UserDao getusersmple() return new UserSmple() 。 UserVo:11 / 17
19、 package biyesheji.struts.User。public class UserVo private String VOusername 。private String VOpassword 。public String getVOusername() return VOusername。 public void setVOusername(String ousername) VOusername = ousername。 public String getVOpassword() return VOpassword 。 public void setVOpassword(St
20、ring opassword) VOpassword = opassword 。 UserSmple :package biyesheji.struts.User。import java.sql.PreparedStatement。import java.sql.ResultSet 。import java.sql.SQLException 。import biyesheji.struts.* 。public class UserSmple implements UserDao /登陆判断 public boolean Lonig(UserV o uv) boolean bool=false
21、。String sql =select * from user where username=? and password=? 。Database db=new Database()。try PreparedStatement ps=db.database().prepareStatement(sql)。ps.setString(1, uv.getVOusername() 。ps.setString(2, uv.getVOpassword() 。ResultSet rs=ps.executeQuery()。if(rs.next() bool=true 。ps.close()。rs.close(
22、)。db.Close()。 catch (SQLException e) e.printStackTrace() 。 12 / 17 return bool 。 /修改密码 public void xiuugaipass(UserV o vo) String sql =update user set password=?。Database UD=new Database()。try PreparedStatement ps=UD.database().prepareStatement(sql)。ps.setString(1, vo.getVOpassword() 。ps.executeUpda
23、te()。ps.close()。UD.Close() 。 catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace() 。 /* * Generated by MyEclipse Struts * Template path: templates/java/JavaClass.vtl */ .Useraction:package biyesheji.struts.Useraction 。import javax.servlet.http.HttpServletRequest 。import javax.
24、servlet.http.HttpServletResponse 。import org.apache.struts.action.ActionForm 。import org.apache.struts.action.ActionForward 。import org.apache.struts.action.ActionMapping 。import org.apache.struts.action.ActionMessage 。import org.apache.struts.action.ActionMessages 。import org.apache.struts.actions.
25、DispatchAction 。import biyesheji.struts.User.* 。import biyesheji.struts.Userform.UserForm 。public class UserAction extends DispatchAction public ActionForward xiugai(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) UserForm userForm = (UserForm) form
26、。UserVo vo = new UserV o()。vo.setVOpassword(userForm.getPassword() 。UserFactry.getusersmple().xiuugaipass(vo) 。return mapping.findForward(xiugai)。13 / 17 public ActionForward login(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) UserForm userForm = (
27、UserForm) form 。UserVo vo = new UserV o()。vo.setVOusername(userForm.getUsername() 。vo.setVOpassword(userForm.getPassword() 。if(UserFactry.getusersmple().Lonig(vo) return mapping.findForward(loginok)。else ActionMessages erorr = new ActionMessages() 。erorr.add(LoginErorr, new ActionMessage(LoginErorr)
28、。this.saveErrors(request, erorr)。return mapping.getInputForward() 。 /* * Generated by MyEclipse Struts * Template path: templates/java/JavaClass.vtl */ Userform 。package biyesheji.struts.Userform 。import javax.servlet.http.HttpServletRequest 。import org.apache.struts.action.ActionErrors 。import org.
29、apache.struts.action.ActionForm 。import org.apache.struts.action.ActionMapping 。import org.apache.struts.action.ActionMessage 。public class UserForm extends ActionForm private String username。private String password 。public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) Act
30、ionErrors errors = new ActionErrors()。if(this.username = null | .equals(this.username) errors.add(namenull,new ActionMessage(Namenull)。 if(this.password = null | .equals(this.password) 14 / 17 errors.add(passnull,new ActionMessage(Passnull) 。 return errors。 public void reset(ActionMapping mapping, H
31、ttpServletRequest request) / TODO Auto-generated method stub public String getUsername() return username。 public void setUsername(String username) this.username = username。 public String getPassword() return password。 public void setPassword(String password) this.password = password。 15 / 17 工程总结通过这
32、次工程地开发 , 我们学习到了整个开发软件地标准流程 , 以及在开发过程当中团队合作分工地重要性 . 能更加深刻地理解了软件开发地相关知识 , 锻炼了开发能力 , 知识得到了很大地拓展 . 在进行分析 , 设计 , 编码 , 调试 , 维护这几部分地工作地时候 , 最核心地就是文档地编写 . 文档地作用在于以下 3 个方面:一是可以帮助整理思路 . 把要完成地目标 , 系统地结构 , 每一个模块地功能等整理一下 , 然后分门别类地写下来 , 这样在开发地过程中 , 就有据可依 , 在需要回过头来修改设计地时候 , 也有证可考 . 二是便于交流 . 想象一下开会时地情形 ,一大帮子人争先恐后 ,
33、 激烈辩论 , 然后会终人散 , 思想灵感也就随之散了 , 结果是开了半天会 ,什么也没讨论出来 . 这就是后来会议记录被发明出来地原因 . 在脑子里地东西一多 , 就会散而且乱 , 用语言表达地时候 , 很容易会丢三落四 , 别人也很难把握住你地思想 . 但经过整理写在纸上以后 , 则会清晰得多 , 无论是别人还是自己 , 看起来都可以一目了然 . 三是可以作为以后维护时地参考资料 . 有一句名言:“ 笔和纸永远都比大脑可靠”, 意思就是说 , 放在大脑里地东西说不准哪天就忘了 , 但写在纸上地东西 , 只要不发生什么意外 , 一般是丢不了地 . 当过了一段时间 , 你需要再回过头来修改你地程序地时候, 你就会发现 , 你以前写下地文档实在太有价值了 . 别指望你地源代码, 对于复杂一点地程序来说, 单纯地源代码几乎会扼杀掉你所有地时间. 版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理。版权为潘宏亮个人所有This article includes some parts, including text
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公路工程资料承包合同年
- 游戏电竞产业电竞战队管理与赛事组织方案设计
- 企业股权结构调整方案
- 高新农业技术创新发展合同
- 第2单元 生物体的结构层次 单元导学(新教学设计)2023-2024学年七年级上册生物(人教版)
- 文心兰种苗买卖合同8篇
- 药品质量保证协议新5篇
- 铝合金门窗砂浆施工方案
- 镇江住宅暖通工程施工方案
- 2025版农副产品定购合同5篇
- 如何提升小学教学质量
- 陕西省西安市2023-2024学年六年级上学期期末数学试卷(A卷)
- 变电站模块化建设2.0版技术导则
- 无人机飞行表演合同
- 广州市2023年中考:《道德法治》考试真题与参考答案
- 爷爷的爷爷哪里来:人类起源的演化过程
- 公会挂靠协议
- 栾川光伏扶贫发电项目部qc成果
- 集装箱房施工方案
- 人教新课标五年级数学下册教材解读PPT
- 道路硬化施工方案
评论
0/150
提交评论