DEVELOPING ADAPTIVE LEARNING MANAGEMENT APPLICATION FOR PROJECT TEAM IN IT-INDUSTRY

Keeping employees aligned with modern trends and developments in their professional areas is the main focus of a lifelong lea rning approach. That becomes even more important for such dynamic industries like Information Technology. Therefore, it’s crucial to extend existing e-learning management system with an adaptive training component that enables the effective study of on-demand skills, leading to a broader range of candidates available for project management to select from and consequently improving the overall performance of an IT company. To improve the existing learning process according to company's and employee's needs the overview of a typical learning management system functionality is given in this paper. The main benefits from the adoption of a learning management system in small and medium-sized IT-companies were discussed, analysis of their features and problems was given. The adjustment plan for the typical learning management system to be suitable for the information technology domain including module of the adaptive learning content selection using the basic principles of graph theory was proposed to reduce the time of the learning process. LMS OpenOLAT was reworked according to the adjustment plan which is reflected by the number of diagrams such as sequence diagram, IDEF0 business process description, activity diagram that shows search algorithm steps and application component diagram. Also, GUI was adjusted to provide user with a good look and feel. The benefits of the proposed approach in business processes of IT-company are shown using “Academy – Smart”. To prove the efficiency of the proposed algorithm, real courses were used. Based on the learning material, provided by “Coursera”, a number of test cases was formed and analyzed. After applying adaptive content selection algorithm according to the models of “Academy – Smart” employees, learning time was reduced and optimized. This investigation has shown significant improvement in the resource management process and acceleration of the learning process for employees.

