博客
关于我
小型教育网站的开发与建设-总体设计(三)
阅读量:648 次
发布时间:2019-03-11

本文共 1317 字,大约阅读时间需要 4 分钟。

本科计算机专业毕业设计论文写作指南

第三章 总体设计

3.1 目的要求 该项目致力于构建一个高质量的在线教育平台,需要满足不同角色的登录、注册。在登录和注册时,要保证唯一性,账户不可重复,同时需要根据不同角色显示不同的首页,进行不同的操作,比如学生用户无法制作课程发布,教员不可审查看等。平台还需满足密码数据的安全性,防止被黑客截获;对于教员上传的课程,需确保不丢失。界面需美观优雅,同时支持PC、手机、iPad等多设备的正常使用。通过系统全面分析后,决定采用面向对象和面向接口的设计,灵活运用不同的设计模式,以满足系统的可扩展性和可维护性,同时保持代码的可读性。

3.2 登陆注册模块设计 新用户点击注册时,需输入手机号码,点击获取手机验证码,输入密码,再次输入密码(无需显示二次密码验证)后点击注册成功。用户信息存储于数据库,用户表字段包括手机号码和密码。其中密码需要加密存储。登录时,需验证手机号码和密码匹配性,注册成功后,用户可领取短信验证码并登录。验证码使用阿里云的短信服务。

3.3 权限模块设计 不同角色用户使用相同登录注册页面,但登录后可执行不同操作。平台选用了Shiro框架进行权限管理。Shiro支持用户身份认证、权限控制和 Remember Me 功能。主要实现如下:

  • 用户身份验证:通过数据库中的手机号码和加密密码进行验证
  • 访问权限控制:根据用户角色限制访问特定功能或资源。例如,学生角色登录后不会显示上传课程按钮,而教员角色则可以
  • Remember Me 功能:默认开启,支持用户浏览课程时 remember me
  • 权限流程: 数据库保存用户角色信息,管理员审核通过后,将用户角色更新为教员,并赋予相应的权限。用户权限数据存储于数据库中,具体权限通过多张表联查获得。
  • 3.4 模块功能设计

    3.4.1 用户模块 用户模块为平台的基础功能,支持管理员、教员和学生进行登录、注册、个人信息管理。用户可通过手机号码进行注册,注册成功后可修改个人信息(如昵称、邮箱等),不同角色间个人信息存在差异。例如,教员可以查看已发布课程数量,而学生可查看已加入课程。

    3.4.2 审核模块 特定于管理员角色,主要功能是审核教员申请和课程发布。审核流程包括:

  • 教员申请审核:管理员可查看课程内容并进行通过或拒绝操作
  • 课程审核:管理员审核课件完整性并决定是否发布
  • 审核操作提示:审通过或拒绝操作需发送通知消息给相关用户
  • 3.4.3 消息模块 消息模块用于系统内部通讯,主要功能包括:

  • 教员申请成为教员时,发送消息提醒管理员审核
  • 审核结果通知:告知教员是否通过审核并发送相应操作指导
  • 教员发布课程后,发送通知提醒管理员进行审核
  • 审核通过后,发送课程发布确认消息给教员
  • 3.4.4 课程模块 课程模块是平台核心功能。教员可在此模块创建课程并提交审核。课程制作流程包括:

  • 上传基础信息:课程名、简介、价格、难度、类别、封面图
  • 上传章节信息:需设置章节标题、所属章节
  • 上传课节资源:支持视频资源上传,可预览课节内容
  • 3.4.5 课程中心模块 课程中心模块展示所有已发布课程,可按多条件进行筛选和搜索。用户可根据需求选择课程查看和加入学习。

    转载地址:http://wwevz.baihongyu.com/

    你可能感兴趣的文章
    Node-RED中使用Notification元件显示警告讯息框(温度过高提示)
    查看>>
    Node-RED中使用range范围节点实现从一个范围对应至另一个范围
    查看>>
    Node-RED中实现HTML表单提交和获取提交的内容
    查看>>
    Node-RED中将CSV数据写入txt文件并从文件中读取解析数据
    查看>>
    Node-RED中建立TCP服务端和客户端
    查看>>
    Node-RED中建立Websocket客户端连接
    查看>>
    Node-RED中建立静态网页和动态网页内容
    查看>>
    Node-RED中解析高德地图天气api的json数据显示天气仪表盘
    查看>>
    Node-RED中连接Mysql数据库并实现增删改查的操作
    查看>>
    Node-RED中通过node-red-ui-webcam节点实现访问摄像头并截取照片预览
    查看>>
    Node-RED中配置周期性执行、指定时间阶段执行、指定时间执行事件
    查看>>
    Node-RED安装图形化节点dashboard实现订阅mqtt主题并在仪表盘中显示温度
    查看>>
    Node-RED怎样导出导入流程为json文件
    查看>>
    Node-RED订阅MQTT主题并调试数据
    查看>>
    Node-RED通过npm安装的方式对应卸载
    查看>>
    node-request模块
    查看>>
    node-static 任意文件读取漏洞复现(CVE-2023-26111)
    查看>>
    Node.js 8 中的 util.promisify的详解
    查看>>
    node.js debug在webstrom工具
    查看>>
    Node.js HTTP模块详解:创建服务器、响应请求与客户端请求
    查看>>