Excellent Network Learning System Program

zhaozj2021-02-16  99

Excellent Network Learning System Program

V0.2

Square

June 2004

This is the system design of the excellent network learning system. This design integrates existing DS (of course, DS needs to re-develop new version to this) and our envisaged information repository system, and provide more and more advanced features. The system starts from language learning and is not limited to language learning. It is a full-featured integrated learning system.

It can be seen that this network learning system is the product of the network era, fully reflects "all the services" and effectively integrate all the resources available in the region, and fully exerts the role of distributed calculations. It is not limited to English learning, and various learning functions can be included in it and can be accessed anytime, anywhere. From this, we can feel that the launch of this network learning system will be a new breakthrough that brings a learning method.

One. System characteristics

1. General service interfaces, each school is convenient to share resources;

2. Good user experience (XP), convenient and diverse user interface;

3. Open programming interface, easy to extend system function;

4. Perfect network access mechanism, enjoy the service anytime, anywhere;

5. Excellent cache mechanism, online and offline can be used;

6. Dynamically load the running component, reduce the size of the assembly that needs to be loaded by "slowly invisible".

7. The program is automatically upgraded to effectively reduce deployment costs;

8. Efficient development efficiency, stable, safe system.

two. Physical topology

The physical topology of the Excellence Network Learning System has the following forms, as shown below:

This is a very traditional network of networking, and all the teaching activities of the school are carried out in an independent campus network. This network topology is suitable for small, single school, such as middle school, small universities, and so on.

This networking method does not have a clearly independent campus network, and the school's teaching activities are concentrated, but there is a dispersed form in the entire school. This network topology applies to schools in large or multi-campus, is the most common campus networking.

This networking method presents a very obvious completely dispersion pattern, and the teaching activities of the school are completely dispersed. This network topology applies to schools that do not have a school concept in geographic sense, such as Texicology, Distance College, online school, and so on. This system is a real network learning system.

Based on the above three networking methods, we have to fully consider the flexibility and uncertainty of the networking of the network, develop a network learning system that can be applied to the above three network structures.

Solution to the above problem is to make full use of the power of Websevices and .NET Remoting's ability to penetrate the firewall, use .NET Remoting in places that are relatively high for performance requirements and interactions, use WebServices elsewhere. Specifically, it has been marked on the figure.

three. System function brief

Based on the above network topology, it is now a simple description of the functions of each network node for each network node:

1. ABLE Resource Center 1 includes two elements of the server and client, and the two elements are connected via WebServices. The ABLE resource center implements the following services:

a) Registration authentication, each school customer can only enjoy a series of value-added services provided by the ABLE resource center after registering and paying service charges;

b) The list of university resource center server storage resources, and the university resource centers will be traveled after using the registered account and obtain a list of resources in the resource center of the universities; C) ABLE Resources, here and the list of resources stored in the university resource center server can be classified according to subjects and are divided into basic resources and extended resources, and collect service fees separately;

d) Teaching Forum, teaching chat room;

e) Interactive laboratory provided by ABLE, these interactive laboratories belong to the value-added service, only the school purchases a certain period of time of the corresponding laboratory, the school's university resource center can download and distribute them to the school;

f) Provide system upgrade services, distribution systems upgrade and expand components;

g) Collect system bugs and customer experience reports in subsequent development.

The application of server cluster technology should be considered here.

2. University Resource Center 2 includes two elements of the server and client, and the two elements are connected via WebServices. The university resource center is implemented as follows:

a) Record school users, school teachers and students' identity authentication information stored here, and record the activities of users in the system, and can query analysis;

b) Resource storage and distribution, the school's related teaching resources are stored here, which can be distributed to various teaching activities;

c) The school's teaching forum and teaching chat room;

d) Forward information of the ABLE Teaching Forum and Teaching Chat Room;

e) The storage and distribution of the interactive laboratory, only the authorization of a certain amount of time to purchase the corresponding laboratory can be used within the service period;

f) Exchange resource information with other school resources center, whether there is a public property if the property is true, and the resource can be shared with other school resource centers;

g) Download and update your programs from the ABLE resource center, get and distribute the voice classroom, the client's update.

The application of server cluster technology should be considered here.

3. Classroom teacher machine 4 and classroom student machine 4 are the components of the current DS system. Of course, DS needs to re-develop it to satisfy the functional requirements here. On this basis, in order to teach the teaching resources centered on the control system, the classroom server 3 is added, and the classroom server and classroom teacher machine are developed as two independent components, which can be as needed on the deployment. Deploying on the same machine or deployed separately. The classroom server (teacher machine) is implemented as follows:

a) Accept the instructions of the teacher machine to control the student machine to conduct various teaching activities.

b) Get and distribute teaching resources from the center resource center, and can be cached as needed to prepare for teaching;

c) Forwarding the information of the teaching forum and teaching chat room;

d) Forward interactive laboratory information;

e) submit the students in this classroom to the school resource center;

f) Download and update your own programs from the center resource center to get and distribute the student's update.

Here, a server should consider the use of controls for classrooms and student machines of multiple voice classrooms (based on session concepts) and server cluster technology.

4. Classroom teacher machine 4 will be implemented as follows:

a) Get teaching resources and play from the classroom server, and can be cached as needed to prepare for teaching;

b) Send an instruction to the classroom server under the teacher control to control the activities of the student;

c) Send students' activities to the classroom server and forward them to the center of the resource. d) Teaching Forum and Teaching Chat Room Client;

e) Interactive laboratory client;

f) Download and update your own procedures from the classroom server.

5. The classroom student machine 5 will be implemented as follows:

a) Carry out various teaching activities under the control of the teacher;

b) Get teaching resources and play from the classroom server, and can be cached as needed to prepare for future teaching;

c) Send students' activities to the classroom server and forward them to the center of the school;

d) Teaching Forum and Teaching Chat Room Client;

e) Interactive laboratory client;

f) Download and update your own procedures from the classroom server.

6. The use of the school system 6, the school teacher, the students are outside the school, such as at home, in the mobile, can enjoy our services in a variety of ways. The school system is divided into a teacher version and student version. they can:

a) Access resources through various ways, whether using computers or mobile devices;

b) The resource can be relocated locally, no matter the free learning, no matter when it is online;

c) Preparation, resource entry and organization;

d) Sending the activities of teachers and students to the classroom server and forwards to the center of the school;

e) Teaching Forum and Teaching Chat Room Client;

f) Interactive laboratory client;

g) Download and update your own programs from the classroom server.

four. System logical structure

Based on the above function analysis, the excellent network learning system is roughly divided into the following six subsystems, each subsystem is divided into several modules, the logical structure map is currently tentatively, and the adjustment should be made during the system analysis design:

Next, the relationship between the system logic structure and the physical topology is explained:

1. Service registration and authentication subsystem have two sub-modules, namely service registration renewal and service login authentication. The service registration renewal module is deployed in the ABLE Resource Center (data storage), while the service login authentication is located at the ABLE Resource Center (Identity) and the School Resource Center (request initiated).

2. The resource management subsystem has two sub-modules, namely the test bank management module and the teaching courseware management module.

i. Test Question Bank Management Module is divided into four submodules: Test Questions In the submodule located in the ABLE Resource Center (Resource Storage) and School Resource Center (Resource Storage), there is a forwarding function on the classroom server, in the teacher and proofread system teacher version There is an entered interface; the test query submodule is located in the ABLE resource center (query search), school resource center (query search), classroom server (forwarding and cache function), teacher machine (query interface and cache function), proofread system teacher version (inquiry) Interface and cache function); the test panel generated sub-module is located in the school resource center (query test questions and generation test papers), classroom server (forwarding function), teacher machine (control interface) and proof-proof system teacher (control interface); test paper presenting sub-module is located Teacher, student machine, and pro-school system teacher version.

II. Teaching courseware management module is divided into three submodules: courseware entry sub-module is located in the ABLE Resource Center (Resource Storage) and School Resource Center (Resource Storage), has forwarded function on the classroom server, in the teacher and proofread system teacher version There is an entered interface; the courseware query submodule is located in the ABLE resource center (query search), school resource center (query search), classroom server (forwarding and cache function), teacher machine (query interface and cache function), student machine (query interface and Cache feature) and proofreading systems (query interfaces and cache functions); courseware presenting submodules are located in the teacher machine, student machine and proofread system. 3. The controlled teaching subsystem is divided into three submodules, which are broadcast teaching, group discussions and teachers and students. All three sub-modules are located in the teacher machine, classroom server and student machine.

4. The teacher-student activity record and analytical subsystem are divided into four submodules, namely the test score management, teaching activities management, network operation management, and teachers and students login authentication. In addition to the submodule test score record and network operation management of the test score management, the submodule of network operation is only located in the school resource center (data storage and objective judgment), classroom server (forwarding function), teacher machine (subjective question分)) 版 系统 模 模 块 块 系统 系统 系统 系统 系统 系统 系统 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 中心 系统 系统 系统 系统

5. The system upgrade service and customer experience report subsystem is located in each node of the entire system.

6. The interactive community subsystem is located in each node of the entire system, wherein the ABLE resource center and the university resource center are served as a server, classroom servers, as a transponder, classroom machine, student and proof-proof as a client.

Fives. System development principle

In development, the system must comply with the following principles:

1. Loose coupling, componentization

In order to achieve the foregoing convenient and scalable system characteristics, loosely coupled and components must be implemented between the system modules. The components here are not only the modules mentioned in this article. As the initial plan of the project, the modules here are quite rough, and more more detailed modules will be divided in the back detailed design phase, development should be in the extent of the level Loose coupling, componentization.

2. Hierarchical development, interlayer through interface;

Based on the aforementioned pine coupling, componentization requirements, and dynamic system upgrade requirements, each component should follow the stratified development agreement, and it should be divided into the following three layers:

1) Data Access Layer. This layer is encapsulated on the data read and access, in the database end, is access to the database; at the client, it is called network interface, such as webservices or .net remoteing;

2) Business logic layer. This layer of encapsulation is implemented for data processing and business logic;

