学生请假管理系统需求分析设计文档(附待部分核心代码-ssh框架实现)_第1页
学生请假管理系统需求分析设计文档(附待部分核心代码-ssh框架实现)_第2页
学生请假管理系统需求分析设计文档(附待部分核心代码-ssh框架实现)_第3页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

..1/1/182014-2015学年 第2学期11112.22223.24455710导入功能1266.16.2.71314147.4.1功能测试14负载测试147.4.3文档测试1515158 . 课 程 设 计

总 结 16总体目标背景引言目前高校大部分都还是采用学生写好请假条,然后到辅导员那里申请请假的方式进行请假,这种方式不仅麻烦而且比较费时。在信息化的今天,能有效地借助网络才能提高办事效率。因此,请假管理系统能够解决这种请假方式所带来的很多麻烦。要求请假管理系统要达到以下功能:增删查改:学生信息管理〔导入/查/改/删、老师<含辅导员和系领导>信息管理业务功能:学生填写请假事由、提交给辅导员审批、按请假制度超过3条件查看请假记录。目标请假管理系统的基本目标是方便学生请假和校方的批假工作,系统实现后,应做该到:,手写请假条后找到导员请假。,多请假方面的工作。..PAGEPAGE18/18需求分析功能需求描述基本功能:学生信息管理〔导入/查/改/删、老师<含辅导员和系领导>信息管理业务功能:3录。用户需求描述学生用户需求描述学生对本系统的主要需求是:学生填写请假理由进行请假、打印请假条、查看请假记录、修改密码。任课教师用户需求描述校方对本系统的主要需求是:学生信息管理〔导入/查/改/删、老师<含辅导员和系领导>信息管理、对学生的请假申请进行审核、打印、和查看请假记录。数据库设计请假管理系统涉及到学生用户、教师用户和管理员。根据实际应用的需要最大限度的提高系统的性能,8张表,师表、请假表、审核表、岗位表、管理员表、权限表。idint5010idstu_numvachar5000学号stu_namevachar5000学生姓名stu_sexvachar5000性别stu_classvachar5000班级leava_timesint5000请假次数stu_phonevachar5000联系电话stu_yuanxivachar5000所属院系root_typevachar5000位名称idint5010idtch_numvachar5000教师编号tch_namevachar5000教师姓名tch_sexvachar5000教师性别lavelvachar5000级别〔辅导员,领导yuanxivachar5000所属院系tch_phonevachar5000联系电话root_typevacahr5000位名称请假表<leave>:idint5010idleave_numvachar5000请假流水号leave_startvachar5000请假开始时间leave_endvachar5000请假结束时间leave_daysvachar5000请假天数leave_reasonvachar5000请假原因stu_numvachar5000请假学号stu_namevachar5000学生姓名审核表<audit>:idint5010idleave_numvachar5000请假流水号audit_namevachar5000审核人audit_statusint5000审核状态audit_timevachar5000审核时间audit_posivachar5000审核岗位audit_notevachar15000批注岗位表<position>:idint5010idposi_numvachar5000岗位编号posi_namevachar5000岗位名称管理员表<admin>:idint5010idadmin_numvachar5000管理员编号admin_namevacahr5000管理员名字admin_phoneint1000联系电话权限表〔root:idint5010idroot_typevachar5000权限类型〔学生,辅导员,领导root_listvachar5000权限集合root_numvachar5000权限编号功能模块设计请假管理系统涉及到学生用户、教师用户和管理员,主要的功能模块为学生管理模块、教师管理模块、请假管理模块、角色管理模块。本系统的功能模块图如图:4-0系统流程4-1-1

