學生請假管理系統需求分析設計文檔(附待部分核心代碼-ssh框架實現)精編版_第1頁
學生請假管理系統需求分析設計文檔(附待部分核心代碼-ssh框架實現)精編版_第2頁
學生請假管理系統需求分析設計文檔(附待部分核心代碼-ssh框架實現)精編版_第3頁
學生請假管理系統需求分析設計文檔(附待部分核心代碼-ssh框架實現)精編版_第4頁
免費預覽已結束,剩余19頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、2014 - 2015 學年第 2學期1總體目標 .11.1背景 .11.1.1 引言 .11.2 要求 .11.3 目標 .12.需求分析 .22.1功能需求描述 .22.1.1 基本功能: .22.1.2 業務功能: .22.2用戶需求描述 .22.2.1 學生用戶需求描述 .22.2.2 任課教師用戶需求描述. 23.數據庫設計 .24.功能模塊設計 .44.1系統流程 .55.主要功能的具體實現 .85.1請假功能的實現 .85.2審核功能的實現 .115.3權限修改功能 .155.4導入功能 .176系統的運行環境需求 .186.1硬件環境: .186.2.軟件環境: .187測試結

2、果與分析 .187.1主要測試內容 .187.2軟件測試的目的 .197.3軟件測試的任務 .197.4.1 功能測試 .197.4.2.197.4.3 文檔測試 .197.5測試環境 .207.6系統具體測試 .208課程設計總結 .2111總體目標1.1 背景引言目前高校大部分都還是采用學生寫好請假條,然后到輔導員那里申請請假的方式進行請假, 這種方式不僅麻煩而且比較費時。在信息化的今天, 能有效地借助網絡才能提高辦事效率。 因此,請假管理系統能夠解決這種請假方式所帶來的很多麻煩。1.2 要求請假管理系統要達到以下功能:增刪查改:學生信息管理(導入/ 查/ 改 / 刪)、老師 ( 含輔導員

3、和系領導 ) 信息管理業務功能:學生填寫請假事由、提交給輔導員審批、按請假制度超過3 天的提交給系領導審批、 打印請假條、 學生查看歷史請假記錄、 輔導員可按不同篩選條件查看請假記錄。1.3 目標請假管理系統的基本目標是方便學生請假和校方的批假工作,系統實現后,應做該到:方便學生:學生可以通過登錄本系統填寫請假原因向校方申請請假,不用通過手寫請假條后找到導員請假。方便校方:學生在系統中申請請假后可以進入本系統進行審核,方便了校方很多請假方面的工作。12.需求分析2.1 功能需求描述基本功能:學生信息管理(導入 / 查/ 改/ 刪)、老師 ( 含輔導員和系領導 ) 信息管理業務功能:學生填寫請假

4、事由、 提交給輔導員審批、 按請假制度超過3 天的提交給系領導審批、打印請假條、 學生查看歷史請假記錄、 輔導員可按不同篩選條件查看請假記錄。2.2 用戶需求描述學生用戶需求描述學生對本系統的主要需求是:學生填寫請假理由進行請假、打印請假條、查看請假記錄、修改密碼。任課教師用戶需求描述校方對本系統的主要需求是:學生信息管理(導入/ 查/ 改/ 刪)、老師 ( 含輔導員和系領導 ) 信息管理、對學生的請假申請進行審核、打印、和查看請假記錄。3.數據庫設計請假管理系統涉及到學生用戶、教師用戶和管理員。根據實際應用的需要,最大限度的提高系統的性能,本系統涉及到8 張表,分別是管理員表、學生表、2教師

5、表、請假表、審核表、崗位表、管理員表、權限表。學生表 (student):字段類型長度主鍵是否為空注釋idint5010idstu_numvachar5000學號stu_namevachar5000學生姓名stu_sexvachar5000性別stu_classvachar5000班級leava_timesint5000請假次數stu_phonevachar5000聯系電話stu_yuanxivachar5000所屬院系root_typevachar5000權限類型(崗位名稱)教師表 (teacher):字段類型長度主鍵是否為空注釋idint5010idtch_numvachar5000教師編

