Automated Checking in Education

This work concerns the automated checking of solutions in education. The article discusses the structure of a problem as a whole body and of its parts, studies various check approaches, introduces problem complexes, suggests methods for creating accurate and consistent problem statements and check sets, and touches the automation of the preparation of problem sets and of the checking processes. Abstract The Internet represents unavoidable source for different knowledge and information, for using in professional and personal learning purposes. Based on this fact, accessibility, richness and diversity of the contents in each domain make the key characteristics of the Internet. By the development of the Internet, a new phenomenon is included in the field of education, phenomenon of learning via Web, or online learning. Besides different models of learning applied in the process of institutional education, learning via Web offers opportunities for purposeful and systematic enrichment of the process of education, which can significantly enable higher level of students’ achievement quality in any field of teaching and learning. However, all contents of the Internet has no the same importance for the process of education. For example, contents exposed by scientific and educational institutions have scientific and educational basement in the same time, as their inner essential characteristics. The other different contents, transferred on the Internet by the other institutions and individuals, don’t possess necessarily scientific and educational basement and importance. In this work we will discuss the following characteristics of the Internet, significant for the process of education: (1) diversity of the Internet contents , (2) accessibility of information via Internet , (3) characteristics of the Internet communications , and (4) characteristics of the interactions via Internet . Abstract Implications of the main features of information society for education system are discussed in this article. Information (knowledge) society is a society based on the implementation of information and communication technologies in all areas of society, in which knowledge is a worthy product. It is also a society that imposes new ways of social organizing, with the capacity to set new roles to different systems, as well as redefining and objective evaluating of different types of resources, including human and other resources. Connections and mutual dependence between the main characteristics of information society and education inside information society are very complex. Education system potentially can become the key factor of social and economic development, today and in the future. One of the main preconditions for achieving of this role of education in the actual and future society is the broad and strategically well-designed process of implementation of information technologies in the process of education and teaching. This process can be more effective and successful if the state agencies take over responsibilities for its realization.


Introduction
Systems for the automated checking of solutions have their origin in programming contests. But today they become the means of automation of the teacher's work. They can be useful not only at programming classes. With their help, any teacher can organize a mini-contest or check own tests and students' works faster and easier.
Having the experience of using and creating the automated checking systems for the programming problems, the author extends the corresponding approach onto the nonprogramming problems and shows that they also can be checked automatically. In order to make the automated checking easier for a wider range of users, its preparation also should be automated.
• Our aim is to make the automated checking of tests and contests easier for teachers. • Problems from various fields can be checked automatically like the programming ones. • The preparation of problems for a contest or a quiz should also be automated. • Automated systems for preparation and checking are described (not very profoundly).
• Automation reduces the number of possible errors, ambiguities, and inconsistencies. Section 1 contains the necessary mathematical notes along with glosses on what a generalised problem, its solution method and results are. It also shows how the number of check cases and the check approach depend on the amount and the type of the problem's variable and constant data, its conditions and restrictions.
Section 2 discusses various approaches to the checking of solutions.
In order to create full, explicit and consistent problems (not only for contests with the automated checking of solutions but for all quizzes as well) it is necessary to realize the structure Domain D of all known data can be divided into two parts: invariables Dinv and variables Dvar. Invariable data are stated in the problem's description and never change. On the contrary, variable data are provided by the check cases (see Section 2.3.3. Check cases) and can change from case to case not only in value but in number, too.

No variables
Obviously, there exist problems with no variable input at all. Almost all nonprogramming problems are like this. In such a case, the power | Dvar | = 0.
If such a problem is correctly stated, it must have the unique correct answer. As a rule, if there are several correct answers, it means that the problem description is not full or consistent. For example, a partial case is not correctly pointed out 1 or no explicit specification of a suitable output is provided 2 .
1 For illustration, consider the problem: "Two segments on a plane are given by coordinates of their ends. Define their mutual position: (a) do not touch; (b) intersect; (c) partly overlap; (d) one of them contains another". It is obvious, that the partial case of a zero-length segment can meet both b and d variants. It would be better to divide the output domain not into four but into three equivalence classes: "… (a) do not touch (no common points); (b) intersect (1 common point); (c) partly or fully overlap (more than 1 common point)".

Variables as the means to split a problem
In programming, any "good" algorithm has to be mass-oriented, i.e. it must be potent to solve not a single problem but a whole class of similar problems. Therefore, presence of a variable input is characteristic for programming problems.
Still, problems with variable input data can be met not only in programming but in other fields, too. For example, several variants of a quiz may include the same task with different numeric values 3 .
If there are several variables V1, … VN, each of them having its own domain Di; then the whole variable domain Dvar can be represented as a direct product of these domains: And the dimension of the domain Dvar is the sum of dimensions of D1, … DN: dim Dvar = dim D1 + …+ dim DN.
If we take one value for each variable, we make a section of the domain Dvar. The initial problem with a restricted input domain is also a problem, but with no variables now. Thus, we can reduce a problem with a variable input to a problem with the invariable input.

Constant and known number of variables
Now let us consider one variable Vi. The dimension of its domain can vary in a wide range from 1 to any value having the practical sense. In simple words, this dimension denotes the number of variable's components.
As a rule, the upper bound for possible dimensions of a variable's domain is specified explicitly for all variables in the problem's description, it is known before the checking process is started. It can be considered as a constant belonging to the invariable input Dinv.
Also, the upper bound for some variable can be specified not in the description but in check cases. Then it belongs to Dvar, is a variable itself and, thus, must have an upper bound, too. Let us call a changeable upper bound the sub-bound.
An example of such a situation is "N integers A1, … AN are given (1 < N < 100 )…". Here variable A consists of N components A1, … AN and, therefore, its dimension equals to N. Variable N is the sub-bound of the current dimension, and 100 is the invariable upper bound common for all possible sub-bounds. Note that each Ai must have its own upper limit too, but this example does not mention any.
A sub-bound is variable but becomes known when the check starts.

Indefinite length of the input
Now let us consider the case when the actual dimension of a variable's domain stays unknown until the end of the checking.
Example is "No more than 100 integers are given…" Here we do not know how many components A1, … AN the actual input has. We can preliminary write all of them down and count them; then we will know the current sub-bound N (not given but calculated). Thus, we return to the case of a known sub-bound. On the other hand, we can process these components not using the value of N at all. The difference can be illustrated by cycles: for 1 to N do… and do… until <the end is detected>.
In programming, the second way is preferable since it means that the input file must be read through only once. And the first way means that reading is performed twice, which is inefficient if the file is large.
Another example of the situation when the number of variables must be retrieved from the input is "A graph is specified by the list of its edges, which are pairs of vertex numbers".
Let us note that theoretically both the number of variants and their range can be infinite. Nonetheless, practically it is impossible.

Power of the output
The number of possible correct answers |R| is very important for our discussion of the automated checking. Here we only mention the possible variants. And the influence of the multiplicity of possible correct answers onto the checking process is discussed in Section 2.3.4 Checking and judging. |R| = 0 means that the problem is stated erroneously. No correct answer is possible. Nothing is to be checked. Such problems must not appear in any test, quiz or contest. Some ways to avoid such errors are discussed in Section 3.1 Problem's description. |R| = 1 means that the solution exists and it is unique. In this case, the checking is obvious and easy: it is sufficient to ascertain that the output coincides with the given exemplar answer.
|R| > 1 means that the problem has several correct answers. There can be three cases:  |R| is finite. For example, "The anterior part of a shoulder is called a collar bone or a clavicle".
 |R| is infinite but denumerable. For example, "Any even integer".
 |R| is infinite and non-denumerable. For example, "Any real value from the interval [0 .. 1]" or "Any point on the plane within the circle with the centre in (0, 0) and radius 1".
Let us note that restrictions of the computer data representation obviously reduce the case of infinite (denumerable or non-denumerable) |R| to the case of finite |R| > 1. The only difference between them is in approaches to the checking.

Solution: Method or result?
Now let us return to the difference between an outcome and a solution. What should we check? Should the result or the method be of most interest?
The well-known joke (unfortunately, its author is unknown to us) illustrates that an erroneous method also can produce a correct answer: Thus, we have to remember that the aim of checking is to form a judgement about the method not the outcome.

