Abstract

After the implementation of the hybrid network-based English teaching system, a wide-ranging trial was carried out in schools. Although the trial time was not very long, according to the feedback given by the students, it is not difficult for us to find that the practicability of the English network teaching system is very strong, which is very suitable for current college students. The main goals of this research are the application development of the open source Moodle course management system and the practical design and realization of the English network teaching system based on in-depth research on the Moodle system and the secondary development technology. In view of the development of the existing English online teaching system in China and the current situation of domestic audio-visual information construction, it is planned that Moodle, an open source and free software system that fully complies with the CPL and GPL protocols, is used to teach the English language through in-depth research on the software support system. The software bottom layer supports the network teaching system and then uses PHP and web technology to expand and integrate system functions according to different needs and finally realize an English network teaching system suitable for college students at this stage.

1. Introduction

Blended learning is a relatively mature concept in the educational technology field, and it has been in a state of updating. In fact, in our previous teaching, blended teaching has been widely used, such as the combination of multiple teaching methods. The utilization of resources, the participation of various teaching media, etc. belong to blended teaching at a simple level. On the basis of traditional concepts, blended teaching in the information age includes online teaching and traditional classroom teaching. Online teaching is the usual teaching. The traditional classroom teaching is the teaching based on blackboard, chalk, and textbooks in the well-known real classroom. It is this advantage of blended teaching that makes higher education take a new direction. Traditional teaching can no longer meet the development needs of higher education. With the rise of the Internet, the combination of online teaching and traditional teaching has become deeper and deeper, and blended teaching has emerged as the times require. It has become the direction of higher education reform. In hybrid teaching, in order to play its role and advantages, network teaching must offer reasonable and effective online courses. In addition to media technology factors, it is necessary to rely on effective and reasonable network resources to design a complete teaching system as network teaching. At the same time, the irreplaceability of classroom teaching should also be avoided, and students should not be allowed to learn at will because of online teaching. Online teaching is only a necessary teaching method, and it has great potential, but it will never replace traditional classroom teaching. In view of the above analysis, we can give full play to the dual advantages of online teaching and classroom teaching, properly handle the relationship between the two, and further improve teaching efficiency [110]. This research clarifies the importance and necessity of English online teaching through the analysis of different English teaching methods and combines the existing advantages of the Moodle system to construct a network system for English teaching. So the traditional education method is no longer the only way of English teaching, and more efficient English teaching is carried out through the network, so as to achieve the purpose of cultivating students' learning ability and English application ability.

With the rapid development of information technology in the world, online education and traditional education are no longer two distinct fields, but they gradually present a situation of “you have me, I have you” and tend to the realm of mutual integration. “A ruler is short, an inch is strong,” and combining the advantages of online education and traditional education will maximize the strengths and avoid weaknesses to achieve the best results. Currently, “E-learning” is gradually becoming a “Moodle online teaching system” internationally. At the end of the last century, various countries have put forward successful cases of blended teaching. Based on the online teaching system, many online courses of blended teaching have been developed, and more blended teaching models have been designed, especially in the United States and European countries. At present, the network teaching systems that support blended teaching widely used abroad include WebCT of the University of British Columbia, Learning Space of IBM, Blackboard of the United States, and OpenCourseWare (MIT OCW) of the Massachusetts Institute of Technology. In traditional American campuses, teachers have begun to break through the complete face-to-face teaching, and many teachers have begun to adopt the innovative teaching mode of blended learning. In the weekly teaching tasks, they take part of the class time to arrange the Moodle online teaching system, so that students can access the Internet in the dormitory or library. These teachers proposed to add the Moodle network teaching system to the course, which has many benefits in cultivating students' ability to acquire knowledge, analyze, and solve problems. The Moodle network teaching system has been actively introduced into school education, organically combined with and complementing the advantages of traditional classroom teaching, which is the so-called blended teaching. In the blended teaching, the Moodle network teaching system can give full play to not only its own advantages in classroom teaching, but also the advantages of traditional teaching, such as the efficient and centralized classroom teaching, the leading role of teachers, and the main role of students [1116]. There are many open source teaching systems. Most of the teaching systems are integrated by CMS and components to form a community-based teaching system. Among them, the Moodle network teaching system based on open source is particularly extensively researched. Foreign research on teaching systems has gone deep into the combination of teaching mode and teaching system, how to integrate the system structure with the teaching mode, etc. Therefore, there are many secondary development technologies based on the Moodle system, through the integration of different plug-ins and modules, and addition and subtraction of functions to fit different teaching modes.