6、號tch_namevachar5000教師姓名tch_sexvachar5000教師性別lavelvachar5000級別(輔導員,領導)yuanxivachar5000所屬院系tch_phonevachar5000聯系電話root_typevacahr5000權限類型(崗位名稱)請假表 (leave):字段類型長度主鍵是否為空注釋idint5010idleave_numvachar5000請假流水號leave_startvachar5000請假開始時間leave_endvachar5000請假結束時間leave_daysvachar5000請假天數leave_reasonvachar5000

7、請假原因stu_numvachar5000請假學號stu_namevachar5000學生姓名審核表 (audit):3字段類型長度主鍵是否為空注釋idint5010idleave_numvachar5000請假流水號audit_namevachar5000審核人audit_statusint5000審核狀態audit_timevachar5000審核時間audit_posivachar5000審核崗位audit_notevachar15000批注崗位表 (position):字段類型長度主鍵是否為空注釋idint5010idposi_numvachar5000崗位編號posi_namevac

8、har5000崗位名稱管理員表 (admin):字段類型長度主鍵是否為空注釋idint5010idadmin_numvachar5000管理員編號admin_namevacahr5000管理員名字admin_phoneint1000聯系電話權限表( root):字段類型長度主鍵是否為注釋空idint5010idroot_typevachar5000權限類型 (學生, 輔導員, 領導)root_listvachar5000權限集合root_numvachar5000權限編號4.功能模塊設計請假管理系統涉及到學生用戶、教師用戶和管理員,主要的功能模塊為學生管理模塊、教師管理模塊、請假管理模塊、角色

9、管理模塊。本系統的功能模塊圖如圖: 4-04請假管理系統學請角教生假色師管管管管理理理理增填輔院打查創修修增刪寫導領印看刪建改改改請員導請請改角權密查假審審假假查色限碼學條核核條記教生錄師信信息息圖 4-04.1 系統流程登陸流程:如圖4-1-1開始用戶登錄N判別身份并驗證帳號密碼Y登錄成功,進入系統圖 4-1-1請假流程:需要請假的學生可以在系統中填寫請假條進行請假申請,提交5請假申請后, 提交到輔導員崗進行審核,如果請假時間小于或等于3 天,輔導員審核通過后生成請假記錄,未通過,請假流程結束,如果請假時間大于3 天,若未審核未通過則請假流程結束,若在輔導員崗審核通過, 則提交到院領導崗進行

10、審核,審核通過后生成請假記錄,未通過則請假流程結束;如圖4-1-2開始學生用戶填寫請假信息生成輔導員崗未審核記錄輔導員進行審核請假時間 >3天NY審核通過審核通過并生成下一崗未審核記錄Y院領導進行審核N審核通過YNNY結束圖 4-1-2權限設置流程: 系統管理員可以通過權限設置進行添加不同的登錄角色并6可以賦予不同的權限;如圖4-1-3開始系統管理員進入系統權限設置頁面輸入所要系統角色名稱和編號選擇所要賦予的權限保存結束圖 4-1-3修改權限:系統管理員可以通過查詢出系統不同用戶類型的權限并可以進行各種權限的添加或者刪除進行修改;如圖4-1-47開始系統管理員進入系統選擇相應的用戶類型查

11、詢其相應的權限對其權限的添加或者刪除保存結束圖 4-1-45.主要功能的具體實現5.1 請假功能的實現學生在需要請假時, 進入系統按照要求填寫好請假條的內容確認后則提交請假申請交由輔導員進行審核。如圖所示:8其部分代碼如下:Action:/*保存請假條信息*return*/publicString addLeave()System. out .println(" 請假表信息: " +leave );String username = (String)getRequest().getSession().getAttribute("username" );S

12、tring rootType = (String)getRequest().getSession().getAttribute("rootType" );leaveService .doFirstAudi( leave , username, rootType); return SUCCESS;Struct.xml:method="1" >"success">$forwardpage </ result ><result name=</ action >LeaveServiceImpl:/*

13、填寫請假表 ( 第一崗 )* paramleave 請假表對象* paramauditName 審核人 , 請假學生*paramauditPosi審核崗位*paramauditStatus審核狀態1 - 未審核, 2 - 已審核, 3 - 審核不通過*/9Overridepublicvoid doFirstAudi(Leave leave,String auditName,StringauditPosi) System. out .println(" 保存請假表,生成第一崗記錄 -");/0- 生成流水號UUID uuid = UUID.randomUUID();leave