3) Business interface layer. This layer does not refer to only the user interface, but refers to an interface exposed to an external call. For the client, it is a user interface; and for the network server, it may be the API of WebServices or .NET Remoting.

In principle, each component should achieve the above three layers, but in the actual design, adjustment and decrease should be adjusted according to the actual situation.

The layer and the layer should be accessed through an interface rather than direct calls, which is a convenient upgrade and expansion system.

3. The specification interface definition; since each assembly requires access to access rather than directly call, the definition of the interface will become the most important and important issue in system development, regardless of how many people in this project are developed, in the formulation After scientific and standard interface, the project will be able to decompose the project, and each developer completes the interface of the part of the work, and the entire system can work well.

4. The assembly is dynamically loaded;

Implementing assemblies dynamic loading is also an important feature of expandable applications, paying attention to and fully uses in design and development.

5. Fine particles assembly;

In order to realize the characteristics of the above assembly dynamic loading, and effectively reduce the network download assembly to bandwidth requirements, the size of the single assembly (EXE, DLL, ETC) must be limited to the acceptable range, in general, each file Should be less than 200K.

6. Single server access;

Single server access is an important principle of simplifying system design and enhancing stability. Simply put is that the excellence network learning system is a complex network system, many nodes do both server and clients in the network, but as long as they pay attention to the design, they only access one server when they own as a client. It is possible to reduce the system complexity from a monomer angle to decrease as much as possible, so that it can be as simple as possible when deployed. If the classroom teacher only visits the classroom server, even if some operations need to access the school resource center, it is also necessary to transfer through the classroom server.

six. Project life cycle

Excellent network learning system project is expected to consume 200-240 months, life cycle planning is the following five stages:

In the interactive community subsystem, the interactive laboratory module is a value-added service module, which will be developed after the system is put into operation, and only the interface is developed in the following project cycle.

Analysis

This phase is divided into two sub-stages of start and details.

The following work should be completed at the beginning of the stage:

a) Prospect Document: For core project requirements, key nature, main constraints to make a general foreground description (this document can be considered);

b) Original top-level use case: The system should be implemented in the top-level features to allow users to use these features.

The details should be completed in the details:

a) Detailed requirements instructions: As much as possible requirements for the needs of the system function, from each detail to see what you want to be.

b) Detailed use case model: The system should be implemented in each detail of the system;

The people who invest in this stage are 15% of all the projects of the project.

2. Design

This phase should do the following work:

a) Detailed interaction model: This model is accurately descriptor user uses each functional process and describes which system components are interactive during the process of using this feature;

b) Interface design: The specification interface definition should be developed, and then the coding phase can begin, and the post-design will be carried out at the same time;

c) Database design;

d) class design;

The people who invest in this stage are substantially 25% of the total mullet of the project.

3. Code

This phase should do the following work:

a) Interface development, completion of the development of the interface, and repeat the rationality and feasibility of interface design;

b) Database development;

C).

The people who invest in this stage are 30% of all the projects of the project.

4. Test

This stage should be completed: a) System test;

b) bug exclusion;

c) Writing of the user manual.

The people who invest in this stage are 20% of all the projects of the project.

5. Deployment

This phase should do the following work:

a) deployment of the system;

b) Development of interactive laboratory modules in the interactive community subsystem;

c) Enter the follow-up maintenance stage.

This stage is a long-term job after the completion of project development.

Seven. Development language and corresponding technologies

This system uses C # language development, and the network connection uses .NET Remoting and WebServices, other technologies include DirectX9.0B.

Eight. development tools

This system uses the following development tools to develop:

1. Design modeling tool Roseal Rose

2. Encoding tool Visual Studio.net 2003

3. Database Tools SQL Server 2000

4. Version Control Tool Visual Source Safe

6.0c

nine. Deploy environment

The server environment is Windows 2000 Server / 2003 SQL Server 2000; the client environment is Windows 2000 Professional / XP.

ten. Suggestions for existing APIs

Due to the product DS1.0 developed by C in the excellent network learning system, there are two ideas for this part of the system development, one is to directly use the API of the existing system, integrate it into the new network. In the learning system, the other is to use .NET technology to re-develop.

The benefits of directly using the existing system use existing resources, shorten the development cycle, reduce the development cost of the system, but its side effects are also obvious:

1. Existing API is difficult to say that you can use it directly without any changes, it is estimated that the corresponding changes are required according to the actual situation. This modified risk cannot predict and control, take into account the factors such as re-test, in some kind The cost that is not satisfactory is less than the cost of re-development of .NET technology;

2. This section will not be able to communicate across firewalls so that our system cannot meet the aforementioned third network topology, and lose some markets;

3. This section will not be able to realize dynamic loading, which is not possible to realize dynamic upgrades and dynamic extensions.

The solution has the following two types:

First, use .NET technology to re-develop;

The second is to modify the API of the existing system, and then use the .NET technology to develop the corresponding adapter, call these APIs, and then replace these APIs with the corresponding components that use .NET technology to re-develop.

转载请注明原文地址:https://www.9cbs.com/read-15200.html

New Post(0)