3.1. Blended Teaching

Many scholars at home and abroad have different emphasis on the definition of the concept of blended teaching, and so far there is no more unified concept. Blended teaching can be divided into broad and narrow senses. In the broad sense, blended teaching includes teaching modes, teaching media, teaching resources, teaching theories, teaching methods, teaching evaluation, teaching space, teaching time, and other mixed senses. Blended teaching refers to a mix of offline and online teaching. In addition, becauseblended teaching and blended teaching are the most similar expressions, some scholars directly equate the concept of blended teaching with blended teaching. However, blended teaching and blended teaching are significantly different in focus and starting point. Blended teaching focuses on the main body of teaching—learning. Black believes that blended teaching combines face-to-face teaching and network-based teaching and then creates a teaching environment conducive to student teaching. Blended teaching starts from the dominant position of teachers and focuses on how to help students achieve optimal teaching results. Jennifer Hofmann proposed that blended teaching will use a concept as the basis. According to the characteristics of the teaching process, teachers can divide it into several stages. Professor G. Black defines “blended teaching” as a teaching form that combines the advantages of traditional teaching methods with the advantages of digital teaching or network teaching. Through the definition of blended teaching and the distinction between blended teaching and the concept of blended teaching, this study believes that blended teaching can be defined as a combination of traditional teaching methods and online teaching methods, giving full play to the role of teachers and students. The advantages of online and offline teaching methods are applied to teaching methods in blended teaching [17].

3.2. Moodle System
3.2.1. Moodle System Architecture

The Moodle system should have the following characteristics: it can run on a variety of systems; it is easy to install, learn, modify, upgrade, expand, integrate, etc. The architecture of the Moodle system is shown in Figure 1.

3.2.2. Moodle Business Logic Layer

As a perfect application of B/S mode, Moodle system should have a perfect business logic layer design, and some analysis of the core business logic in Moodle system is carried out here. In a general system, the first thing to pay attention to is the principle of authority allocation, so the judgment of authority is a core business logic in the Moodle system. The judgment of permissions in the Moodle system is done through a permission judgment function. In this function, the relevant permissions are judged through the acquisition of the context environment, and the code is shown as follows: [18].$context = get_context_ instance (CONTEXT_SYSTEM);require_capability (‘moodle/site:config’,$ context);

For an application, in addition to permissions, it also uses a security code to maintain the security of the application environment. It uses “if(!empty ($delete) and confirm_sesskey ()){}” to determine whether the logged in user is normal.

“print_error (' courserequestdisabled ');” is generally used to terminate the execution. Once an error occurs, the system will stop executing the remaining statements, and its function is similar to the exit statement.

3.3. Key Technologies of Secondary Development Based on Moodle System

This research aims to design and implement an English network teaching system based on Moodle. The system is aimed at college students who have preliminary teaching ability. In the process of systematic education, they have formed dependence on traditional education methods, and they have initially connected to and used the system. To implement teaching, we set up the English network teaching system on the Internet, based on the very popular B/S structure today, so that it can be promoted on a large scale and reduce the entry threshold. Because the secondary development of some modules is carried out on the basis of the original system, the system foundation should be the same. Although there are many systems that Moodle can set up, we chose the simple and cheap LAMP system: Linux, Apache, MySQL, and PHP. The four open source software components constitute the LAMP system that we are familiar with, and this basic development system is also a core key technology for secondary development. Using the object-oriented method in software engineering in the development process can make the system have the advantages of easy maintenance, high quality, high efficiency, and easy expansion.

3.3.1. Three-Tier B/S Architecture

B/S architecture is the structure of browser plus server, where B is the browser and S is the server. It is a supplement and improvement to the C/S structure. The biggest difference between it and the C/S structure is that the B/S structure does not need to install the client. The client’s request will be sent through the browser, and the web server will receive the request after corresponding data processing is performed. During this period, the web server will also exchange data with the background server. Finally, the web server will send the processed data results back to the browser. In this structure, all the user interface is implemented through the browser, only a relatively small amount of transaction logic will be implemented in the front section, and most of the transaction logic will be implemented in the server side, which is the so-called three-tier structure. [1921].

