A distributed online examination management method, system, and storage medium
By forming groups on the candidates' side and assigning calculation tasks, the problem of excessive load on the examination room server is solved, load balancing on the candidates' side and load reduction on the examination room server are achieved, and the smooth operation of the system is improved.
Patent Information
- Application Number
- CN202311786919.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-22
- Publication Date
- 2025-03-07
- Estimated Expiration
- 2043-12-22
AI Technical Summary
In the prior art, when the examination room server handles a large number of computing tasks, business logic and network traffic, the load is too heavy and it is difficult to meet the concurrent processing requirements during peak hours, especially in university computer rooms with low hardware configuration.
采用分布式线上考试管理方法,通过考场服务端获取考生端信息,确定组网列表,并向考生端发送组网命令,形成多个考生端小组,每个小组由组长终端与考场服务端建立连接,组员终端的答案信息通过组长终端提交至考场服务端。
By assigning some calculation tasks to the candidates, the workload of the examination room server is reduced, computing tasks are simplified, and low-profile computers can also run smoothly, improving the system's load management capabilities and operation fluency.
Smart Images

Figure CN117787897B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer examinations, and in particular to a distributed online examination management method, system and storage medium. Background Art
[0002] With the development of educational informatization, examination systems have been widely used in colleges and universities. In existing technical solutions, the B / S (browser / server) mode is usually adopted, that is, the examination system is deployed on the teacher's computer, and the student computer completes the examination through the browser. In this mode, the teacher's computer needs to bear a large number of computing tasks, handle heavy business logic and network traffic, especially during the peak hours of user login, test question extraction and test paper submission, the requirements for concurrent processing are extremely high. Relatively speaking, the computing resources of the student computer are largely idle. When using the teacher's computer and the student computer to configure the examination room, since the teacher's computer needs to act as the examination room server and the student computer acts as the examinee's end, the teacher's computer requires a high-configuration server.
[0003] However, the configurations of teachers' computers and students' computers in many universities are the same, and teachers' computers are not equipped with higher-performance hardware, especially those computer rooms with older facilities, whose hardware configurations can no longer meet the needs. It can be seen that the existing examination room server may not be able to carry a large number of computing tasks and cannot handle heavy business logic and network traffic.
[0004] Therefore, the prior art has defects and needs to be improved and developed. Summary of the invention
[0005] The present application provides a distributed online examination management method, system and storage medium to solve the technical problem in related technologies that the examination room server may not be able to carry a large number of computing tasks and cannot handle heavy business logic and network traffic.
[0006] To achieve the above objectives, this application adopts the following technical solutions:
[0007] A distributed online examination management method is applied to a distributed online examination management system, the system comprising: an examination room service end and a plurality of examinee ends in the same local area network, the method comprising:
[0008] The examination room service end obtains the candidate terminal information corresponding to each candidate terminal, and determines the networking list according to each candidate terminal information;
[0009] The examination room service end sends a networking command to each of the examinee terminals according to the networking list, and each examinee terminal performs self-networking according to the networking command to form a plurality of examinee terminal groups, wherein the group members in each examinee terminal group include a group leader terminal and a plurality of group member terminals;
[0010] Each group leader terminal establishes a connection with the examination room server, and the answer information of each group member terminal is submitted to the examination room server via the corresponding group leader terminal.
[0011] In one implementation, before the examination room service end obtains the examinee terminal information corresponding to each examinee terminal and determines the networking list according to each examinee terminal information, it also includes:
[0012] The examination room server obtains the pre-built examination room server application file and database file, wherein the database file includes: the examination name, the student list information, the class, the examination question set and the decryption password of the examination paper file;
[0013] Each examinee terminal obtains the pre-built examinee terminal application file and test paper file, and the test paper file includes: test name, student list information, class and test question list; the test paper file is an encrypted file.
[0014] In one implementation, before the examination room service end obtains the examinee terminal information corresponding to each examinee terminal and determines the networking list according to each examinee terminal information, it also includes:
[0015] The examination room server broadcasts a heartbeat signal through the UDP protocol, and the heartbeat signal includes the decryption password of the examination paper file;
[0016] After receiving the heartbeat signal, each examinee terminal reads the test paper file according to the decryption password in the heartbeat signal;
[0017] The examinee receives the input instruction, obtains the student's personal information, and randomly selects questions from the question list according to the predetermined question selection rules to obtain the selected question ID.
[0018] In one implementation, the examination room service end obtains the examinee terminal information corresponding to each examinee terminal, and determines a networking list according to each examinee terminal information, including:
[0019] The examination room server selects a network segment and sends a registration invitation;
[0020] After receiving the registration invitation, each candidate terminal establishes a TCP connection with the examination room server and sends the corresponding candidate terminal information to the examination room server. The candidate terminal information includes the student number, the ID of the selected test question and the device IP address;
[0021] The examination room service end feeds back the registration success information to the corresponding examinee end according to the received examinee end information, and determines the networking list according to the examinee end information.
[0022] In one implementation, the examination room service end sends a networking command to each of the examinee terminals according to the networking list, and each examinee terminal performs self-networking according to the networking command to form a plurality of examinee terminal groups, each of which includes a leader terminal and a plurality of member terminals, including:
[0023] The examination room service end sends a networking command to each of the examinee terminals according to the networking list, wherein the networking command includes the device IP address of the group leader terminal, the device IP address of the group member terminal and the connection order;
[0024] According to the device IP address of the group leader terminal and the device IP address of the group member terminal, a candidate-side group is formed, and the group members in the candidate-side group are connected head to tail through the TCP protocol in the connection order.
[0025] In one implementation, each of the group leader terminals establishes a connection with the examination room server, and the answer information of each group member terminal is submitted to the examination room server via the corresponding group leader terminal, including:
[0026] Each group leader terminal establishes a connection with the examination room server;
[0027] The group members in each examinee terminal group transmit the answer information to the next group member terminal in the order of connection until it is transmitted to the group leader terminal;
[0028] The group leader terminal submits the answer information of all group members in the examinee-side group to the examination room service end, and the answer information includes: student number, test question ID, timestamp and answer content;
[0029] After the examination room server saves the answer information, it sends the confirmation information to the team leader terminal, and the team leader terminal sends the confirmation information to each team member terminal in sequence according to the connection order;
[0030] Each member terminal updates the submission mark of the corresponding question in the local test paper file according to the confirmation information.
[0031] In one implementation, the distributed online examination management method further includes:
[0032] According to the preset rotation rules, the group leader terminals in each candidate group are rotated regularly, and the new group leader terminal is connected to the examination room server;
[0033] If a group member is disconnected from the network, the candidate-side group whose group member is disconnected will be used as the target candidate-side group. The examination room service end will disband the target candidate-side group and re-establish the network.
[0034] In one implementation, the distributed online examination management method further includes:
[0035] After the examinee starts answering questions, the answers to the questions are written into the local test paper file according to the predetermined writing rules.
[0036] The present invention also provides a distributed online examination management system, comprising an examination room service end and a plurality of examinee ends in the same local area network;
[0037] The examination room service end is used to obtain the candidate terminal information corresponding to each candidate terminal, determine the networking list according to each candidate terminal information, and send a networking command to each candidate terminal according to the networking list;
[0038] The examinee terminal is used to self-organize the network according to the networking command to form multiple examinee terminal groups. The group members in each examinee terminal group include a group leader terminal and several group member terminals, and each group leader terminal establishes a connection with the examination room server, and the answer information of each group member terminal is submitted to the examination room server via the corresponding group leader terminal.
[0039] The present invention also provides a computer-readable storage medium, on which a distributed online examination management program is stored. When the distributed online examination management program is executed by a processor, the steps of the distributed online examination management method as described above are implemented.
[0040] Beneficial effects of the present invention: The embodiment of the present invention provides a distributed online examination management method, the method is applied to a distributed online examination management system, the system includes: an examination room service end and several examinee ends in the same local area network, the method includes: the examination room service end obtains the examinee end information corresponding to each examinee end, and determines the networking list according to each examinee end information; the examination room service end sends a networking command to each examinee end according to the networking list, and each examinee end performs self-networking according to the networking command to form multiple examinee end groups, and the group members in each examinee end group include a group leader terminal and several group member terminals; each group leader terminal establishes a connection with the examination room service end, and the answer information of each group member terminal is submitted to the examination room service end via the corresponding group leader terminal. The present invention reduces the workload of the examination room service end and simplifies the computing tasks by allocating part of the computing tasks to the examinee end, so that low-end computers can also run smoothly. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] Figure 1 It is a flow chart of a preferred embodiment of the distributed online examination management method in the present invention.
[0042] Figure 2 It is a schematic diagram of the overall system architecture of a preferred embodiment of the distributed online examination management method of the present invention.
[0043] Figure 3It is a communication mode diagram of a preferred embodiment of the distributed online examination management method of the present invention.
[0044] Figure 4 It is a schematic diagram of the overall system flow of a preferred embodiment of the distributed online examination management method of the present invention.
[0045] Figure 5 It is a schematic diagram of the examination process of a preferred embodiment of the distributed online examination management method of the present invention.
[0046] Figure 6 It is a schematic diagram of the networking process of a preferred embodiment of the distributed online examination management method in the present invention.
[0047] Figure 7 It is a functional principle block diagram of a preferred embodiment of the distributed online examination management system in the present invention. DETAILED DESCRIPTION
[0048] In order to make the purpose, technical solution and advantages of the present invention clearer and more specific, the present invention is further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.
[0049] The existing technical solutions still have the following problems:
[0050] Service deployment requires high professionalism. Typical online examination systems, such as those based on the Java platform, involve multiple technical steps such as virtual machine installation, middleware deployment, database construction, server configuration, and service startup. These complex tasks are beyond the capabilities of ordinary invigilators.
[0051] It is difficult to prevent cheating on student computers. For example, it is difficult to effectively prevent students from using USB flash drives, accessing the Internet, running communication software, and other potential cheating behaviors.
[0052] In order to solve the above defects, the present invention provides a distributed online examination management method, which is applied to a distributed online examination management system, the system includes: an examination room service end and several examinee ends in the same local area network, and the method includes: the examination room service end obtains the examinee end information corresponding to each examinee end, and determines the networking list according to each examinee end information; the examination room service end sends a networking command to each examinee end according to the networking list, and each examinee end performs self-networking according to the networking command to form multiple examinee end groups, and the group members in each examinee end group include a group leader terminal and several group member terminals; each group leader terminal establishes a connection with the examination room service end, and the answer information of each group member terminal is submitted to the examination room service end via the corresponding group leader terminal. The present invention reduces the workload of the examination room service end by allocating part of the computing tasks to the examinee end, simplifies the computing tasks, and enables low-end computers to run smoothly.
[0053] See also Figure 1 The distributed online examination management method described in the embodiment of the present invention comprises the following steps:
[0054] Step S100: The examination room service end obtains the candidate terminal information corresponding to each candidate terminal, and determines a networking list according to each candidate terminal information.
[0055] The present invention may include three independently operated subsystems, namely, a management end system, a test center service end system, and a test taker end system. Figure 2 As shown. The management system has the functions of test paper editing, test paper file generation, database file generation, answer import, automatic correction and score statistics. The examination room server system and the examinee system run as single-file applications, no installation is required, and they are ready to use out of the box. The examination room server and the examinee must be in the same local area network.
[0056] In the embodiment of the present application, before step S100, the following steps are further included:
[0057] Step S10: The examination room server obtains the pre-built examination room server application file and database file, wherein the database file includes: examination name, student list information, class, test question set and decryption password of the examination paper file;
[0058] Step S20, each examinee obtains the pre-built examinee application file and test paper file, the test paper file includes: test name, student list information, class and test question list; the test paper file is an encrypted file.
[0059] The examination room server-side application provided in the embodiment of the present application can directly read and write database files without the need to install a separate database service. In other words, the prior art requires professionals to pre-install and deploy the examination system, while the solution of the present invention can be used by ordinary invigilators right away. Specifically, the examination room server-side application files and the examinee-side application files do not need to be deployed, and are simple and easy to use. Once the application and data files are copied to the examination room server-side and the examinee-side, the examination can begin without the need for professionals.
[0060] In addition, the application running on the candidate's side can monitor Internet access, USB flash drive use, the operation of unauthorized applications and other behaviors. Once the above behaviors are detected on the candidate's side, a warning will be issued and the test will be suspended, thereby effectively preventing cheating.
[0061] In the embodiment of the present application, before step S100, the following steps are further included:
[0062] Step S30: the examination room server broadcasts a heartbeat signal through the UDP protocol, wherein the heartbeat signal includes a decryption password for the examination paper file;
[0063] Step S40: After receiving the heartbeat signal, each examinee terminal reads the test paper file according to the decryption password in the heartbeat signal;
[0064] Step S50: The examinee receives the input instruction, obtains the student's personal information, and randomly selects questions from the question list according to the predetermined question selection rules to obtain the selected question ID.
[0065] In one embodiment, the communication mode of the system is as follows Figure 3 As shown. The examination room server sends commands through UDP broadcast to control the entire examination process. The command format is: "HZYEXAM: / / " + command name (fixed 12 characters) + CRC check code (fixed 8 characters) + payload data (variable length). The calculation method of the CRC check code is: take "command name + payload data" as input, perform CRC32 calculation, and generate an 8-character check code. After receiving the command from the examination room server, the candidate performs a CRC check. If the check code does not match, the command is discarded to ensure the integrity and security of the command.
[0066] The embodiment of the present application adopts distributed computing load balancing to allocate part of the computing tasks to the examinee side, thereby reducing the workload of the examination room server. That is, the examination room server is no longer responsible for logging in, drawing questions, and issuing questions, which simplifies the computing tasks and allows low-configuration computers to run smoothly.
[0067] In the embodiment of the present application, the step S100 specifically includes:
[0068] Step S110: The examination room server selects a network segment and sends a registration invitation;
[0069] Step S120: After receiving the registration invitation, each candidate terminal establishes a TCP connection with the examination room server and sends corresponding candidate terminal information to the examination room server, wherein the candidate terminal information includes the student number, the ID of the selected test question and the device IP address;
[0070] Step S130: The examination room service end feeds back registration success information to the corresponding examinee end according to the received examinee end information, and determines the networking list according to the examinee end information.
[0071] Specifically, in order to effectively manage the network load, the invitation registration mode is adopted. The examination room server sets the number of concurrent users Num con and timeout t exp , sequentially select unregistered IP address segments to send registration invitations. For example, Num con =10, t exp For example, if the time is 3 seconds, the starting IP address is "192.168.0.1" and the ending address is "192.168.0.12" (there are 2 registered IP addresses in the middle), the command example is: "HZYEXAM: / / REGISTER----31DC55E33232235521-3232235532", where "3232235521" and "3232235532" are integer formats of IP addresses. exp If all candidates who are invited to register complete their registration or time out within the time limit, the next segment of address will be taken. This step is executed after the examination room server is started.
[0072] After the candidate establishes a TCP connection with the examination room server, the student number and the ID of the selected test question are sent to the examination room server. The examination room server checks whether the student has registered before based on the student number. If not, new registration information is added. If already registered, the registration information is updated. The registration information includes the student number and device IP address.
[0073] The examination room server replies with a successful registration message, which contains a list of test IDs. Specifically, the examination room server searches for the registration information of the student ID. If so, the ID list retrieved locally is used as the reply content. If not, the ID list sent by the examinee is directly used as the reply content.
[0074] Put the candidate's terminal information into the list to be networked, and determine whether the number of members in the list to be networked is sufficient for one group. If so, proceed to the next step, otherwise continue waiting.
[0075] The exam server sends a networking command. When all the group members are gathered, the exam server sends a networking command. The command contains a list of group members' IP addresses, with the first IP address being the group leader's terminal. For example, "HZYEXAM: / / GROUP-------FC6503863232235521|3232235522|3232235523|3232235524|3232235525".
[0076] In the embodiment of the present application, the examination room server controls the registration process, disperses processing requests, effectively manages the load during peak hours, and further improves the smoothness of the operation of the examination room server.
[0077] like Figure 1 As shown, the distributed online examination management method also includes the following steps:
[0078] Step S200, the examination room service end sends a networking command to each of the candidate terminals according to the networking list, and each candidate terminal self-networks according to the networking command to form multiple candidate terminal groups. The group members in each of the candidate terminal groups include a group leader terminal and several group member terminals.
[0079] In the embodiment of the present application, the step S200 specifically includes:
[0080] Step S210: the examination room service end sends a networking command to each of the examinee terminals according to the networking list, wherein the networking command includes the device IP address of the leader terminal, the device IP address of the member terminal, and the connection order;
[0081] Step S220: Based on the device IP address of the group leader terminal and the device IP address of the group member terminal, a candidate-side group is formed, and the group members in the candidate-side group are connected head to tail through the TCP protocol in the connection order.
[0082] Specifically, the examinee side self-organizes the network, and the examinee side that receives the network command connects to the next node according to the instruction. Specifically, the examinee side forms multiple groups, and the group members are connected end to end through the TCP protocol to form a chain structure. The examinee side at the end of the chain serves as the rotating group leader, and the examination room server is only connected to the rotating group leader. In this way, when submitting answers, the group members pass the answers to the next node in turn until the rotating group leader, who then submits them to the examination room server. After the examination room server saves the data, it transmits the confirmation information back to each node along the reverse path.
[0083] The number of members and groups is calculated as follows:
[0084] (1) Number of groups Among them, stuNum is the total number of students, The round-up symbol.
[0085] (2) Number of members in a small group in The floor symbol.
[0086] (3) The number of members in the large group is membersbig=memberssmall+1.
[0087] (4) The number of groups with large members: groupsbig = groups mod groups, where “mod” is the remainder symbol.
[0088] (5) The number of small groups groupssmall = groups-groupsbig.
[0089] This method can ensure a balance in the number of members between groups, and achieve load balancing between the test center server and the test taker. For example, if the total number of students is 49, 7 groups are formed, each with 7 people; if the total number of students is 52, 8 groups are formed, of which 4 groups have 6 people and the other 4 groups have 7 people.
[0090] The embodiment of the present application establishes a group on the candidate side, greatly reducing the number of connections that the examination room server needs to manage, achieving a strong network adaptability effect, and the examination can be carried out normally even in a bad network environment. For example, if there are 49 candidate sides, the examination room server only needs to establish 7 connections.
[0091] like Figure 1 As shown, the distributed online examination management method also includes the following steps:
[0092] Step S300: each group leader terminal establishes a connection with the examination room server, and the answer information of each group member terminal is submitted to the examination room server via the corresponding group leader terminal.
[0093] In the embodiment of the present application, the step S300 specifically includes:
[0094] Step S310: each group leader terminal establishes a connection with the examination room server;
[0095] Step S320: The group members in each examinee terminal group transmit the answer information to the next group member terminal in a timely manner according to the connection order, until the answer information is transmitted to the group leader terminal;
[0096] Step S330: The group leader terminal submits the answer information of all group members in the examinee-side group to the examination room server, wherein the answer information includes: student number, test question ID, timestamp and answer content;
[0097] Step S340: After the examination room server saves the answer information, it sends the confirmation information to the team leader terminal, and the team leader terminal sends the confirmation information to each team member terminal in sequence according to the connection order;
[0098] Step S350: Each member terminal updates the submission mark of the corresponding question in the local test paper file according to the confirmation information.
[0099] Specifically, the examinee's terminal transmits the answers that have not been submitted by the local terminal and the answers received from the previous node to the next node of the group. Figure 3 As shown, it is transmitted from A1 to group leader A5 and then to the examination room server. After the examination room server saves the data, it sends the confirmation information to group leader A5 and transmits it to all group members in turn. After receiving the confirmation information, the examinee updates the "Submit" flag of the question in the local examination paper file.
[0100] The answer information is recorded in the format of "student ID|question ID|timestamp|answer content", with "|" separating each field. The timestamp is an integer representing the current time in milliseconds. For example: "20220123456|12345678|1699062058574|A". For duplicate answers generated by multiple revisions, the one with the largest timestamp will prevail. That is, for answers to the same question that have been revised multiple times, the test server only processes the latest record to reduce the amount of data processing.
[0101] The embodiment of the present application sends the information to each member terminal in sequence according to the connection order, thereby reducing the workload of the examination room server and allowing low-configuration computers to run smoothly.
[0102] In an embodiment of the present application, the distributed online examination management method also includes: regularly rotating the group leader terminal in each candidate-side group according to a preset rotation rule, and establishing a connection between the new group leader terminal and the examination room server; if a group member is disconnected from the network, the candidate-side group whose group member is disconnected from the network is used as the target candidate-side group, and the examination room server disbands the target candidate-side group and re-establishes the network.
[0103] Specifically, the group leader terminal is rotated regularly to balance the network load. The previous node of the original group leader terminal is converted to the new group leader terminal, connected to the examination room server, and the original group leader terminal is connected to the end node. Other nodes do not need to be changed. In addition, if a member of the group is disconnected from the network for various reasons (such as network problems, power outages, crashes, etc.), the group will be disbanded, and the candidate end of the group will resend the candidate end information and re-network. It should be noted that the candidate end of the secondary network does not need to wait for the invitation command.
[0104] In the embodiment of the present application, the step S50 also includes: after the examinee starts answering questions, the answers to the questions are written into the local test paper file according to a predetermined writing rule.
[0105] Specifically, each time the examinee finishes answering a question, the examinee-side system immediately writes the answer into the local test paper file. This ensures that even if the local area network fails, the student's answer data will not be lost. After the exam, the answer can be imported through the test paper file. Therefore, the embodiment of the present application improves the reliability of data storage.
[0106] Specific embodiments are listed below for illustration.
[0107] Embodiment 1
[0108] See also Figure 4 , Figure 4 This is a schematic diagram of the overall system flow, including:
[0109] Step A1, edit test questions and test papers;
[0110] The management system runs as an independent application and interacts with the other two systems through files. Teachers can compile test questions and design test papers through the management system in an offline environment (such as at home or in the office).
[0111] Step A2: Generate the test paper file on the examinee side and the database file on the examination room server side;
[0112] The examination room server uses a single-file database such as SQLite or Access, which can be directly driven without installing a database system. The data in the database file includes the exam name, student list (including student number and name), class, test question set, and the decryption password of the test paper file.
[0113] The test paper file includes the test name, student list (including student number and name), class and test question list. It is written in XML format and encrypted using the Blowfish algorithm. The decryption password is sent by the examination server during the test.
[0114] Step A3: Examination;
[0115] The teacher copies the application and database files on the exam server to the exam server, and distributes the application and test paper files on the examinee's end to the examinee's end, and then the exam can begin. Since the test paper files are encrypted, examinees cannot view them in advance, so teachers are allowed to distribute the files in advance, and examinees can copy them to the examinee's end by themselves.
[0116] Step A4: Import the answers submitted by the examinees;
[0117] After the exam, the teacher will copy the database file containing the students' answers back to the computer where the overall management system is located, and import the data into the overall management system.
[0118] Step A5: Mark the test papers;
[0119] Teachers complete the examination paper marking work in the overall management system.
[0120] Embodiment 2
[0121] See also Figure 5 , Figure 5 This is a schematic diagram of the examination process, including:
[0122] Step B1, the examination room server sends a heartbeat signal;
[0123] After the exam server is started, it will periodically send a heartbeat signal command until the exam is over. The signal contains the decryption password for the exam file. For example, if the decryption password for the exam file is "12345678", the command is: "HZYEXAM: / / HEARTBEAT---803EF23812345678"; "---" is a placeholder to meet the character length requirement of the command name.
[0124] Step B2: The examinee reads the test paper file;
[0125] The examinee decrypts and reads the test paper file using the password obtained from the heartbeat signal received from the examination room server.
[0126] Step B3: Candidates enter personal information;
[0127] The candidate enters his / her name in the candidate-side system, and the system checks the candidate list in the test paper file. If the entered name is in the list, the corresponding student number will be displayed; if it is not in the list, the system will prompt the candidate to check the input or contact the invigilator, and the candidate cannot proceed to the next step.
[0128] Step B4, the examinee draws a question;
[0129] The examinee side randomly selects test questions according to the established configuration to ensure that the test questions for each examinee are different.
[0130] Step B5a, the examinee waits for the test start command;
[0131] After clicking "Start Exam" on the exam server, the server will start sending the start exam command until the exam is over. After receiving the start exam command, the candidate will enter the exam interface.
[0132] Step B6a, the examinee answers the questions;
[0133] Candidates complete their answers to the test questions in the candidate-side system.
[0134] Step B7a, the examinee saves the answers to the test paper file;
[0135] After each question is answered, the candidate's system will immediately write the answer to the local test paper file. This design ensures that even if the local area network fails, the candidate's answer data will not be lost, and the answer can be imported through the test paper file after the exam.
[0136] Step B8a, determine whether the test is over; if not, return to step B6a; if so, end;
[0137] If the test is over (the teacher ends the test or the test time is up), this process ends; if it is not over, return to step B6a to continue answering questions.
[0138] Step B5b: Networking on the candidate side;
[0139] The examination room server invites students to register in turn according to the network segment. It should be noted that this step and "Step B5a, the examinee waits for the test start command" are two parallel processes, that is, after the examinee draws the questions, these two processes are executed simultaneously.
[0140] Step B6b, determine whether the networking is successful; if so, execute step B7b; if not, return to step B5b;
[0141] If the candidate successfully establishes a network, proceed to the next step; if it fails, retry the networking process.
[0142] Step B7b: The examinee submits the answer at a fixed time;
[0143] Step B8b: determine whether the test is over; if not, proceed to step B7b; if yes, end.
[0144] If the test has not ended, proceed to step B7b; if the test has ended, this process ends. Candidates can continue to answer questions during the test time until the test center server sends an end signal or the scheduled test end time is reached.
[0145] Embodiment 3
[0146] See also Figure 6 , Figure 6 This is a schematic diagram of the networking process, including:
[0147] Step C1: The examination room server selects a network segment to invite registration;
[0148] Step C2: The examinee sends his / her student ID and the ID of the selected test question;
[0149] Step C3: The examination room server responds with a successful registration message;
[0150] Step C4, put the candidate's terminal into the list to be networked;
[0151] Step C5, determine whether a group is full; if so, execute step C6; if not, return to step C2;
[0152] Step C6: the examination room server sends a networking command;
[0153] Step C7, the examinee sets up a network on his own;
[0154] Step C8: Submit the answer;
[0155] After the group is successfully formed, the candidate's end will periodically send the unsubmitted answers together with the data of the previous node to the next node.
[0156] Step C9, rotating team leaders;
[0157] Step C10, determine whether the network is off; if so, execute step C11; if not, execute step C12;
[0158] Step C11, the group is dissolved; and returns to step C2;
[0159] Step C12: determine whether the test is over; if so, end; if not, return to step C8.
[0160] In one embodiment, if Figure 7 As shown, based on the above-mentioned distributed online examination management method, the present invention also provides a distributed online examination management system, including: an examination room service end 100 and a plurality of examinee ends 200 in the same local area network;
[0161] The examination room service end 100 is used to obtain the candidate terminal information corresponding to each candidate terminal, determine the networking list according to each candidate terminal information, and send a networking command to each candidate terminal according to the networking list;
[0162] The examinee terminal 200 is used to self-organize the network according to the networking command to form multiple examinee terminal groups. The group members in each examinee terminal group include a group leader terminal and several group member terminals, and each group leader terminal establishes a connection with the examination room server. The answer information of each group member terminal is submitted to the examination room server via the corresponding group leader terminal.
[0163] It should be noted that the aforementioned explanation of the embodiment of the distributed online examination management method is also applicable to the distributed online examination management system of this embodiment, and will not be repeated here.
[0164] This embodiment also provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the above-mentioned distributed online examination management method is implemented.
[0165] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or N embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, without contradiction.
[0166] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include at least one of the features. In the description of this application, "N" means at least two, such as two, three, etc., unless otherwise clearly and specifically defined.
[0167] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, fragment or portion of code comprising one or N executable instructions for implementing the steps of a custom logical function or process, and the scope of the preferred embodiments of the present application includes additional implementations, in which the order shown or discussed may not be followed, including performing functions in a substantially simultaneous manner or in reverse order depending on the functions involved, which should be understood by technicians in the technical field to which the embodiments of the present application belong.
[0168] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by an instruction execution system, device or apparatus (such as a computer-based system, a system including a processor, or other system that can read instructions from an instruction execution system, device or apparatus and execute instructions), or in combination with these instruction execution systems, devices or apparatuses. For the purpose of this specification, "computer-readable medium" can be any device that can contain, store, communicate, propagate or transmit a program for use by an instruction execution system, device or apparatus, or in combination with these instruction execution systems, devices or apparatuses. More specific examples of computer-readable media (a non-exhaustive list) include the following: an electrical connection with one or N wirings (electronic devices), a portable computer disk box (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), a fiber optic device, and a portable compact disk read-only memory (CDROM). In addition, the computer-readable medium may even be paper or other suitable medium on which the program is printed, since the program may be obtained electronically by optically scanning the paper or other medium and then editing, interpreting or otherwise processing in a suitable manner if necessary and then storing it in a computer memory.
[0169] It should be understood that the various parts of the present application can be implemented by hardware, software, firmware or a combination thereof. In the above embodiment, the N steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. If implemented by hardware, as in another embodiment, it can be implemented by any one of the following technologies known in the art or their combination: a discrete logic circuit having a logic gate circuit for implementing a logic function for a data signal, a dedicated integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.
[0170] A person skilled in the art may understand that all or part of the steps in the method for implementing the above-mentioned embodiment may be completed by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium. When the program is executed, it includes one or a combination of the steps of the method embodiment.
[0171] In addition, each functional unit in each embodiment of the present application may be integrated into a processing module, or each unit may exist physically separately, or two or more units may be integrated into one module. The above-mentioned integrated module may be implemented in the form of hardware or in the form of a software functional module. If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may also be stored in a computer-readable storage medium.
[0172] The storage medium mentioned above may be a read-only memory, a magnetic disk or an optical disk, etc. Although the embodiments of the present application have been shown and described above, it can be understood that the above embodiments are exemplary and cannot be understood as limiting the present application. A person of ordinary skill in the art may change, modify, replace and modify the above embodiments within the scope of the present application.
Claims
1. A distributed online examination management method, the method is applied to a distributed online examination management system, characterized in that: The system comprises: an examination room service end and a plurality of examinee ends in the same local area network, and the method comprises: The examination room service end obtains the candidate terminal information corresponding to each candidate terminal, and determines the networking list according to each candidate terminal information; The examination room service end sends a networking command to each of the examinee terminals according to the networking list, and each examinee terminal performs self-networking according to the networking command to form a plurality of examinee terminal groups, wherein the group members in each examinee terminal group include a group leader terminal and a plurality of group member terminals; Each group leader terminal establishes a connection with the examination room server, and the answer information of each group member terminal is submitted to the examination room server via the corresponding group leader terminal; The examination room service end obtains the examinee terminal information corresponding to each examinee terminal, and before determining the networking list according to each examinee terminal information, it also includes: The examination room server obtains the pre-built examination room server application file and database file, wherein the database file includes: the examination name, the student list information, the class, the examination question set and the decryption password of the examination paper file; Each examinee terminal obtains a pre-built examinee terminal application file and a test paper file, wherein the test paper file includes: the test name, student list information, class and test question list; the test paper file is an encrypted file; The examination room server broadcasts a heartbeat signal through the UDP protocol, and the heartbeat signal includes the decryption password of the examination paper file; After receiving the heartbeat signal, each examinee terminal reads the test paper file according to the decryption password in the heartbeat signal; The examinee receives the input instruction, obtains the student's personal information, and randomly selects a question from the question list according to a predetermined question selection rule to obtain the selected question ID; The examination room server obtains the candidate terminal information corresponding to each candidate terminal, and determines the networking list according to each candidate terminal information, including: The examination room server selects a network segment and sends a registration invitation; After receiving the registration invitation, each candidate terminal establishes a TCP connection with the examination room server and sends the corresponding candidate terminal information to the examination room server. The candidate terminal information includes the student number, the ID of the selected test question and the device IP address; The examination room service end feeds back registration success information to the corresponding examinee end according to the received examinee end information, and determines the networking list according to the examinee end information; The examination room service end sends a networking command to each of the examinee terminals according to the networking list, and each examinee terminal performs self-networking according to the networking command to form a plurality of examinee terminal groups, each of which includes a group leader terminal and a plurality of group member terminals, including: The examination room service end sends a networking command to each of the examinee terminals according to the networking list, wherein the networking command includes the device IP address of the group leader terminal, the device IP address of the group member terminal and the connection order; According to the device IP address of the group leader terminal and the device IP address of the group member terminal, a candidate end group is formed, and the group members in the candidate end group are connected head to tail through the TCP protocol in the connection order; Each of the group leader terminals establishes a connection with the examination room server, and the answer information of each group member terminal is submitted to the examination room server via the corresponding group leader terminal, including: Each group leader terminal establishes a connection with the examination room server; The group members in each examinee terminal group transmit the answer information to the next group member terminal in the order of connection until it is transmitted to the group leader terminal; The group leader terminal submits the answer information of all group members in the examinee-side group to the examination room service end, and the answer information includes: student number, test question ID, timestamp and answer content; After the examination room server saves the answer information, it sends the confirmation information to the team leader terminal, and the team leader terminal sends the confirmation information to each team member terminal in sequence according to the connection order; Each member terminal updates the submission mark of the corresponding question in the local test paper file according to the confirmation information; The distributed online examination management method further includes: According to the preset rotation rules, the group leader terminals in each candidate group are rotated regularly, and the new group leader terminal is connected to the examination room server; If a group member is offline, the candidate side group whose group member is offline will be used as the target candidate side group. The test center service end will disband the target candidate side group and re-establish the network. After the examinee starts answering questions, the answers are written into the local test paper file according to the predetermined writing rules; The group members are connected end to end through the TCP protocol to form a chain structure. The examinee at the end of the chain serves as the rotating group leader, and the examination room server is only connected to the rotating group leader. When submitting answers, the group members pass the answers to the next node in turn until the rotating group leader, who submits them to the examination room server. After the examination room server saves the data, it transmits the confirmation information back to each node along the reverse path.
2. A distributed online examination management system, characterized in that: It includes the examination room server and several examinee terminals in the same local area network; The examination room service end is used to obtain the candidate terminal information corresponding to each candidate terminal, determine the networking list according to each candidate terminal information, and send a networking command to each candidate terminal according to the networking list; The examinee terminal is used to self-organize the network according to the networking command to form multiple examinee terminal groups, each of which includes a group leader terminal and several group member terminals, and each group leader terminal establishes a connection with the examination room server, and the answer information of each group member terminal is submitted to the examination room server via the corresponding group leader terminal; The examination room service end obtains the examinee terminal information corresponding to each examinee terminal, and before determining the networking list according to each examinee terminal information, it also includes: The examination room server obtains the pre-built examination room server application file and database file, wherein the database file includes: the examination name, the student list information, the class, the examination question set and the decryption password of the examination paper file; Each examinee terminal obtains a pre-built examinee terminal application file and a test paper file, wherein the test paper file includes: the test name, student list information, class and test question list; the test paper file is an encrypted file; The examination room server broadcasts a heartbeat signal through the UDP protocol, and the heartbeat signal includes the decryption password of the examination paper file; After receiving the heartbeat signal, each examinee terminal reads the test paper file according to the decryption password in the heartbeat signal; The examinee receives the input instruction, obtains the student's personal information, and randomly selects a question from the question list according to a predetermined question selection rule to obtain the selected question ID; The examination room server obtains the candidate terminal information corresponding to each candidate terminal, and determines the networking list according to each candidate terminal information, including: The examination room server selects a network segment and sends a registration invitation; After receiving the registration invitation, each candidate terminal establishes a TCP connection with the examination room server and sends the corresponding candidate terminal information to the examination room server. The candidate terminal information includes the student number, the ID of the selected test question and the device IP address; The examination room service end feeds back registration success information to the corresponding examinee end according to the received examinee end information, and determines the networking list according to the examinee end information; The examination room service end sends a networking command to each of the examinee terminals according to the networking list, and each examinee terminal performs self-networking according to the networking command to form a plurality of examinee terminal groups, each of which includes a group leader terminal and a plurality of group member terminals, including: The examination room service end sends a networking command to each of the examinee terminals according to the networking list, wherein the networking command includes the device IP address of the group leader terminal, the device IP address of the group member terminal and the connection order; According to the device IP address of the group leader terminal and the device IP address of the group member terminal, a candidate end group is formed, and the group members in the candidate end group are connected head to tail through the TCP protocol in the connection order; Each of the group leader terminals establishes a connection with the examination room server, and the answer information of each group member terminal is submitted to the examination room server via the corresponding group leader terminal, including: Each group leader terminal establishes a connection with the examination room server; The group members in each examinee terminal group transmit the answer information to the next group member terminal in the order of connection until it is transmitted to the group leader terminal; The group leader terminal submits the answer information of all group members in the examinee-side group to the examination room service end, and the answer information includes: student number, test question ID, timestamp and answer content; After the examination room server saves the answer information, it sends the confirmation information to the team leader terminal, and the team leader terminal sends the confirmation information to each team member terminal in sequence according to the connection order; Each member terminal updates the submission mark of the corresponding question in the local test paper file according to the confirmation information; According to the preset rotation rules, the group leader terminals in each candidate group are rotated regularly, and the new group leader terminal is connected to the examination room server; If a group member is offline, the candidate side group whose group member is offline will be used as the target candidate side group. The test center service end will disband the target candidate side group and re-establish the network. After the examinee starts answering questions, the answers are written into the local test paper file according to the predetermined writing rules; The group members are connected end to end through the TCP protocol to form a chain structure. The examinee at the end of the chain serves as the rotating group leader, and the examination room server is only connected to the rotating group leader. When submitting answers, the group members pass the answers to the next node in turn until the rotating group leader, who submits them to the examination room server. After the examination room server saves the data, it transmits the confirmation information back to each node along the reverse path.
3. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a distributed online examination management program, and when the distributed online examination management program is executed by the processor, the steps of the distributed online examination management method according to claim 1 are implemented.
Citation Information
Patent Citations
Local area network-based network examination system and implementation method thereof
CN101964152A
Civil aviation information group distribution system based on TCP / IP protocol
CN201499184U