CN116468577B - 一种基于b/s架构的教学实训管理系统 - Google Patents

一种基于b/s架构的教学实训管理系统 Download PDF

Info

Publication number
CN116468577B
CN116468577B CN202310274465.5A CN202310274465A CN116468577B CN 116468577 B CN116468577 B CN 116468577B CN 202310274465 A CN202310274465 A CN 202310274465A CN 116468577 B CN116468577 B CN 116468577B
Authority
CN
China
Prior art keywords
training
teaching
student
teacher
programming
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310274465.5A
Other languages
English (en)
Other versions
CN116468577A (zh
Inventor
卞继海
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhonghui Yunqi Technology Group Co ltd
Original Assignee
Zhonghui Yunqi Technology Group Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhonghui Yunqi Technology Group Co ltd filed Critical Zhonghui Yunqi Technology Group Co ltd
Priority to CN202310274465.5A priority Critical patent/CN116468577B/zh
Publication of CN116468577A publication Critical patent/CN116468577A/zh
Application granted granted Critical
Publication of CN116468577B publication Critical patent/CN116468577B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • G06Q50/205Education administration or guidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Software Systems (AREA)
  • Educational Technology (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Educational Administration (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Electrically Operated Instructional Devices (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于B/S架构的教学实训管理系统,涉及互联网教学平台技术领域。所述系统包括有学生端浏览器、教师端浏览器、服务器和中间件,并通过它们的协作可以同步记录学生在编程教学实训过程中所编辑的所有行代码,并基于编辑距离算法计算得到用于负相关地反映学生实训进度的当前编辑距离,最后在认定学生实训进度出现了明显倒退现象时,会通过在教师端浏览器上输出展示实训项目具体内容以及所述所有行代码的方式,使教师可以及时发现该学生在编程教学实训过程中所存在的问题,并通过后续建立的音视频通讯和进行的一对一地远程指导予以解决纠正,如此可降低在线老师的工作量或扩展在线老师的有效教学半径,缓解教师资源紧缺问题。

Description

一种基于B/S架构的教学实训管理系统
技术领域
本发明属于互联网教学平台技术领域,具体涉及一种基于B/S架构的教学实训管理系统。
背景技术
程序语言是用来定义计算机程序的形式语言,利用程序语言可以控制计算器的硬件运作及开发套装应用软件。由于硬件环境的快速变化,加上各种操作系统或执行平台在手持行动装置(如智能手机或平板计算机等)问世后蓬勃发展,学习并灵活运用某种程序语言(编程)变得越来越困难。当然,常见的程序语言大多使用英文单字或以英文字母定义的字符串进行语法描述,对于母语不是英语的中国人来说,这也容易造成上述困境。然而,编程技能在商业上可以带来许多利益,因此许多学校与教育机构愿意开办编程课程,为国家社会培育人才,创造新的生意型态。
目前,编程教育平台的教学模式主要有两种:一种是在线教师一对一教学;另一种是录播视频教学。前述的在线教师一对一教学,一直存在明显的教师资源紧缺问题,特别是在编程教学实训过程中,由于每个学生的编程思路和/或技术能力各不相同,导致实训进度参差不齐,进而使得上课老师很难顾及到每个学生,导致的结果就是有效教学半径有限,因此如何提供一种教学实训管理系统来帮助老师对学生实训情况进行实时在线监控,以便及时发现问题予以解决,以及降低在线老师的工作量或扩展在线老师的有效教学半径,是本领域技术人员亟需研究的课题。
发明内容
本发明的目的是提供一种基于B/S架构的教学实训管理系统,用以解决现有采用在线教师一对一教学的编程教育平台在编程教学实训过程中所存在教师资源紧缺和有效教学半径有限的问题。
为了实现上述目的,本发明采用以下技术方案:
第一方面,提供了一种基于B/S架构的教学实训管理系统,包括有学生端浏览器、教师端浏览器、服务器和中间件,其中,所述服务器通过所述中间件分别通信连接所述学生端浏览器和所述教师端浏览器;
所述学生端浏览器,用于面向学生用户提供人机交互界面,并在进行某项编程教学实训项目的过程中,每当所述学生用户完成一行编程教学实训代码的初次编辑/再次修改时,生成一个携带有该行编程教学实训代码的编程教学实训同步请求,并通过所述中间件将所述编程教学实训同步请求上传至所述服务器;
所述服务器,用于将在所述编程教学实训同步请求中携带的单行编程教学实训代码同步记录到与所述学生用户及所述某项编程教学实训项目对应的教学实训代码集合中,然后将在所述教学实训代码集合中的所有元素依次拼接成第一字符串,以及将在与所述某项编程教学实训项目对应的参考答案中所有行的编程教学参考代码依次拼接成第二字符串,再然后采用编辑距离算法计算得到所述第一字符串与所述第二字符串的当前编辑距离,再然后判断所述当前编辑距离与所述学生用户在本次编程教学实训过程中的历史最低编辑距离的差值是否大于等于预设的第一编辑距离阈值,若是,则通过所述中间件将所述某项编程教学实训项目的具体内容和所述教学实训代码集合推送至所述教师端浏览器;
所述教师端浏览器,用于面向教师用户提供人机交互界面,并输出展示所述某项编程教学实训项目的具体内容和所述教学实训代码集合,以及在所述教师用户决定对所述学生用户进行编程教学实训纠正时,通过所述中间件及所述服务器建立与所述学生端浏览器的音视频通讯,以便对所述学生用户进行一对一地远程指导。
基于上述发明内容,提供了一种可帮助老师对学生实训情况进行实时在线监控的编程教育新平台方案,即包括有学生端浏览器、教师端浏览器、服务器和中间件,并通过它们的协作,可以同步记录学生在编程教学实训过程中所编辑的所有行代码,并基于编辑距离算法计算得到用于负相关地反映学生编程教学实训进度的当前编辑距离,最后在认定学生实训进度出现了明显倒退现象时,会通过在教师端浏览器上输出展示实训项目具体内容以及所述所有行代码的方式,使教师可以及时发现该学生在编程教学实训过程中所存在的问题,并通过后续建立的音视频通讯和进行的一对一地远程指导予以解决纠正,如此可无需老师时刻关注学生在编程教学实训过程中所编辑的代码内容,进而可降低在线老师的工作量或扩展在线老师的有效教学半径,缓解教师资源紧缺问题,便于实际应用和推广。
在一个可能的设计中,所述学生端浏览器,还用于在进行所述某项编程教学实训项目的过程中,每当所述学生用户触发生成一个主动在线求助请求时,通过所述中间件将所述主动在线求助请求上传至所述服务器;
所述服务器,还用于在判定所述差值小于所述第一编辑距离阈值时,将所述主动在线求助请求、所述某项编程教学实训项目的具体内容和所述教学实训代码集合推送至所述教师端浏览器;
所述教师端浏览器,还用于输出展示所述主动在线求助请求、所述某项编程教学实训项目的具体内容和所述教学实训代码集合,并在所述教师用户决定响应所述主动在线求助请求时,通过所述中间件及所述服务器建立与所述学生端浏览器的音视频通讯,以便对所述学生用户进行一对一地远程指导。
在一个可能的设计中,所述学生端浏览器,还用于在进行所述某项编程教学实训项目的过程中,每当所述学生用户超时未进行编程教学实训代码的编辑操作时,生成一个被动在线求助请求,并通过所述中间件将所述被动在线求助请求上传至所述服务器;
所述服务器,还用于在判定所述差值小于所述第一编辑距离阈值时,将所述被动在线求助请求、所述某项编程教学实训项目的具体内容和所述教学实训代码集合推送至所述教师端浏览器;
所述教师端浏览器,还用于输出展示所述被动在线求助请求、所述某项编程教学实训项目的具体内容和所述教学实训代码集合,并在所述教师用户决定响应所述被动在线求助请求时,通过所述中间件及所述服务器建立与所述学生端浏览器的音视频通讯,以便对所述学生用户进行一对一地远程指导。
在一个可能的设计中,当所述某项编程教学实训项目为基于C语言或Java语言的编程教学实训项目时,每当所述学生用户完成一行编程教学实训代码的初次编辑时,生成一个携带有该行编程教学实训代码的编程教学实训同步请求,包括:当在某行编程教学实训代码中输入分号时,判定所述学生用户完成对所述某行编程教学实训代码的初次编辑,并生成一个携带有所述某行编程教学实训代码的编程教学实训同步请求;
或者,当所述某项编程教学实训项目为基于Python语言的编程教学实训项目时,每当所述学生用户完成一行编程教学实训代码的初次编辑时,生成一个携带有该行编程教学实训代码的编程教学实训同步请求,包括:当在某行编程教学实训代码中输入分号或基于某行编程教学实训代码换行时,判定所述学生用户完成对所述某行编程教学实训代码的初次编辑,并生成一个携带有所述某行编程教学实训代码的编程教学实训同步请求。
在一个可能的设计中,当所述某项编程教学实训项目对应有至少两个参考答案时,将在与所述某项编程教学实训项目对应的参考答案代码集合中所有行的编程教学参考代码依次拼接成第二字符串,再然后采用编辑距离算法计算得到所述第一字符串与所述第二字符串的当前编辑距离,包括:
针对在所述至少两个参考答案中的各个参考答案,对在对应答案中所有行的编程教学参考代码进行依次拼接,得到对应的第二字符串;
针对所述各个参考答案,采用编辑距离算法计算得到所述第一字符串与对应的所述第二字符串的编辑距离;
将计算所得的最小编辑距离作为所述第一字符串与所有所述第二字符串的当前编辑距离。
在一个可能的设计中,当在服务器侧记录有与至少两个学生用户一一对应的至少两个教学实训代码集合时,判断所述当前编辑距离与所述学生用户在本次编程教学实训过程中的历史最低编辑距离的差值是否大于等于预设的第一编辑距离阈值,若是,则通过所述中间件将所述某项编程教学实训项目的具体内容和所述教学实训代码集合推送至所述教师端浏览器,包括:
在所述教师端浏览器结束展示当前的且在所述至少两个学生用户中的第一学生用户的教学实训代码集合时,针对在所述至少两个学生用户中的各个其它学生用户,计算对应的所述当前编辑距离与对应学生用户在本次编程教学实训过程中的历史最低编辑距离的差值,得到对应的编辑距离差值;
从所述至少两个学生用户中选取出具有最大编辑距离差值的且不为所述第一学生用户的第二学生用户作为目标学生用户;
判断所述目标学生用户的编辑距离差值是否大于等于预设的第一编辑距离阈值,若是,则通过所述中间件将所述某项编程教学实训项目的具体内容和所述目标学生用户的教学实训代码集合推送至所述教师端浏览器。
在一个可能的设计中,所述服务器,还用于在通过所述中间件将所述某项编程教学实训项目的具体内容和所述目标学生用户的教学实训代码集合推送至所述教师端浏览器时,同步地通过所述中间件将在所述至少两个学生用户中的各个学生用户的当前编辑距离推送至所述教师端浏览器;
所述教师端浏览器,还用于在输出展示所述某项编程教学实训项目的具体内容和所述目标学生用户的教学实训代码集合时,同步地输出展示所述各个学生用户的当前编辑距离,以便所述教师用户感知所述各个学生用户的编程教学实训进度。
在一个可能的设计中,所述服务器,还用于在判定所述目标学生用户的编辑距离差值未大于等于所述第一编辑距离阈值时,通过所述中间件将所述某项编程教学实训项目的具体内容和在所述至少两个学生用户中的各个学生用户的当前编辑距离推送至所述教师端浏览器;
所述教师端浏览器,还用于输出展示所述某项编程教学实训项目的具体内容和所述各个学生用户的当前编辑距离,以便所述教师用户感知所述各个学生用户的编程教学实训进度,并在基于所述教师用户的人机交互操作生成携带有学生用户指定信息的编程教学实训调阅请求时,通过所述中间件将所述编程教学实训调阅请求上传至所述服务器;
所述服务器,还用于根据在所述编程教学实训调阅请求中携带的学生用户指定信息,确定在所述至少两个学生用户中的指定学生用户,并通过所述中间件将所述指定学生用户的教学实训代码集合实时推送至所述教师端浏览器;
所述教师端浏览器,还用于实时输出展示所述指定学生用户的教学实训代码集合,以便所述教师用户实时感知所述指定学生用户的编程教学实训情况。
在一个可能的设计中,所述服务器,还用于在判定所述目标学生用户的编辑距离差值未大于等于所述第一编辑距离阈值时,将收到的主动在线求助请求或被动在线求助请求、所述某项编程教学实训项目的具体内容和请求发起学生用户的所述教学实训代码集合推送至所述教师端浏览器。
在一个可能的设计中,所述服务器,还用于在建立所述教师端浏览器与目标学生用户的学生端浏览器的音视频通讯时,针对在所述至少两个学生用户中的各个非目标学生用户,采用编辑距离算法计算得到对应的第一字符串与所述目标学生用户的第一字符串的编辑距离,并在该编辑距离小于等于预设的第二编辑距离阈值时,通过所述中间件将在所述音视频通讯的进行过程中产生的交互内容分享传送至对应的学习端浏览器。
上述方案的有益效果:
(1)本发明创造性提供了一种可帮助老师对学生实训情况进行实时在线监控的编程教育新平台方案,即包括有学生端浏览器、教师端浏览器、服务器和中间件,并通过它们的协作,可以同步记录学生在编程教学实训过程中所编辑的所有行代码,并基于编辑距离算法计算得到用于负相关地反映学生编程教学实训进度的当前编辑距离,最后在认定学生实训进度出现了明显倒退现象时,会通过在教师端浏览器上输出展示实训项目具体内容以及所述所有行代码的方式,使教师可以及时发现该学生在编程教学实训过程中所存在的问题,并通过后续建立的音视频通讯和进行的一对一地远程指导予以解决纠正,如此可无需老师时刻关注学生在编程教学实训过程中所编辑的代码内容,进而可降低在线老师的工作量或扩展在线老师的有效教学半径,缓解教师资源紧缺问题,便于实际应用和推广;
(2)还可在未认定学生/目标学生实训进度出现明显倒退现象的情况下,实现主动/被动地请求协助进行一对一远程指导的目的,进一步提升实用性;
(3)还可在教师的有效教学半径为至少两个学生时,从这些学生中优选出具有最大倒退现象的目标学生进行实训情况查看,以便教师可以及时发现该目标学生在编程教学实训过程中所存在的问题,并通过后续建立的音视频通讯和进行的一对一地远程指导予以解决纠正,确保教学实训辅助的公平性;
(4)还可在未认定目标学生实训进度出现明显倒退现象的情况下,实现教师监控各个学生的编程教学实训进度并调阅查看指定学生的实训情况的目的,进一步提升实用性;
(5)还可向可能存在相似实训问题的其它非目标学生共享教师与目标学生的交互内容,以便这些非目标学生能够及时自行纠正实训问题,避免进度倒退现象恶化。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的基于B/S架构的教学实训管理系统的结构示意图。
图2为本申请实施例提供的在教学实训管理系统中服务器的工作流程示意图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将结合附图和实施例或现有技术的描述对本发明作简单地介绍,显而易见地,下面关于附图结构的描述仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在此需要说明的是,对于这些实施例方式的说明用于帮助理解本发明,但并不构成对本发明的限定。
应当理解,尽管本文可能使用术语第一和第二等等来描述各种对象,但是这些对象不应当受到这些术语的限制。这些术语仅用于区分一个对象和另一个对象。例如可以将第一对象称作第二对象,并且类似地可以将第二对象称作第一对象,同时不脱离本发明的示例实施例的范围。
应当理解,对于本文中可能出现的术语“和/或”,其仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A、单独存在B或者同时存在A和B等三种情况;又例如,A、B和/或C,可以表示存在A、B和C中的任意一种或他们的任意组合;对于本文中可能出现的术语“/和”,其是描述另一种关联对象关系,表示可以存在两种关系,例如,A/和B,可以表示:单独存在A或者同时存在A和B等两种情况;另外,对于本文中可能出现的字符“/”,一般表示前后关联对象是一种“或”关系。
实施例:
如图1所示,本实施例第一方面提供的且基于B/S架构的教学实训管理系统,包括但不限于有学生端浏览器、教师端浏览器、服务器和中间件,其中,所述服务器通过所述中间件分别通信连接所述学生端浏览器和所述教师端浏览器。前述的浏览器(即所述学生端浏览器和所述教师端浏览器)、所述服务器和所述中间件均为现有B/S架构(即浏览器和服务器架构模式,其是随着Internet技术的兴起,对C/S架构的一种变化或者改进的架构;在这种架构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端Browser实现,但是主要事务逻辑在服务器端Server实现,形成所谓三层3-tier结构)的基本组成部分,它们的硬件结构设计以及所述中间件的软件结构设计,均可采用现有技术实现。
所述学生端浏览器,用于面向学生用户提供人机交互界面,并在进行某项编程教学实训项目的过程中,每当所述学生用户完成一行编程教学实训代码的初次编辑/再次修改时,生成一个携带有该行编程教学实训代码的编程教学实训同步请求,并通过所述中间件将所述编程教学实训同步请求上传至所述服务器。所述某项编程教学实训项目即为一个具体的编程实训题目,可以但不限于由教师用户创建得到;所述学生用户通过编辑得到多行编程教学实训代码即可组成对应该编程实训题目的作答结果。针对不同的编程语言,相应的单行编程教学实训代码完成判据也会有所不同,即具体的,当所述某项编程教学实训项目为基于C语言或Java语言的编程教学实训项目时,每当所述学生用户完成一行编程教学实训代码的初次编辑时,生成一个携带有该行编程教学实训代码的编程教学实训同步请求,包括但不限于有:当在某行编程教学实训代码中输入分号时,判定所述学生用户完成对所述某行编程教学实训代码的初次编辑,并生成一个携带有所述某行编程教学实训代码的编程教学实训同步请求;或者,当所述某项编程教学实训项目为基于Python语言的编程教学实训项目时,每当所述学生用户完成一行编程教学实训代码的初次编辑时,生成一个携带有该行编程教学实训代码的编程教学实训同步请求,包括但不限于有:当在某行编程教学实训代码中输入分号或基于某行编程教学实训代码换行时,判定所述学生用户完成对所述某行编程教学实训代码的初次编辑,并生成一个携带有所述某行编程教学实训代码的编程教学实训同步请求。此外,对于单行编程教学实训代码再次修改的完成判据,也可以采用类似方式常规得到,例如在将编辑光标从某行编程教学实训代码移动到另外一行时,判定所述学生用户完成对所述某行编程教学实训代码的再次修改。
所述服务器,用于按照如图2所示的步骤S21~S26实现对应的处理功能。
S21.将在所述编程教学实训同步请求中携带的单行编程教学实训代码同步记录到与所述学生用户及所述某项编程教学实训项目对应的教学实训代码集合中。
在所述步骤S21中,所述教学实训代码集合用于以单行编程教学实训代码为一个元素记录所述学生用户对所述某项编程教学实训项目的作答结果,即在所述教学实训代码集合中的多个元素会与所述学生用户编辑的多行编程教学实训代码一一对应,并有元素序号等于代码行号,如此当所述多行编程教学实训代码中的某行编程教学实训代码完成初次编辑/再次修改时,可将所述某行编程教学实训代码同步记录到对应的元素中,具体同步记录方式为:若不存在该元素,则创建该元素,并使该元素为所述某行编程教学实训代码的初次编辑结果,否则将该元素更新为所述某行编程教学实训代码的再次修改结果。
S22.将在所述教学实训代码集合中的所有元素依次拼接成第一字符串。
在所述步骤S22中,在所述教学实训代码集合中的所有元素即为所述学生用户对所述某项编程教学实训项目编辑的所有行编程教学实训代码,因此可以基于元素序号/代码行号将所述所有元素依次拼接成所述第一字符串。
S23.将在与所述某项编程教学实训项目对应的参考答案中所有行的编程教学参考代码依次拼接成第二字符串。
在所述步骤S23中,考虑参考答案存在不唯一情况,具体的,当所述某项编程教学实训项目对应有至少两个参考答案时,将在与所述某项编程教学实训项目对应的参考答案中所有行的编程教学参考代码依次拼接成第二字符串,包括但不限于有:针对在所述至少两个参考答案中的各个参考答案,对在对应答案中所有行的编程教学参考代码进行依次拼接,得到对应的第二字符串。
S24.采用编辑距离算法计算得到所述第一字符串与所述第二字符串的当前编辑距离。
在所述步骤S24中,所述编辑距离算法是一种用于计算在两个字符串之间由一个转成另一个所需要的最小编辑操作次数(其许可的编辑操作包括将一个字符替换成另一个字符、插入一个字符和/或删除一个字符等)的现有算法,因此编辑距离越小,两个字符串的相似度越大,使得所述当前编辑距离可以负相关地反映所述学生用户的编程教学实训进度。同样考虑参考答案存在不唯一情况,具体的,当所述某项编程教学实训项目对应有至少两个参考答案时,采用编辑距离算法计算得到所述第一字符串与所述第二字符串的当前编辑距离,包括但不限于有:针对所述各个参考答案,采用编辑距离算法计算得到所述第一字符串与对应的所述第二字符串的编辑距离;然后将计算所得的最小编辑距离作为所述第一字符串与所有所述第二字符串的当前编辑距离。
S25.判断所述当前编辑距离与所述学生用户在本次编程教学实训过程中的历史最低编辑距离的差值是否大于等于预设的第一编辑距离阈值。
在所述步骤S25中,所述本次编程教学实训过程即为进行所述某项编程教学实训项目的过程。所述历史最低编辑距离即负相关地反映了所述学生用户的编程教学实训历史最快进度。所述第一编辑距离阈值用于作为判断所述学生用户的编程教学实训进度是否有明显倒退现象的具体判据(即若差值大于等于所述第一编辑距离阈值,则可认定所述学生用户的编程教学实训进度出现了明显倒退现象,反之则不然),其可以具体根据教学经验来提前设定。
S26.若是,则通过所述中间件将所述某项编程教学实训项目的具体内容和所述教学实训代码集合推送至所述教师端浏览器。
所述教师端浏览器,用于面向教师用户提供人机交互界面,并输出展示所述某项编程教学实训项目的具体内容和所述教学实训代码集合,以及在所述教师用户决定对所述学生用户进行编程教学实训纠正时,通过所述中间件及所述服务器建立与所述学生端浏览器的音视频通讯,以便对所述学生用户进行一对一地远程指导。由于在认定学生用户的编程教学实训进度出现了明显倒退现象时,会输出展示所述某项编程教学实训项目的具体内容和该学生用户对所述某项编程教学实训项目编辑的所有行编程教学实训代码(即所述教学实训代码集合),因此可以利于所述教师用户及时发现该学生用户在编程教学实训过程中所存在的问题,并通过后续建立的音视频通讯和基于该音视频通讯进行的一对一地远程指导予以解决纠正。此外,所述音视频通讯具体包括但不限于有语音通话或视频通话,其具体建立过程以及基于该音视频通讯进行一对一地远程指导的交互过程,为现有常规技术手段,于此不再赘述。
由此基于前述的教学实训管理系统,提供了一种可帮助老师对学生实训情况进行实时在线监控的编程教育新平台方案,即包括有学生端浏览器、教师端浏览器、服务器和中间件,并通过它们的协作,可以同步记录学生在编程教学实训过程中所编辑的所有行代码,并基于编辑距离算法计算得到用于负相关地反映学生编程教学实训进度的当前编辑距离,最后在认定学生实训进度出现了明显倒退现象时,会通过在教师端浏览器上输出展示实训项目具体内容以及所述所有行代码的方式,使教师可以及时发现该学生在编程教学实训过程中所存在的问题,并通过后续建立的音视频通讯和进行的一对一地远程指导予以解决纠正,如此可无需老师时刻关注学生在编程教学实训过程中所编辑的代码内容,进而可降低在线老师的工作量或扩展在线老师的有效教学半径,缓解教师资源紧缺问题,便于实际应用和推广。
优选的,所述学生端浏览器,还用于在进行所述某项编程教学实训项目的过程中,每当所述学生用户触发生成一个主动在线求助请求时,通过所述中间件将所述主动在线求助请求上传至所述服务器;所述服务器,还用于在判定所述差值小于所述第一编辑距离阈值时,将所述主动在线求助请求、所述某项编程教学实训项目的具体内容和所述教学实训代码集合推送至所述教师端浏览器;所述教师端浏览器,还用于输出展示所述主动在线求助请求、所述某项编程教学实训项目的具体内容和所述教学实训代码集合,并在所述教师用户决定响应所述主动在线求助请求时,通过所述中间件及所述服务器建立与所述学生端浏览器的音视频通讯,以便对所述学生用户进行一对一地远程指导。所述主动在线求助请求可以在所述学生用户需要求助时,通过常规的人机交互方式触发生成。通过前述学生端浏览器、教师端浏览器、服务器和中间件的协作,还可在未认定学生实训进度出现明显倒退现象的情况下,实现主动地请求协助进行一对一远程指导的目的,进一步提升实用性。
优选的,所述学生端浏览器,还用于在进行所述某项编程教学实训项目的过程中,每当所述学生用户超时(例如距离上次编辑操作超过5分钟)未进行编程教学实训代码的编辑操作时,生成一个被动在线求助请求,并通过所述中间件将所述被动在线求助请求上传至所述服务器;所述服务器,还用于在判定所述差值小于所述第一编辑距离阈值时,将所述被动在线求助请求、所述某项编程教学实训项目的具体内容和所述教学实训代码集合推送至所述教师端浏览器;所述教师端浏览器,还用于输出展示所述被动在线求助请求、所述某项编程教学实训项目的具体内容和所述教学实训代码集合,并在所述教师用户决定响应所述被动在线求助请求时,通过所述中间件及所述服务器建立与所述学生端浏览器的音视频通讯,以便对所述学生用户进行一对一地远程指导。通过前述学生端浏览器、教师端浏览器、服务器和中间件的协作,还可在未认定学生实训进度出现明显倒退现象的情况下,实现被动地请求协助进行一对一远程指导的目的,特别适用于帮助含羞不敢提问的学生用户来发起求助,进一步提升实用性。
优选的,当在服务器侧记录有与至少两个学生用户一一对应的至少两个教学实训代码集合时,判断所述当前编辑距离与所述学生用户在本次编程教学实训过程中的历史最低编辑距离的差值是否大于等于预设的第一编辑距离阈值,若是,则通过所述中间件将所述某项编程教学实训项目的具体内容和所述教学实训代码集合推送至所述教师端浏览器,包括但不限于有如下步骤S251~S253。
S251.在所述教师端浏览器结束展示当前的且在所述至少两个学生用户中的第一学生用户的教学实训代码集合时,针对在所述至少两个学生用户中的各个其它学生用户,计算对应的所述当前编辑距离与对应学生用户在本次编程教学实训过程中的历史最低编辑距离的差值,得到对应的编辑距离差值。
在所述步骤S251中,由于在对所述第一学生用户进行的一对一远程指导过程中,所述第一学生用户的教学实训代码集合会依然进行实时展示,因此在所述教师端浏览器结束展示当前的且在所述至少两个学生用户中的第一学生用户的教学实训代码集合时,也就意味着也结束了对所述第一学生用户进行的一对一远程指导,所述教师用户已有空闲来辅助其它学生用户(即在所述至少两个学生用户中不为所述第一学生用户的学生用户),此时可以再选一个目标学生用户进行实训情况查看。
S252.从所述至少两个学生用户中选取出具有最大编辑距离差值的且不为所述第一学生用户的第二学生用户作为目标学生用户。
S253.判断所述目标学生用户的编辑距离差值是否大于等于预设的第一编辑距离阈值,若是,则通过所述中间件将所述某项编程教学实训项目的具体内容和所述目标学生用户的教学实训代码集合推送至所述教师端浏览器。
由此通过上述步骤S251~S253,可在教师的有效教学半径为至少两个学生时,从这些学生中优选出具有最大倒退现象的目标学生进行实训情况查看,以便教师可以及时发现该目标学生在编程教学实训过程中所存在的问题,并通过后续建立的音视频通讯和进行的一对一地远程指导予以解决纠正,确保教学实训辅助的公平性。
进一步优选的,所述服务器,还用于在通过所述中间件将所述某项编程教学实训项目的具体内容和所述目标学生用户的教学实训代码集合推送至所述教师端浏览器时,同步地通过所述中间件将在所述至少两个学生用户中的各个学生用户的当前编辑距离推送至所述教师端浏览器;所述教师端浏览器,还用于在输出展示所述某项编程教学实训项目的具体内容和所述目标学生用户的教学实训代码集合时,同步地输出展示所述各个学生用户的当前编辑距离,以便所述教师用户感知所述各个学生用户的编程教学实训进度。
进一步优选的,所述服务器,还用于在判定所述目标学生用户的编辑距离差值未大于等于所述第一编辑距离阈值时,通过所述中间件将所述某项编程教学实训项目的具体内容和在所述至少两个学生用户中的各个学生用户的当前编辑距离推送至所述教师端浏览器;所述教师端浏览器,还用于输出展示所述某项编程教学实训项目的具体内容和所述各个学生用户的当前编辑距离,以便所述教师用户感知所述各个学生用户的编程教学实训进度,并在基于所述教师用户的人机交互操作生成携带有学生用户指定信息的编程教学实训调阅请求时,通过所述中间件将所述编程教学实训调阅请求上传至所述服务器;所述服务器,还用于根据在所述编程教学实训调阅请求中携带的学生用户指定信息,确定在所述至少两个学生用户中的指定学生用户,并通过所述中间件将所述指定学生用户的教学实训代码集合实时推送至所述教师端浏览器;所述教师端浏览器,还用于实时输出展示所述指定学生用户的教学实训代码集合,以便所述教师用户实时感知所述指定学生用户的编程教学实训情况。通过前述服务器、教师端浏览器和中间件的协作,还可在未认定目标学生实训进度出现明显倒退现象的情况下,实现教师监控各个学生的编程教学实训进度并调阅查看指定学生的实训情况的目的,进一步提升实用性。
进一步优选的,所述服务器,还用于在判定所述目标学生用户的编辑距离差值未大于等于所述第一编辑距离阈值时,将收到的主动在线求助请求或被动在线求助请求、所述某项编程教学实训项目的具体内容和请求发起学生用户的所述教学实训代码集合推送至所述教师端浏览器。如此还可在未认定目标学生实训进度出现明显倒退现象的情况下,实现主动/被动地请求协助进行一对一远程指导的目的,进一步提升实用性。
进一步优选的,所述服务器,还用于在建立所述教师端浏览器与目标学生用户的学生端浏览器的音视频通讯时,针对在所述至少两个学生用户中的各个非目标学生用户,采用编辑距离算法计算得到对应的第一字符串与所述目标学生用户的第一字符串的编辑距离,并在该编辑距离小于等于预设的第二编辑距离阈值时,通过所述中间件将在所述音视频通讯的进行过程中产生的交互内容分享传送至对应的学习端浏览器。如此还可向可能存在相似实训问题的其它非目标学生共享教师与目标学生的交互内容,以便这些非目标学生能够及时自行纠正实训问题,避免进度倒退现象恶化。
综上,采用本实施例所提供的基于B/S架构的教学实训管理系统,具有如下技术效果:
(1)本实施例提供了一种可帮助老师对学生实训情况进行实时在线监控的编程教育新平台方案,即包括有学生端浏览器、教师端浏览器、服务器和中间件,并通过它们的协作,可以同步记录学生在编程教学实训过程中所编辑的所有行代码,并基于编辑距离算法计算得到用于负相关地反映学生编程教学实训进度的当前编辑距离,最后在认定学生实训进度出现了明显倒退现象时,会通过在教师端浏览器上输出展示实训项目具体内容以及所述所有行代码的方式,使教师可以及时发现该学生在编程教学实训过程中所存在的问题,并通过后续建立的音视频通讯和进行的一对一地远程指导予以解决纠正,如此可无需老师时刻关注学生在编程教学实训过程中所编辑的代码内容,进而可降低在线老师的工作量或扩展在线老师的有效教学半径,缓解教师资源紧缺问题,便于实际应用和推广;
(2)还可在未认定学生/目标学生实训进度出现明显倒退现象的情况下,实现主动/被动地请求协助进行一对一远程指导的目的,进一步提升实用性;
(3)还可在教师的有效教学半径为至少两个学生时,从这些学生中优选出具有最大倒退现象的目标学生进行实训情况查看,以便教师可以及时发现该目标学生在编程教学实训过程中所存在的问题,并通过后续建立的音视频通讯和进行的一对一地远程指导予以解决纠正,确保教学实训辅助的公平性;
(4)还可在未认定目标学生实训进度出现明显倒退现象的情况下,实现教师监控各个学生的编程教学实训进度并调阅查看指定学生的实训情况的目的,进一步提升实用性;
(5)还可向可能存在相似实训问题的其它非目标学生共享教师与目标学生的交互内容,以便这些非目标学生能够及时自行纠正实训问题,避免进度倒退现象恶化。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种基于B/S架构的教学实训管理系统,其特征在于,包括有学生端浏览器、教师端浏览器、服务器和中间件,其中,所述服务器通过所述中间件分别通信连接所述学生端浏览器和所述教师端浏览器;
所述学生端浏览器,用于面向学生用户提供人机交互界面,并在进行某项编程教学实训项目的过程中,每当所述学生用户完成一行编程教学实训代码的初次编辑/再次修改时,生成一个携带有该行编程教学实训代码的编程教学实训同步请求,并通过所述中间件将所述编程教学实训同步请求上传至所述服务器;
所述服务器,用于将在所述编程教学实训同步请求中携带的单行编程教学实训代码同步记录到与所述学生用户及所述某项编程教学实训项目对应的教学实训代码集合中,然后将在所述教学实训代码集合中的所有元素依次拼接成第一字符串,以及将在与所述某项编程教学实训项目对应的参考答案中所有行的编程教学参考代码依次拼接成第二字符串,再然后采用编辑距离算法计算得到所述第一字符串与所述第二字符串的当前编辑距离,再然后判断所述当前编辑距离与所述学生用户在本次编程教学实训过程中的历史最低编辑距离的差值是否大于等于预设的第一编辑距离阈值,若是,则通过所述中间件将所述某项编程教学实训项目的具体内容和所述教学实训代码集合推送至所述教师端浏览器;
所述教师端浏览器,用于面向教师用户提供人机交互界面,并输出展示所述某项编程教学实训项目的具体内容和所述教学实训代码集合,以及在所述教师用户决定对所述学生用户进行编程教学实训纠正时,通过所述中间件及所述服务器建立与所述学生端浏览器的音视频通讯,以便对所述学生用户进行一对一地远程指导;
当在服务器侧记录有与至少两个学生用户一一对应的至少两个教学实训代码集合时,判断所述当前编辑距离与所述学生用户在本次编程教学实训过程中的历史最低编辑距离的差值是否大于等于预设的第一编辑距离阈值,若是,则通过所述中间件将所述某项编程教学实训项目的具体内容和所述教学实训代码集合推送至所述教师端浏览器,包括:在所述教师端浏览器结束展示当前的且在所述至少两个学生用户中的第一学生用户的教学实训代码集合时,针对在所述至少两个学生用户中的各个其它学生用户,计算对应的所述当前编辑距离与对应学生用户在本次编程教学实训过程中的历史最低编辑距离的差值,得到对应的编辑距离差值;从所述至少两个学生用户中选取出具有最大编辑距离差值的且不为所述第一学生用户的第二学生用户作为目标学生用户;判断所述目标学生用户的编辑距离差值是否大于等于预设的第一编辑距离阈值,若是,则通过所述中间件将所述某项编程教学实训项目的具体内容和所述目标学生用户的教学实训代码集合推送至所述教师端浏览器;
所述服务器,还用于在建立所述教师端浏览器与目标学生用户的学生端浏览器的音视频通讯时,针对在所述至少两个学生用户中的各个非目标学生用户,采用编辑距离算法计算得到对应的第一字符串与所述目标学生用户的第一字符串的编辑距离,并在该编辑距离小于等于预设的第二编辑距离阈值时,通过所述中间件将在所述音视频通讯的进行过程中产生的交互内容分享传送至对应的学习端浏览器。
2.如权利要求1所述的教学实训管理系统,其特征在于,所述学生端浏览器,还用于在进行所述某项编程教学实训项目的过程中,每当所述学生用户触发生成一个主动在线求助请求时,通过所述中间件将所述主动在线求助请求上传至所述服务器;
所述服务器,还用于在判定所述差值小于所述第一编辑距离阈值时,将所述主动在线求助请求、所述某项编程教学实训项目的具体内容和所述教学实训代码集合推送至所述教师端浏览器;
所述教师端浏览器,还用于输出展示所述主动在线求助请求、所述某项编程教学实训项目的具体内容和所述教学实训代码集合,并在所述教师用户决定响应所述主动在线求助请求时,通过所述中间件及所述服务器建立与所述学生端浏览器的音视频通讯,以便对所述学生用户进行一对一地远程指导。
3.如权利要求1所述的教学实训管理系统,其特征在于,所述学生端浏览器,还用于在进行所述某项编程教学实训项目的过程中,每当所述学生用户超时未进行编程教学实训代码的编辑操作时,生成一个被动在线求助请求,并通过所述中间件将所述被动在线求助请求上传至所述服务器;
所述服务器,还用于在判定所述差值小于所述第一编辑距离阈值时,将所述被动在线求助请求、所述某项编程教学实训项目的具体内容和所述教学实训代码集合推送至所述教师端浏览器;
所述教师端浏览器,还用于输出展示所述被动在线求助请求、所述某项编程教学实训项目的具体内容和所述教学实训代码集合,并在所述教师用户决定响应所述被动在线求助请求时,通过所述中间件及所述服务器建立与所述学生端浏览器的音视频通讯,以便对所述学生用户进行一对一地远程指导。
4.如权利要求1所述的教学实训管理系统,其特征在于,当所述某项编程教学实训项目为基于C语言或Java语言的编程教学实训项目时,每当所述学生用户完成一行编程教学实训代码的初次编辑时,生成一个携带有该行编程教学实训代码的编程教学实训同步请求,包括:当在某行编程教学实训代码中输入分号时,判定所述学生用户完成对所述某行编程教学实训代码的初次编辑,并生成一个携带有所述某行编程教学实训代码的编程教学实训同步请求;
或者,当所述某项编程教学实训项目为基于Python语言的编程教学实训项目时,每当所述学生用户完成一行编程教学实训代码的初次编辑时,生成一个携带有该行编程教学实训代码的编程教学实训同步请求,包括:当在某行编程教学实训代码中输入分号或基于某行编程教学实训代码换行时,判定所述学生用户完成对所述某行编程教学实训代码的初次编辑,并生成一个携带有所述某行编程教学实训代码的编程教学实训同步请求。
5.如权利要求1所述的教学实训管理系统,其特征在于,当所述某项编程教学实训项目对应有至少两个参考答案时,将在与所述某项编程教学实训项目对应的参考答案代码集合中所有行的编程教学参考代码依次拼接成第二字符串,再然后采用编辑距离算法计算得到所述第一字符串与所述第二字符串的当前编辑距离,包括:
针对在所述至少两个参考答案中的各个参考答案,对在对应答案中所有行的编程教学参考代码进行依次拼接,得到对应的第二字符串;
针对所述各个参考答案,采用编辑距离算法计算得到所述第一字符串与对应的所述第二字符串的编辑距离;
将计算所得的最小编辑距离作为所述第一字符串与所有所述第二字符串的当前编辑距离。
6.如权利要求1所述的教学实训管理系统,其特征在于,所述服务器,还用于在通过所述中间件将所述某项编程教学实训项目的具体内容和所述目标学生用户的教学实训代码集合推送至所述教师端浏览器时,同步地通过所述中间件将在所述至少两个学生用户中的各个学生用户的当前编辑距离推送至所述教师端浏览器;
所述教师端浏览器,还用于在输出展示所述某项编程教学实训项目的具体内容和所述目标学生用户的教学实训代码集合时,同步地输出展示所述各个学生用户的当前编辑距离,以便所述教师用户感知所述各个学生用户的编程教学实训进度。
7.如权利要求1所述的教学实训管理系统,其特征在于,所述服务器,还用于在判定所述目标学生用户的编辑距离差值未大于等于所述第一编辑距离阈值时,通过所述中间件将所述某项编程教学实训项目的具体内容和在所述至少两个学生用户中的各个学生用户的当前编辑距离推送至所述教师端浏览器;
所述教师端浏览器,还用于输出展示所述某项编程教学实训项目的具体内容和所述各个学生用户的当前编辑距离,以便所述教师用户感知所述各个学生用户的编程教学实训进度,并在基于所述教师用户的人机交互操作生成携带有学生用户指定信息的编程教学实训调阅请求时,通过所述中间件将所述编程教学实训调阅请求上传至所述服务器;
所述服务器,还用于根据在所述编程教学实训调阅请求中携带的学生用户指定信息,确定在所述至少两个学生用户中的指定学生用户,并通过所述中间件将所述指定学生用户的教学实训代码集合实时推送至所述教师端浏览器;
所述教师端浏览器,还用于实时输出展示所述指定学生用户的教学实训代码集合,以便所述教师用户实时感知所述指定学生用户的编程教学实训情况。
8.如权利要求1所述的教学实训管理系统,其特征在于,所述服务器,还用于在判定所述目标学生用户的编辑距离差值未大于等于所述第一编辑距离阈值时,将收到的主动在线求助请求或被动在线求助请求、所述某项编程教学实训项目的具体内容和请求发起学生用户的所述教学实训代码集合推送至所述教师端浏览器。
CN202310274465.5A 2023-03-20 2023-03-20 一种基于b/s架构的教学实训管理系统 Active CN116468577B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310274465.5A CN116468577B (zh) 2023-03-20 2023-03-20 一种基于b/s架构的教学实训管理系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310274465.5A CN116468577B (zh) 2023-03-20 2023-03-20 一种基于b/s架构的教学实训管理系统

Publications (2)

Publication Number Publication Date
CN116468577A CN116468577A (zh) 2023-07-21
CN116468577B true CN116468577B (zh) 2024-03-08

Family

ID=87181540

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310274465.5A Active CN116468577B (zh) 2023-03-20 2023-03-20 一种基于b/s架构的教学实训管理系统

Country Status (1)

Country Link
CN (1) CN116468577B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112132420A (zh) * 2020-09-04 2020-12-25 广西大学 一种面向sql查询的细化评分方法
CN112270631A (zh) * 2020-11-04 2021-01-26 常州信息职业技术学院 一种课堂行为大数据分析系统及方法
CN114217903A (zh) * 2021-11-23 2022-03-22 王鹏 一种Python在线交互式编程方法及平台
CN114611494A (zh) * 2022-03-17 2022-06-10 平安科技(深圳)有限公司 文本纠错方法、装置、设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112132420A (zh) * 2020-09-04 2020-12-25 广西大学 一种面向sql查询的细化评分方法
CN112270631A (zh) * 2020-11-04 2021-01-26 常州信息职业技术学院 一种课堂行为大数据分析系统及方法
CN114217903A (zh) * 2021-11-23 2022-03-22 王鹏 一种Python在线交互式编程方法及平台
CN114611494A (zh) * 2022-03-17 2022-06-10 平安科技(深圳)有限公司 文本纠错方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN116468577A (zh) 2023-07-21

Similar Documents

Publication Publication Date Title
Wise et al. Teaching with analytics: Towards a situated model of instructional decision-making
US8887046B2 (en) Whiteboard presentation of interactive and expandable modular content
Plonka et al. Knowledge transfer in pair programming: An in-depth analysis
Saabye et al. Developing a learning-to-learn capability: insights on conditions for Industry 4.0 adoption
CN109886848B (zh) 数据处理的方法、装置、介质和电子设备
US20160182627A1 (en) Application hibernation
CN102902720A (zh) 一种教学答疑方法
Hoppenbrouwers et al. A dialogue game for analysing group model building: framing collaborative modelling and its facilitation
CN110111611B (zh) 信息处理方法、装置、介质和电子设备
CN112596731B (zh) 一种融合智能教育的编程教学系统及方法
CN112131361B (zh) 一种答题内容推送方法及装置
KR20230144505A (ko) 딥러닝 모델 기반의 데이터 생성 방법, 트레이닝 방법 및 장치
Broos et al. Coordinating learning analytics policymaking and implementation at scale
Zhu et al. [Retracted] Computer Simulation of Ideological and Political Teaching under Big Data of Complexity
CN110910694A (zh) 一种智能客服培训系统
Monasor et al. Cultural and linguistic problems in GSD: a simulator to train engineers in these issues
CN117786091B (zh) 基于苏格拉底式提问的自启发智能问答实现方法及系统
El Guabassi et al. Personalized ubiquitous learning via an adaptive engine
Morell et al. A multimodal analysis of pair work engagement episodes: Implications for EMI lecturer training
CN116468577B (zh) 一种基于b/s架构的教学实训管理系统
US20190026647A1 (en) Authoring System for Subject Matter Experts (SMEs) to Develop a Computer-Based Question and Answer (QA) system for their Instructional Materials
KR102069093B1 (ko) 피지컬 소프트웨어 코딩교육장치
CN114841157A (zh) 基于数据分析的线上互动方法、系统、设备及存储介质
Chiranjeevi et al. Evaluating the satisfaction index using automated interaction service and customer knowledgebase: a big data approach to CRM
CN115080809A (zh) 组件连接式可视化对话编辑管理系统、方法、装置、处理器及其计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant