the Kiev Taras Shevchenko University, like the world-famous projects courser.org, 
udacity.com etc.  

General information about SMPR software system. System consists of a core and 

a set of specialized modules, which are responsible for solution of certain class tasks. 
The core creates modules functioning environment with ability of solving tasks in 
parallel and sharing data between modules. It consists of the common interfaces, data 
exchange standards, boost and information systems about module.  

The core comprises a buffer that is the intercommunicator between modules. 

Buffer can manipulate various source data, as well as the results of their processing. It 
is the "environment" of the system-level data, i.e. data that can be accessed by any 
module. At the architectural level, the buffer is represented as a special class providing 
the interface for data download, store and validate for interior modules. The core of the 
system is not specified for specific algorithms of a particular course. Specifics of a task 
are provided only by the set of exterior modules, which is available to be used by the 
core. This facility of the system core allows to use it as the basis for development of 
training-methodological systems for various training courses possessing structure 
“tasks class – their solution methods” with the ability to exchange data between classes. 
Structure of a module responsible for a particular class of tasks is constructed in such 
way that the core can automatically detect not only the presence of the module, but also 
some of its characteristics (period of usage, number of attempts to use, etc.). The 
system is designed with enhancement of its functionality by adding new classes of tasks 
and methods for solving existing tasks. A new module project implementing abstract 
classes inserted at the design stage is creating to extend the list of classes of tasks to be 
solved. The formed project is compiled into a library that is added to the plug-in folder 
(padding) of the system. New function will be added automatically to the main menu 
of the projects after the software package start-up. Adding of new tasks solution 
methods is implemented slightly differently. It needs familiarization with the abstract 
class of a specific module. Each project of a module, as well as project pattern, has a 
special folder containing files with tasks solution methods classes for specific modules. 
Adding of a new method performs as addition of a new file in the folder where method 
class will be implemented, then the entire project must be recompiled. Since the system 
consists of a core and a number of modules provided in the form of plug-ins, the 
presence or absence of a single module does not affect the operation of other modules 
of the system. The scheme of the individual modules is shown in Figure 1. 

1. Conflicts and compromises; 2. Multi-criteria optimization; 3. Cooperative 

decision-making (DM); 4. Voting methods; 5. Expert evaluation, 6. DM in uncertainty 
conditions; 7. DM in fuzziness conditions; 8. Collective utility functions and topic 
"Psychological tests" [12].  

 

- 1841 -