图4-0图4-1-1请假流程:需要请假的学生可以在系统中填写请假条进行请假申请,提交3核通过后生成请假记录,未通过,请假流程结束,如果请假时间大于3天,若未审4-1-2图4-1-24-1-3图4-1-34-1-4图4-1-4主要功能的具体实现请假功能的实现学生在需要请假时,进入系统按照要求填写好请假条的内容确认后则提交请假申请交由辅导员进行审核。如图所示:其部分代码如下:Action:/**保存请假条信息@return*/publicStringaddLeave<>{Stringusername=<String>getRequest<>.getSession<>.getAttribute<"username">;StringrootType=<String>getRequest<>.getSession<>.getAttribute<"rootType">;leaveService.doFirstAudi<leave,username,rootType>;returnSUCCESS;}Struct.xml:<actioname="leave_*class="com.qjglms.struts.action.LeaveActioeth<resultname="success">${forwardpage}</result></action>LeaveServiceImpl:/**填写请假表<第一岗>@paramleave请假表对象@paramauditName@paramauditPosi@paramauditStatus审核状态 1-未审核,2-已审核,3-审核不通过*/@OverridepublicvoiddoFirstAudi<Leaveleave,StringauditName,StringauditPosi>System.out.println<"保存请假表,生成第一岗记录 ">;//0-生成流水号UUIDuuid=UUID.randomUUID<>;leave.setLeaveNum<uuid.toString<>>;//保存请假表leaveDAO.save<leave>;//3-保存审核表//1.申请登记〔学生自己//〔1=2<Auditaudit1=newAudit<>;audit1.setLeaveNum<uuid.toString<>>;audit1.setAuditName<auditName>;audit1.setAuditPosi<auditPosi>;audit1.setStuName<auditName>;audit1.setAuditStatus<2>;auditDAO.save<audit1>;//〔2=1<Auditaudit2=newAudit<>;audit2.setLeaveNum<uuid.toString<>>;audit2.setStuName<auditName>;audit2.setAuditPosi<"辅导员">;audit2.setAuditStatus<1>;auditDAO.save<audit2>;}审核功能的实现天,辅导员审核通过后生成请假记录,未通过,请假流程结束,如果请假时间大于3天,若未审核未通过则请假流程结束,若在辅导员岗审核通过,则提交到院领导岗进行审核,审核通过后生成请假记录,未通过则请假流程结束;如图5-2-0和图5-2-1图5-1-0图5-2-1其部分代码如下LeaveAction:/**第二岗@return*/publicStringdoSecond<>{System.out.println<"审核批注+"+leave.getAuditNote<>>;Stringusername=<String>getRequest<>.getSession<>.getAttribute<"username">;StringrootType=<String>getRequest<>.getSession<>.getAttribute<"rootType">;leaveService.doSecond<leave,username,rootType>;returnnull;}/**

