|
Developers of training programs in math face one main problem - the source of examples to be solved by the program. Here, we will try to answer the question: what does the user loose or gain, depending on how the developers cope with this problem.
A short remark on technology.
There are three known ways to cope with the problem of source:
- To allow an input of the user's examples
- To develop a generator of examples
- To build up a database of examples
Examples entry.
For realization of this approach the developer should create:
- The database of algorithms
- The system of search over algorithms
- The data entry editor
The editor can be either general, like the MS Word, or textual. In both editors, a math example entry is quite difficult and requires skill, constant attention and accuracy.
As there is no universal algorithm for solving math problems, a base of algorithms, supplemented with a search system, should be available. Thus, the user has to accept the following set of "organic" challenges:
- To get familiar with the control system of the data entry editor
- To exercise "vigilance" while typing every example
- To spend quite a time on typing
- To learn the list of algorithms
- To find an example in the other sources
- To know what solution method is applicable to the example
Only after all these challenges are met, the user can begin working with the program. For a professional mathematician, the only real challenge is the data entry. This job is rather unpleasant. For a student all challenges are difficult while some are compelling. Surely, he'll get lots of program messages like "I cannot solve, check up the input". The children-oriented programs are sometimes supplied with small databases of examples. Such database is hard-structured by the base of algorithms and represents, in fact, a "superstructure". The purpose is to enable the user to guess the proper solution method by the appearance of an example.
The generator of examples.
What is it - the generator of examples? This is a program where an example is "described" in a parametric form. When parameters are specified, this program generates concrete examples of the given type. The set of these parametric descriptions makes up a specific base of structures. To make this approach work, the developer should create:
- Base of structures
- System of search over structures
- The structured input editor
The search system is a list of topics connected to the base of structures.
- The structured input editor allows to input numbers, specifying parameters of structure and the amount of examples of the given type. Such editors, if they are made professionally, do not permit wrong input. In the program of such type, a certain structure is related to a certain algorithm. This means that if an example is chosen, the program "knows" how to solve it. To work effectively with a program of such type, the user has to:
- Understand how the system of search over structures works
- Choose a particular structure
- Learn how to use the input editors
Enter concrete parameters
The typical system of search represents hierarchical lists. If someone works with computers, his skill is sufficient to work with such lists.
Database.
- To make this approach work, the developer should create:
- Database of examples
Various systems of examples search
- If the database of examples is small, then usually the search system is reduced to the search over contents. If the database is large, then searching by various criteria becomes feasible. To work effectively with the program of such type, the user has to:
- Understand how systems of search work
- Choose a concrete system of search
Choose a concrete example
Thus, we described three schemes of program development. You see that training programs without tasks are conceivable. In the second development scheme, the tasks are, so to speak, "archived". In both cases, the user has to pay for it by his efforts pictured above. On the other hand? there are programs with large databases of math problems. The between-developers debate: what is more convenient - to enter an example "easily and gracefully" or "to sweat" searching over the large base, is rather senseless. Let user answer this question.
The real disagvantage of the first two schemes is that it is impossible to introduce various systems of search.
- It may seem that the search system is not important. This is wrong. What is the search system for the user of a training program? This is the opportunity to sort the database of tasks by:
- Topics
- Methods of solution
- Types of task
- Levels of complexity
- Target tasks
- Theoretical attribute
- Methodical tasks
Others...
All these sorting or structuring principles come from pedagogics and are based on a centuries-old teaching practice. If the program is intended to teach, and not to demonstrate intellectual power of the developers, then it should put these principles into service.
|