收藏 分销(赏)

学生宿舍管理系统实验报告样本.doc

上传人:精**** 文档编号:11178569 上传时间:2025-07-04 格式:DOC 页数:39 大小:411.50KB 下载积分:12 金币
下载 相关 举报
学生宿舍管理系统实验报告样本.doc_第1页
第1页 / 共39页
学生宿舍管理系统实验报告样本.doc_第2页
第2页 / 共39页


点击查看更多>>
资源描述
资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。 学生宿舍管理系统 课程: 软件课程设计 组别: 周一_第二组 课题: 学生宿舍管理系统 成员: 柏君雄、 高立、 潘亮、 齐夏新、 郭文杰 目录 1. 学生宿舍管理系统的开发背景 2. 学生宿舍管理系统的可行性分析 3. 学生宿舍管理系统的需求分析 3.1任务概述 3.2设计及约束条件 3.3系统工作原理 3.4系统流程图 3.5数据流图 3.6数据字典 3.7性能要求 3.8运行环境要求 4. 学生宿舍管理系统的系统设计 4.1系统总体设计 4.2系统详细设计 5. 学生宿舍管理系统的编码 6. 系统测试概述 1. 开发背景 在信息高速发展的今天, 传统的手工管理手段已经越来越无法适应当前的要求。利用计算机进行学生宿舍管理效率高, 不易出错, 能有效的减少在宿舍管理方面的人力, 物力的消耗。 2. 可行性分析 基本方法:做校园内的调查报告, 获取宿舍管理员和学生各方面信息情况, 从中获取重要信息, 并成为建设本系统的重要依据 策略: 查阅大量管理系统的相关书籍, 从不同方面研究本系统的整个设计, 并结合调查报告中所获取的信息, 逐渐形成本平台的雏形。 建立模型: 从软件工程生命周期角度, 建立每一步的参考模型, 并在详细设计的总要环节中, 分别以管理员身份, 管理员和学生的角度去分析与设计。 3. 需求分析 利用计算机进行管理操作能够大大改进数据处理速度, 而且更加方便的对数据进行管理, 能够树立良好的办学形象, 提高工作效率,同时能够减少人力资源的浪费以及工资支出,使学校学生宿舍管理不再是个枯燥而是大大减少工作量的工作。 3.1 任务概述 (1) 熟悉宿舍管理的工作流程, 进行需求分析 第2周 (2) 总体设计, 详细设计 第3-5周 (3) 编码实现 第6-7周 (4) 测试 第8周 3.2 设计及约束条件 经过计算机实现对学生进出公寓的管理, 明确管理员的权限。 3.3 系统工作原理 经过与数据库进行连接, 实现对学生数据的存储, 修改等管理。 3.4 系统流程图 当用户要进行登陆操作时, 由终端将信息传送到系统当中, 系统将登陆信息和数据库中的信息进行比对, 判断用户是否合法。用户能够进行信息修改和信息查询等操作。 用户登陆 用户信息校对 系统数据库 操作选择 用户信息修改 用户信息查询 系统流程图 3.5 数据流图 录入数据 操作事务 报表 用户 学生宿舍 管理系统 用户 用户 第0层 用户信息 用户 1 登陆 2 查询 个人信息修改 登录信息 个人信息 第1层 成功登录 事务类型 连接失败 连接成功 出错事务 登录信息 登录事务 1.1 选择登录类型 1.3 验证登录 事务 1.4 进入系统主界面 1.5 出错 处理 1.6 处理连接失败 1.2 数据库连接 成功查询 查询类型 连接失败 连接成功 出错查询 查询信息 查询类型 2.1 选择查询类型 2.3 验证查询 事务 2.4 进入查询界面 2.5 出错 处理 2.6 处理连接失败 2.2 数据库连接 第2层 进入选择 进入选择 进入选择 卫生评分信息 快递物品信息 水电信息 成功 选择 连接失败 连接成功 出错查询 选择信息 查询类型 2.4.1 选择查询类型 2.4.3 验证查询 选择 2.4.4 进入查询界面 2.4.8 出错 处理 2.4.9 处理连接失败 2.4.2 数据库连接 2.4.6 宿舍卫生评分查询 2.4.7 宿舍快递物品查询 2.4.5 宿舍水电查询 进入选择 进入选择 成功 选择 连接失败 连接成功 出错选择 选择信息 事物类型 1.4.1 选择事务类型 1.4.3 验证事务 选择 1.4.4 进入选择界面 1.4.7 出错 处理 1.4.8 处理连接失败 1.4.2 数据库连接 1.4.6 宿舍快递物品查询 14.5 宿舍水电查询 第3层 3.6 数据字典 ********************************************* 名字: 用户号码 别名: 描述: 系统识别用户的号码 定义: 用户的识别序列 位置: 登录界面 ********************************************* 名字: 水电信息 别名: 描述: 当月的水电费用 定义: 水电费用信息 位置: 水电信息查询、 水电缴纳 ********************************************* ********************************************* 名字: 宿舍检查信息 别名: 描述: 宿舍检查评级 定义: 检查成绩 位置: 宿舍检查信息录入、 宿舍检查信息公布 ********************************************* ********************************************* 名字: 个人信息 别名: 描述: 管理员与用户的基本信息 定义: 个人基本信息 位置: 个人信息录入、 个人信息修改 ********************************************* ********************************************* 名字: 学生宿舍信息 别名: 描述: 学生宿舍号码 定义: 学生与宿舍号的对应 位置: 学生宿舍号更改 ********************************************* ********************************************* 名字: 用户密码 别名: 描述: 登陆检验 定义: 登陆密码 位置: 用户登陆 ********************************************* 数据库表: 学生信息 卫生评级 宿舍报修 登记信息 快递代取 3.7 性能要求 对与不存在的用户或密码错误进行报错处理, 水电费用精确到0.1 3.8 运行环境要求 Windows7, WindowsXP, SQL several 4. 系统设计 4.1总体设计系统功能模块图: 4.2系统的详细设计 (1)登录模块 用户经过该模块进入系统进行操作, 不同的用户类型获得不同的权限。用户也能够经过该模块进行用户注册。 输入: 用户名, 密码 处理: 核对用户信息 输出: 登录成功, 登录失败 登录 注册 登录失败 输入密码 def 登录 输入用户名 信息正确 登录成功 注册失败 输入密码 def 注册 输入用户名 未被注册 注册成功 登录模块PAD图 登录模块交互界面  (2)学生操作模块 学生用户经过该模块实现对数据的查询, 修改等操作 输入: 操作选择 处理: 识别操作, 进行响应 输出: 页面跳转 个人密码修改 报修管理 宿舍信息查询 物品遗失管理 返回主页 重输原密码 输入原密码 def 密码修改 输入用户名 密码正确 输入新密码 遗失登记 输入遗失物 def 物品遗失 输入用户名 物品已有 申请领取 学生模块PAD图 学生模块交互界面 (3)管理员操作模块 管理员用户经过该模块实现用户信息的管理, 拥有所有的权限。 输入: 操作选择 处理: 识别操作, 进行响应 输出: 页面跳转 重输原密码 输入原密码 def 密码修改 输入用户名 密码正确 输入新密码 删除信息 检查信息 def 信息审核 输入用户名 是否经过 公布信息 个人密码修改 学生信息管理 信息公告 水电管理 返回主页 卫生检查 信息审核 管理员模块PAD图 管理员模块交互界面 5. 编码 5.1程序设计语言与数据库系统的选择 本系统采用html和JavaScript及sql语言等制作而成, 数据库采用SQL 。 5.2系统模块的编码实现 (1)登录模块 <% '========================================================================================= '用户登录页 '1. 其中就是判断用户输入的用户名和密码是否正确? '2. 如果正确, 就将用户名、 E-mail保存到Session中, 然后重定向回首页。 '3. 如果不正确, 就输出错误提示信息 '========================================================================================= %> <% Option Explicit %> <meta http-equiv="Content-Type" content="asp; charset=gb2312"> <!--#Include File="odbc_connection.asp"--> <% '下面首先查看用户名和密码是否正确 Dim strSql,rs strSql="Select strUserId,strEmail From tbAddress5 Where strUserId='" & Request.Form("txtUserId") & "' And strPwd='" & Request.Form("txtPwd") & "'" Set rs=conn.Execute(strSql) If Not rs.Eof And Not rs.Bof Then '如果有记录, 表示有该用户, 则将用户名和Email保存到Session中 Session("strUserId")=rs("strUserId") Session("strEmail")=rs("strEmail") Response.Write "<p><h1>登录成功!</h1></p><a href='pro.asp'>确认身份</a>" Else '如果没有记录, 表示用户名或密码可能不正确, 请给出提示信息 Response.Write "对不起, 用户名或密码有误, 请<a href='index.asp'>返回首页</a>重新登录" End If %> (2)个人信息修改模块 <% '========================================================================================= '用户修改个人信息页 '1. 这其实就是一个普通的更新记录页面。首先将原有内容显示在表单中, 提交表单后再更新记录。 '2. 在更新记录时有些信息能够省略, 因此SQL语句较为复杂。以QQ号码为例, 如果用户原来提交了QQ号码, 在这里删除了QQ号码。 那么此时就需要将该字段值清空, 这里使用NULL关键字, 这样该字段值就被清空了。 事实上此时也能够用空字符串""将其清空。 '========================================================================================= %> <%Option Explicit%> <!--#Include File="odbc_connection.asp"--> <html> <head> <title>修改个人信息</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <script language="JavaScript"> function check_Null(){ if (document.frmInfo.txtName.value==""){ alert("真实姓名不能为空!"); return false; } if (document.frmInfo.txtEmail.value==""){ alert("E-mail不能为空!"); return false; } return true; } </script> </head> <body bgcolor="#FFCC80"> <body background="6.jpg"> <p align="center"><img src="photo/6.jpg"width="200"height="100"/></p> <body> <h2 align="center">修改个人信息</h2> <% '下面读取该用户的信息, 然后将其显示在后面的表格中 Dim strSql,rs strSql="Select * From tbAddress5 Where strUserId='" & Session("strUserId") & "'" Set rs=conn.Execute(strSql) %> <form name="frmInfo" onsubmit="javascript: return check_Null();" action="" method="post"> <table width="80%" border="1" bordercolorlight="#B0B0B0" bordercolordark="#FFFFFF" cellspacing="0" cellpadding="0" align="center"> <tr height="25"> <td width="20%">用户名</td> <td width="80%"><%=Session("strUserId")%></td> </tr> <tr height="25"> <td>真实姓名</td> <td><input type="text" name="txtName" size=15 value="<%=rs("strName")%>">*</td> </tr> <tr height="25"> <td>性别</td> <td> <input type="radio" name="rdoSex" value="男" <%If rs("strSex")="男" Then Response.Write "checked"%>>男 <input type="radio" name="rdoSex" value="女" <%If rs("strSex")="女" Then Response.Write "checked"%>>女 </td> </tr> <tr height="25"> <td>电话</td> <td><input type="text" name="txtTel" size="25" value="<%=rs("strTel")%>"></td> </tr> <tr height="25"> <td>E-mail</td> <td><input type="text" name="txtEmail" size="40" value="<%=rs("strEmail")%>">*</td> </tr> <tr height="25"> <td>QQ号码 </td> <td><input type="text" name="txtQQ" size="15" value="<%=rs("strQQ")%>"></td> </tr> <tr height="25"> <td>个人简介</td> <td><textarea name="txtIntro" rows="4" cols="50" ><%=rs("strIntro")%></textarea></td> </tr> </table> <p align="center"><input type="submit" value=" 确 定 "> </form> <% If Request.Form("txtName")<>"" And Request.Form("txtEmail")<>"" Then '下面建立SQL语句, 因为某些字段允许为空, 因此需要判断一下 strSql="Update tbUsers Set strName='" & Request.Form("txtName") & "'" strSql=strSql & ",strEmail='" & Request.Form("txtEmail") & "'" strSql=strSql & ",strSex='" & Request.Form("rdoSex") & "'" strSql=strSql & ",dtmSubmit=#" & Date() & "#" '注意: 如果用户没有提交QQ号码, 那么不论原来有没有QQ号码, 都将该字段值用NULL清空了。 If Request.Form("txtQQ") <> "" Then strSql = strSql & ",strQQ='" & Request.Form("txtQQ") & "'" Else strSql = strSql & ",strQQ=NULL" End If '注意: 关于电话的解释同上面的QQ If Request.Form("txtTel") <> "" Then strSql = strSql & ",strTel='" & Request.Form("txtTel") & "'" Else strSql = strSql & ",strTel=NULL" End If '注意: 关于备注的解释同上面的QQ If Request.Form("txtIntro") <> "" Then strSql = strSql & ",strIntro='" & Request.Form("txtIntro") & "'" Else strSql = strSql & ",strIntro=NULL" End If strSql=strSql & " Where strUserId='" & Session("strUserId") & "'" conn.Execute(strSql) '关闭对象 conn.close Set conn=Nothing Response.Redirect "index.asp" End If %> </body> </html> (3)密码修改模块 <% '========================================================================================= '用户修改密码页 '1. 首先判断用户输入的旧密码是否正确? 如果正确, 就更新为新密码, 如果不正确, 就提醒重新填写。 '========================================================================================= %> <%Option Explicit%> <!--#Include File="odbc_connection.asp"--> <html> <head> <title>修改个人密码</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <script language="JavaScript"> function check_Null(){ if (document.frmPwd.txtOldPwd.value==""){ alert("旧密码不能为空!"); return false; } if (document.frmPwd.txtNewPwd.value==""){ alert("新密码不能为空!"); return false; } if (document.frmPwd.txtNewPwd.value!=document.frmPwd.txtNewPwd2.value){ alert("新密码和确认密码必须一致!"); return false; } return true; } </script> </head> <body bgcolor="#FFCC80"> <body background="5.jpg"> <p align="center"><img src="photo/5.jpg"width="400"height="200"/></p> <body> <h2 align="center">修改密码</h2> <form name="frmPwd" onsubmit="javascript: return check_Null();" action="" method="post"> <table width="80%" border="1" bordercolorlight="#B0B0B0" bordercolordark="#FFFFFF" cellspacing="0" cellpadding="0" align="center"> <tr bgcolor="#FFFFFF"> <td height="25">旧 密 码</td> <td><input type="password" name="txtOldPwd" size="15">*</td> </tr> <tr bgcolor="#FFFFFF"> <td height="25">新 密 码</td> <td><input type="password" name="txtNewPwd" size="15">*</td> </tr> <tr bgcolor="#FFFFFF"> <td height="25">确认密码</td> <td><input type="password" name="txtNewPwd2" size="15">*</td> </tr> </table> <p align="center"> <input type="submit" value=" 确 定 " name="submit" class="inputbutton"> </form> <% '如果提交了表单, 就执行下面更新操作 If Request.Form("txtOldPwd")<>"" And Request.Form("txtNewPwd")<>"" Then '下面先判断旧密码是否正确 Dim strSql,rs strSql="Select strPwd From tbAddress5 Where strUserId='" & Session("strUserId") & "'" Set rs=conn.Execute(strSql) If rs("strPwd")<>Request.Form("txtOldPwd") Then Response.Write "<p align='center'>对不起, 旧密码不正确, 请重新输入! " Else '下面更新密码 strSql="Update tbAddress5 Set strPwd='" & Request.Form("txtNewPwd") & "' Where strUserId='" & Session("strUserId") & "'" conn.Execute(strSql) '关闭对象 conn.close Set conn=Nothing '重定向到首页 Response.Redirect "index.asp" End If End If %> </body> </html> (4)用户注册模块 <% '========================================================================================= '用户注册页---第一步 '1. 这一步要让用户输入用户名和密码。 '2. 如果用户名能够使用, 就添加到数据库中, 继续下一步。要注意此时会将用户名保存到Session中, 以备下一个页面使用。 '3. 如果用户名已经被使用, 就提醒用户修改用户名。 '========================================================================================= %> <% Option Explicit %> <!--#INCLUDE FILE="odbc_connection.asp"--> <html> <head> <title>注册: 第一步</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <script language="javascript"> function check_Null(){ if (document.frmReg.txtUserId.value==""){ alert("用户名不能为空!"); return false; } if (document.frmReg.txtUserId.value.length<4 || document.frmReg.txtUserId.value.length>20){ alert("用户名不能少于4个字符, 也不能多于20个字符"); return false; } if (document.frmReg.txtPwd.value==""){ alert("密码不能为空!"); return false; } if (document.frmReg.txtPwd.value!=document.frmReg.txtPwd2.value){ alert("密码和密码确认必须一致!"); return false; } return true; } </script> </head> <head> <title>用户注册</title> </head> <body bgcolor="#FFCC80"> <body background="1.jpg"> <p align="center"><img src="photo/1.jpg"width="200"height="100"/></p> <body> <h2 align="center">用户注册</h2> <p align="center">第一步 申请用户名( 注意: 所有带*号的项目必须填写) <form name="frmReg" action="" method="POST" onsubmit="javascript: return check_Null();"> <table width="80%" border="1" bordercolorlight="#B0B0B0" bordercolordark="#FFFFFF" cellspacing="0" cellpadding="0" align="center"> <tr height="25"> <td width="20%">用户名</td> <td width="80%"><input size="15" name="txtUserId">*( 大于或等于4位, 小于20位) </td> </tr> <tr height="25"> <td>密 码</td> <td><input type="password" size="15" name="txtPwd">*</td> </tr> <tr height="25"> <td>确认密码</td> <td><input type="password" size="15" name="txtPwd2">*</td> </tr> </table> <br> <input type=submit value=" 确 定 " name="submit"> </form> <br> <% '各项验证正确无误, 则可继续注册, 否则返回 If Request("txtUserId")<>"" Then '下面首先获取提交的用户名和密码 Dim strUserId,strPwd strUserId=Request.Form("txtUserId") strPwd=Request.Form("txtPwd") '以下检查该用户是否已经存在, 如存在, 则需要更换用户名 Dim strSql,rs strSql="Select * From tbAddress5 Where strUserId='" & Request.Form("txtUserId") & "'" Set rs=conn.execute(strSql) If Not rs.Eof And Not rs.Bof Then Response.Write "<p align='center'>提示: 已有人使用该用户名,请重新填写</p>" Else strSql="Insert Into tbAddress5(strUserId,strPwd) Values('" & strUserId & "','" & strPwd & "')" conn.execute(strSql) Session("strUserId")=strUserId '记住用户名, 以备后面使用。 Response.Redirect "log2.asp" '重定向到下一个页面 End If End If %> </body> </html> 6. 系统测试概述 模块测试由各组员独立完成, 对模块进行调试。 白盒测试: 由于该系统由各组员合作完成, 系统的测试属于白盒测试, 首先就是登陆, 在登陆时, 输入正确的用户名和密码进行登陆, 然后再输入错误的密码和用户进行登陆, 看看错误的能不能登陆进去。然后就是数据的操作, 首先用正确的数据进行操作, 然后再用错误的数据进行操作, 看看有没有什么异常, 这样重复测试多次。直到用任何数据操作都不会出现软件异常为止。在进行操作时遇到了像添加或修改管理员时密码不小心输入错误而不能记住的问题, 解决办法就是在添加和修改管理员时, 密码必须重复输入一次, 判断是否一致, 如果不一致就不予操作。其次就是对数据的操作, 如: 对学生入住宿舍的添加, 查看, 修改和删除。先用合法的数据进行学生入住, 然后用非法的数据进行学生入住, 合法的数据能够添加, 非法的则不能够。还有就是看学生管理里的数据的修改, 删除和查询, 在修改数据的时候有没有错, 结果是没有错误, 删除数据都能够成功删除。经过测试, 该系统能够满足管理学生宿舍的基本要求。另外, 我们新加的带收快递功能也能够正常运行, 若能被使用, 定能方便学生的学习生活。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服