Keywords

1 Introduction

The experimental teaching platform based on the mobile Internet can usually effectively use computer technology and electronic resources to provide students with an open and interactive experimental environment [1]. A quality platform can assist teachers to share experimental materials, manage experimental progress and correct experimental assignments, and promote the development of online and offline mixed experimental teaching activities [2, 3]. The process of computer experiment teaching commonly involves a wealth of course practice content [1]. However, due to the limitations of traditional teaching methods, the course usually focuses on theoretical basic verification experiments in the experimental part, and rarely involves the expansion of practical application problems. The online experimental teaching platform has the advantages of functional diversity, high efficiency and safety, so it has been widely used in the teaching practice by many colleges and universities [4, 5]. However, the existing experimental teaching platforms still have some deficiencies in terms of flexibility, ease of use, accessibility, controllability and user-friendliness [6, 7], such as: (1) existing course-related open source software platforms do not support personalized experimental projects, complicate installation process and deployment, and poor scalability and flexibility. (2) Some fee-based experimental platforms have high procurement costs. Due to their copyright restrictions, many advanced functions need to be paid for use, which is difficult to meet the real needs of experimental teaching in this course. (3) Many existing online experiment platforms focus on the development of basic functions and lack effective teaching big data analysis, which leads to the inability to effectively mine students’ course learning and experiment-related data. At the same time, the experimental question bank provided by the existing platform is mainly some simple verification experiments, which cannot support the cultivation of students’ ability to solve complex problems.

Therefore, in order to meet the needs of online teaching of computer-related experimental courses, we integrated existing software and hardware resources, designed and implemented our own BERTDS, a lightweight and scalable online experimental teaching service platform to intelligently assist teachers and students in carrying out rich experimental teaching activities. Compared with the existing experimental teaching system, the BERTDS system has the following innovations:

  • Lightweight and extensible: The BERTDS system is customized for computer experiments. It adopts modular development mode and microservice architecture for flexible software deployment. It has the characteristics of low coupling, light weight and extensibility, provides flexible and personalized experimental services for teachers and students, and supports external network and campus network access to ensure the security and stability of the system.

  • Cloud storage and community exchange and sharing mechanism. The cloud storage module of the BERTDS system provides teachers and students with convenient multimedia resource storage and sharing functions. The community communication module adopts a rich text editor, Multi-function Text Editor (MTE), which can maximize the presentation of teachers and students’ thinking, and provide convenience in conducting online experiment exchanges.

  • Automated assessment and intelligent data analysis. Based on the BERT self-assessment framework, the BERTDS platform provides an open assessment interface to assist teachers in scoring more professional programming and subjective questions more accurately and professionally. The intelligent data analysis module can record various data in the experiment, excavate and intelligently evaluate the problems existing in experimental teaching, and provide teaching big data support for curriculum reform.

2 Requirement Analysis of BERTDS

The BERTDS aims to help teachers organize the whole process of experimental teaching and improve the communication and interaction between teachers and students. Although there are many existing online experimental platforms, in order to better meet our actual teaching needs and provide more flexible teaching auxiliary functions, we decided to integrate existing software and hardware resources to develop our own intelligent experimental teaching auxiliary system. Through preliminary research and analysis, it is found that “online teaching, online experiment, automatic evaluation, online examination, performance analysis, similarity detection, cloud storage sharing and online Q&A” are the most urgent development tasks. Therefore, the following features have been selected to be developed:

  • Cloud storage and management of experimental data: Building a cloud storage module can provide teachers and students with personal network disk space for storing and managing multimedia experimental resources.

  • Excellent homework sharing management: It can assist teachers in selecting excellent homework, and then provide students with services for submitting and sharing multimedia resources such as videos and PPT. The quality reports can be made publicly available as experimental reference templates for other students.

  • Automated assessment and performance analysis management: The existing experimental assessment form requires teachers to spend a lot of time in organizing the test papers, collecting and correcting the experimental report submitted by each student. In addition, post-test scoring and performance analysis are difficult. Therefore, it is necessary to introduce related technologies of artificial intelligence to assist teachers in experimental evaluation and performance analysis.

  • In addition, the most important requirement is the management of students and courses by teachers, because the organization of experimental teaching, the release of course resources, teaching Q&A and online experiments are the basic modules of the platform.

3 Design and Implementation of BERTDS

3.1 BERTDS Architecture

Based on the previous demand analysis, our BERTDS system adopts a modular design mode to ensure the scalability of the system. The platform is designed and implemented using the classic MVC framework. This design enables the BERTDS system to insert new data entities into the database according to new requirements, and add the codes of their respective functional modules, which is highly scalable. Figure 1 is a simple schematic diagram of the BERTDS system architecture. The platform centrally deploys the core functional modules of the system on the server, and users can access the course resources on the experimental platform only through a Web browser.

