Please use this identifier to cite or link to this item:
http://elartu.tntu.edu.ua/handle/lib/48107
Title: | Методи та засоби побудови програмно-апаратної платформи інформаційного забезпечення процесу обміну книгами |
Other Titles: | Methods and tools for developing a software and hardware platform to support the book exchange process |
Authors: | Вінтонів, Святослав Олегович Vintoniv, Sviatoslav |
Affiliation: | Тернопільський національний технічний університет імені Івана Пулюя Ternopil Ivan Puluj National Technical University |
Bibliographic description (Ukraine): | Вінтонів С. О. Методи та засоби побудови програмно-апаратної платформи інформаційного забезпечення процесу обміну книгами : кваліфікаційна робота на здобуття ступеня магістр: спец. 123 — комп’ютерна інженерія / наук.кер. Є.В. Тиш. Тернопіль: ТНТУ, 2024. 93 с. |
Bibliographic description (International): | 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. |
Issue Date: | 16-Dec-2024 |
Submitted date: | 23-Jun-2024 |
Date of entry: | 2-Feb-2025 |
Publisher: | Тернопільський національний технічний університет імені Івана Пулюя |
Country (code): | UA |
Place of the edition/event: | Тернопільський національний технічний університет імені Івана Пулюя |
Supervisor: | Тиш, Євгенія Володимирівна Tysh, Yevheniia |
Committee members: | Гладьо, Юрій Богданович Hlado, Yurii |
UDC: | 004.42 |
Keywords: | 123 комп’ютерна інженерія dataloader react користувач оптимізація api запит мутація схема графічний інтерфейс book user optimization query mutation schema graphical interface. книга graphql |
Number of pages: | 93 |
Abstract: | Кваліфікаційна робота присвячена дослідженню побудови програмно апаратної платформи інформаційного забезпечення процесу обміну книгами. Робота включає аналіз предметної області, визначення ключових вимог та вибір відповідних технологій для побудови масштабованої та ефективної системи. За допомогою 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. |
Content: | ПЕРЕЛІК УМОВНИХ СКОРОЧЕНЬ 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 |
Copyright owner: | © Вінтонів Святослав Олегович, 2024 © Vintoniv Sviatoslav, 2024 |
References (Ukraine): | Стаття про масштабованість в хмарних обчисленнях. 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 с. |
Content type: | Master Thesis |
Appears in Collections: | 123 — комп’ютерна інженерія |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
Sviatoslav_Vintoniv.pdf | 5,67 MB | Adobe PDF | View/Open |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.
Admin Tools