Розробка веб-застосунку для автоматизації формування проєктних команд
Дата
2023
DOI
doi.org/10.20998/2413-4295.2023.04.03
Науковий ступінь
Рівень дисертації
Шифр та назва спеціальності
Рада захисту
Установа захисту
Науковий керівник
Члени комітету
Назва журналу
Номер ISSN
Назва тому
Видавець
Development of a web application for automating the formation of project teams
Анотація
Розглядається задача розподілу студентів на проєктні роботи та формування проєктних команд. Розроблено структуру бази даних та проєкту, враховуючи в програмі різні рівні доступу до інформації. Також створені тести, які перевіряють функціональність та продуктивність програми. Проведено дослідження розподілу навантаження від користувачів, використовуючи розроблені тести. Розроблений додаток побудовано за клієнт-серверною архітектурою, взаємодія реалізована за допомогою REST API та протоколу HTTP. Серверна частина відповідає за обробку та перевірку даних, взаємодіє з базою даних. Клієнтська частина надає зручний та зрозумілий для користувача інтерфейс, отримує та передає дані серверу. Для вирішення поставленої задачі використовується мова програмування TypeScript та середовище Node.js, а також IDE JetBrains WebStorm. Реалізовано веб-додаток, який дає можливість розподіляти студентів на проєктні роботи та формувати проєктні команди, а також відстежувати виконання проєктів. Для використання функціоналу системи кожен користувач повинен бути авторизованим, зробити це можливо використовуючи логін та пароль. В системі є три типи користувачів: адміністратор, ментор та студент. Адміністратор проєкту має можливість створювати та керувати проєктами, самостійно формувати або задавати критерії розподілення команди, додавати до проєкту ментора. Проєкт розбивається на тижні протягом семестру, що дає можливість бачити прогрес роботи над проєктом усім користувачам системи. Ментор проєкту має можливість відмічати статус проєкту, видавати завдання студентам та робити нотатки по роботі кожного студента, створювати зустрічі, виставляти оцінки студентам у кінці семестру. Студенти мають можливість реєструватися на проєкт, переглядати деталі проєкту та матеріали, бачити завдання, які видає ментор, та відмічати прогрес по їх виконанню. Більшість дій у системі мають приходити у вигляді сповіщень на електронну пошту учасникам проєкту. Також реалізовано можливість нагадувань по електронній пошті про необхідність виконання завдань для студенів, та видачі завдань для ментора.
The task of distributing students to project works and forming project teams is considered. The structure of the database and the project was developed, taking into account different levels of access to information in the program. Tests have also been created to check the functionality and performance of the program. A study of the distribution of user load using the developed tests was conducted. The developed application is built on a client-server architecture, with interaction implemented using REST API and the HTTP protocol. The server part is responsible for processing and verifying data, interacting with the database. The client part provides a user-friendly and understandable interface, receiving and transmitting data to the server. The programming language TypeScript and the Node.js environment, as well as the JetBrains WebStorm IDE, are used to solve the set task. A web application has been implemented, which makes it possible to assign students to project work and form project teams, as well as monitor the implementation of projects. Each user must be authenticated to use the system's functionality, which can be done using a login and password. There are three types of users in the system: administrator, mentor, and student. The project administrator can create and manage projects, independently form or set team distribution criteria, add a mentor to the project. The project is broken down into weeks throughout the semester, allowing all system users to see the progress of the project. The project mentor can mark the project status, issue tasks to students and make notes on each student's work, create meetings, and grade students at the end of the semester. Students can register for the project, view project details and materials, see tasks issued by the mentor, and mark progress on their completion. Most actions in the system should come in the form of email notifications to project participants. The possibility of e-mail reminders about the need to complete tasks for students and issuing tasks for the mentor has also been implemented.
The task of distributing students to project works and forming project teams is considered. The structure of the database and the project was developed, taking into account different levels of access to information in the program. Tests have also been created to check the functionality and performance of the program. A study of the distribution of user load using the developed tests was conducted. The developed application is built on a client-server architecture, with interaction implemented using REST API and the HTTP protocol. The server part is responsible for processing and verifying data, interacting with the database. The client part provides a user-friendly and understandable interface, receiving and transmitting data to the server. The programming language TypeScript and the Node.js environment, as well as the JetBrains WebStorm IDE, are used to solve the set task. A web application has been implemented, which makes it possible to assign students to project work and form project teams, as well as monitor the implementation of projects. Each user must be authenticated to use the system's functionality, which can be done using a login and password. There are three types of users in the system: administrator, mentor, and student. The project administrator can create and manage projects, independently form or set team distribution criteria, add a mentor to the project. The project is broken down into weeks throughout the semester, allowing all system users to see the progress of the project. The project mentor can mark the project status, issue tasks to students and make notes on each student's work, create meetings, and grade students at the end of the semester. Students can register for the project, view project details and materials, see tasks issued by the mentor, and mark progress on their completion. Most actions in the system should come in the form of email notifications to project participants. The possibility of e-mail reminders about the need to complete tasks for students and issuing tasks for the mentor has also been implemented.
Опис
Ключові слова
проєктна робота, формування проєктних команд, проєкт, клієнт-серверна архітектура, REST API, TypeScript, Node.js, project work, forming project teams, project, client-server architecture
Бібліографічний опис
Розробка веб-застосунку для автоматизації формування проєктних команд / О. М. Марусенко [та ін.] // Вісник Національного технічного університету "ХПІ". Сер. : Нові рішення в сучасних технологіях = Bulletin of the National Technical University "KhPI". Ser. : New solutions in modern technology : зб. наук. пр. – Харків : НТУ "ХПІ", 2023. – № 4 (18). – С. 19-26.