In the B/S three-tier structure system, because the server processes and implements almost all transaction logic, it has the advantages of easy maintenance and upgrade. The software of the B/S architecture only needs to manage the server. No matter what modifications are made to the system, they can be modified at one point on the server side. The browser is just a tool for presenting the results of things. In this case, the usability of the system is further improved. However, because of this feature, the B/S architecture has some inevitable disadvantages. With the continuous upgrading of software and the continuous increase in the amount of information, the server will become more and more bloated, and the load on the server will also increase. It will become heavier and heavier, which is also a major test for the server on the server side and also increases the burden on the background maintenance personnel. However, with the development of science and technology, hardware devices are becoming more and more powerful, their processing capabilities are getting better and better, and most units using this architecture also have database storage servers for separate data backup, so B/S architecture is used. The construction and promotion of software are also an inevitable trend.

3.3.2. Ubuntu

In the design and implementation of the English online teaching system, the Linux system we use is Ubuntu. Although the Moodle system documentation recommends Unix as the best operating system, most of the Unix systems are not free. At the same time, the architecture of WAMP under the Windows system will be prone to instability, the system is overburdened, and the memory allocation is not enough, in addition to other various problems, which will eventually lead to system crashes. The operating system that is widely used in small companies has high stability, fast connection speed, and reasonable content distribution. Therefore, in the initial construction, considering the purpose of system stability and cost saving, the GNU/GPL-compliant Ubuntu was selected as the operating system.

3.3.3. Apache2

Apache is the abbreviation of Apache HTTP Server. It is one of the most popular web servers in the world. It is an open source software project belonging to the Apache Software Foundation. Apache has an absolute advantage over all kinds of existing web server software, far ahead of the second-place Microsoft IIS. Apache has various characteristics such as simplicity, fast speed, and stable performance, and it can run on almost all operating systems. The installation and configuration process of Apache is also very simple, and it is also very suitable for new developers. Its installation methods can be simply divided into two types: source code installation and binary package installation. These two installation methods have their own characteristics and are suitable for different user options. Since the Ubuntu system is used as the basic system in this study, we use the binary package installation method to install it. Just execute the following command in the terminal to automatically complete all the download and installation process: sudo apt-get install apache2. After the installation is complete, Apache2 will start automatically. If necessary, you can stop it by executing the command “sudo/etc/init.d/Apache2 stop” in the terminal; finally enter the command “sudo/etc/init.d/apache2 start”; and then start the Apache service once. There is an “apache2.conf” file in the “etc/Apache2” directory; we can modify Apache2 by modifying it. For example, modifying the “ports.conf” file can redirect the port and redirect the default port 80 to other nonconflicting ports, so that multiple sites can be established on one server, which is convenient for unified management. Under normal circumstances, the files that Apache2 will publish will be located in the “var/www” directory, which is the default value of Apache2. We can also modify the document root in the main configuration file to complete the redirection.

4. Design of a Hybrid English Teaching System Based on In-Depth Multi-intelligence

4.1. Development Tools and Environment

The English network teaching system is developed on the basis of the Moodle system. Therefore, the first step in the realization of the English network teaching system is to construct the operating environment and development environment of the whole system. Although PHP can be run without editing, the requirements for development software are not high. It can be developed using general web page editing software or even simple text editors such as Notepad. To improve the development speed and the accuracy of code writing, select PDT (Eclipse PHP development tools) as the preferred development environment. Eclipse can be used in several mainstream operating systems such as Windows, Linux, and macOS. It also belongs to an open source development system, so there is no need to pay extra fees to use it for program development. Although Eclipse is mainly developed for Java, among the many plug-ins of Eclipse, there are two specially developed for PHP. These customized plug-ins are Eclipse foundation and PHPEclipse, which are also open source software. After installing PDT in the large open source environment of LAMP, the corresponding PHP development can be carried out. At the same time, the official website of the Moodle system, which is also open source software, also recommends Eclipse in its development software, because its use is completely free without any additional development costs. After completing the installation of the operating system, you only need to enter the following command in the terminal of Ubuntu: sudo apt-get install Apache2 mysql-server-5.1 mysql-client-5.1 php5 libapache2-mod-php5phpmyadmin. You can set some accounts and other information during the installation process according to the prompts. When the LAMP environment is installed, it can be installed using Eclipse downloaded from the Eclipse official website. After everything is completed, the basic development environment construction of the English online teaching system is completed.

4.2. Implementation of System Database