Ключевые слова: e-learning, адаптивное обучение, система управления обучением, выбор контента, теория графов, IT -компания. Introduction. Despite the broad functionality, Learning Management Systems (LMS) have not yet reached the e-learning marketplace to provide lifelong professional development for the specific IT market that demands from developers a broad and extendable skill set. IT companies are forced to create their own LMS for managing talents and assigning appropriate employees on the upcoming projects. This approach is time-consuming and requires additional resources for the development and support effort.
Considering this fact, it is crucial to improve the existing, open-source software by automating and accelerating employee training for IT based on specific project requirements, rather than developing a new LMS from scratch. Talent management systems can be useful for accomplishing this task, helping recruiters and training professionals to develop and retain people with the necessary abilities or skills.
Combining these systems by making learning content adaptive and based on individual needs enables resource managers to shorten the time needed for preparing specialists, improve staff skills effectively and reduce the cost of training.
Taking into account integrated knowledge-based methodological framework for staff-training in ITcompanies [1; 2], we identified necessity to construct a software component for adaptive learning content selection, integrate it into the existing architecture and define which communication channels between systems should be used. These changes and the component itself are needed for effective education of employees so they could fulfill their duties within the project at the highest level. This work is part of a research task 0119U002558 "Software development methods and tools for ITcompanies personnel training using corporate knowledge".
Related Work. Unlike the regular education system, the goal of corporate learning is, first and foremost, to return on investment, namely using the knowledge acquired in the process of learning [3]. An employee at an IT company acts as the principal asset for the technological features of curriculum design and development not only to ensure effective learning, the stability of the acquired knowledge and skills, as well as the opportunity to participate in more complex and cost-effective projects.
E-learning can be defined as any development practice that is delivered via the Internet or other e-learning source of information [4]. It is an online learning system that involves the use of a computer, laptop, or any electronic device and can continuously acquire knowledge and skills through learning events that are formed, delivered, supported by web technologies. E-training is considered as part of e-earning, which is more practical in nature and involves the use of acquired knowledge in specific cases [5].
The benefits of e-learning in IT companies include the following: 1) the ability to study anytime, anywhere [5][6][7]; 2) the sequence of training [6]; 3) the availability of access to a comprehensive archive of course content and its timely updates on a continuous basis [5; 7]. 4) save time and minimize job separation [8]; 5) economy by reducing the cost of travel for employees [5; 6]; 6) increasing productivity, improving training activities, return on investment [5; 8]; 7) improvement of the skills and knowledge of employees [5; 9].
At the same time, let us point out the disadvantages of using e-learning, which include technical issues related to technology compatibility, poor internet connection, etc.; high cost of development and support; organizational problems [5].
Despite the drawbacks, e-learning has become an alternative form of acquisition of IT knowledge and practical skills through technological innovation and modern communication systems. Increasing use of this type of learning has an impact on the working environment due to the system's compliance with scalability, access and timeliness requirements [10].
Typical LMS functionality provides the following [11][12][13]: user registration; maintaining a course catalog; maintaining and providing access to the content and materials of e-learning courses; downloading e-learning modules and tools for staff; dissemination of educational material; management of educational materials; integration of knowledge management resources; checking and evaluating employees; tracking and recording employee outcomes and progress, etc.
However, the main feature in typical LMS is absentadaptive learning. Adaptive learning, also known as adaptive teaching, is an educational method, which uses computer algorithms to orchestrate the interaction with the learner and deliver customized resources and learning activities to address the unique needs of each learner [1]. In professional learning contexts, it means that computers adapt the presentation of educational material according to employees' learning needs, as indicated by their responses to questions, tasks and experiences. The next chapter describes main technologies and methodologies used for implementing adaptive learning for LMS.
Models & Methods. Adaptive learning systems have traditionally been divided into separate components or "models". While different model groups have been presented, most systems include some or all of the following models (occasionally with different names) [14; 15].
1. Expert model -The model with the information which is to be taught.
2. Student model -The model which tracks and learns about the student (employee).
3. Instructional model -The model which actually conveys the information.
4. Instructional environment -The user interface for interacting with the system.
In the developed application «student model» is used where «student» is represented by the particular employee. The simplest means of determining an employee's skill level is the method employed in computerized adaptive testing (CAT) [16]. In CAT, the subject is presented with questions that are selected based on their level of difficulty in relation to the presumed skill level of the subject. As the Вісник Національного технічного університету «ХПІ». Серія: Системний аналіз, управління та інформаційні технології, № 1 (3) 2020 99 test proceeds, the computer adjusts the subject's score based on their answers, continuously fine-tuning the score by selecting questions from a narrower range of difficulty. An algorithm for a CAT-style assessment is simple to implement. A large pool of questions is amassed and rated according to difficulty, through expert analysis, experimentation, or a combination of the two. The computer then performs a search, giving the subject a question which is between determined subject's maximum skill level and minimum required skill level. These levels are then adjusted to the level of the difficulty of the question, reassigning the minimum if the subject answered correctly, and the maximum if the subject answered incorrectly [16].
CAT successively selects questions for the purpose of maximizing the precision of the exam based on what is known about the examinee from previous questions. This perfectly firsts the issue to solve.
Besides, due to certain shortcomings of existing LMSs and certain prospects for their improvement, we propose to formulate an algorithm for testing an employee and for him to choose an adaptive program of learning in applying graph theory.
However, to implement this algorithm, it is vital to understand how to define competencies and how to map them onto employee's skill set.
Such frameworks as e-CF ("The European e-Competence Framework") and SFIA ("The Skills Framework for the Information Age") can be used for the developing of learning as the base proofed knowledge about IT competences and necessary skills.
The European Competence System (e-CF) provides an accessible and detailed description of competences accepted in the IT industry, using a unified definition for competences, skills, knowledge and levels of knowledge, providing a common understanding of them for European organizations [17].
Hence, The European Competence System was applied to select competences and relevant skills. Skills, mapped to competencies, can be represented through a graph. In mathematics, and more specifically in graph theory, a graph is a structure amounting to a set of objects in which some pairs of the objects are in some sense "related" [18]. The objects correspond to mathematical abstractions called vertices (also called nodes or points) and each of the related pairs of vertices is called an edge (also called link or line) and directed graph or digraph is a graph in which edges have orientations [19].
Proposed approach. Based on the basic principles of graph theory [18; 19], in this research we propose to represent the organization of knowledge and competencies of the staff with the help of an oriented tree. According to this, the root of the tree is a position that is likely to be given to an employee. The connecting vertices of the root are the so-called vertices of the first level, namely, the level of competence. In scope of this paper, the following approach is developed in order to implement the software for adaptive learning.
The structure of the organization of knowledge and competencies of the staff can be conveniently represented with the help of an oriented tree.
The root of the tree is a position that is likely to be given to an employee. The connecting vertices of the root are the so-called vertices of the first level, namely, the level of competence.
The leaves of the graph define the final knowledge that corresponds to certain skills. This is shown on the figure 1.  Let us look at an example of using the suggested approach for comparing a qualification and a competency tree to a real-world IT company.
The concrete but simplified example is introduced for the Middle Java Developer competency. The specified competency has a lot of requirements according to the e-CF, but let us take only some of them into consideration in order to save the visibility of the example. Having a typical business-to-customer project, the list of desired skills is as follows: Code writing that includes the usage of Spring Framework (Core, Data), Groovy language for scripting. It is assumed that Java is a top skill of the candidate, so no need to include this information to the graph. Besides, the applicant should have sufficient knowledge in CI/CD process, in pipeline creation in particular.
It is a complex task to find the candidate that corresponds the required skills with 100% rate, so in makes sense to determine the preliminary level for each unit, that reflects knowledge, enough for learning(m) and level, that matches requirements (r).
The final graph for the specified skill's requirements is represented on the figure 3.
On the represented graph the difference in r and m values is not really high, that emphasize the urgency. The next step is the search for applicable employees. Important, that employees are selected by the required level of knowledge (r) defined in the e-CF or project requirements.
Minimum knowledge threshold (m) should be defined separately depending on the urgency, because having higher 'm' value means less time for learning needed to obtain the certain competence.
The main result is the list of employees that are applicable for a particular competence (with or without learning). In order to select the most applicable employees per a competence for the future learning, the search algorithm is represented by the following diagram in figure 4. To describe the business processes of the given approach, an information model was created in IDEF0, which is shown in the figure 5.
The time needed for learning process was chosen as the main metric for measuring effectiveness of suggested approach. Continuing the previous example, the employee will be assigned to the CI/CD course.
Usually, these courses are pretty long-lasting: the course about this topic on the Udemy lasts 5.5 hours. Time needed for gaining knowledge about Pipeline is about 1 hour [20]. Therefore, it takes 5 times less to be prepared according to project needs by choosing only one unit from the whole course. So, applying the suggested approach can reduce the time consuming without loses of knowledge for project needs.
Thus, the proposed algorithm helps to determine the level of employee's suitability for the project role and suggest the learning material according to the gaps in his skills reducing the learning time.
Practical implementation. To present practical implementation of proposed algorithm for the following customization, OpenOLAT LMS was chosen because of its clear modular structure and extendability. The selected application is developed using Spring Framework and all the modules have RESTful API. OpenOLAT Learning management is used as a service, so the communication between modules is implemented by the API approach that is used by view component. As can be observed from the diagram, there are also modules for content and user profile management, OpenOLAT LMS represented a correspondding API for them too. Main components of the developed application are shown on the diagram represented by figure 6.
As a result, the application for learning employees by required competencies in IT-companies, based on the given algorithm, was developed, including adaptive learning content and skill testing modules. This application can be used wherever the API for content and user profile modules exists.
On the following diagram, that is represented on the figure 7, there is a sequence diagram dedicated to the content selection for the employee. To obtain educational content, sequential processes are performed.
1. The employee initiates a request for learning material.