14、.setLeaveNum(uuid.toString();/ 保存請假表leaveDAO.save(leave);/3- 保存審核表/1.申請登記(學生自己)/ ( 1)辦結本崗,流水號、審核人、崗位名稱、狀態 =2( 已審核 )Audit audit1 =new Audit();audit1.setLeaveNum(uuid.toString();audit1.setAuditName(auditName);audit1.setAuditPosi(auditPosi);audit1.setStuName(auditName);audit1.setAuditStatus(2);auditDAO

15、.save(audit1);/ ( 2)初始化輔導員崗位,流水號、崗位名稱、狀態 =1( 未審核 )Audit audit2 =new Audit();audit2.setLeaveNum(uuid.toString();audit2.setStuName(auditName);audit2.setAuditPosi("輔導員 ");audit2.setAuditStatus(1);auditDAO.save(audit2);105.2 審核功能的實現學生提交請假申請后,提交到輔導員崗進行審核,如果請假時間小于或等于3 天,輔導員審核通過后生成請假記錄,未通過,請假流程結束

16、,如果請假時間大于 3 天,若未審核未通過則請假流程結束, 若在輔導員崗審核通過, 則提交到院領導崗進行審核,審核通過后生成請假記錄,未通過則請假流程結束;如圖 5-2-0 和圖 5-2-1圖 5-1-0圖 5-2-1其部分代碼如下LeaveAction:/*11* 第二崗* return*/publicString doSecond()System. out .println(" 審核信息 +" +leave );System. out .println(" 審核批注 +" +leave .getAuditNote();String username

17、= (String)getRequest().getSession().getAttribute("username" );String rootType = (String)getRequest().getSession().getAttribute("rootType" );leaveService .doSecond( leave , username, rootType);returnnull ;/*最后一崗*return*/publicString doEnd()System. out .println(" 院領導審核信息 +&quo

18、t; +leave );System. out .println(" 院領導審核批注 +" +leave .getAuditNote();String username = (String)getRequest().getSession().getAttribute("username" );String rootType = (String)getRequest().getSession().getAttribute("rootType" );leaveService .doEnd( leave , username, rootTy

19、pe);returnnull ;LeaveServiceImpl:/*12* 辦結第二崗* paramleave 請假表對象* paramauditNote 審核批注* paramauditName 審核人* paramauditPosi 審核人*/public void doSecond(Leave leave,String auditName, String auditPosi)/ ( 1)辦結本崗,流水號、審核人、崗位名稱、狀態 =2( 已審核 ) int days =Integer. parseInt (leave.getLeaveDays();Audit audit1 =new Au

20、dit();audit1.setLeaveNum(leave.getLeaveNum();audit1.setAuditName(auditName);audit1.setAuditPosi("輔導員 ");audit1.setAuditNote(leave.getAuditNote();audit1.setAuditStatus(2);if (days<=3) / 小于等于 3 天,成功標志設置為1audit1.setAuditEnd(1);Leave lea =new Leave();lea.setAuditName(auditName);lea.setAudit

21、Note(leave.getAuditNote();lea.setLeaveNum(leave.getLeaveNum();leaveDAO.updateLeave(lea); else audit1.setAuditEnd(0);auditDAO.updateByLeaveNum(audit1);if (days>3) / 大于 3 天,生成下一崗記錄Audit audit2 =new Audit();13audit2.setLeaveNum(leave.getLeaveNum();audit2.setStuName(leave.getStuName();audit2.setAudit

22、Posi("院領導");audit2.setAuditStatus(1);auditDAO.save(audit2);/* 辦結最后一崗* paramleave 請假表對象* paramauditNote 審核批注* paramauditName 審核人* paramauditPosi 審核人*/publicvoid doEnd(Leave leave,String auditName, String auditPosi)/ ( 1)辦結本崗,流水號、審核人、崗位名稱、狀態 =2( 已審核 )Audit audit =new Audit();audit.setLeaveNu

23、m(leave.getLeaveNum();audit.setAuditName(auditName);audit.setAuditPosi("院領導 ");audit.setAuditNote(leave.getAuditNote();audit.setAuditStatus(2);audit.setAuditEnd(1);Leave lea =new Leave();lea.setAuditName(auditName);lea.setAuditNote(leave.getAuditNote();lea.setLeaveNum(leave.getLeaveNum();l

24、eaveDAO.updateLeave(lea);14auditDAO.updateByLeaveNum(audit);5.3 權限修改功能系統管理員可以通過查詢出系統不同用戶類型的權限并可以進行各種權限的添加或者刪除進行修改;如圖:圖5-3圖 5-3其部分代碼如下RoleAction:publicString updateRole()throws IOExceptionSystem. out .println(" 更新的權限列表: " +role .getRootList();roleService.updateUser( role );setForwardpage( J

25、SP_ROLE_LIST);tips= " 修改成功! " ;returnSUCCESS;/* 根據角色 id 查找權限列表返回前臺設置單選框的狀態* return* throws IOException15*/publicString findListByRootID()throws IOExceptionString rootType =role .getRootType();role= roleService.findListByRootID(rootType);System. out .println(" 返回數據 json:" +role );

26、return"json2" ;RoleServiceImpl:/* 根據 rootType 獲取權限對象* return Role*/OverridepublicRole findListByRootID(String rootType) returnroleDao .findRootListByRoottype(rootType);/* 更新角色權限* paramrole 權限對象*/Overridepublicvoid updateUser(Role role) Role role_1 =null ;List list =roleDao .findByRootType(

27、role.getRootType();if (list.size()>0)role_1 = (Role) list.get(0);role_1.setRootList(role.getRootList();try16roleDao .merge(role_1); catch (Exception e) e.printStackTrace();5.4 導入功能學生、教師基本信息可以通過導入excel 表格的方式進行批量添加,其部分代碼如下:JSP:<formaction=" <%=path%>/teacher_importTchExcel.action"

28、;method ="post"enctype ="multipart/form-data"><a>教師信息導入</ a><br >ServiceImpl:/* 導入教師信息表格*/publicvoid importTchExcel(Teacher teacher,String pwd)User user =new User();user.setPassword(pwd);user.setUsername(teacher.getTchName();user.setUserNum(teacher.getTchNum(

29、);user.setRootType(teacher.getRootType();userDAO.save(user);teacherDAO.save(teacher);176系統的運行環境需求6.1 硬件環境:1) 內存:需要至少 512MHZ2) 硬盤: 40G以上6.2. 軟件環境:1) 操作系統: Windows XP/WIndows 7 或 Windows更高服務器版本2) 數據庫: Mysql5.53) 瀏覽器: IE8.0 或更高版本、 Chrome瀏覽器等主流瀏覽器7測試結果與分析7.1 主要測試內容7.2軟件測試的目的軟件質量是1) 在有限的時間里有效的把一個工作正確無誤完成

30、。2)中的可維護性、可測試性等要求。3)巧并不代表軟件的高質量。4) 質量也代表著它符合客戶的需要。 作為軟件測試這個行業最重要的一件事就品使用過程中會遇到什么樣的問題。187.2 軟件測試的目的第二是提供信息。7.3 軟件測試的任務1) 尋找 Bug2)3)4) 關注用戶的需求。總的目標是:確保軟件的質量7.4 測試方法整個系統測試方法包括功能測試、負載測試、文檔測試。功能測試Tomcat角。文檔測試出文檔的意思。采用走查的方式進行文檔測試。197.5 測試環境硬件環境1) 內存:需要至少1) 作系統 :Windows xp/Windows 7 的服務器版本2) 必裝軟件7.6系統具體測試在

31、此,由于版面有限, 不可能將系統的每一個功能的測試都表現出來,下面是用戶登錄和學生添加請假單及審核功能進行測試。用戶登錄測試:測試內容測試數據測試結果用戶名密碼輸入有效數據adminadmin有效空admin無效空數據admin空無效空空無效學生添加請假單測試:填寫請假單頁面:20點擊提交后數據庫添加請假單成功:審核功能測試:請假正常流程:學生填寫請假單,然后提交給班主任,如果 3 天以內的請假單由班主任直接審批,3 天以上的請假單,由班主任提交給院長審批,審批通過的任課老師可以查詢,1)假設學生提交 3 天以上的請假單, 如請假一周, 不通過院長審批, 直接由班主任審批通過,完成請假流程。 32)不通過班主任和院長審批, 直接通過,完成請假流程。 沒有通過班主任或者院長審批的請假單, 是無

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論