Fig. 1.
figure 1

The Architecture diagram of the BERTDS system

3.2 BERTDS Development Technology

The platform development and implementation technology are shown in Fig. 2, with C# as the core language and Vistual Studio Code as the development tool; the front-end implemented by HTML + Sass + Vue and the VFluentDesign component library independently developed by the team; the back-end implemented based on the Dotnet Core framework, and the database Adopt MSSQL. The Online Judge uses Node.js with Redis and MySQL as data storage, and encapsulates it into a Docker container microservice to provide an evaluation interface. The online assessment algorithm is implemented based on the self-reported assessment framework of the BERT model, and the similarity detection algorithm is implemented based on the open source JPlag framework.

3.3 Experiment Resource Management and Sharing

The BERTDS system has built a cloud storage space to allocate personal network disks for teachers and students, which is convenient for teachers and students to store and manage experimental resources, and promote cooperation and exchanges between students through the sharing of multimedia teaching resources. The community communication module deepens students’ understanding of the experimental content through online discussion of experimental knowledge points, thereby improving students’ enthusiasm for learning and participation. Teachers can also more clearly understand the learning progress of different students, adjust the course progress in real time, and carry out personalized experimental teaching. At the same time, the resource sharing of students across different classes, especially the excellent homework report, can provide students with richer experimental ideas and expand the depth and breadth of the experiment. As shown in Fig. 3, some learning resources shared by excellent homework are listed. The platform takes students as the main body, promotes the development of online experimental teaching through network collaboration, and effectively solves the problems of single form of traditional computer-based experimental teaching, insufficient interaction between teachers and students, and unreasonable evaluation methods. Given the advantages of laboratory open conditions and network resources, experimental teaching will not be limited by time and space [8, 9].

Fig. 2.
figure 2

BERTDS system development technology implementation

4 BERTDS Automatic Evaluation Module

The traditional computer experimental teaching assistant platform has problems such as low experimental evaluation efficiency and difficulty in collecting and analyzing experimental data. In order to solve these problems, we propose the development of an automatic evaluation module based on the BERT self-viewing roll framework.

Fig. 3.
figure 3

List the learning resources of some excellent assignments shared by students

4.1 Automatic Evaluation Process

In the automatic evaluation process, the submitted experiment code and written report will be stored in the system database after students complete the experiment, and each evaluation record contains an ID identifier. The system automatically transmits the code to be evaluated and other experimental reports to the evaluation engine database on a regular basis, and the evaluation engine adds the code in the database to the Redis queue. The evaluation machine will obtain experimental codes in batches from the queue and compile them. If the compilation is wrong, it will save the error message to the database and return the compilation error message. If the compilation is passed, it will automatically run the program, check the execution time and memory of the program, and judge the execution result of the program. The evaluation program of the platform supports a variety of programming languages. When compiling, different compilers will be selected according to different programming languages, such as Python, Java, etc., which can be compiled into binary files and then interpreted and executed. After the automatic evaluation, if the answer is wrong or there are some errors, students can improve the experimental ideas and optimize the experimental code according to the error message returned by the system.

For the experimental report of subjective questions, the automatic evaluation module can perform automatic evaluation based on the weakly supervised learning strategy. As shown in Fig. 4, it uses text summarization technology and grammatical analysis to extract abstracts and evaluate the grammatical quality of subjective questions to assist teachers in scoring.

Fig. 4.
figure 4

Automatic evaluation of subjective questions based on weakly supervised learning strategy

4.2 BERT Evaluation Framework

The BERT evaluation framework is based on the sentence vector text similarity calculation model proposed by BERT and adopts a data enhancement algorithm based on a weakly supervised learning strategy. BERT is a language understanding model proposed by Google in 2018. It is a substitute for Word2Vec, which greatly improves the accuracy of experiments in the field of NLP [10]. The BERT model uses Transformer as the main framework of the algorithm [11], which can more thoroughly capture the bidirectional relationship in sentences. The algorithm uses the multi-task training objective of Mask Language Model (MLM) [6, 8] and Next Sentence Prediction (NSP) [8]. It essentially learns a good feature representation for words by running a self-supervised learning method on a massive corpus. Its network architecture uses a multi-layer transformer structure, which is formed by stacking several encoders and decoders, and converts the distance between two words at any position through the attention mechanism [12, 13].

In the realization of the subjective question scoring task, the model structure is shown in Fig. 5. The evaluation framework enables the model to have a strong scoring ability when facing new short-answer questions without relying on the data of student responses and teacher ratings.

Fig. 5.
figure 5