Method is a White box
So, how can we check a solution method?
One way is to check the description of the method. For example, "To find a Fibonacci number, sum two previous Fibonacci numbers, starting from two units". Or, mathematically, "For any natural k > 1, Fibk = Fibk-1 + Fibk-2 , while Fib0 = Fib1 = 1". These are two equivalent descriptions of the same method.
Still, there can be equivalent but different methods. For example, in order to find the greatest common divisor (G.C.D.) of two natural numbers, one can a) use the Euclidean algorithm 4 or b) find all natural devisors for both numbers separately (by trying to divide them by each natural), compare these sets of divisors, and find the greatest common one. These methods are obviously equivalent, while the first one is much more efficient than the second.
If it is important that the solution method be a particular one, the author of the problem can shift the focus from the result to the method: not "Find the G.C.D. of two naturals" but "Describe the Euclidean algorithm of finding the G.C.D.". In this new problem, what earlier was a method (one of several possible ones) became the result.
Although there exist methods for automated verification (starting from Floyd (1967), Hoare (1969 and Anderson (1979), these methods have been developed by their followers), our aim is to make the checking easier for a wider circle of teachers. Therefore, we seek for less complicated and laborious way of checking. The mentioned verification theory and methods are the instruments for designers of the automated checking systems not for users of these systems.
So, let us consider another way of checking.

Method is a Black box
The other way to check a method is to inspect its behaviour: "if we feed a valid input, what output shall we get?" This approach is called Black-box testing (was introduced by Ashby, 1956).
The theory of Black-box testing is well developed for computer programs (see, for example, Ashby, 1956, Beizer, 1995or Ponrod, 2014; we shall try to adopt some of its methods for developing the theory of the automated checking in education.

Correct or incorrect?
How can we decide that the method under examination is correct? For the behavioural approach, the answer is "a method is correct if and only if it always produces a correct outcome". But what is the correct outcome? It is the result of applying a correct method M to the valid input data: Therefore, we need some exemplar method. We declare this exemplar method Mex correct and check whether the method under examination is equivalent to Mex. In other words, we believe that method M is correct if and only if, being applied to the same inputs, methods M and Mex produce the same results.
To make the matter more intricate, there is a situation with multiple correct answers (see Section 1.3 Power of the output). In the case of |R| > 1, the exemplar method should provide all possible correct outputs while the method under examination may produce only one of them. So, the equivalence should be not between two methods M and Mex but between the method M and only a sub-method of the method Mex.
Note that we cannot prove correctness both of a method and of its outcome simultaneously. We only can prove that two methods are or are not equivalent. Here is the source of unavoidable difficulties: if the exemplar method is erroneous (intentionally or unintentionally), it produces the erroneous outcome, which nonetheless is declared "correct". Therefore, henceforth we call the exemplar method's outcome not correct outcome but exemplar outcome.
Irrespectively to its actual correctness or erroneousness, the exemplar outcome is the base for judging about correctness of a method under examination. Therefore, it is important to eliminate the possibility of errors in the exemplar method and the exemplar outcome. And here an automated system for preparation of problem complexes can be of great use (see Section 4.2 Automated systems for preparation of problem complexes).

Exemplar input and output
How can we get an exemplar outcome? Should we apply the exemplar method to all possible inputs? Obviously, this way is too generous. It is sufficient to apply the exemplar method only to some characteristic representatives.
The domain of valid inputs D can be split into equivalence classes. Input data belong to the same equivalence class if they generate (with the help of exemplar method) the same (or equivalent) outcomes. Some of these outcomes should be "good", some "bad". Each equivalence class is considered to be a partial case. Only one representative from each partial case is sufficient for the exemplar input (see, for example, Beizer, 1995, or Myers, 1979or 2011. If the domain D is infinite (see Section 1.2 Power and dimension of the input) than some (or even all) of the equivalence classes can be infinite too. If the number of classes is finite, getting one representative from each class forms a finite set of exemplar inputs. Still, there can be infinite number of equivalence classes. In order to restrict this number, additional restrictions should be imposed on the domain of valid input data.
The partition of the domain D into equivalence classes can be done manually basing on the characteristics of the subject domain and the problem itself or automatically through the inner properties of the exemplar method.
In programming, such exemplar method that predicts exemplar inputs and outputs is called an oracle 5 .

Check cases
Having an exemplar method, one can trace all partial cases it processes. Since all inputs from an equivalence class are interchangeable, the representatives can be selected randomly.
Now that we have a set of exemplar inputs and an exemplar method, we easily produce the corresponding set of exemplar outcomes, each of these can consist of more than one "correct" output (see Section 2.3.1 Correct or incorrect?) Let a check case be a pair of some exemplar input and the corresponding exemplar outcome. We refer to a pack of check cases as a check set. Here we follow the analogy with test cases and test sets in programming 6 .
Mathematically, a check case is a set of points representing a section of the domain of the functional M. In common words, a check case is a sub-problem of the initial problem where all variables in the D, C and R parts have concrete values.

Checking and judging
Having an exemplar input and the corresponding exemplar output, we apply the method under checking to the exemplar inputs, get outputs, and compare each acquired output with the corresponding exemplar output or the exemplar outcome.
If the problem admits only finite number of correct answers, the comparison can be easily performed by verifying the coincidence (see Sections 1.3 Power of the output and 2.3.3 Check cases). In this case, the exemplar outcome consists of one or several exemplar outputs. Let us also note that a poly-dimensional output brings almost no difference into the result-checking procedure.
The case of an infinite |R| is more difficult. We cannot practically list all possible outputs; therefore, the "comparison" should mean performing a special checking formula, which depends on the type of the valid outputs. For example, we can ascertain that "a real Z belongs to the [0..100] interval" by checking that both Z ≥ 0 and Z ≤ 100 are true. A poly-dimensional output can demand more complex formulas. For example, the result "a point on a plain with coordinates (x, y) belongs to the circumference with the center in (0, 0) and radius A" can be checked with the help of the x 2 + y 2 = A 2 formula 7 .
If the author of the problem would rather avoid such difficulties, the problem's statement should be revised and the type of the output changed.
If the acquired output coincides with an example output (when |R| if finite) or meets the differently stated conditions (when |R| if infinite), the check case result is correct. Otherwise, it is incorrect.
After all check cases are processed; a judgment about the correctness of the whole method can be formed. And there are two ways for this.
The first way is the dichotomy "all check case results are correct" vs. "at least one check case result is incorrect". The method is considered correct if and only if all its check case results are correct.
The second way is a gradation based upon the number of correct check case results. The metric for this gradation can be determined in various ways. For example, in an equipollent metric, each check case gives 1 point or 100/n percent of the result. On the other hand, in a weighted metric, check cases make different contributions to the result. On this way, a method can be more correct or less correct than the other method, according to their metric values.

Problem complexes
Now let us look at a problem as the subject for the automated checking.
The problem complex should include:  Description of the problem,  Specifications of a valid input and output,  A check set, which is a pack of exemplar input-output pairs,  An exemplar solution method.
The first and the second parts are "exterior". Contestants may see them. The third and the fourth parts, on the contrary, are for inner use of checkers and judges only.
The last two items are discussed in Section 2, now let us consider the remained two.

Problem's description
The structure of descriptions of programming problems has been studied by Andreyeva (2002, in Russian). Here we repeat some of those results.
The full description of a problem must contain, explicitly or implicitly, the following parts:  Introduction. A more or less detailed characterisation of the subject domain.
If this part is omitted, the problem is already formalized (such problems are often called dry).
It is important that, with the help of different Introduction parts, the same base (formalized) problem can produce several seemingly not similar problems. Their descriptions can have nothing in common at all; still, they are the same problem and their solutions can be checked by the same check set.

 Definitions, agreements, terms, if necessary.
This part can be omitted if the problem only uses commonly known notions. Still, putting anything by default can cause difficult-to-locate errors and misunderstandings.
 Statement. A formalized presentation of the problem, its conditions and restrictions.
If this part is omitted, the problem needs formalization (as if it just has emerged from some informal subject field). Nonetheless, the Task part always can serve as a clue for formalization.
 Task. Requirements whose fulfilment means that the problem is solved.
This part cannot be omitted.
 Formats for the input and output data. Definition of the way to write down the input variables (if any) and the results.
This part is important not only for programming problems but also in tests and quizzes as well.
 Example of a correctly written down solution and result.
This part is not obligatory; still, it is strongly recommended that it is provided.
If any of these parts is omitted or feeble then understanding and solving of the problem, checking of the acquired results can become much more difficult. Mistakes, inaccuracies, ambiguities, inconsistencies, conflicts between parts will necessarily lead to an erroneous solution of the problem (Andreyeva, 2002).

Specifications
All variables must be listed in the Input Specifications subsection of a problem complex (see Section 3. Problem complexes); for all of them, the type and the bounds must be specified. Still, variables of complicated types may have an undefined length (see Section 1.2.4 Indefinite length of the input). This is mostly stated in the Formats for the input and output data section (see Section 3.1 Problem's description).
Input and output data specifications, restrictions and clauses are specified in the problem's description written in a natural language. A textual analysis can automatically extract the preliminary specification list, which should be revised manually (Andreyeva, 2018a).

Automation
Systems for the automated checking of solutions imply some restrictions on the types and wording of the problems. This also demands a higher discipline from authors of all parts of a problem. The special systems for the automated preparation of program complexes can reduce the number of possible errors, ambiguities, and inconsistencies.

Preparation of problem complexes
The process of preparing a problem complex is iterative: creating or changing each part (see Section 3. Problem complexes) can impel changes in any other parts. (c) sets specifications S for the input and output data.

Stage 2. From specifications S and decomposition D * , a check set CS is prepared.
This can be done manually or automatically with the help of a test-preparing system (see Section 4.2. Automated systems for preparation of problem complexes).
Stage 3. An exemplar solution ES is written (manually) and is debugged with the help of the check set CS.
In order to reduce the number of possible errors, it is recommended that problem complexes are created collegially. If two authors А1 and А2 write two different exemplar solutions ES1 and ES2 and use two check sets CS1 and CS2 for debugging, both of them fulfil stages 1 to 3, and then Stage 4 arises.
Stage 4. Two check sets are compared and combined. Both solutions ES1 and ES2 must be tested on the united check set CS = CS1 U CS2. If no cross-errors were detected, it is necessary to ascertain that this united check set agrees with the final decomposition D and meets the final specifications S. Most likely, the united check set CS will be superfluous; and, therefore, some surplus check cases should be excluded.
The 4 th stage can also be useful for the individual preparation of a problem complex. The author's initial check set and the automatically generated check set can be treated as CS1 and CS2.

Automated systems for preparation of problem complexes
Automated systems for preparation of problem complexes (ASPPCs) are described by Andreyeva (2018b, in Russian). The important part of an ASPPC, the automated system for the generation of test sets (ASGTS) was also studied by Andreyeva (2016). Here we translate some of those results.
ASPPCs make preparation of problem complexes easier and more accurate and eliminate the amount of possible errors, especially if the problem's description, specifications, the check set, and the exemplar solution are created collegially.
At Stage 1 (see Section 4.1 Preparation of problem complexes), an ASSPPC should:  Extract a preliminary set of specifications S0 from the description of the problem (see Sections 3.1 Problem's description and 3.2 Specifications) by means of the textual analysis,  Check the consistency of specifications,  Extract possible information about boundaries, exceptional points and so on from the problem's description and specifications S0,  Construct a preliminary partition P of the valid data domain D into equivalence classes (basing on the specifications S0 and additional information provided by the author(s) of the problem),  Compare, join and intersect partitions P1 and P2, 8 On the very first stage, it is impossible to use the exemplar solution since it is not created yet.

At Stage 2, an ASSPPC should:
 Create exemplar inputs basing on the partition P,  Ascertain that the author's check set CS0 covers the partition P,  Verify that the check set CS0 meets specifications S0 and restrictions R.
If the necessity to change the initial specification set S0 is detected, the process of creating an exemplar check set should be started anew, now basing on the renewed specification set S0 ′ .
At Stage 3, with the exemplar outputs generated with the help of the exemplar solution (method), an ASSPPC should:

Conclusion
Our aim is to automate processes of preparing the problem complexes in any subject field, in order to make the automated checking easier and its use wider.
We have considered the notions checking and correctness and have ascertained that not only programming problems but problems from other subject fields too can be checked automatically.
We have studied processes that constitute the preparation of a contest or a quiz and the checking of their results and have shown which of these processes can be automated.
We discussed the necessary parts of a full and consistent description of a problem and have proposed ways to reduce the number of possible author errors, ambiguities, and inconsistencies.
We have shown that automated systems make the preparation of problem complexes easier and more accurate.
The future aims of our work are (a) to design means for the coverage analysis of the partitions created automatically from exemplar solutions, (b) to develop the mathematical apparatus for operations with partitions of different types, (c) to create means of partition analysis in order to ascertain that all important equivalence classes inspired by the current subject field are considered, and (d) to develop means that can suggest additional partition variants basing on the analysis of the type, the power and the dimensions of the input data. Andreyeva, T. (2018a). Automated preparation of problem complexes.

Introduction
As the most sophisticated and effective way of communication in the modern world, the Internet has become part of the modern human reality. Nowadays, it is almost unavoidable to effectively work in a workplace of any profession that requires a high level of education and competence, without using this irreplaceable communication and learning resource. Efficiency in the performance of any profession directly depends on the way and available opportunities that are used over the Internet. Everyday life of each individual is also under the great influence of various technical possibilities and learning potentials provided by the Internet. In the modern world, the Internet has become the primary means of communication between individuals, institutions, organizations etc., a means of education, learning and entertainment. In the fields of professional and everyday life usage, the Internet is very widely used.
In a technical sense, the Internet represents a global system of interconnected computer networks, through which data are exchanged. It is also referred to as the "network of networks", consisting of millions of private, public, academic, business, government, and nongovernment networks around the world, based on various technological solutions. This global network serves as the basis for various resources or possibilities of the Internet, such as web communication (www), email (e-mail), "chat" on the Internet (online chat), video communication, file sharing, online gaming, and so on. The Internet is a complex conglomerate of various systems and subsystems, connected in a comprehensive network structure. It is, in itself, the most complex system that man ever created, with the tendency of further extending and improving different structures and functional connections, applying new technological possibilities and solutions. This is also facilitated by new data transmission technologies over the Internet and constantly increasing of the speed of connections and data flow in both directions (transfer, download and upload).
What are the basic characteristics of the Internet? What is the importance of the Internet for an organized, systematic and purposeful activity such as education and education? Which educational and other influences can be achieved through the Internet? Also, in what ways can the Internet be used for educational purposes, in order to make this process more efficient? These are some of the important issues that pedagogy as the science of education should seek adequate responses and improve knowledge in this area.
There are a number of different general and specific characteristics of the Internet, ranging from the level of technological-technical solutions to the level of highly sophisticated communication models on the Internet, which are performed with complex software. This is reflected in a wide range of possibilities for using the Internet for various purposes, and consequently in the field of realization of the process of education and for learning purposes. For many years, the Internet has been used for educational purposes, that is, it can be said that it has been put into the function of education and learning . From the very beginning of the development of Internet, it has been established that some of the opportunities offered by Internet can be applied in the process of education and that in this way the organization and process of realization of education at all levels in which it is organized and conducted, can be significantly improved. With the development of the Internet, the level of application of its capabilities in the process of education has been gradually increased, with a wide scope for further introduction of new and more expedient use of existing Internet capabilities in this area.
One of the areas of education, which owes its more intensive and more complete development, as well as the expansion in today's time based on the development of the Internet, is the field of distance education (Moore & Kearsley, 2005). In addition to the term "distance education", in pedagogical theory and practice, concepts such as "distance learning", "online education", "online learning", "e-learning" and other concepts (Moore, Dickson-Deane, & Galyen, 2011), to a greater or lesser extent, coincide with the scope and content of the general term "distance education" or belong to it as part of the content. The term "online" means the situation of an active computer connection to the Internet, and in this case, "online education" and "online learning" mean the use of a computer connected to the Internet in the distance learning process.
The essence of distance education is to provide educational opportunities for people who are not able to be physically present at the place where education is organized within a particular institution (Moore & Kearsley, 2005), or who are physically distant from an institution that provides educational opportunities remotely, in the form of a long distance education program. This field of education is particularly suitable for further education, post-secondary nontertiary education, as well as for the design of different models of adult education. In the practice of the realization of distance education programs, it has been proven that good results can be achieved precisely in the field of adult education, which is designed for different purposes (professional development, acquiring a vocation outside the profession, acquiring a higher level of education, etc.). The field of distance education is appropriate for some fields of economy, for persons who, on the basis of their workplace nature, cannot be absent for the purpose of attaining a higher level of education. Different opportunities in the field of distance education are also provided to persons employed in the military, police and similar services, who are also not able to participate directly in the process of implementing conventional education programs.
Based on the above, we can also talk about certain content of education that can take place over the Internet. However, in such a situational definition of education, it is necessary to start from the very definition of education, in order to separate the influences and activities that belong to the field of education through the Internet, from those who do not belong to that field. If education implies a system of planned, intentional (aim-oriented), organized, and systematic influences on the development of an individual as a whole, then the elements of education over the Internet can be considered only those effects on individuals who are planned, intentional, organized and systematic. So, these would be those influences that are designed and organized with the purpose of achieving certain educational goals . In this way, a key difference is seen in relation to most other "influences" on an individual that come over the Internet, but which cannot be subsumed under area of education. For example, when an individual finds on the Internet contents that will have a certain impact on him/her, in a wider socialization process, it is not education in the true sense of the term.
In the system of education, the Internet can be used at different levels within the system. Regardless of certain limitations in constituting the structure of the Internet usage level in the system of education and the seemingly patterned approach in the constitution of this structure, in this sense, the education system can be divided onto the following levels: (1) the level of the Ministry of Education, (2) the level of local governance, (3) the level of the organization of an educational institution, and (4) the level of realization of the process of education, teaching and learning. Without neglecting the importance of using the Internet in the first three levels within the education system, the science of education should pay particular attention to the level of Internet usage that relates to the organization and realization of the education process, with particular emphasis on the part of that process that takes place through teaching and learning.
Certain characteristics of the Internet are of the great importance for the realization of certain activities in the field of educational activities and the use of the Internet for this purpose. In this paper we deal with the following characteristics of the Internet, which are important for educational activity: (1) diversity of contents, (2) accessibility of information, (3) possibilities of effective communication, (4) diversity of interactions.

Diversity of contents
On the Internet, every person with a certain level of training, skill and resourcefulness can find everything that is necessary to perform a business task or a personal activity, in a quick and efficient way. With a certain level of systematic training for using the Internet, the scope of what can be found on the Internet is increasing significantly. The richness and diversity of contents in all areas of knowledge and entertainment is one of the key characteristics of the Internet. Different preferences and interests, as well as the curiosity of each individual, can be met on some part of the global network.
However, the fact is that not all contents on the Internet are equally accessible, valuable, and usable. Therefore, a certain level of training is required for the purposeful use of the diversity of contents provided by the Internet (Trexler, 2018), with the rational and cost-effective use of time spent on the Internet.
Contents that are posted by scientific institutions have scientific value and reliability. The various contents of these institutions are very useful materials that can be found on the Internet, and are of the great relevance to the academic public. These can be the following contents: texts from scientific journals (original scientific papers, review papers), scientific monographs or parts of monographs, scientific discussions, polemics and depictions, doctoral dissertations, descriptions of scientific projects, elaborates, analyzes, data bases, etc. Texts from scientific journals can be placed as electronic editions of scientific journals, or in the option of selected texts according to different selection criteria. Special significance has all contents which are enabled for audience in the mode of open access, which includes free access (access without paying) to scientific results published online.
The various national scientific institutions and non-governmental organizations, both nationally and internationally, have wide-ranging areas of comprehensive databases and electronic libraries, with the ability to access, search and download over the Internet. Some of these databases are DOAJ (https://doaj.org), EBSCO (http://search.ebscohost.com), ERIC (Educational Information Center -http://www.eric.ed.gov), Academic Search Premier and other services. Some of these electronic libraries have free access, and some are accessed with assigned username (password) access, which allows access only to registered users who are engaged in teaching-scientific activity at the university level. Unlike them, certain contents posted on the Internet by legal entities whose activity is not a matter of science or by individuals, does not necessarily have scientific value. When downloading such contents, it is necessary to have the precaution that should be expressed in relation to their credibility, correctness, accuracy, etc. However, these contents do not necessarily and a priori should be considered unusable, circumvented and rejected. On the contrary, the greatest amount of useful knowledge and information can be found in this sector on the Internet. On this basis, it is necessary to use knowledge and information from this sector, but by checking and verifying credibility of their sources.

Accessibility of information
In the period before the emergence and development of the Internet, one of the key problems in the use of knowledge and information was the problem of their accessibility. Access to different knowledge, content and information was generally limited by the technical capabilities of key mediators in the transmission of information that were predominant in a certain stage of the development of mass media, in the following line of appearance and development: printing, radio, television, satellite television, cable television, and so on. These various media in the exchange of information were various state, public and non-governmental institutions and organizations (libraries, cultural institutions, public information institutions, public services in different areas, etc.).
With the appearance and development of the Internet, the accessibility of information is drastically increased, regarding the amount of information that is constantly increasing. What inevitably follows a dramatic increase in the volume of information on the Internet is the need for information selection.
In spite of the fact that the volume and accessibility of information on the Internet has continued to increase, there has been a limited access to information from the very beginning of Internet's development in various areas, which is enabled to certain predefined categories of users. In addition, there are different levels of "confidentiality" of access. For example, the highest level of confidentiality would be the data stored in intelligence services' databases, if at all available on the Internet, with the highest level of access restriction (multiple levels of access protection). The restriction of access, as already described, also exists in the area of electronic editions of scientific papers published on the Internet, which can be accessed based on the user name and password, enabled by payment for the access.

Variety of interactions on the Internet
By looking at the basic possibilities of communication on the Internet and their basic characteristics, it can be seen that there are huge opportunities for diverse interaction over the Internet, which in itself points to the numerous possibilities of applying interactions over the Internet in the process of education (Internet Society, 2017). However, it is not possible to transfer all models of online interaction into the process of education, and in the same or similar way use them in the process education.
In the process of education, in addition to the individual activities, different forms of interaction also play an important role, enabling individuals to develop their abilities and skills through different activities and interactions. Interaction in the process of education can be a personalized and depersonalized interaction, and we have a similar situation when it comes to various forms of interaction that take place over the Internet.
Personalized interaction in the process of education is the form of interaction in which a student as an individual enters in an active relationship with other subjects of the process of education, with one or more individuals. Personalized interaction over the Internet is accomplished through various forms of interaction, such as student-student, teacher-student, student-student group, student group-student group, etc.
Depersonalized interaction in the process of education is the form of interaction of teachers and students with the physical environment in which the process of education takes place. For example, a student is in interaction in the flipped classroom with didactic material (Trexler, 2018), when he solves the task in the worksheets, when he builds the model of the house, when he constructs a given geometric form based on the available parameters, etc. In fact, various forms of depersonalized interaction can often appear in the classroom, and they are important for the development of different abilities and skills in students. There is a wide range of possibilities for the realization of various forms of depersonalized interaction over the Internet, and these possibilities should be purposefully used.
Also, it must be emphasized that there are certain forms of interaction in the process of education that cannot be enabled over the Internet, or can be enabled on a limited scale, which are important for the more efficient implementation of the process of education, teaching and learning. This applies, first of all, to the models of direct interaction, such as teacher-teacher, teacher-student, and student-student. Despite the fact that these interaction models can also be achieved in communication over the Internet, there are some limits because the fact that the characteristics of such interaction are conditioned by the lack of a complete direct contact between the subjects of interaction. Despite the fact, a teacher and student can communicate over the Internet and thus make interaction as a part of some learning activities.

Conclusion
Internet as a basic means of mass communication has a wide field of application, and it will increasingly gain in importance in the field of institutionalized and non-institutionalized education in the future. Some bold assumptions about the importance of the Internet in this area are aimed at predicting that the Internet will play a key role in this domain, which in particular refers to the emphasis on the importance of future distance education. The role of the Internet will increase in the future in all area of education, at all level of education, and also in domain of existing of different form of individual informal learning.

Introduction
The beginning of the 21 st century is followed by the rapid development and implementation of information technologies (IT), i.e. information and communication technologies (ICT), in all segments of society and economy, and on the other hand by the rapid progress of globalist tendencies that create a new social reality. These tendencies surely have a complex impact on contemporary education. On this basis, the question arises, whether changes in education will take place in a planned, organized and systematic way, with a clear vision of the future, or will this take place in a kind of free process. In addition to the aforementioned global challenges, educational systems are also confronted with structural reorganization due to the essential changes that taking place in the social systems, due to the phenomena of political and economic crises, with an additional and very serious problem of the chronic lack of financial resources for the implementation of planned reforms. One of the key roles of education experts is that they basically do not bear the primary responsibility to address the common educational challenges of today's world. Therefore, their primary theoretical and research activities consist in designing concepts for sustainable development and modernizing of education, starting from real social and economic potentials of education in modern society.
The environment in which today society and economy exist and develop can be characterized as rapidly changing, which is a global context that carries with it a certain level of uncertainty in society, and it is particularly relevant to the characteristics of economy and business. The most important change that the world encounters in society is globalization -the creation of a unique economic, political and cultural space in the world (Jarvis, 2000;Drori, 2007). We are witnessing an accelerated emergence of an integrated world market where people, goods and capital are freely circulating, and whose connective tissue is a fast flow of information and using of information and communication technologies.
One of the significant changes that also shapes the world is the rise of the world's population. There is an important problem with the understanding and management of changes that take place according to an exponential law like this. Difficulties arise because the effects of change are difficult to notice for a long time, and then they suddenly appear and bring about different kinds of challenges which needs to be resolved. Based on the presence of this type of challenges, it would be necessary to establish the long-term capacities to monitor and understand such complex changes that implies different types of consequences in society and economy.
In addition, also an exceptionally significant change relates to the phenomenon of increasing the scale of knowledge in the modern world. This phenomenon implies different types of consequences, both positive and negative, when it comes to the further development of society, economy, and the way of life in the modern world. As a result of the increased number of innovations and shorter cycles of knowledge development, there is a simultaneous consequence of the fact that certain knowledge becomes more obsolete and replaced with new more usable knowledge.
When it comes to the functioning of education system in the modern world, which is defined as information society or knowledge society, education professionals and experts for studying of education are facing a permanent challenge of improving and modernizing existing educational practices. Historically, this type of challenges and needs have always existed. Throughout history, in any society that had a stronger intention of its own development, this type of intention was expressed through the need to improve effectiveness of education practice. Sometimes the spirit of time is conditioned by radical social changes and the rapid development of science and technology. Then, for certain generations, a great responsibility for the fundamental re-evaluation of the existing education system' structure is imposed.
It is undoubtedly that the need for introducing information technology into education system and educational practice is increasingly being imposed, precisely because of the key improvements in the educational practice that can be achieved by using IT in the field of education (Office of Information Technology, 2017). However, in spite of the undoubted advantages that for the realization of education process arises from the implementation of IT, in the practice of formal education there is still a persistent tendency of domination and wider presence of classical methods of education, teaching and learning. In addition, it is evident that a large number of students at home use the Internet and educational multimedia for learning and homework assignments, as well as other types of obligations arising from the realization of school programs. Using these educational materials, students, without professional help and guidance, often come up with information that by their actuality goes beyond the knowledge of their teachers in this area. Based on this fact, the exceptional educational potential of the Internet and educational multimedia can be seen. The question arises whether the time has come to begin seriously and without delay to work on the systematic introduction (implementation) of information technology into the mainstream of educational practice, in addition to the obvious fact that the potentials of information technology are rapidly increasing year after year, while the losses and consequences of ignoring these trends are growing. The lag in this sense will in reality be difficult to compensate in the future. Nevertheless, the implementation of information technology in education is still viewed primarily as an easy, interesting alternative form of transferring and acquiring knowledge.

Education for knowledge society
The strong expansion and accelerated development of the information technology over the past 40 years has caused major economic, social, political and cultural changes globally. The industrial society of the 19 th and 20 th century gradually but continuously gave way to a new form of socio-economic organization known as information (or post-industrial) society. The socioeconomic changes are radical, lasting, and irreversible. The new socio-economic, political and cultural reality necessarily implies different types of consequences in all areas of social life, and therefore in all areas and at all levels of institutional education. The features of education system in the information society, bearing in mind the complexity of new challenges and the potential of the newly created opportunities brought by postindustrial societies, require an extremely extensive multidisciplinary scientific analysis (Tondeur, Van Braak, & Valcke, 2006). Building an education system in the information society presents an extremely complex and time-consuming process, and it is important that in today's designing education for the future, the course of its development should be placed on stable foundations.
In order to be a competitive and knowledge based, the economies of each country must become better in creating knowledge through research and development, in the distribution of knowledge by education, and in the application of knowledge through innovation. This is imposed as one of the key conditions for the development of society and economy at the present time, and therefore as one of the basic characteristics of the information society, that is the knowledge society. In order to keep pace with modern trends, which is of key importance for economic development, society must have a large percentage of highly educated population, and large state investment in education, science and research. Also, as the imperative of modern society, there is a need to encourage and create conditions for lifelong learning, among other things, through the formation of a quality and accessible information and communication infrastructure (Pelgrum, 2001), which should be directly a platform for broad and easy access to information. For the aforementioned reasons, education has a central social role in the knowledge society, and the education system is its key institution (Drucker, 2001).
The building and development of a information society, a society of educated, flexible and creative people, with the ability to learn, to learn throughout their lives and to participate in a creative and productive way in economy, is a task that depends to a large extent on the capacities of education system. It is estimated that in the coming decades almost half of new jobs in the European Union will require education at tertiary level, slightly less than 40% of jobs will require secondary education, and only about 15% of jobs can be done with education at the level of elementary education (Salmi, 2003).
What role in the development of a modern society can really have so-called educated elite? Despite the importance of this segment of population, the information society cannot be sustained and developed in functional ways only through the creation of an educated elite, as a kind of isolated part of population. Knowledge must permeate most of the society, so each individual must be able to use his/her knowledge, to improve it, to select what is relevant in a given context, and to understand what has been learned. All of this is a key precondition for adapting to the demands of rapid changes in the environment in which an individual lives and works. Knowledge is becoming more and more pronounced to represent a strategic social and economic resource, the only natural resource that society can build and improve (Jarvis, 2000). Countries that invest more in education and training have significant social and economic benefits -a higher level of GDP and thus a better quality of life. This is also one of the main reasons why education must be treated as very important developmental resource in society and economy.
The modern world is becoming more and more rich in information that we receive through a variety of media, and through various types of sources of knowledge and information. Today, knowledge means not only knowledge of facts, but also various types of abilities and skills to use this knowledge immediately to solve specific problems (Liyoshi & Vijay Kumar, 2008). Therefore, the aim of education today is not only the acquisition of static knowledge and knowledge on the level of facts, but also the development of different skills to apply it immediately to solve any particular problem in the professional or everyday life of an individual. There is a need for each individual to form the capacity to process information in order to gain any benefit from the knowledge and information he/she possesses. In this context, it is very important to develop the activities of connecting information and creating knowledge from information, as well as functional facing with contradictory information and data, on which problem solving and decision-making should be based.
The information (knowledge) society is not only a society based on the implementation of information and communication technologies in which knowledge is a worthy product, but also a society that imposes new ways of its organizing, with the capacity to set new roles to different systems (one of such systems appears as education system), as well as redefining and objective evaluating of different types of resources, including human and other resources, which are an integral part of society and economy. Based on the aforementioned, education plays a vital role in the development of a knowledge-based society and economy and a new aim is to educate throughout life, because a knowledge-based society is at the same time a society of permanent and lifelong learning (OECD, 2000;Jarvis, 2000). It is a request to each education system, as one of the basic aims, that each individual should be enabled to use his/her knowledge, to improve it, to choose what is relevant in a given context, to understand what has been learned so that he/her can use knowledge to solve problems within the working and social environment, which are changing rapidly.

Information technology and education
Teaching practice in technologically highly developed countries suggests that using high quality educational software in classrooms, where each student has access to a computer, and with the leadership of teachers who know well their subject and methodology of education using information technology, enables to achieve a very high performance in the teaching process. In addition, frontal, individual and group forms of work can also be used. It is also possible to achieve significant results in the process of presenting new educational content, both in the process of expanding and correlating already acquired knowledge, and in the whole process of managing the teaching and learning process.
One of the priorities that is imposed is to enable the appropriate use of information technology. In this regard, it is necessary to satisfy some of the basic preconditions, such as: (1) technological equipping of educational institutions; (2) designing and production of educational software; and (3) training of professionals in education for the implementation of IT in education and teaching.
The building of the appropriate technical infrastructure implies providing a sufficient number of computers that could be used by students and their teachers, providing unrestricted access to the Internet available to all interested students within educational institutions, and providing technical precondition so that each educational institution can form a kind of its own educational database (American School and University, 2011). This would allow the elementary and basic presence of the information technology in education.
An important precondition for successful implementation of the IT in education is development of educational software. A significant part of the multimedia presentations for education, science and culture shows was produced with unsatisfactory quality of design and production, which primarily concerns pedagogical and didactic value of the materials . The problem is based on the lack of necessary connectivity and cooperation between educational institutions, education professionals (teachers and administrators), and companies involved in the design and production of educational software. Also, it would be helpful to make efforts in terms of animating entrepreneurs and software companies to invest their capital in the development of educational software. Establishing of market principles and relationships is a adequate way to improve situation in the field of educational software. Potential consumers of educational software are not just students, but also a wider audience that wants to strengthen their knowledge in certain areas.
An important precondition is also the provision of well-educated teaching staff trained through their initial education for the professional implementation of information technology (Tondeur, Van Braak & Valcke, 2006;Internet Society, 2017). There is a clear need for the systematic professional training of existing teaching staff, as well as the introduction of IT education within initial education of teachers, so that every future teacher will undergo professional training in IT implementation for the realization of the contents of his course, thus providing trained teaching staff, ready to implement contemporary teaching using modern teaching technologies.

Sharing responsibilities in the process of implementing IT in education
It can be assumed that the greatest burden of the successful IT implementation in education should be paid by the state budget and state educational institutions. However, the inevitable role in this process also certainly belongs to the private sector, which in particular refers to encouraging entrepreneurs to invest in the design and production of educational software. Since the largest number of educational institutions is state-owned, it can be expected that the state administration, to the greatest extent, will organize and financially stimulate and implement the IT in education and teaching. Naturally, in order to stimulate private entrepreneurs to participate in this process in an appropriate manner, it is necessary to find business justification (Fox, 2011), i.e. financial interest in improving and modernizing education, which contains high potential for the consumers, especially taking into account the number of educational institutions and the number of students in them. The consumption potential of education can be activated only if the necessary education reforms are carried out, that include the implementation of IT in education and teaching. Nevertheless, there are certain dilemmas regarding the interests of private sector in building of a serious strategy for investment in the area of education, bearing in mind the emergence of elements of instability which is characteristic for the market economy.
What preconditions are necessary for the successful implementation of IT in education and teaching? In this sense, one of the key preconditions is the establishment of quality communication and coordination between all interested institutions and the others interested in this process. The fact is that no one school individually and separately, nor any private enterprise, can achieve a significant progress in the implementation of IT in education by individual enterprises. The success of such individual projects is usually of a low level of effectiveness, and because of its isolation, there is no wider social significance nor the potential of achieving a wider social interest. The implementation of IT in education is a complex process which requires the long-term systematic professional operation of professional teams to develop the strategy and methodology of introducing IT into education and teaching (Tondeur, Van Braak & Valcke, 2006;Internet Society, 2017). In this sense, it is necessary to anticipate and overcome certain potential and real problems that would arise during the realization of such a broad and complex process, and it can be assumed that the capacity for this can only possess a well-organized and trained state administration. Based on this assumption, it is obvious that it is not possible to make significant progress in this area without the direct involvement of state institutions responsible for the development of education and science, based on the simple fact that they are responsible for the successful functioning of education system in whole.
For the successful implementation of this complex and long-term process, it is necessary for the state administration to transfer some of its jurisdictions to other institutions and organizations that participate in the implementation of IT in education. One of the possible solutions is the formation of special committees in which participate all the institutions and organizations that are interested to participate directly in the implementation of IT in education. In addition, these committees would take over part of state activities, which would enable continuous communication, harmonization of concepts, harmonization of interests, exchange of experiences and coordination among participants. These committees would be responsible for a variety of activities, such as: (1) establishing standards that would relate to hardware and software solutions that would be used in the IT implementation; (2) issuing of certificates for the particular individual educational multimedia programs to confirm that their quality meets certain standards for teaching use; (3) standardization of the teaching staff training process for the implementation of IT in teaching; (4) monitoring and evaluation of the IT implementation, etc.

Conclusion
There are necessary prerequisites that need to be realized as a basis for the successful implementation of information technology in education, within the education system. In order to realize an efficient implementation of information technology in the educational process, a welldesigned developmental strategy is needed which will be based on cooperation and partnership relations between different state institutions, entrepreneurs, education experts and educational institutions. In order to achieve this, it is necessary that each of the partners, participants in this process, find their own interest and motivation for their own participation in this complex process. This is also one of the key preconditions for a successful implementation of the IT in education, which in turn means that the preconditions are created for the education system to become one of the key factors in the further development of the information society and its economy.