热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

学生作业信息管理系统

一.引言1.1编写目的首先,软件系统的设计报告可以出用户提出的模糊需求分析出具体的工程需求,并转化为数据流图,程序流程图&

一.引言


1.1编写目的

    首先,软件系统的设计报告可以出用户提出的模糊需求分析出具体的工程需求,并转化为数据流图,程序流程图,模块图,数据库设计等软件设计必要的底层步骤。
    其次,答题信息管理系统可以大大提高老师与学生之间的在家庭作业和考核之间交流的效率,同时由于对题目以及学生成绩进行了数字化,可以对学生成绩及老师教学效果进行大数据分析。
    最后,通过软件开发,进一步掌握并加强软件工程的方法和技术,提高自己的软件开发实际能力,提高自己的创造能力、工程设计能力、解决问题能力、综合分析能力以及锻炼自己创造性的思维。


1.2项目背景

    如今社会早已经迈入了信息时代,随着中国互联网公司的崛起,产生了各种“互联网+”和“+互联网”的思想。目前的电商,移动支付,打车软件,共享单车等都是这些思想的产物。在教育领域,也有“+互联网”的影子,比如学生学籍管理系统,高考填报志愿系统,教务管理系统等。
    面向学生和老师对于家庭作业和成绩考核的要求,答题信息管理系统应运而生。它能提高老师与学生之间的在家庭作业和考核之间交流的效率,方便对学生成绩及老师教学效果进行大数据分析。


二.系统分析


2.1用户需求

    答题信息系统是一个在应用在教学领域的提高老师和学生在家庭作业和课程考核等方面效率的系统。老师能在该系统中上传题目,批改学生作业,查看学生成绩,学生可以下载老师上传的题目,给出答案并上传,查看老师的打分和批注。


2.2功能需求

    根据用户需求,整理出如下的需求:
    从系统需要实现的功能上来说,本系统需要提供老师对题目的上传、修改、删除功能,学生对题目的下载、添加答案后上传功能,老师对学生上传答案的打分功能、老师对学生的成绩查看功能,学生对老师打分后的成绩查看功能。
    从系统工作流程来说,老师首先对题目进行操作,学生随机获取题目并上传答案,老师对答案进行打分,学生查看老师打分。
    从系统安全的角度来说,该系统需要实现学生用户和老师用户的管理,根据登录用户不同赋予不同的权限或可选操作。


2.3运行环境

    操作系统:Windows 10;
    开发工具:Eclipse Oxygen.3a Release、MySQL workbench 8.0CE,Tomcat 9;
    数据库系统:MySQL8.0.11;


三.系统设计


3.1功能设计

3.1.1系统功能模块图
    按照结构化开发方法的要求得到如下图所示的系统功能模块图。



这里写图片描述

3.1.2数据流图
    在仔细分析程序流程图的基础上,得到如图2的数据流程图。



这里写图片描述


3.2数据库设计

    略(这个,这个,加上一些表格,整个排版就乱了,markdown真不好用。所以只好略过了)。


3.3界面设计

    数据库在一个管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率,保证数据的完整和一致。同时,合理的数据库结构也将有利于程序的实现。设计数据库系统时应该充分了解用户各方面的需求,包括现有的以及将来可能性增加的需求。用户的需求具体体现在各种信息的提供,保存,更新,和查询,这就要求数据库结构能充分满足各种信息的输入和输出。

    根据系统的功能需求,在数据库中设计了3张数据表,分别是用户账号数据表,原始问题数据表,学生回答问题数据表。



3.3.1登录界面
    为了区分不同的用户及权限,设计如下的登录界面:



这里写图片描述

    在登录界面输入正确的账号和密码,选择账户类型,然后可以进行登录或者重置操作。如果输入的账号和密码正确,那么系统会根据选择的账号类型进入到不同的页面。



3.3.2学生欢迎界面
    在登录界面输入正确的学生账号和密码,并且选择了学生账号类型,则可以进入如下图所示的学生欢迎界面。



这里写图片描述

    在欢迎界面有该答题系统的使用说明。



3.3.3学生答题界面
    按照欢迎界面的指示在左侧导航栏选择答题界面下的随机练习,则进入学生答题界面,如下图所示。在该界面中有两个按钮和两个文本框。两个按钮分别用来从数据库获取题目和把已经答完的题目上传到数据库。



这里写图片描述



3.3.4学生查看成绩界面
    按照欢迎界面的指示在左侧导航栏选择成绩管理下的查看成绩,则进入学生查看成绩界面,如下图所示。



这里写图片描述



3.3.5老师欢迎界面
    在登录界面输入正确的教师账号和密码,并且选择了教师账号类型,则可以进入教师欢迎界面。教师欢迎界面类似于学生欢迎界面。