Structure of BERT-based automatic evaluation model

The scoring of subjective questions is based on the calculation of text similarity. By calculating the text similarity between the student's answer and the reference answer, the scoring is carried out. The input of the model is the splicing of the student's answer and the reference answer. For better parallel computing, the lengths of student answers and reference answers will be padded to a fixed length L. Among them, the [CLS] mark is added to the head of the student's answer and the reference answer, and the [SEP] mark is added to the tail. [CLS] indicates that the feature is used for classification models, and for non-classification models, [CLS] conformance can be omitted. [SEP] represents a clause, which is used to disconnect two sentences in the input corpus. In the output layer of the model, the output features are divided again according to the length L, so as to obtain the features of the student's answer and the feature of the reference answer respectively. O_1 and O_2 are obtained by performing an average pooling operation on the two features, and then the cosine similarity is used to calculate the similarity of O_1 and O_2, resulting in a score ranging from 0 to 1. Finally, the score is scaled according to the total score corresponding to the original question to get the final score.

The framework has been integrated into the evaluation kernel for algorithm design problems. In this module, text summarization technology and grammatical analysis are used to extract abstracts and grammatical quality of subjective questions, and assist teachers in scoring subjective questions. Provide an open evaluation interface to meet the needs of more accurate and professional scoring of highly professional topics. The automatic evaluation module can also save experimental evaluation results, and use these evaluation data to provide effective big data support for curriculum teaching reform.

4.3 Evaluation Server Deployment

In order to solve the problems of system crash and service suspension caused by instantaneous high concurrent access, a distributed cluster environment is used for deployment in the design process of the evaluation module to meet the stability and efficiency of the automatic evaluation module [14,15,16,17]. As shown in Fig. 6, DB-server is deployed for database interaction, which is responsible for obtaining evaluation tasks from the database and writing the results back to the database at the end of the evaluation. Next, NOJ-server evaluation servers are deployed. The evaluation machine only communicates with the DB-server. After the evaluation is completed, the results are returned to the DB-server, and then the DB-server writes the results to the database. The DB-server server is used to coordinate each evaluation machine OJ-server, thereby reducing the operation of the database, thereby effectively improving the speed and security of the system evaluation.

Fig. 6.
figure 6

Distributed evaluation server cluster

5 Evaluation

The BERTDS system has been applied in several courses, and the results have proved its effectiveness and practicality. The use of the platform can also help the research group to collect relevant data of the experimental process, and analyze and feedback to evaluate its advantages. Here we show the application of the BERTDS system in the “Algorithm and Data Structure Practice” course.

The “Algorithm and Data Structure Practice” course is a basic course for computer students. Through the study of this course, students can improve their algorithm design and analysis ability, hands-on practice ability and ability to solve complex engineering problems. The platform supports cross-platform services, and users can conduct experiments by accessing: http://ds.fzu.edu.cn/ through the Web.

Case 1: Application of cloud storage sharing and community communication module

The BERTDS system supports both the multimedia experiment resources uploaded by teachers and the sharing of other course resources provided by students, as shown in Fig. 7. In the “Algorithm and Data Structure Practice” course, teachers can present various experiments-related videos and lesson plans to students through the cloud storage sharing module, helping students master some difficult knowledge points. The multimedia resources uploaded by teachers include micro-classroom videos or other reference materials for students to preview and review after class, which expands the depth and breadth of the experimental content. After teach evaluate and select excellent homeworks, the selected students can upload their own multimedia presentation materials on the personal network disk to show their experimental ideas. Other students can learn and like them, which can help students share and exchange novel experimental solutions.

Fig. 7.
figure 7

Cloud storage sharing module of BERTDS system

At the same time, as shown in Fig. 8, teachers and students can interact online through the community communication module. Students can also initiate some experiment-related topics on the platform, and teachers and students can reply to these questions. Students can even solve problems they encounter with other students through this module. It is beneficial for students who are interested in experiments to expand their practice and stimulate their enthusiasm for learning and subjective initiative.

Case 2: Application of automatic evaluation and data analysis module

The automatic evaluation module of the BERTDS system provides a systematic solution for experimental exams, which has been fully integrated into the entire teaching process of the “Algorithms and Data Structures Practice” course, and is used in several of our courses to organize all exams, including course quizzes, mid-term exams and final exams. With the automatic evaluation module, teachers can flexibly organize exams, design exam questions, and evaluate them. Teachers can put the designed questions into the question bank at any time, and then select the required questions to form the test. The list of students taking the test and the test time can be set in advance. As shown in Fig. 9, after the test being completed, the automatic evaluation module of the BERTDS system can automatically transmit the code to be evaluated to the evaluation engine database on a regular basis, and the evaluation machine will obtain the experimental results in batches from the queue, conduct evaluation, and return the score.