There are many choices of databases, but due to the cost and the choice of the system construction environment made before, we choose MySQL as the database of the whole system. In the whole system, MySQL, as the underlying data support, can store all user information, system parameters, login information, etc., to ensure that the system program can call data quickly and effectively. Code 1 of the student information database table establishment part is as follows:

4.3. Main Function Module Code and Implementation
4.3.1. Flowchart of the Overall Function of the System

The overall function flowchart of the system describes the general function realization process of the entire English network teaching system, which is particularly important for the entire English network teaching system. The identification of the user’s identity and the subsequent behavior process are included in the overall function flowchart of the entire system, and the responses that should be made to operations in general are also included in the overall system function flowchart, as shown in Figure 2.

The overall function variables of the entire system can be set in the “config.php” file, and the different user-level key variables involved in the system can be set by controlling the same file and then detailed through the corresponding files. The source code of the “config.php” file is as follows:

4.3.2. Implementation of System Common Modules

There are many public modules in the English online teaching system, such as the login module and logout module. In these public modules, the corresponding process needs to be managed. We will take the login module as an example to understand how to realize it in the public module. In the login module, it is necessary to first judge the user’s access situation and limit the user’s login time. For example, within the valid time limit, you can log in by reading the session file to enter the account and password; otherwise, go back to the main login page to verify the user’s account and password, which can ensure that the user does not need to repeatedly perform identity verification during the use process, and can also perform the role of identity confidentiality to a certain extent. After the user completes the identity verification, it will immediately return to the user’s personal page. The interface is shown in Figure 3.

4.3.3. Course Content Management

In the English network teaching system, the course management should have a certain mode, which can enable all teachers to manage the course without special training. Course management must ensure the basic management functions while making the entire management process simple and easy to operate. For example, the basic adding and editing functions should be similar to or the same as Word document operations, so that teachers can adapt to the course content management functions faster. In the course content management page, the teaching content can also be classified and managed for the teaching of different skills in English listening, speaking, reading, writing, and translation. There are courses such as short reading comprehension and long reading, as well as composition training courses specially designed to exercise writing ability. Figure 4 is the interface diagram of the course management function.

In the course management function of the Moodle system itself, there is no function to time and manage the user’s online time. In this study, related functions have been added for the first-years who have just entered the university. Since PHP is a scripting language, it will not be used in the long term. There are many problems in executing certain statements at the same time. Therefore, there is no perfect solution for using PHP to determine the user’s online time. This study uses the method of inserting the user’s exit time into the database and comparing it with the recorded user’s login time. In order to improve the accurate timing online, the function of online timing is realized by formulating a program on the system server.

4.3.4. User Management

The user management function mainly exists for the unified management of all users in the English online teaching system by the administrator. Therefore, the following functions must be included in the user management function. First, there should be an individual user information management function. Each user in the English online teaching system can be managed individually with functions such as information, permissions, classes, and groups, followed by the batch user management function. The administrator should be able to manage a large number of users. Figure 5 shows the main interface of the user management function.

4.3.5. Job Management

In the English network teaching system, students’ homework is submitted by uploading personal homework content or files. In the English online teaching system, students are the individual main unit, but students are put together to form a class, and the final homework will be stored in the database in a class as a unit. Students and teachers can log in to the English online teaching system for homework viewing, correction, etc. For example, students plan to get writing ability training after completing the corresponding course teaching. Students can click on the corresponding writing ability training course to enter the homework content. At that time, they can check and operate the homework they have completed again, such as downloading the voice for listening correction and so on. They can also view the specific content and requirements of the writing ability training they selected before, and after completion, they can upload the operation to complete the assignment submission. And they can view all their own homework in the student homework management process, in addition to performing download, upload, and other operations. Figure 6 shows the job management interface.

5. System Test

5.1. Interface Test

The interface plays the role of directly interacting with the user, and the user’s first impression of the software basically depends on the interface. At the same time, whether the design of the interface is good also affects the user’s ease of use of the software. The interface can help and guide the user to a certain extent. In the interface test, various windows existing in the interface should be tested. We conduct individual tests to see if each UI meets the general usage expectations and whether the window objects and features conform to the standard. Because the English online teaching system is mainly used in the environment of domestic universities, it is inevitable that there will be a lot of Chinese and English content mixed in the interface, so the encoding of Chinese and English is particularly important. Errors will lead to garbled characters. At the same time, the typesetting methods of Chinese and English are different. If the same method is used for typesetting, this can easily cause irregularities in the interface, which will affect the cleanliness and beauty of the interface. Tests should also address both text encoding and typography.