3.3.6老师上传题目界面
    按照欢迎界面的指示在左侧导航栏选择题库管理下的简单题库,则进入老师上传题目界面。如下图所示,在该界面中有3个按钮和一个表格。其中三个界面的功能分别是进行问题的添加,修改和删除操作。每进行一次数据库操作,根据数据库内容刷新表格。



这里写图片描述



3.3.7老师查看未打分和已经打分界面
    为了方便成绩的管理,本系统把未打分和已经打分的问题分开显示。教师可在未打分界面看到所有学生刚上传的已经答完的题目,并进行打分。可在已经打分界面查看每个学生每道题的得分情况,对不满意的打分可以重新修改。
查看已经打分问题的界面如下图所示:



这里写图片描述

可以看到在上图中共有22条已经打分的问题,但每页只显示10(可设置)条记录,通过翻页可以看到更多。



这里写图片描述
    如上图所示,教师可对错误打分或者不满意的打分进行修改。未打分界面类似于已经打分界面,此处不再展示。




3.4程序结构设计

    本系统程序结构采用分模块分层设计的方法。共分为3个大的模块,分别是登录操作,学生操作和教师操作。每个模块又分成5层,分别是界面JSP层,Servlet层,服务层,数据操作层,工具层。其中,服务层和数据操作层有不可避免的交叉,如下图所示:



这里写图片描述

    举例来说,对于老师打分的功能来说:老师首先在教师界面选中某一问题进行打分操作,然后服务端的TeacherServlet响应打分操作。响应时把打分操作交给服务层的教师服务模块去处理,教师服务模块调用数据操作层的打分问题操作完成打分。在这一过程中,数据库的操作,问题bean类操作,中文字符串处理等交给底层工具类。




四.系统运行和维护

    系统开发出来要经常维护才能保证它的正常运行。如果系统发生故障有可能是软件本身有问题,也可能是操作方法不当引起的,也可能是系统出错造成的。一般有以下三种情况需要维护:


4.1程序的维护

    对于出现的故障,应先判断故障是属于系统故障,还是正在运行的应用程序的故障,或者是不是被病毒侵入了。一般情况下,系统程序比较稳定,出现故障的机率比较小。大部分故障是出于应用程序本身设计上的问题或操作的问题。对于这种问题,可以尝试重新登录系统或者重新起送tomcat或者重新启动电脑来解决。


4.2数据文件的维护

    数据文件支持着答题信息系统的运行,随着系统的升级和某些依赖软件版本的升级,原有的某些数据文件不能满足升级版后的需要,这时候就需要根据升级后的依赖软件版本对原来的数据进行相应的调整和修改或者把依赖软件或者系统降级到最初部署时的状态。


4.3代码的维护

    用户不能看到系统运行背后的程序,当用户觉得信息系统使用不方便时,可以由开发人员在备份当前程序源代码后按照需求进行修改。


五.参考文献

佟强. JSP程序设计[M]. 清华大学出版社, 2013.
李辉. 数据库系统原理及MySQL应用教程[专著][M]. 机械工业出版社, 2016.
朱福喜. 面向对象与Java程序设计[M]. 清华大学出版社, 2015.
EasyUI使用教程:http://www.jeasyui.net/tutorial/.


推荐阅读
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • 本文内容为asp.net微信公众平台开发的目录汇总,包括数据库设计、多层架构框架搭建和入口实现、微信消息封装及反射赋值、关注事件、用户记录、回复文本消息、图文消息、服务搭建(接入)、自定义菜单等。同时提供了示例代码和相关的后台管理功能。内容涵盖了多个方面,适合综合运用。 ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • 本文总结了Java中日期格式化的常用方法,并给出了示例代码。通过使用SimpleDateFormat类和jstl fmt标签库,可以实现日期的格式化和显示。在页面中添加相应的标签库引用后,可以使用不同的日期格式化样式来显示当前年份和月份。该文提供了详细的代码示例和说明。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 数据对比分析图PPT(127.0.0.1表示什么)的使用方法和意义
    本文介绍了数据对比分析图PPT的使用方法和意义,解释了127.0.0.1的含义,并提供了相关资源下载。同时还讨论了目标管理的概念和MBO的实施方法。 ... [详细]
  • 阿里云虚拟主机安装多个织梦系统的方法
    本文介绍了在阿里云虚拟主机上安装多个织梦系统的方法。通过创建不同名称的文件夹并将不同的域名解析到对应的目录,可以实现多个系统的安装。在安装过程中需要注意修改数据库前缀,并在系统设置中还原数据库。同时还介绍了阿里云虚拟主机二级域名绑定二级目录和域名重定向的用法。 ... [详细]
author-avatar
墨镜小靖
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有