Fig. 8.
figure 8

BERTDS Community Communication Module

Fig. 9.
figure 9

The automatic evaluation module of the BERTDS system

Since the BERTDS system does not rely on Internet connection to operate, it can be deployed in a dedicated local area network. Students can conduct experiments on the campus network or computer room local area network during the test, which can reduce the interference of external networks and ensure the security of the system and test data. Figure 10 shows the real scene of students conducting final experimental evaluation through the BERTDS system. This test is arranged in the laboratory computer room, and candidates only need to log in to the platform through the computer room computer to take the test.

Fig. 10.
figure 10

Students conducting final experimental evaluation through the BERTDS system

In addition, teachers can also conduct statistical analysis of teaching situations through the data analysis module, and the BERTDS system will automatically record and count the students’ online experiments, such as study time, number of experiments, number of evaluations, and experimental results. By choosing the data analysis plan, teachers can grasp the students’ learning dynamics in time, adjust the progress of the experiment, and provide data support for the reform of the curriculum.

The auxiliary effect of BERTDS experimental teaching

The BERTDS system not only can help teachers can better organize all experimental resources and the entire teaching process, but also can improve students’ practice experience. Figure 11 is an analysis of the experimental results of some students taking this course. Since the platform was developed and launched in 2005 and upgraded in 2018, it has served nearly 10,000 teachers and students in the school (including nearly 2,600 service users during the epidemic since 2020), meeting the actual needs of experimental course teaching. The platform is used by undergraduates and postgraduates, involving students majoring in computer, software engineering, big data and artificial intelligence. The accumulated page views were 30,462 times, and 348 experimental tasks were released.

Fig. 11.
figure 11

Analysis of the experimental scores of some students in this course

On average, each person downloaded course resources 6.65 times a week, and the assignment submission rate reached 96.9%. The online experiment duration survey of more than 300 students who have used the platform is shown in Table 1. The average online experiment time per person is 3.86 h per week. It can be seen from the above data that students are highly motivated and motivated to learn independently through the BERTDS system.

Table 1. Questionnaire results of 300 students using the BERTDS system

We also collect feedback from students who have used the BERTDS system. Most of the students expressed their approval of the module design and functional application of our platform, and considered the platform to be very helpful to their course practice. Table 2 shows the result of a satisfaction survey of 300 students who have used the platform. Among them, 66% of the students expressed “very satisfied”, 25.3% of the students expressed “satisfied”, and 6.7% of the students expressed “somewhat satisfied”.

Table 2. Survey on Experimental Teaching Satisfaction of BERTDS System

From 2005 to 2022, the platform was gradually refined and adopted in several of our lab courses. We have enhanced existing modules such as resource sharing, online experiments and teaching activity management, and introduced new functional components (such as automatic assessment and similarity detection modules) to meet the needs of teachers. These improvements are not only beneficial to teachers' interactive teaching process, but also to students' autonomous learning, and significantly improve students' practical ability. According to the survey, the three most popular functions of the BERTDS system are: cloud storage module, community exchange center and automatic assessment module. In terms of functional design, experimental project planning and teaching management, the platform focuses on improving students’ practical ability and ability to solve complex engineering problems. The big data analysis module of the platform can also provide strong data feedback support for the comprehensive process evaluation of the course and course teaching reform, which can promote the improvement of teaching methods and help to realize the personalized teaching of “teaching according to aptitude”.

6 Conclusion

The BERTDS practical teaching assistant platform proposed in this paper can well meet the needs of practical teaching of computer-related courses. The platform takes the characteristics of computer-related majors into consideration, and focuses on the needs of talent training, and develops a system of “supporting extracurricular exploration with rich expansion materials, strengthening practical training with automated homework evaluation, and ensuring fairness and justice with comprehensive anti-plagiarism checks". It provides practical teaching network support. Due to the modular design and microservice architecture, the platform can adapt to different needs through different functional configurations, and be deployed in different hardware or network environments at the same time. The platform can effectively solve the problems of poor scalability of traditional experimental platforms, difficult experimental code evaluation and lack of intelligent experimental data analysis. In terms of technical implementation, the automatic evaluation of subjective questions is realized based on the sentence vector text similarity calculation model proposed by BERT; at the same time, a data enhancement algorithm based on a weakly supervised learning strategy is adopted to achieve strong scoring ability and support cross-platform, and language diversity. The platform is rich in functions and novel in design, which can effectively solve the problems of “difficult teaching, difficult interaction and difficult evaluation” in computer experiment courses. The practical application proves that the platform can effectively assist teachers to carry out intelligent experimental teaching and help students carry out personalized online experiments.