点击查看 软件需求工程 高校教学平台 卷首语
文章目录
学生查看教学班资料学生下载教学班资料学生查看教学班作业学生提交教学班作业(上传资料)学生查看教学班实验学生提交教学班实验学生查看教学班测试学生提交教学班测试学生发布教学班帖子学生查看教学班帖子学生回复教学班帖子学生删除教学班帖子学生提交自定义练习题 CRC卡状态图数据流图环境层数据流图用户管理子系统数据流图课程信息子系统数据流图网站维护子系统数据流图教学班信息管理、教学过程子系统数据流图 数据库设计硬件接口服务器客户端 软件接口服务器客户端 通信接口 非功能性需求性能需求输入要求数据传输与并发要求数据管理要求权限与安全需求可视化需求防护性需求软件质量属性其他需求 数据字典数据流定义表数据元素定义表数据精度表 业务规则与业务算法业务规则业务算法学生查看教学班资料
表4-4-5 学生查看教学班资料用例描述图 4-4-5 学生查看教学班资料时序图学生下载教学班资料
表4-4-6 学生下载教学班资料用例描述图 4-4-6 学生下载教学班资料时序图学生查看教学班作业
表4-4-7 学生查看教学班作业用例描述图4-4-7 学生查看教学班作业时序图学生提交教学班作业(上传资料)
表4-4-8 学生提交教学班作业(上传资料)用例描述图4-4-8 学生提交教学班作业(上传资料)时序图学生查看教学班实验
表4-4-9 学生查看教学班实验用例描述图4-4-9 学生查看教学班实验时序图学生提交教学班实验
表4-4-10 学生提交教学班实验用例描述图4-4-10 学生提交教学班实验时序图学生查看教学班测试
表4-4-11 学生查看教学班测试用例描述图4-4-11 学生查看教学班测试时序图学生提交教学班测试
表4-4-12 学生提交教学班测试用例描述图4-4-12 学生提交教学班测试时序图学生发布教学班帖子
表4-4-13 学生发布教学班帖子用例描述图4-4-13 学生发布教学班帖子时序图学生查看教学班帖子
表4-4-14 学生查看教学班帖子用例描述图4-4-14 学生查看教学班帖子时序图学生回复教学班帖子
表4-4-15 学生回复教学班帖子用例描述图4-4-15学生回复教学班帖子时序图学生删除教学班帖子
表4-4-16 学生删除教学班帖子用例描述图4-4-16 学生删除教学班帖子时序图学生提交自定义练习题
表4-4-17 学生提交自定义练习题用例描述图4-4-17 学生提交自定义练习题时序图CRC卡
表5-1 类:Resource表5-2 类:Add\_Chapter表5-3 类:Add_Resource表5-4 类:View_Chapter表5-5 类:Course表5-6 类:Add_Course表5-7 类:Chapter表5-8 类:Experiment表5-9 类:Take_Experiment表5-10 类:Notification表5-11 类:Add_Notification表5-12 类:User表5-13 类:Register表5-14 类:Login表5-15 类:Logout表5-16 类:FindPwd表5-17 类:ChPwd表5-18 类:ChangePwd表5-19 类:ViewInfo表5-20 类:ModifyInfo表5-21 类:Admin表5-22 类:AddStu表5-23 类:AddTeach表5-24 类:AddTeachIndex表5-25 类:ModTeachIndex表5-26 类:AddAssist状态图
图6-1 课程模块状态图图6-2 用户注册/登录/修改密码/找回密码/注销的状态图图6-3 查看基本信息、修改基本信息、(管理员)添加学生账号、添加教师账号、添加教师主页、修改教师主页图6-4 作业、实验、测试状态图
数据流图
环境层数据流图
图5-1 环境层数据流图用户管理子系统数据流图
图5-2 用户管理子系统数据流图课程信息子系统数据流图
图5-3 课程信息子系统数据流图网站维护子系统数据流图
图5-4 网站维护子系统数据流图教学班信息管理、教学过程子系统数据流图
图5-5 教学班信息管理、教学过程子系统数据流图数据库设计
图6-1 数据库ER图 # 外部接口需求硬件接口
服务器
表6-1 服务器硬件接口需求客户端
表6-2 客户端硬件接口需求软件接口
服务器
表6-3 服务器软件接口需求客户端
表6-4 客户端软件接口需求通信接口
通信功能有电子邮件、Web浏览器、网络通信标准或协议及通信安全或加密问题、10/100M
数据传输速率和同步通信机制。
表6-5 通信接口需求
非功能性需求
性能需求
系统应保持运行稳定,避免出现崩溃;
主流浏览器(Chrome, Microsoft Edge, Firefox, Safari,
Opera)均能正常访问本系统;
系统应能保证至少500人的并发访问;
系统应允许300人同时下载资料的平均速度达到500KB/s;
当用户登录以及进行任何操作时,系统应该能及时进行反应,反应的时间再1s以内;
系统应该能及时检测出各种非正常情况,如与设备的通信中断断开,无法连接数据库服务器等情况,避免用户长时间等待;
用户提交查询、添加、修改、删除等操作后,响应时间不超过3s;
每个页面一般情况下应在1s内加载完毕,高峰期应在3s内加载完毕;
系统保证在一周内不超过一次维护与重启。
输入要求
在用户输入账号密码时,应对数据输入进行数据有效性和安全性检查,对于用户密码应当采用MD5或SHA256等不可逆加密算法加密;
用户在论然发布帖子时,应当对数据输入进行数据长度及安全性检查;
用户在论坛上传附件时,附件大小应当小于3MB;
用户上传课件时,应对课件进行安全性检查;
用户发布通知时,应对通知的长度和安全性进行检查;
用户进行打分时,应对数据的有效性进行检查;
用户使用搜索功能时,应对搜索内容的长度和安全性进行检查;
管理员进行学生信息导入时,应对数据进行安全性和合法性检查;
管理员修改学生信息时需要额外验证;
用户添加发布相关信息时,如个人资料、作业说明、通知等,应对文本的长度、数字范围和安全性进行检查;
用户在处理成绩相关时,如批改作业、设定总成绩算法、导入成绩时,应对数据的有效性和合法性进行检查,如各项成绩总和等于100,单项作业等分数所占百分比不超过100%;
学生、教师、助教和游客对于课程相关的内容具有不同的权限;
此外,系统应通过程序控制出错几率,减少系统因用户人为的错误引起的破坏,开发者应当尽量周全地考虑到各种可能发生的问题,使出错的可能降至最小。
数据传输与并发要求
表7-1 数据传输与并发要求数据管理要求
表7-2 数据管理要求以下为具体细则:
系统服务器应具备至少40GB的存储空间;
数据库可支持表的最大行数达到1000行;
本系统用于日志等记录的数据增长约为
50MB/月,具体增长速度由用户的使用频率及所发生业务的数据量决定;
本系统会在刚上线即学期初增长约500MB数据,具体增长量由所发生业务的数据量决定;
系统管理员每两个月应至少维护备份三次数据;
当出现重大事故造成数据丢失后,系统应能在24小时内恢复数据;
当系统崩溃后,系统应能在24小时内恢复运行;
账号密码传输应当采用MD5或SHA256等不可逆加密算法进行加密处理。
权限与安全需求
对于任何一个系统来说,安全是保证其正常运行的关键因素之一。因此在我们的系统中,对于安全与权限进行了如下设计:
所有涉及功能信息或个人信息的网络事务,都应进行加密操作;
未登录的用户,即游客模式仅能查看所有课程的基本信息(课程名称、课程简介、开放时间、授课教师团队、课程章节目录等)、公开课程的所有内容(包括公开课程的主页、课程的具体章节内容、课程的所有相关资源文件等)和所有教师的个人主页信息;
系统要求用户密码强度不能少于8个字符,并且要包含字母和、数字和特殊字符;
用户登录时,密码要采用MD5或SHA256等不可逆加密算法进行加密,用户修改密码时需要进行安全性认证(通过邮件认证或输入旧密码);
只有系统管理员有权查看及修改底层数据库数据,且行为应被系统日志记录,用户无法非法修改数据库;
只有被授权为对应授课教师或助教的用户,才能编辑及发布公告。
只有被授权为对应授课教师或助教的用户,才能编辑及发布作业。
只有被授权为对应授课教师或助教的用户,才能删除游客评论。
只有被授权为对应授课教师或助教的用户,才能对论坛进行合并操作。
只有被授权为发帖本人,才能对论坛进行删帖操作。
只有被授权为对应授课教师或助教的用户或者是发布课件本人,才能对课件进行删除或修改操作。
只有系统管理员有权查看系统日志。
任何人都无权修改或删除日志。
只有系统管理员有权查看及修改底层数据库数据,且行为应被系统日志记录。
游客用户只能访问课程介绍以及被教师公开的课件。
只有被对应管理员标明的课件才能被下载。
没被对应管理员标明的课件只能在线浏览,不提供下载选项。
系统应该能够记录系统运行时所发生的所有错误,包括本机错误和网络错误,以便于查找错误的原因。系统日志应同时记录下用户的关键性操作信息;
当流量过大时,优先限制游客流量防止恶意访问,并且除了公共信息部分以外都需要通过登录账户才能查看。
除此之外,系统应当保证系统自身的安全:
系统应当提供一定的限制功能,即只允许在局域网内特定机器上运行用户管理功能;
系统应具备加密登录、数据加密传输、数据存储等安全方面的保障,以确保系统的安全性;
系统是基于开放的操作系统平台和数据库上的,因此,要求建立操作系统和数据库的安全保障体系,保证操作系统和数据库的安全;
对可能发生严重后果的操作要有补救措施,通过补救措施用户可以回到原来的正确状态。对可能造成等待时间较长的操作应该提供取消功能;
对一些特殊符号和计算机代码的输入,与系统使用的符号相冲突的字符等进行判断并阻止用户输入该字符;
对错误操作支持可逆性处理,如取消系列操作。在输入有效性字符之前应该阻止用户进行只有输入之后才可进行的操作。
可视化需求
用户在完成操作后,总是会想知道自己的操作是否出错,为了提高本系统的友好性,我们将对操作结果进行可视化。
教师在完成编辑或修改个人基本信心、上传教学班资料、添加教学班作业、添加教学班实验、添加教学班测试、发布通知、发布新帖子或回复帖子等操作后,能立刻看到新添加的页面;
同时教师在删除教学班作业、删除教学班实验、删除教学班测试、删除通知或删除自己的帖子后,页面中原有相关内容会消失;
所有用户在上传文件资料的过程中,能够看到上传的进度百分比,上传完成后,能显示刚上传的文件基本信息(名称、种类、大小等);
教师或助教批改作业、实验、测试后,学生能看到所获分数以及评语等相关信息。
教师或助教查看班级学生作业或实验提交情况、作业或实验成绩情况时,会以相关图表的形式可视化呈现;
教师或助教在发布通知后,学生能在通知栏实时看到新通知;
教师或助教在回复某学生的帖子后,学生能在通知栏和该教学班的论坛栏目看到有人回复的标志;
用户在输入账号密码登录后,能够在不刷新页面的条件下立刻获取反馈(账号密码是否正确)。
防护性需求
数据库误删除时,可以使用撤销删除修复;
重复操作导致卡死时,系统提出警告,自动检测并限制重复的操作;
访问无权限时,系统发出提示并禁止用户访问;
上传文件出错时,系统应提供自主覆盖功能;
系统应该提供验证码防止恶意登录;
系统应做好数据库注入攻击的防护工作;
系统应该及时信息备份防止病毒攻击;
系统应该能检测到恶意爬虫等恶意操作;
当检测到恶意重复操作时,系统应提出警告并在一段时间内不允许操作。
软件质量属性
可用性
系统保证早上6点到晚上12点之间可用,但在发生紧急情况时允许停止运行一段时间;
可维护性
系统运行时要保存所有操作的运行日志,用来维护分析。每周一的凌晨1点到5点为维护时间,在此期间用户不能使用系统。
此外,维护人员需要在系统正常运行时能保持联系。
网站首页应当为用户提供反馈问题和提供建议或意见的平台。
兼容性
系统需要保证在主流浏览器(Chrome, Microsoft Edge, Firefox, Safari,
Opera等)上可以正常浏览和使用,对于其他市场占有率超过5%的浏览器,保证实现系统的主要功能;
易用性
系统界面应该简洁明了、操作简单,功能按钮的位置符合用户的日常习惯。
此外,系统应该要有导航和清晰简短的用户使用手册;
可扩充性
系统在设计上考虑到了网站可能的后续发展,在后端设计和前端设计上尽可能地在满足所有需求的同时,增强了网站的可扩充性。一旦有扩展需要,客户可以联系系统维护人员,维护人员需要在1 - 4个工作日内完成客户的内容扩充需求,主要包括增加新的功能、增加新的模块、界面优化、系统性能提升等。
其他需求
软件必须提供对系统中各种码表的维护、补充操作;
软件对用户的所有误操作或不合法操作进行检查,并给出提示信息。
数据字典
数据流定义表
表8-1 数据流定义表数据元素定义表
表8-2 数据元素定义表数据精度表
表8-3 数据精度表业务规则与业务算法
业务规则
表9-1 业务规则业务算法
针对教师设定总成绩算法业务规则,两项成绩(考试成绩、平时成绩包括上课表现、作业实验成绩,满分均为 100 分)的权值分配之和为100,其中考试成绩占比需要大于等于50。
若某学生考试成绩为80分,平时成绩为90分。考试成绩占比60%,平时成绩占比40%。则该学生该课程的最终成绩 80 * 0.6 + 90 * 0.4 = 84。