最后一岗@return*/publicStringdoEnd<>{System.out.println<"院领导审核信息+"+leave>;Stringusername=<String>getRequest<>.getSession<>.getAttribute<"username">;StringrootType=<String>getRequest<>.getSession<>.getAttribute<"rootType">;leaveService.doEnd<leave,username,rootType>;returnnull;}LeaveServiceImpl:/**办结第二岗@paramleave请假表对象*@paramauditNote审核批注*@paramauditName审核人*@paramauditPosi审核人*/publicvoiddoSecond<Leaveleave,StringauditName,StringauditPosi>{//〔1办结本岗,流水号、审核人、岗位名称、状态=2<已审核>intdays=Integer.parseInt<leave.getLeaveDays<>>;Auditaudit1=newAudit<>;audit1.setLeaveNum<leave.getLeaveNum<>>;audit1.setAuditName<auditName>;audit1.setAuditPosi<"辅导员">;audit1.setAuditNote<leave.getAuditNote<>>;audit1.setAuditStatus<2>;if<days<=3>{//小于等于3天,成功标志设置为1audit1.setAuditEnd<1>;Leavelea=newLeave<>;lea.setAuditName<auditName>;lea.setAuditNote<leave.getAuditNote<>>;lea.setLeaveNum<leave.getLeaveNum<>>;leaveDAO.updateLeave<lea>;}else{audit1.setAuditEnd<0>;}auditDAO.updateByLeaveNum<audit1>;if<days>3>{//3Auditaudit2=newAudit<>;audit2.setLeaveNum<leave.getLeaveNum<>>;audit2.setStuName<leave.getStuName<>>;audit2.setAuditPosi<"院领导">;audit2.setAuditStatus<1>;auditDAO.save<audit2>;}/**

}办结最后一岗@paramleave请假表对象@paramauditNote@paramauditName@paramauditPosi*/publicvoiddoEnd<Leaveleave,StringauditName,StringauditPosi>{//〔1办结本岗,流水号、审核人、岗位名称、状态=2<已审核>Auditaudit=newAudit<>;audit.setLeaveNum<leave.getLeaveNum<>>;audit.setAuditName<auditName>;audit.setAuditPosi<"院领导">;audit.setAuditNote<leave.getAuditNote<>>;audit.setAuditStatus<2>;audit.setAuditEnd<1>;Leavelea=newLeave<>;lea.setAuditName<auditName>;lea.setAuditNote<leave.getAuditNote<>>;lea.setLeaveNum<leave.getLeaveNum<>>;leaveDAO.updateLeave<lea>;auditDAO.updateByLeaveNum<audit>;}权限修改功能系统管理员可以通过查询出系统不同用户类型的权限并可以进行各种权限的添加或者删除进行修改;如图:图5-3图5-3其部分代码如下RoleAction:publicStringupdateRole<>throwsIOException{System.out.println<"更新的权限列表:"+role.getRootList<>>;roleService.updateUser<role>;setForwardpage<JSP_ROLE_LIST>;tips="修改成功!";returnSUCCESS;}/**

id@return@throwsIOException*/publicStringfindListByRootID<>throwsIOException{StringrootType=role.getRootType<>;role=roleService.findListByRootID<rootType>;System.out.println<return"json2";}RoleServiceImpl:/**rootType@returnRole*/@OverridepublicRolefindListByRootID<StringrootType>{returnroleDao.findRootListByRoottype<rootType>;}/**

更新角色权限@paramrole权限对象*/@OverridepublicvoidupdateUser<Rolerole>{Rolerole_1=null;Listlist=roleDao.findByRootType<role.getRootType<>>;if<list.size<>>0>{role_1=<Role>list.get<0>;}role_1.setRootList<role.getRootList<>>;try{roleDao.merge<role_1>;}catch<Exceptione>{e.printStackTrace<>;}}导入功能学生、教师基本信息可以通过导入excel表格的方式进行批量添加,其部分代码如下:JSP:<formaction="<%=path%>/teacher_importTchExcel.action" method="post"enctype="multipart/form-data"><a>教师信息导入</a><br>ServiceImpl:/***导入教师信息表格*/publicvoidimportTchExcel<Teacherteacher,Stringpwd>{Useruser=newUser<>;user.setPassword<pwd>;user.setUsername<teacher.getTchName<>>;user.setUserNum<teacher.getTchNum<>>;user.setRootType<teacher.getRootType<>>;userDAO.save<user>;teacherDAO.save<teacher>;}系统的运行环境需求硬件环境:512MHZ硬盘:40G软件环境:操作系统:WindowsXP/WIndows7Windows数据库:Mysql5.5浏览器:IE8.0Chrome测试结果与分析主要测试内容本次测试主要针对本次开发的请假管理信息系统进行系统测试 主要包括功能测试、界面测试、负载测试由几个方面来衡量的

文档测试。7.2软件测试的目的软件质量是在有限的时间里有效的把一个工作正确无误完成。符合应用标准的要求 不同地区不同国家的用户使用习惯不同

项目工程中的可维护性、可测试性等要求。巧并不代表软件的高质量。

而代码的优美或精巧的技是从客户的需求出发从客户的角度去看产品客户会怎么去使用这个产品使用过程中会遇到什么样的问题。软件测试的目的第一是确认软件的质量能正确的完成任务 其一方面是确认软件做了你所反馈信息信息。

另一方面是确认软件以正确的方式来做了这个事件。第二是提比如提供给开发人员或程序经理的反馈信息 为风险评估所准备的软件测试的任务Bug避免软件开发过程中的缺陷衡量软件的品质关注用户的需求。总的目标是:确保软件的质量测试方法整个系统测试方法包括功能测试、负载测试、文档测试。功能测试对需求规格说明书中描述的所有功能通过配置Tomcat服务器 让客服端进行功能测试。测试中需要考虑恶意测试和正常的测试角。

测试出系统的各种功能死负载测试负载测试主要测试系统在多用户在线登陆操作时候 系统的运行情况不出现系统故障。负载测试利用自动测试工具开展网络上有很多压力测试工具。7.4.3文档测试出文档的意思。采用走查的方式进行文档测试。

测试主要在文档内容的准确性是精确的表达测试环境硬件环境1)内存:需要至少512MHZ软件环境作系统:Windowsxp/Windows7必装软件:Myeclipse9.0 Mysql5.5 Tomcat6.0

温馨提示

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

评论

0/150

提交评论