5.2. Functional Testing

Functional testing can also be called black box testing. The testing method is to test the software according to the specifications and other documentation of the developed software. This testing method generally does not involve the working principle of the software content, so it is like a correct test for the tester. In functional testing, testers should observe the various output results of each function of the software from the perspective of ordinary users through various methods such as input and use, so as to discover the functional defects of the software.

5.3. Security Testing

The software responds to behaviors such as unauthorized user access or malicious damage by other users. In the security test, the testers use different identities of authorized users and non-authorized users to enforce different permission requirements of the system to test whether the permissions are normal and whether the data is normal.

5.4. Performance Test

The performance test is generally used to verify whether the performance of the software meets the requirements in the software demand environment and, at the same time, to confirm whether the repeated use can still meet the performance indicators. A total of 57 test cases were designed in this test, which involved interface testing, functional testing, security testing, and performance testing. The use case content distribution is shown in Table 1.

5.5. Analysis of Test Results
5.5.1. Interface Test Results

In addition to the necessary aesthetics, the interface of the English online teaching system should pay more attention to whether the function of the page is correct. All the functions of the software system based on the existence of the network rely on the existence of hyperlinks, so whether the hyperlinks are displayed correctly in the interface is particularly important, and each functional module should be expressed in a suitable size and clear way. The test results of this link are shown in Table 2.

5.5.2. Safety Test Results

After completing the basic functional test, corresponding security tests should be carried out for some common security vulnerabilities, including common functional modules that different user levels choose not to have, forced access to the corresponding content through the browser, and testing through the browser. The test results are shown in Table 3.

5.5.3. Performance Test Results

At the beginning of the design of the English network teaching system, it was hoped that it could be promoted on a large scale, so that more college students could enter the teaching mode of English teaching. Therefore, the system needs to handle a large number of users, and the performance should be tested in all aspects including concurrency and stability. User concurrency testing is the most important part of performance testing, including the process of load testing and stress testing. It mainly aims to gradually increase the number of users to increase the system burden until an unacceptable performance point or bottleneck occurs. Generally, it is necessary to test the concurrency of a normal number of users and the concurrency of users under a limit number.Function: Users access the website from different regions at the same time to ensure that the website can be accessed normally.Purpose: To test whether it is normal for 200 users to access the English online teaching system from different regions at the same time.Method: Use the Apache bench test website that comes with the WAMP environment to access the website concurrently, test the usual time and bandwidth required for the visit, and analyze the website operation through the test data. The concurrent test results are as follows in Table 4:

Server performance testing is an important part of testing, including the process of load testing and stress testing. Mainly by simulating multiple users to use the system at the same time, until the system has insufficient performance or bottleneck, generally test the normal use and extreme use.Function: Users use various functions to ensure normal functions.Purpose: To test the ability of 200 users to simultaneously access the entire English online teaching system from different regions.

Is there a normal page?Method: Use anychat to conduct high concurrent access to the website, test the CPU occupancy rate and memory occupancy rate of the server during the visit, and analyze the operation of the website through the test data. The concurrency test results are shown in Table 5.

6. Conclusion

Information-based teaching methods are developing through the efforts of a large number of educational practitioners, and the development and use of networked teaching systems are also an inevitable trend. For university teachers and students, the Internet has always been around, and the teaching classroom has also become an online classroom. The cramming method of knowledge instillation has gradually become rationalized, and it has become a teaching method in which students completely master the teaching subject. The English network teaching system is the connecting link in this key reform, and it is also the technical key for all ideas to become reality. The Moodle-based English online teaching system has finally realized the core functions of English online teaching, such as user login, teaching timing, course content management, user management, and homework management. From the operation situation and the feedback information of students, we can know that English online teaching is very suitable for today’s college students. This teaching method effectively liberates students' teaching time and improves students’ learning.

The English online teaching system is based on the secondary development of the Moodle system. Therefore, there are still many deficiencies in the localization customization of the Moodle system and the software compatibility of secondary development. In the future, we will continue to further develop the software and improve the English network teaching system, so as to improve the quality of the entire software teaching.

Data Availability

The dataset can be accessed upon request.

Conflicts of Interest

The authors declare that they have no conflicts of interest.