目录

一、软件工程课程设计“作业管理系统”的总结和期望

该系统研究的意义

功能概述

web网上作业管理系统的实现

注册与登录功能的实现

作业提交功能实现

教师批改作业的功能实现

总结和期望

二、体温测量上报系统对象图

三、体温测量上报系统 时序图


一、软件工程课程设计“作业管理系统”的总结和期望

该系统研究的意义

在当今全球疫情的时期,返校、出行等人员流动无法顺利有序进行的情况下,很多学校的教育方式正逐渐由线下授课方式转换为线上授课方式。而此时,一套完善的线上授课及作业系统便成为切实的需求。因此,为了在教育领域应用计算机帮助教学工作更顺利地进行,解决教师与学生教学生活中远程操作的问题,设计实现该网上作业管理系统。

本系统在研究目前国内外作业管理情况的基础上,从学校的实际需求出发,将学生、教师以及管理员三者整合在系统中,采用当前较为流行的B/S(浏览器/服务器)结构、JSP动态网页开发技术和SQL数据库共同实现,设计并实现了一个功能较为完善的小型在线作业管理系统。通过对系统进行一系列的需求分析、设计、编码、测试等工作,使系统实现了管理员发布管理公告、教师管理、设置班级、课程;老师在线发布作业、批改作业、网上答疑;学生上传作业、查看作业信息、提出疑问的功能。重点对系统设计过程作了相应描述,同时也对系统需要改进的地方做了总结。

功能概述

该软件主要功能方向为实现分用户管理(角色包括:教师、学生、管理员)——注册账号、设置权限、邮箱验证;

其中:

教师功能:{修改个人资料及修改密码,查看、搜索公告};

{发布作业,批改作业,统计分数,DDL提醒,查看班级成员,发布班级公告,查看学生作业完成情况};

学生功能:{修改个人资料及修改密码,查看、搜索公告};

{根据自己课表查看老师布置的作业(我的作业),下载作业附件,上传作业,查看上传作业情况及教师打分情况}(只可对自己的作业进行调整,没有对其他作业操作的权限);

管理员:根据权限进入管理员相应的页面的功能,修改个人资料功能,设置班级、课程、任课教师,具有查看、删除作业的功能。

其他:学校层面(教务处)或学院层面(教学秘书等)的全体课程数据统计及分析;数据访问安全性;相同课程理念数据分析。

软件组成部分

系统逻辑功能结构图

软件设计类图

系统登录/注册模块活动图

web网上作业管理系统的实现

根据前面对web网上作业管理系统的需求分析与功能设计,现在对该应用进行实现,数据库的实现采用Navicat工具构建,数据库表结构参照第四章数据库模块分析与设计。以下是实现过程中用到的库和编程环境:

1、IntelliJ IDEA 2020.3.3

2、Navicat Premium 16

注册与登录功能的实现

注册功能方面由用户填写数据表单,对表单项进行鼠标焦点事件实时监听,校验用户输入数据的合法性,如果不合法,表单不允提交且给出相应的提示信息,指引用户输入正确数据。

图5.1注册功能部分表单

后端由UserServlet的addUser()方法处理注册表单的提交请求,获取提交表单的数据,封装成User对象,根据用户的手机号查询数据库判断此手机号是否已注册,已注册则返回注册失败信息,成功则调用业务层代码实现数据的插入。响应成功信息,页面收到成功信息进行消息提示并跳转登录页面。注册功能实现代码如下:

public void addUser(HttpServletRequest request, HttpServletResponse response) throws IOException {//获取数据BufferedReader reader = request.getReader();String line = reader.readLine();//封装对象。。User user = JSON.parseObject(line, User.class);//判断是否已存在手机号User user1 = userService.selectByTelephone(user.getTelephone());if (user1 != null) {response.getWriter().write("fail");} else {userService.addUser(user);response.getWriter().write("success");}

作业提交功能实现

作业提交功能是本系统学生对象的核心功能,本系统主界面展示部分即为已发布作业的信息,学生可对作业信息进行一定的筛选,查找,需将已完成的作业上交时,在登录之后即可使用提交作业功能,学生只需填入作业内容信息,提交后系统自动更新学生该项作业完成情况。

作业提交功能的实现前端啊依赖于Element-ui、ajax等技术获取学生选中的作业信息,学生完成作业内容的填写提交后数据由Ajax发向StuWorkServlet的addStuWork()方法,该方法获取前端学生提交的作业数据,封装为Homework的javabean对象调用业务层实现作业信息的存储,其功能实现代码如下:

public void addStuWork(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {//获取数据BufferedReader reader = request.getReader();String line = reader.readLine();DataBean dataBean = JSON.parseObject(line, DataBean.class);//转化成对象。StuWork stuWork = JSON.parseObject(dataBean.getWork(), StuWork.class);System.out.println(stuWork);//执行方法前,,获取用户的id。再提交HttpSession session = request.getSession();User user = (User) session.getAttribute("user");if (user != null) {//获取并设置提交者IDstuWork.setSid(user.getUid());System.out.println(stuWork);//测试//成功获取Session!!!!!!!!!!!!!!!!!!!!!!stuWorkService.addStuWork(stuWork);//更新Session Qids的数据List<Integer> qids = (List<Integer>) session.getAttribute("Qids");qids.add(stuWork.getQid());//响应request.getRequestDispatcher("/homework/selectByPageAnd?formInline="+dataBean.getFormInline()).forward(request,response);//            response.getWriter().write("success");} else {response.getWriter().write("fail");}}

教师批改作业的功能实现

每一个学生提交的作业存储于数据库的StuWork表中,包含了学生信息,作业内容等基本信息,StuWork剩余部分将由教师来补充,即教师批改作业,包含学生该作业成绩得分,教师评语,批改日期等信息。教师批改作业,查询学生提交的作业内容,给予打分,自由性留下评语,批改完成后不可修改,可查看已改作业信息。

批改作业功能实现,前端由Vue、Element-ui、Ajax等框架与技术实现。教师选中的学生的作业信息,完成批改后新的数据发送到后端StuWorkServlet的updateStuWork()方法,该方法将获得的数据进行封装,根据id对学生的作业进行数据更新,补充成绩、教师评语等信息。其功能实现代码如下:

public void updateStu(HttpServletRequest request, HttpServletResponse response) throws IOException {BufferedReader reader = request.getReader();String line = reader.readLine();System.out.println(line);StuWork stuWork = JSON.parseObject(line, StuWork.class);//获取用户IDHttpSession session = request.getSession();User user = (User) session.getAttribute("user");if (user != null){stuWork.setTid(user.getUid());stuWorkService.updateStu(stuWork);response.getWriter().write("success");}else{response.getWriter().write("fail");}}

总结和期望

在当今全球疫情的时期,返校、出行等人员流动无法顺利有序进行的情况下,很多学校的教育方式正逐渐由线下授课方式转换为线上授课方式。而此时,一套完善的线上授课及作业系统便成为切实的需求。因此,为了在教育领域应用计算机帮助教学工作更顺利地进行,解决教师与学生教学生活中远程操作的问题,我们项目组提出并设计实现了该网上作业管理系统。

时光荏苒,距离我们小组完成这个我们所有人人生中的“第一个项目”已经过去了很长一段时间。回望编写该项目的这段时间里有很多的压力同时也收获了很多。回想当初几个从未写过文档、论文,对开发一个项目一无所知的学生,在第一次作业收到要求后茫然的感觉,再到现在已经能够得心应手的写出一份完整的论文文档,独立完成一个完整而能够运营的项目。这个从无到有,从零到多的过程让我们感到十分的充实与喜悦。这些离不开当初开发人员夜以继日的努力。在此特别感谢我的组员朋友们!本系统在开发过程中遇到了许多困难,在功能上还略显单薄,不具备产品性,在性能和稳定性方面还有待提升。期望今后在项目管理课程中对系统的维护与更新将会继续跟进直至系统稳定运营。

二、体温测量上报系统对象图

三、体温测量上报系统 时序图

软件工程课程设计“作业管理系统”的总结和期望相关推荐

  1. 课程设计图书管理系统c语言,图书管理系统c语言课程设计c语言课程设计作业获得95分全院第一......

    > 下载中心  >   > 图书管理系统 c语言课程设计 english version 图书管理系统 c语言课程设计 所属分类: 开发工具:c/c++ 文件大小:2720kb 下载 ...

  2. 软件工程测试旅游管理系统,软件工程课程设计---旅游信息管理系统

    软件工程课程设计---旅游信息管理系统 福建农林大学金山学院福建农林大学金山学院 课程设计报告课程设计报告 课程名称 软件工程 课程设计题目 旅游信息管理系统 姓 名 系 信息与机电工程系 专 业 计 ...

  3. 数据库应用课程设计 教学管理系统 大学编程作业(TUST 天津科技大学 2022 年)

    数据库应用课程设计 教学管理系统 大学编程作业(TUST 天津科技大学 2022 年) 数据库应用课程设计 教学管理系统 大学编程作业(TUST 天津科技大学 2022 年) 一.项目简介 二.交流学 ...

  4. 网吧管理系统C语言作业,C语言课程设计-网吧管理系统.doc

    C语言课程设计-网吧管理系统 <通信工程专业C语言课程设计> 报 告 专 业: 通信工程 班 级: 0802 姓 名: 赵 松 指导教师: 丁 雄 二00九 年 十二 月 二十五 日 目 ...

  5. c语言课程设计作业图书管理系统,C语言课程设计图书馆管理系统程序代码.doc

    C语言课程设计图书馆管理系统程序代码.doc includestdio.h includewindows.h includestring.h includeconio.h define M 100 s ...

  6. 软件工程课程设计——技术栈【Go+Vue+PGSQL】的人事管理系统

    一.项目架构介绍 项目技术栈:Go+Vue+PGSQL 开发工具:IDEA2021.1 后端开发语言:Go 前端框架:Vue3.0(集成ElementUI组件) 后端框架:Gin.Gorm 数据库:P ...

  7. c语言大作业书店图书管理系统,c语言课程设计 书店管理系统.pdf

    c语言课程设计 书店管理系统 计算机程序设计(C语言) 课程设计报告 题目:图书管理系统 学院: 专业: 班级: 学号: 姓名: 指导教师: 设计日期:2013年06月24 日 一.选题背景: 设计一 ...

  8. 火车票售票系统C语言大作业,C语言课程设计--火车票管理系统

    <C语言课程设计--火车票管理系统>由会员分享,可在线阅读,更多相关<C语言课程设计--火车票管理系统(19页珍藏版)>请在人人文库网上搜索. 1.二.设计内容二.设计内容 设 ...

  9. 软件工程课程设计·SOA架构搭建SSM框架的网上商城系统

    软件工程课程设计·SOA架构搭建SSM框架的网上商城系统 项目简介 本系统利用SSM框架.Dubbo框架.Maven模块化开发等技术开发的一个网上商城项目,主要包括订单系统模块.购物车系统模块.搜索系 ...

最新文章

  1. POJ 2828 Buy Tickets | 线段树的喵用
  2. 详解:操作符的优先级
  3. python剑指offer跳台阶_【剑指offer】跳台阶I和II(Javapython)
  4. Quartz框架中的Listener
  5. mac全选文字的快捷键_最全Mac系统快捷键一览
  6. php 路由 隐藏index,CI中路由与伪静态、隐藏index.php(十四)
  7. 【hdu2825】ac自动机 + 状压dp
  8. GO string 转map_用go语言,只需两百行代码就能搞定并发聊天室!
  9. i - 数据结构实验之图论九:最小生成树_「核心考点」2021计算机数据结构
  10. 计算机丨浏览器访问出现DNS_PROBE_POSSIBLE解决方法
  11. Linux VM环境配置
  12. 别再用Excel了!用帆软报表做营收报表效率高十倍!
  13. 编程语言-什么是低级语言?
  14. (ICPR-2021)使用胶囊的多尺度部分表示变换的步态识别
  15. matlab 函数pdf怎么用_怎么将Word转换成PDF?Word转PDF就得用这个工具
  16. 【Android ROM定制】CyanogenMod源码下载和编译
  17. 解决C Runtime R6034的错误
  18. lisp 标注螺纹孔_螺纹的规定画法及规定标注
  19. 【Axure视频教程】鼠标滚动缩放图片
  20. 养老金入市,千呼万唤始出来?

热门文章

  1. EXPORT_SYMBOL的使用并以使用do_adjtimex调节内核tick_length(滴答长度)为例的说明...
  2. 双目格雷码结构光三维测量系统原理解析
  3. Docker-Compose集成编排Redis、MySQL、微服务,业务服务容器化
  4. 宝利通会议电话应该如何拨打第三方电话
  5. .net 统计图表总结
  6. Android Things物联网开发经验总结
  7. 惠普Linux成像和打印现在支持Linux Mint 21.1, Ubuntu 22.10
  8. ubuntu 18.04安装USB wifi接收器的驱动
  9. 判断给定二叉树是否是完全二叉树
  10. Linux及Windows下编译exosip和osip2源码