2.
A method that is related to the semantics of a customer request is implemented. In the middle of the method, the controller delegates the execution of the AdaptiveContentFacade facade request.  12. AdaptiveContentFacade performs mapping of the content on the knowledge it serves and the knowledge already obtained by the candidate. In the case employee proved his knowledge in the topic, it does not make sense to take the course again. Unnecessary content is removed and adapted content is passed to the employee.
According to mentioned above, user interface was developed that supports following functionality: resource manager or any person, responsible for project team forming, can adjust facets according to specified needs regarding the open position.
This behavior can be observed from the figure 8. As a result, user interface was developed that supports following functionality: resource manager or any person, responsible for project team forming, can adjust facets according to specified needs regarding the open position. After the search for applicable people is executed, moderator can select person from list result set and apply it to the project.
In case any skill gaps are identified, the employee, suggested to the project, will receive a notiƨcation about assigned courses that are visible in the account. This page component is integrated with LMS System, after the press onto the "Enroll" button, employee is redirected to the learning material, managed by LMS.
The experimental usage of the developed approach in the practice of candidates learning for an employment in the IT-company "Academy -Smart" LTD, Kharkiv [21] was handled for 5 models: set of topics and time needed to get relevant understanding of them and the results are introduced in the table 1.
With this study we proposed the approach of learning content selection that would help to reduce the time for skill boosting process. Therefore, the time should be considered as the main measurement.
As a concrete example the real course from learning portal was introduced and the model of employee's skill level was built through the graph. According to the model, the time for filling gaps in skills was calculated and compared to the time, needed for passing the whole material. Under the circumstances, the algorithm of course selection has proved itself as efficient approach.
Conclusions. In order to achieve the goal of the thesis, the following tasks have been completed.
1. The subject area was chosen for e-learning in small and medium-sized IT companies, according to which the approaches to personnel learning in terms of project requirements were analyzed.
2. The advantages and disadvantages of using corporate e-learning in the corporate sphere are identified. The purpose of such learning and motivation is determined. Based on the analysis of the subject area, it is concluded that the need to develop software to implement an adaptive approach to the formation of educational content. 3. The characteristics and classification of modern elearning systems of the personnel are given, the general structure of such systems and their typical functionality are analyzed, which made it possible to identify ways of improvement-learning systems and corporate adaptation options. 4. A model of competence structure display based on graph theory is proposed, sequential steps for selecting educational content for individual needs are visualized.
Therefore, the approach for creating adoptive learning content was suggested, that enables resource managers to form teams automatically and according to project needs, and to provide employees with learning material that corresponds their individual level. The main benefit and the efficiency of this approach is that costs for learning are reduced significantly. In the demonstrated example, period needed for learning, was reduced in 5 times. This goal is achieved by minifying the learning content to be a perfect fit with regard to employee's skills and requirements for the staff.  Python for data science [24] Approx. 38 hours Approx. 8 hours