Features of designing and implementing an information system for studying and determining the level of foreign language proficiency Taras Basyuk a, Andrii Vasyliuk a, Vasyl Lytvyn a, Olha Vlasenko b a Lviv Polytechnic National University, Bandera str.12, Lviv, 79013 b Osnabrück University, Institute of Education Science, Heger-Tor-Wall 9, 49074 Osnabrück, Germany Abstract This article analyzes the existing methods, international certifications and known systems that provide tools for learning foreign languages and describes the mechanisms for assessing these skills, which revealed the main shortcomings of existing approaches and showed the relevance of the study. The main requirements for the systems of this class are identified and presented in the form of work scenarios on the example of the module Learning Materials, which is presented to users with the roles of "Teacher" and "Student". A mathematical description of the subject area using the algebra of algorithms, which provided the means to minimize the created models by the number of uniterms. The presented models give a complete picture of the features of the system. The software system was designed using an object-oriented approach and the created diagrams were displayed in accordance with the UML notation. The study presents diagrams of options for use and activities, which simplified the understanding of the features of the information system of learning and determining the level of knowledge of foreign languages. The result of the study was the design and implementation of a system using the Golang programming language. Natural language processing is implemented in a separate module that provides tokenization and parsing, lemmatization / stemming, tagging of a part of speech and identification of semantic connections. The created software product works in the prototype mode and implements the described functionality. Keywords 1 foreign language, learning, skills assessment, algebra of algorithms, information system 1. Introduction Today can be called the era of computer science and telecommunications. Thanks to the telecommunication infrastructure, it is possible to create systems for general information exchange and mass continuous self-education, regardless of time and space constraints. In the XXI century, distance learning was one of the most effective systems of training and continuous support of high qualification level of specialists [1,2]. The interactive cooperation between teacher and students with the help of information and communication networks, from which the environment of Internet users stands out on masse, is very promising in our time. One of the most common sections of distance learning is the study of foreign languages, as this knowledge is the key to success in today's world, and the vast amounts of information processing and exchange is becoming increasingly important. Due to the process of the labor market globalization, knowledge of a foreign language significantly increases professional competitiveness between specialists in various fields and promotes business contacts in all spheres of life [3,4]. That is why knowledge of a foreign language is a necessity for a person's professional activity and successful career growth. 1 MoMLeT+DS 2022: 4th International Workshop on Modern Machine Learning Technologies and Data Science, November, 25-26, 2022, Leiden-Lviv, The Netherlands-Ukraine EMAIL: Taras.M.Basyuk@lpnu.ua (T. Basyuk); Andrii.S.Vasyliuk@lpnu.ua (A. Vasyliuk); Vasyl.V.Lytvyn@lpnu.ua (V. Lytvyn); olha.vlasenko@uni-osnabrueck.de (O. Vlasenko) ORCID: 0000-0003-0813-0785 (T. Basyuk); 0000-0002-3666-7232 (A. Vasyliuk); 0000-0002-9676-0180 (V. Lytvyn); ORCID: 0000-0001- 7258-2108 (O. Vlasenko) © 2022 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). CEUR Wor Pr ks hop oceedi ngs ht I tp: // ceur - SSN1613- ws .or 0073 g CEUR Workshop Proceedings (CEUR-WS.org) Creating learning conditions and technologies aimed at personal development and professional competence is the main goal in the study of a foreign language by future professionals in various fields. Both in research and in practice, access to sources of information provided by knowledge of a foreign language is essential. However, the assessment of foreign language skills has some features that need to be considered, in particular the use of the European Competence System (CEFR), which is used to define and describe language levels [5]. Given these features, the urgent task is to design and implement an information system for studying and determining the level of foreign language proficiency. 1.1 Analysis of recent researches and publications 1.1.1 Known methods of study The analysis showed that a significant number of approaches to learning a foreign language have been developed nowadays. It will be considered each of them for detailed research. Grammar-translation method. This method is based on the traditional approach to teaching Greek and Latin, which aimed to teach students to read and translate literary works, while the communication component as such was not used. It is the oldest of all known methods of learning foreign languages, but it has many disadvantages, including not taking into account the verbal aspects of communication [6]. Audiolingual method. In this method, students use only the target language in the learning process. New words and grammar are explained orally in a foreign language. Grammar is learned automatically through the practice of correct forms until the listener has mastered it on an intuitive level. The main disadvantages of this method include the passive role of students and the student's mastery of the memorized set of phrases [7,8]. Situational language learning. This method belongs to the functional group and is an oral approach developed by British linguists. Its main principle is the study of vocabulary and the practice of reading. Learning processes are divided into three stages: acquisition of knowledge, memorization through repetition and use of this knowledge in practice. In this case, language skills are presented first orally and then in writing, because in this way they are more effectively studied [9]. Communicative language learning. One of the modern standards of language learning. Its main principle is to focus not on the study of grammar, but on the communicative aspect. The main thing is that the student can send messages in a foreign language despite grammatical errors. The method of communicative language learning has different features that distinguish it from previous methods [10]: understanding is through the active use of a foreign language, and learning is through authentic texts. Immersion method. Many consider it the most successful way to learn a second language. After all, in this case, the language being studied is constantly used. Language learning is mainly through communication. Immersion can be complete or partial. Complete immersion in the early stages of language learning is considered ineffective and even stressful. After learning the language by this method, students often feel confident in communication [11]. In addition, their language resembles the language of native speakers. The method of storytelling. According to this method, classes use a combination of reading and storytelling to help students better understand a foreign language. The method works in three stages: at the first stage new structures of vocabulary are studied, using a combination of translation, gestures and personalized questions; on the second, these structures are used to retell stories; and finally, in the third stage, the same structures are used during reading. Before learning new material, the teacher should make sure that students have mastered and actively use what they have learned in previous lessons. It is planned to study no more than three phrases in each lesson, which allows you to understand and remember them well [12]. Method of physical reaction. The method, developed by an American psychologist, states that a person cannot learn anything without "passing it through." According to this method, the listener is initially a passive performer. That is, during the first twenty classes he cannot speak, but only perceive everything heard. When he has gained minimal language experience, the listener can respond to what he heard, but only by action. For example, when learning the word "get up", everyone gets up while pronouncing it. So a person literally feels these words on himself. The method of quiet learning. According to this method, students must learn independently, and the teacher should only help them develop responsibility and autonomy. Almost all classes the teacher is silent. Learning in silence, as opposed to repetition by the teacher, becomes a technique that promotes mental activity and concentration on the task [11]. This method of "quiet" learning is difficult to use at the initial stage, as it involves a high level of interest of students and the presence of intrinsic motivation, which is not always possible, especially at a young age. In general, the list of methods for learning a foreign language is not exhaustive. We can say that the ideal method has not yet been invented, but it is worth noting that it can hardly exist at all, because everyone has different mindset and different skills, so the best effect in learning a foreign language can be achieved only with an individual approach. Taking into account all peculiarities and individual requests is planned to be implemented in our software system. 1.1.2. International certifications analysis Knowledge of a foreign language increases professional competitiveness between specialists in various fields and facilitates business contacts establishment in all spheres of life. According to research, one of the biggest incentives to learn foreign languages is career growth (about 51% of respondents), for 23% of respondents - an internship or study abroad, 12% do it to increase the comfort of leisure and fun, 7% go on business trips abroad, 4% study foreign languages to participate in international conferences and only 3% of respondents work with foreign partners. The above statistics show that the vast majority of answers are directly related to work and career advancement. The conclusion from this is one - for most people learning a foreign language is not the main occupation, but only the achievement for a certain global goal. In order to simplify the assessment of language proficiency of candidates, the European Competence System (CEFR) was created - a system for assessing and describing language levels [5]. The European system of competencies divides general competencies into knowledge, skills and existential competencies with special skills: language, sociolinguistic and pragmatic. General and special communication skills are developed by creating or understanding texts of different contexts under different conditions. These contexts correspond to different parts of public life - domains. There are four main domains: professional, public, initial, personal. The user can achieve different levels of language proficiency in each of these domains and in order to describe them, the pan-European competence system provides a set of standard levels: A - Elementary level (A1 - Introductory, or level "Discovery", A2 - Intermediate, or level " Survival "), B - Independent level (B1 - Threshold, B2 - Progressive), C - Proficient level (C1 - Autonomous, C2 - Competent). Depending on the group and the level in it, the user must have a certain set of skills. There are various test systems for language proficiency certification. International English Language Testing System is one of the most famous testing systems, jointly supported by the University of Cambridge and the British Council. There are two versions of the test [13]: Academic (designed for admission to universities and other universities, as well as for professionals from different fields who want to study or practice in an English-speaking country) and General Training (designed for extracurricular or gaining experience in one or another area, or immigration). IELTS has the following features [14,15]: • variety of accents and writing styles presented in text materials to minimize possible linguistic prejudices; • english language proficiency testing in various forms - listening, reading, writing, speaking; • use of separate grades for each skill; • speaking module - a key component of IELTS. It is conducted in the form of an individual interview with the examiner, who evaluates the candidate, taking into account his methods of interviewing. Test of English as a Foreign Language - a standardized test to determine the knowledge of English non-native speakers who wish to enter higher education in the United States and Canada [16]. There are several versions of the test: the paper version (Paper-Based Test), the computer version (Computer- based test), the Internet version (Internet-based Test) and the online version for self-assembly at home (iBT Home Edition). Currently, the TOEFL iBT option is the only one recognized in many universities around the world, as it includes the most complete and relevant tasks not only in reading, listening and writing, but also in speaking and combination tasks. One of the disadvantages of TOEFL testing is that the certificate is only valid for two years. Whereas in some universities it is necessary that the test was passed no more than 18 months ago. IELTS exams are held in Ukraine by the British Council, and this makes it impossible for IELTS to be part of remote certification of knowledge, which is not convenient in the current pandemic and war conditions. Given the peculiarities of international certifications in the development of the system it is necessary to combine the positive aspects of both, namely: remote free certification with recommendations for improving the required level of language proficiency. 1.1.3. Known systems analysis The main problem in learning a foreign language is that there are many systems of analogues, but the most effective comprehensive solution has not yet been found. In addition, available research shows that the best way to study is one that combines auditory and visual attention, which confirms the relevance of the use of multimedia. Let's analyze the known analogue systems. • Awabe is a free application that helps you learn more than 4,000 typical words and phrases. The application works offline and offers translation, audio and video tutorials for learning the language. A feature of the system is to receive daily tests that improve communication skills. • Hello English - involves the use of interactive games in the teaching of English lessons [18]. In the process of learning, the user earns coins that provide the means to unlock the following tasks. In practice, this application also offers new popular audiobooks, the latest innovations to further improve their language. • Duolingo - a popular application for learning a foreign language from scratch. Duolingo uses interactive games to help the user learn many different languages. For beginners, the program focuses on helping to learn verbs, phrases and sentences [19]. However, advanced users can also improve their knowledge by taking courses in writing, language and vocabulary. • Lingbe is a community where people help each other in learning a foreign language. Namely, in order to learn a foreign language, appropriate native speakers are invited to gain practical communication experience. Although there are many applications such as Lingbe that connect to native speakers, it has an extremely simple user interface and usage rules. Namely, the user needs to choose the native language and the language to be studied, and then provide information about their interests. This information will not be visible to other users, but will only serve to select the appropriate media [20]. • The Sounding Out Machine - this application is very useful for users who have difficulty understanding and pronouncing foreign language content. The system allows you to play complex words and phrases that are played by syllables. This system is extremely useful, both in the process of individual and collective learning, as it allows you to identify "problematic phrases" and perform their pronunciation with subsequent storage on media [3]. • GoogleTranslate is a Google service that automatically translates words, phrases, and web pages from one language to another. Google uses its own software that supports statistical machine translation, which is based on comparing large volumes of language pairs. Language pairs are the texts that contain sentences in one language and the corresponding sentences in another, can be as options for writing two sentences by a person - a native speaker of two languages, and a set of sentences and their translations performed by a third party. Thus, statistical machine translation has the property of "self-learning" and the more language pairs are available and the more accurately they correspond to each other, the better the result [21]. The analysis showed that in the process of creating a system it is necessary to take into account many features: simplicity of the interface, features of information perception, availability of information, etc. Given the urgent task is to create an information system for learning and determining the level of foreign language proficiency. 1.2 The main study objectives and their significance The purpose of the study is to design and implement a system for studying and determining the level of foreign language proficiency. The study will provide tools for learning foreign languages depending on the initial level of the user, the required purpose and the need for certification of skills, which will increase its competitiveness in the labor market. To achieve this goal it is necessary to solve the following main tasks: to analyze existing approaches, methods and software tools used in the field of learning and assessing foreign language skills; identify the main tasks that arise; display system scenarios for users of different access levels; make a mathematical description of the subject area using the algebra of algorithms; to design a software system using an object-oriented approach and display the created diagrams in accordance with the notation of the UML language; to develop a software system for studying and determining the level of foreign language proficiency. The results of the research solve the current scientific and practical problem of creating a methodological approach and software for learning foreign languages. 2. Major research results At the initial stage of creating the system, the necessary task was to determine the basic requirements, which it would meet. Given that, one way is to present requirements in the form of scenarios [22]. Scenarios are mechanisms for identifying user needs that force you to focus on the goals that stakeholders want to achieve. Any scenario considered is a set of consecutive results (or achieved states) obtained in chronological order. The chronological sequence of obtaining the script allows you to repeatedly view the possible options for the system, and stakeholders to gradually test the functionality. In the process of forming work scenarios, the Subsystem Learning Materials was identified, which is presented to users with the roles of "Teacher" and "Student". Figure 1: Model of the subsystem "Learning Materials" for the user with the role of "Teacher" The subsystem "Learning Materials" is designed to enter and update a database of teaching materials, manuals, video and audio files, web resources, as well as providing access to this data to users of different roles. Input data for the subsystem, defined search criteria (for example, type or level of complexity of tasks, choice of the ultimate goal, etc.), as well as keys for access to selected training materials. After processing the received input data, the system gives the user the opportunity to use all the necessary training material. Figure 2: Model of the subsystem "Learning materials" for the user with the role "Student" The subsystem allows you to perform the following functions: • updating the database of educational materials, adding new and editing existing materials; • display of the necessary educational materials according to the specified criteria (course, level of complexity, type of tasks, etc.); • search for available educational materials in accordance with the specified criteria; • checking the keys to access relevant training materials; • online testing and data storage. Further research was aimed at building models of system operation using the apparatus of algebra algorithms. The first stage in the implementation of the algebra of algorithms was the description of uniterms and the synthesis of sequences [23], which is given below. Formed uniterms: L - uniterm of entering the system; R - uniterm creation of the usher's office; N - unit of registration of a new user; T - uniterm of testing to determine the level of language; P - unit of selection of the section that needs to be improved; M - unit of formation of educational materials in accordance with the selected section; A - uniterm of passing audition and testing of language skills; C - uniterm of the description of wishes concerning possible improvement of skills; Rec - uniterm formation of a list of recommendations on ways to improve the current level; u1 - check condition for lack of authentication data; u2 - uniterm of verification of compliance with the established requirements, *L - uniterm of exit from the cycle with verification of the availability of authentication data, *M - uniterm of exit from the cycle with verification of compliance with the established requirements. As a result of using the algebra of algorithms apparatus, the following sequences and eliminations are synthesized: S1 - sequence of system operation in case of authentication data and non-compliance with the established requirements: S2 - the sequence of operation of the system in the presence of authentication data and compliance with the established requirements: S3 - system operation sequence in case of no authentication data: L1 - verification of compliance with the established requirements: L2 - authentication data check: The next step is the substitution of the corresponding sequences and the elimination of L2. As a result of using the properties of the algebra of algorithms [23], we make common uniterms for the sign of the elimination operation and obtain the following formula of the algebra of algorithms: The next stage of the study was the design of the system using an object-oriented approach [24, 25]. Namely, at the beginning of the design, a diagram of usage options was created in the Visual Paradigm software environment and shown in Fig.3. Figure 3: Diagram of usage options The main actors in the chart are: Student - a user of the system who has access to the course materials and can perform certain activities. It is enough for the user to register, create their own cabinet with individual wishes for the course and take a test to establish the initial level of language proficiency. Teacher - creates and edits the necessary initial attributes, provides technical support and provides training materials. After training, the student's knowledge is tested with the formation of recommendations. The diagram of activity of the designed system is presented on Fig. 4. From the user's point of view, it is mandatory to register and pass a language proficiency test. There is feedback on the platform that allows the user to leave comments and interact with the teacher online. Training takes place through the interactive properties of the platform - graphic and multimedia display of educational material. Figure 4: User activity diagram From the teacher's point of view, he mainly performs mentoring and teaching functions. The main operations are entrusted to the system, which implements the test of user knowledge in various forms: reading, listening and writing. For data extraction and natural language recognition, it is proposed to use NLP methods that combine statistical models, models of machine learning and deep learning with computational linguistics - modeling of human language based on rules [26,27]. These technologies allow computers to process human speech in the form of text or voice data and "understand" its full meaning, taking into account the mood of the speaker. With the help of NLP, the designed system evaluates the following communication skills: • ability to carry out conditioned communication; • the ability to hear the content of authentic texts; • the ability to read and perceive authentic texts of different genres and types with different levels of understanding of the content, considering them as a source of various information and as a means of mastering it; • ability to communicate in writing in accordance with the tasks. As for the architecture of construction, after the analysis of the market of such systems [28] it was decided to implement an information system based on a three-tier architecture. Three-tier architecture is a client-server architecture in which functional process logic, data access, computer storage, and user interface are developed and maintained as independent modules on separate platforms. The three levels represent the following elements [29,30]: presentation level (displays information related to the services available on the website), application level (controls the functionality of the system, implementing the main functionality), data level (contains a database server, where information is stored and processed). Due to these features, the web server is implemented using the Golang language, which contains tools for parallel computing and the ability to remotely manage web packages. The Petri net was used as a device for modeling the sequence of actions of the system [31]. In this case, in the general case, a simple labeled Petri net can be represented by the dependence: MN = {S, T, F}, where S = {S1, S2,…,Sn} - the set of network states, T = {t1, t2,…,tn} - the set of transitions, F- set of arcs. The Petri net for the designed system has the form shown in Figure 5. Figure 5: Petri net illustrating the system operation The purpose of each position and transitions are given in the table. 1 and 2. Table 1 Petri net positions table Position Appointment S1 Making initial settings S2 Entering authentication data S3 Waiting for user actions S4 Granting access S5 Conducting initial testing S6 Displaying the results S7 Improving the level of grammar S8 Improving writing skills S9 Learning IT Slang S10 Studying the peculiarities of business communication S11 Service change S12 Formation of recommendations Table 2 Table of transitions Position Appointment t1 Start the system t2 Start processing authentication data t3 Complete authentication data processing t4 Enter your personal account t5 Complete the testing process t6 Select the type of service t7 Save the results to the user profile t8 Shut down the system The next stage was the construction of a system for studying and determining the level of foreign language proficiency. The developed system is characterized by a simple and intuitive interface implemented in accordance with the requirements of SEO [32]. When the user first visits the system page (Fig. 6), he has access only to the forum and news. To start training, the user must register, or if he is already registered, then log in using his login and password. He also has the opportunity to read the reference information in the "About" section. Figure 6: Home page of the system At the first login, a user profile is created, which contains the user's personal data. In the future, they are supplemented with data on the course, exercises, testing and learning progress. Also, at the first entry of the user, it is necessary to pass a test to determine the level of a foreign language (Fig.7). Figure 7: System page after user registration Passing the test is implemented by a separate module, which is responsible for establishing the level of language proficiency and testing language skills [33]. The module is based on the methods of Natural Language Processing [27]. For the practical implementation of NLP concepts, the library github.com/james-bowman/nlp was used, which is a part of the machine learning algorithms for natural language processing in Golang [34,35]. The main characteristics of the library used to implement the module, which is responsible for checking the tasks performed in the study of foreign languages, include: Latent Semantic Analysis aka Latent Semantic Indexing implementation using truncated Singular Value Decomposition for dimensionality reduction; fast comparison and retrieval of semantically similar documents using SimHash algorithm; Random Indexing and Reflective Random Indexing; Latent Dirichlet Allocation (LDA) using a parallel implementation of the fast SCVB0 (Stochastic Collapsed Variational Bayesian inference) algorithm for unsupervised topic extraction. An example of a library for recognizing and correcting input text is shown in Fig.8. Figure 8: Module for text analysis After passing the English language test, the user can start learning. He can choose the material he wants to work with: videos, audio recordings, podcasts or authentic texts (Fig.9). After learning, training exercises and testing are a must. Again, the user can view the data on the passed material, as well as the results of all tests on his profile page. Figure 9: System page after passing the test It should also be noted that all training materials displayed to the user are adapted to the level of his skills based on the passed testing and progress of tasks. If there is a question about using the system or calling for online help, the user should select the Help of the system, where he will find detailed instructions, as well as tips on how to use the system better and more effectively or contact the teacher. The peculiarity of the created system is that it provides tools for self-selection of skills that the user seeks to improve (Fig.10). Figure 10: Page for choosing skills to improve For example, after selecting the grammar section, the user will have access to video and audio materials, as well as texts and podcasts on grammar topics. This will allow you to focus on specific gaps in knowledge. 3. Conclusion As a result of the study, the existing methods, international certifications and known systems were analyzed, which provide tools for learning foreign languages and describe the mechanisms for assessing these skills. According to the analysis, today there are many software systems, but they are all characterized by certain shortcomings, from commercial application to limited functionality, which makes it an urgent task to design and implement a system for learning and determining the level of foreign languages. In order to determine the basic requirements for systems of this class, they were presented in the form of scenarios on the module Learning Materials example, which is presented to users with the roles of "Teacher" and "Student". The next stage of the work was a mathematical description of the subject area using the apparatus of algebra of algorithms, which provided the necessary basis for the formation of mathematical software. Object-oriented design of the software system by constructing a set of diagrams in UML notation, two of which (diagrams of use and activity variants) are presented in the article. Based on the study, the system was designed and implemented using the Golang programming language. The created software product works in the prototype mode and implements the described functionality. Further research will focus on creating a mobile version of the system, resolving conflicts and expanding the functionality in accordance with the defined requirements. 4. References [1] S. Kosslyn, Active Learning Online: Five Principles that Make Online Courses Come Alive, Alinea Learning, 2021. [2] C. Chapelle, The Handbook of Technology and Second Language Teaching and Learning (Blackwell Handbooks in Linguistics), Wiley-Blackwell, 1st edition, 2017. [3] S. Dixon, 100 Ways to Teach Language Online: Powerful Tools for the Online and Flipped Classroom Language Teacher, Wayzgoose Press, 2020. [4] C. Hazell, Independent Thinking on MFL: How to make modern foreign language teaching exciting, inclusive and relevant, Independent Thinking Press, 2020. [5] E. Altman, Understanding CEFR English Descriptors: An uncomplicated guide to the Competences, Strategies, Functions and Can-dos, Independently published, 2020. [6] D. Nayab, English Teachers’ Attitudes in acquiring Grammatical competence: By using Grammar Translation Method and Communicative Language Teaching at Graduate Level (In The Context of Punjab), LAMBERT Academic Publishing, 2020. [7] A. Curtis, Methods and Methodologies for Language Teaching: The Centrality of Context (Applied Linguistics for the Language Classroom). Red Globe Press, 2017. [8] D. Nunan, Teaching English to Speakers of Other Languages: An Introduction, Routledge, 2015. [9] D. Jackson, Language Teacher Noticing in Tasks: 14 (Psychology of Language Learning and Teaching), Multilingual Matters, 2021. [10] T. McConachy, I. Golubeva, M. Wagner, Intercultural Learning in Language Education and Beyond: Evolving Concepts, Perspectives and Practices: 38 (Languages for Intercultural Communication and Education), Multilingual Matters, 2022. [11] A. Cohen, Strategies in Learning and Using a Second Language (Longman Applied Linguistics), Routledge, 2011. [12] J. Ohler, Digital Storytelling in the Classroom: New Media Pathways to Literacy, Learning and Creativity. Corwin, 2013. [13] E. Simon, IELTS Academic Study Guide 2021-2022: Comprehensive Review with Audio and Practice Questions for the International English Language Testing System Exam, Trivium Test Prep, 2021. [14] J. Anderson, IELTS Academic Writing: Discover The Secrets To Writing 8+ Answers For The IELTS Exams! (High Scoring Sample Answers Included), Independently published, 2021. [15] J. Rueda, IELTS General Training and Academic Exam Study Guide: IELTS Preparation Book, 3 Practice Tests, and Audio Links for the Listening Section: [4th Edition], Test Prep Books, 2021. [16] D. Hossain, TOEFL iBT Guide: 2022-2023 Preparation Book, Practice Test, Strategies & Review, Independently published, 2022. [17] Awabe, URL. https://www.appbrain.com/dev/Awabe+-+Learn+Languages/ [18] Hello English: Learn English, URL. https://helloenglish.com/ [19] Duolingo, URL. https://uk.duolingo.com/ [20] Lingbe.com: Practice languages with native speakersThe Sounding Out Machine, URL. https://www.lingbe.com/ [21] GoogleTranslate, URL. https://translate.google.com/?hl=uk [22] O.Veres, P. Ilchuk, O. Kots, Data Science Methods in Project Financing Involvement, Proceedings of the 16rd International Conference on Computer Sciences and Information Technologies (CSIT- 2021). Volume 2, pp. 411-414. [23] V. Ovsyak, ALGORYTMY: metody pobudovy, optymizatsiyi, doslidzhennya virohidnosti. – Svit, 2001. [24] A. Dennis, B. Wixom, D. Tegarden, Systems Analysis and Design: An Object-Oriented Approach with UML. Wiley, 2015. [25] D. Pilone. UML 2.0 Pocket Reference: UML Syntax and Usage, O'Reilly Media, 2006. [26] M. Ekman, Learning Deep Learning: Theory and Practice of Neural Networks, Computer Vision, Natural Language Processing, and Transformers Using TensorFlow, Addison-Wesley Professional, 2021. [27] S. Bird, E. Klein, E. Loper, Natural Language Processing with Python: Analyzing Text with the Natural Language Toolkit, O'Reilly Media, 2009. [28] A. Vasyliuk, T. Basyuk, Construction Features of the Industrial Environment Control System, Proceedings of the 5rd International Conference on Computational Linguistics and Intelligent Systems (COLINS-2021). Volume I: Main Conference, Kharkiv, Ukraine, April 22-23, 2021, Vol- 2870: pp.1011-1025. [29] D. Wolfe, 3-Tier Architecture in ASP.NET with C# tutorial, SitePros2000.com, 2013. [30] E. Bush, JavaScript Three-Tier Architectures in AWS with React, Node and MongoDB: Design, code, test, deploy, and manage in Amazon AWS, Blue Sky Productions Inc. 2022. [31] J. Peterson, Petri Net Theory and the Modeling of Systems. Independently published, 2019. [32] Basyuk T., Vasyliuk A. Approach to a subject area ontology visualization system creating // CEUR Workshop Proceedings. – 2021. – Vol. 2870 : Proceedings of the 5th International conference on computational linguistics and intelligent systems (COLINS 2021), Lviv, Ukraine, April 22–23, 2021. Volume I : main conference. – Р. 528–540. [33] T. Basyuk, A. Vasyliuk, V. Lytvyn, Mathematical Model of Semantic Search and Search Optimization, Proceedings of the 3rd International Conference on Computational Linguistics and Intelligent Systems (COLINS-2019). Volume I: Main Conference, Kharkiv, Ukraine, April 18-19, 2019, Vol-2362: pp.96-105. [34] J. Raiturkar, Hands-On Software Architecture with Golang: Design and architect highly scalable and robust applications using Go, Packt Publishing, 2018. [35] M. Tsoukalos, Mastering Go: Create Golang production applications using network libraries, concurrency, machine learning, and advanced data structures, Packt Publishing, 2019.