Будь ласка, використовуйте цей ідентифікатор, щоб цитувати або посилатися на цей матеріал: http://elartu.tntu.edu.ua/handle/lib/48107
Назва: Методи та засоби побудови програмно-апаратної платформи інформаційного забезпечення процесу обміну книгами
Інші назви: Methods and tools for developing a software and hardware platform to support the book exchange process
Автори: Вінтонів, Святослав Олегович
Vintoniv, Sviatoslav
Приналежність: Тернопільський національний технічний університет імені Івана Пулюя
Ternopil Ivan Puluj National Technical University
Бібліографічний опис: Вінтонів С. О. Методи та засоби побудови програмно-апаратної платформи інформаційного забезпечення процесу обміну книгами : робота на здобуття кваліфікаційного ступеня магістра: спец. 123 - комп’ютерна інженерія / наук. кер. Є.В. Тиш. Тернопіль: Тернопільський національний технічний університет імені Івана Пулюя, 2024. 93 с.
Bibliographic description: Vintoniv S. Methods and tools for developing a software and hardware platform to support the book exchange process : Master Thesis „123 — Computer Engineering“ / Sviatoslav Vintoniv - Ternopil, TNTU, 2024 – 93 p.
Дата публікації: 16-гру-2024
Дата подання: 23-чер-2024
Дата внесення: 2-лют-2025
Видавництво: Тернопільський національний технічний університет імені Івана Пулюя
Країна (код): UA
Місце видання, проведення: Тернопільський національний технічний університет імені Івана Пулюя
Науковий керівник: Тиш, Євгенія Володимирівна
Tysh, Yevheniia
Члени комітету: Гладьо, Юрій Богданович
Hlado, Yurii
УДК: 004.42
Теми: 123 комп’ютерна інженерія
dataloader
react
користувач
оптимізація
api
запит
мутація
схема
графічний інтерфейс
book
user
optimization
query
mutation
schema
graphical interface.
книга
graphql
Кількість сторінок: 93
Короткий огляд (реферат): Кваліфікаційна робота присвячена дослідженню побудови програмно апаратної платформи інформаційного забезпечення процесу обміну книгами. Робота включає аналіз предметної області, визначення ключових вимог та вибір відповідних технологій для побудови масштабованої та ефективної системи. За допомогою Node.js було реалізовано GraphQL API для забезпечення гнучкого пошуку даних та оптимізації продуктивності запитів. Для підвищення ефективності було застосовано DataLoader для пакетної обробки та кешування запитів до бази даних, а для гнучкого зберігання даних було обрано MongoDB. Графічний інтерфейс системи був розроблений з використанням React і Bootstrap, що робить його інтуєтивно зрозумілим. Платформа забезпечує безпечну автентифікацію користувачів, ефективне управління книгами та безперешкодну взаємодію між користувачами та адміністраторами. Результати цього дослідження демонструють практичне застосування сучасних інструментів і методів для побудови масштабованих систем, що відповідають функціональним і продуктивним вимогам платформи для обміну книгами.
The qualification work is devoted to the study of developing a software and hardware platform to support the book exchange process. The work includes analyzing the subject area, identifying key requirements, and selecting appropriate technologies to build a scalable and efficient system. The GraphQL API was implemented using Node.js to provide flexible data search and optimize query performance. To increase efficiency, DataLoader was used to batch process and cache database queries, and MongoDB was chosen for flexible data storage. The system's graphical interface was developed using React and Bootstrap, which makes it intuitive. The platform provides secure user authentication, efficient ledger management, and seamless interaction between users and administrators. The results of this research demonstrate the practical application of modern tools and methods for building scalable systems that meet the functional and performance requirements of a book exchange platform.
Зміст: ПЕРЕЛІК УМОВНИХ СКОРОЧЕНЬ 8 ВСТУП 9 РОЗДІЛ 1 АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ ТА МЕТОДІВ РОЗРОБКИ API 12 1.1. Аналіз предметної області 12 1.2. Аналіз методів розробки API 16 1.3. Аналіз існуючих платформ 18 1.4. Висновки до розділу 25 РОЗДІЛ 2 ПРОЄКТУВАННЯ ПРОГРАМНО-АПАРАТНОЇ ПЛАТФОРМИ ІНФОРМАЦІЙНОГО ЗАБЕЗПЕЧЕННЯ ПРОЦЕСУ ОБМІНУ КНИГАМИ 26 2.1. Теоретичні аспекти розробки API для програмно-апаратної платформи інформаційного забезпечення процесу обміну книгами 26 2.2. Вибір методів для розробки API 27 2.3. Формування основних вимог до платформи 29 2.4. Визначення варіантів використання 31 2.5. Вибір технологій для розробки API 34 2.6. Проєктування архітектури бази даних 37 2.7. Висновки до розділу 45 РОЗДІЛ 3 РАЛІЗАЦІЯ ПЛАТФОРМИ ІНФОРМАЦІЙНОГО ЗАБЕЗПЕЧЕННЯ ПРОЦЕСУ ОБМІНУ КНИГАМИ З ВИКОРИСТАННЯМ ОБРАНИХ МЕТОДІВ 46 3.1. Реалізація основних класів серверної частини 46 3.2. Побудова GraphQL API 52 3.3. Тестування та виправлення помилок в роботі API 56 3.4. Використання DataLoader для оптимізації запитів та створення обгортки над запитами до БД 58 3.5. Реалізація графічного інтерфейсу програмної системи 63 3.6. Тестування графічного інтерфейсу розробленої системи 64 РОЗДІЛ 4 ОХОРОНА ПРАЦІ ТА БЕЗПЕКА В НАДЗВИЧАЙНИХ СИТУАЦІЯХ 69 4.1. Охорона праці 69 4.2. Проведення аварійно-відновлювальних робіт на комп’ютерних та електричних мережах 72 ВИСНОВКИ 75 СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ 76 Додаток А Тези конференцій 79 Додаток Б Лістинг коду серверної частини платформи 85
URI (Уніфікований ідентифікатор ресурсу): http://elartu.tntu.edu.ua/handle/lib/48107
Власник авторського права: © Вінтонів Святослав Олегович, 2024
© Vintoniv Sviatoslav, 2024
Перелік літератури: Стаття про масштабованість в хмарних обчисленнях. URL: https://www.nops.io/blog/cloud-scalability/ (дата звернення: 30.11.2024 р.) Стаття про архітектурні підходи до розробки масштабованих веб- застосунків. URL: https://csecurity.kubg.edu.ua/index.php/journal/article/view/613 (дата звернення: 30.11.2024 р.)
Вінтонів С. О., Тиш Є. В. Проєктування та розробка API для платформи обміну книгами. Матеріали ХI науково-технічній конференції Тернопільського національного технічного університету імені Івана Пулюя «Інформаційні моделі, системи та технології». Тернопіль: 2024. 543с.
Вінтонів С. О., Тиш Є. В. Оптимізація кількості запитів до бази даних для GraphQL-API з використанням DataLoader. Матеріали XІI міжнародній науково-технічній конференція молодих учених та студентів «Актуальні задачі сучасних технологій». Тернопіль: 2024.
Статистика цифрових продуктів за 2024 рік. URL: https://whop.com/blog/digital-product-statistics/ (дата звернення: 01.12.2024 р.)
Дохід від продажів електронних книг Trade у США з 2017 по 2023 рік. URL: https://www.statista.com/statistics/278235/e-book-sales-revenue-in-the-us/ (дата звернення: 01.12.2024 р.)
Прогноз росту ринку електронних книг. URL: https://www.futuremarketinsights.com/reports/global-ebook-market\ (дата звернення: 01.12.2024 р.)
API Design: Principles for Building Effective APIs. URL: https://medium.com/@teja.ravi474/api-design-principles-for-building-effective-apis-5d391b6844a3 (дата звернення: 03.12.2024 р.)
Kharchenko A., Bodnarchuk І., Yatcysyn V. The Method for Comparative Evaluation of Software Architecture with Accounting of Trade-offs. American Journal of Information Systems. 2014. Vol. 2, No. 1. P. 20-25.
API and Database Performance Optimization Strategies. URL: https://dzone.com/articles/api-and-database-performance-optimization-strategi (дата звернення: 04.12.2024 р.)
Безпека API і як її реалізувати. URL: https://medium.com/@siddiquimohammad0807/api-security-introduction-216d46968c8b (дата звернення: 04.12.2024 р.)
Важливість застосування AWS Elastic Load Balancing. URL: https://blurify.com/blog/aws-elastic-load-balancing-why-is-it-important/ (дата звернення: 04.12.2024 р.)
Wattpad. URL: https://www.wattpad.com/home (дата звернення: 04.12.2024 р.)
Goodreads. URL: https://www.goodreads.com/ (дата звернення: 04.12.2024 р.)
Inkitt. URL: https://www.inkitt.com/ (дата звернення: 04.12.2024 р.)
Samer Buna. GraphQL in Action. Manning, 2021. P. 384.
Anthony Nandaa. Beginning API Development with Node.js. Packt Publishing, 2018. P. 100.
Corey J. Ball. Hacking Apis. Breaking Web Application Programming Interfaces. 2022. P. 368.
Prabath Siriwardena. Advanced API Security: Securing APIs with OAuth 2.0, OpenID Connect, JWS, and JWE. 2014. P. 260.
Харченко О., Яцишин В. Розробка та керування вимогами до програмного забезпечення на основі моделі якості. Вісник ТДТУ. Тернопіль, 2009. Т. 14. №1. С. 201-207.
Yatsyshyn V., Pastukh O., Palamar A., Zharovskyy R. Technology of relational database management systems performance evaluation during computer systems design. Scientific Journal of TNTU, Ternopil, Ukraine, 2023. Vol. 109, No 1. P. 54–65.
ДСТУ 8604:2015. URL: https://online.budstandart.com/ua/catalog/doc-page.html?id_doc=71028 (дата звернення: 11.12.2024 р.)
Наказ Мінсоцполітики від 14.02.2018, № 207. URL: https://zakon.rada.gov.ua/laws/show/z0508-18#Text (дата звернення: 11.12.2024 р.)
Державні санітарні правила і норми роботи з візуальними дисплейними терміналами електронно-обчислювальних машин. ДСанПІН 3.3.2.007-98. URL: https://zakon.rada.gov.ua/rada/show/v0007282-98#Text (дата звернення: 11.12.2024 р.)
Кодекс цивільного захисту України. URL: https://zakon.rada.gov.ua/laws/main/5403-17 (дата звернення: 11.12.2024 р.)
Стручок В.С. Техноекологія та цивільна безпека. Частина «Цивільна безпека». Навчальний посібник. Тернопіль: ТНТУ. 2022. 150 с.
Стручок В.С. Безпека в надзвичайних ситуаціях. Методичний посібник для здобувачів освітнього ступеня «магістр» всіх спеціальностей денної та заочної (дистанційної) форм навчання. Тернопіль: ТНТУ. 2022. 155 с.
Луцик Н.С., Луцків А.М., Осухівська Г.М., Тиш Є.В. Програма та методичні рекомендації з проходження практики за тематикою кваліфікаційної роботи для студентів спеціальності 123 «Комп’ютерна інженерія» другого (магістерського) рівня вищої освіти усіх форм навчання. Тернопіль: ТНТУ. 2024. 45 с.
Луцик Н.С., Луцків А.М., Осухівська Г.М., Тиш Є.В. Методичні рекомендації до виконання кваліфікаційної роботи магістра для студентів спеціальності 123 «Комп’ютерна інженерія» другого (магістерського) рівня вищої освіти усіх форм навчання. Тернопіль. 2024. 44 с.
Варавін А.В., Лещишин Ю.З., Чайковський А.В. Методичні вказівки до виконання курсового проєкту з дисципліни «Дослідження і проєктування комп’ютерних систем та мереж» для здобувачів другого (магістерського) рівня вищої освіти спеціальності 123 «Комп’ютерна інженерія» усіх форм навчання. Тернопіль: ТНТУ, 2024. 32 с.
Тип вмісту: Master Thesis
Розташовується у зібраннях:123 — комп’ютерна інженерія

Файли цього матеріалу:
Файл Опис РозмірФормат 
Sviatoslav_Vintoniv.pdf5,67 MBAdobe PDFПереглянути/відкрити


Усі матеріали в архіві електронних ресурсів захищені авторським правом, всі права збережені.

Інструменти адміністратора