Будь ласка, використовуйте цей ідентифікатор, щоб цитувати або посилатися на цей матеріал:
https://er.chdtu.edu.ua/handle/ChSTU/9400| Назва: | Чат-бот для проведення тестування QA-спеціалістів |
| Автори: | ГРЕСЬКО, Світлана ВАСИЛЕНКО, Антон |
| Ключові слова: | ЧАТ-БОТ;ТЕСТУВАННЯ;МЕСЕНДЖЕР TELEGRAM;TELEGRAM BOT API;QA-СПЕЦІАЛІСТ;ЧЕК-ЛИСТ |
| Дата публікації: | 2022 |
| Короткий огляд (реферат): | Кваліфікаційна робота бакалавра присвячена розробці чат-бота для проведення тестування QA-спеціалістів. Пояснювальна записка містить 69 сторінок, кількість додатків – 2, використано 21 джерело. Кваліфікаційна робота бакалавра складається з 3 розділів. В першому розділі виконано опис предметної області тестування знань. В другому розділі розглянуто загальні відомості про Telegram-боти, виконано огляд аналогів та сформульована постановка завдання на розробку чат-бота для проведення тестування QA-спеціалістів. У третьому розділі описано середовище розробки SendPulse, функції та можливості даної платформи; представлена реалізація проекту. В рамках роботи використано та засвоєно сучасні технології розробки програмного забезпечення. |
| URI (Уніфікований ідентифікатор ресурсу): | https://er.chdtu.edu.ua/handle/ChSTU/9400 |
| Розташовується у зібраннях: | 123 Комп’ютерна інженерія (Комп'ютерні системи та мережі) |
Файли цього матеріалу:
| Файл | Опис | Розмір | Формат | |
|---|---|---|---|---|
| 1_ТИТУЛКА_Василенко-merged.pdf Restricted Access | 5.09 MB | Adobe PDF | Переглянути/Відкрити Запит копії |
Усі матеріали в архіві електронних ресурсів захищено авторським правом, усі права збережено.
Extracted text
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ ФАКУЛЬТЕТ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ І СИСТЕМ КАФЕДРА ІНФОРМАЦІЙНОЇ БЕЗПЕКИ ТА КОМП’ЮТЕРНОЇ ІНЖЕНЕРІЇ ПОЯСНЮВАЛЬНА ЗАПИСКА до кваліфікаційної роботи бакалавра на тему:«Чат-бот для проведення тестування QA-спеціалістів» ЧДТУ.221704.001 ПЗ Виконав: студент 5 курсу, групи ЗКМ-175 спеціальності 123 – «Комп’ютерна інженерія» за освітньою програмою – «Комп’ютерні системи та мережі» Антон ВАСИЛЕНКО Керівник Світлана ГРЕСЬКО Рецензент завідувач кафедри КІ та ФД КНУТД к.ф.-м.н., доцент, професор університету Михайло ЯРМОЛЕНКО «ЗАХИСТ ДОЗВОЛЯЮ» Завідувач кафедри ІБ та КІ д.т.н., професор ______ Володимир РУДНИЦЬКИЙ Черкаси 2022 року Форма № Н-9.01 ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ Факультет: інформаційних технологій і систем Кафедра: інформаційної безпеки та комп’ютерної інженерії Освітньо-кваліфікаційний рівень: Бакалавр Спеціальність 123 – Комп’ютерна інженерія Освітня програма Комп’ютерні системи та мережі «ЗАТВЕРДЖУЮ» Завідувач кафедри ІБ та КІ д.т.н., професор ________ Володимир РУДНИЦЬКИЙ «11» лютого 2022 року ЗАВДАННЯ на кваліфікаційну роботу бакалавра студенту Василенку Антону Леонідовичу (прізвище, ім‘я, по батькові) 1. Тема роботи: Чат-бот для проведення тестування QA-спеціалістів Керівник роботи: старший викладач Гресько Світлана Олексіївна (прізвище, ім’я, по батькові, науковий ступінь, вчене звання) затверджені наказом університету від «07» лютого 2022 р. № 45/04 2. Строк подання студентом роботи: 3. Вихідні дані до роботи: 1. Статичні дані щодо створення чат-бота в месенджері Telegram 2. Середовище розробки SendPulse 3. Покрокова інструкція створення чат-боту для проведення тестування QA-спеціалістів 4. Зміст розрахунково-пояснювальної записки (перелік питань, що їх належить розробити): Вступ 1. Опис предметної області тестування знань З2а. гЗаалгьанліьнвіідвоідмоомстосітпірпорTоelTeeglreagmra-mбо-бтоит, ио,глоягдляаднаалноагліовгтіватпаопстосатноавнкоавкзаавздаавдннаяння 3Р.оРзроозрбокабкчаатча-тбо-бтоутдулядлпярпорвеодвеенднеяннтяетстесутваунвнаяннQяAQ-сAп-есцпіеацлііаслтісівтів Висновки Список використаних джерел Додатки 5. Перелік графічного матеріалу (з точним зазначенням обов’язкових креслень, плакатів): 1. Специфікація 2. Інструкція користувача 6. Консультанти розділів роботи: Розділ Прізвище, ініціали Підпис, дата консультанта завдання видав завдання прийняв 7. Дата видачі завдання: 10 лютого 2022 року КАЛЕНДАРНИЙ ПЛАН Термін № з/п Назва етапів роботи виконання Примітка етапів роботи 1 Отримання завдання 10.02 – 12.02 виконано 2 Збір матеріалу 13.02 – 20.02 виконано 3 Обробка матеріалу 21.02 – 01.03 виконано 4 Створення каркасу чат-бота з використанням виконано функціоналу чат-бота «BotFather» 02.03 – 09.03 5 Приєднання чат-бота до сервісу «SendPulse» 10.03 – 02.04 виконано 6 Створення серії повідомлень для чат-бота «QA_project» 03.04 – 27.04 виконано 7 Виглад та перевірка роботи чат-бота виконано «QA_project» 28.04 – 10.05 8 Оформлення пояснювальної записки 11.05 – 22.05 виконано 9 Подання кваліфікаційної роботи на відгук та 23.05 – 31.05 виконано рецензування 10 Захист кваліфікаційної роботи 14.06.22 Студент ___________________________ Антон ВАСИЛЕНКО (підпис) Керівник роботи ___________________________ Світлана ГРЕСЬКО (підпис) АНОТАЦІЯ Кваліфікаційна робота бакалавра присвячена розробці чат-бота для проведення тестування QA-спеціалістів. Пояснювальна записка містить 69 сторінок, кількість додатків – 2, використано 21 джерело. Кваліфікаційна робота бакалавра складається з 3 розділів. В першому розділі виконано опис предметної області тестування знань. В другому розділі розглянуто загальні відомості про Telegram-боти, виконано огляд аналогів та сформульована постановка завдання на розробку чат-бота для проведення тестування QA-спеціалістів. У третьому розділі описано середовище розробки SendPulse, функції та можливості даної платформи; представлена реалізація проекту. В рамках роботи використано та засвоєно сучасні технології розробки програмного забезпечення. Ключові слова: ЧАТ-БОТ, ТЕСТУВАННЯ, МЕСЕНДЖЕР TELEGRAM, TELEGRAM BOT API, QA-СПЕЦІАЛІСТ, ЧЕК-ЛИСТ ANNOTATION The bachelor's thesis is dedicated to the development of a chatbot for testing QA specialists. The explanatory note contains 69 pages, the number of appendices – 2, 21 sources were used. The bachelor's thesis consists of 3 sections. The first section describes the subject area of knowledge testing. The second section discusses general information about Telegram-bots, reviews analogues and formulates a task for the development of a chat-bot for testing QA-specialists. The third section describes the Send Pulse development environment, features and capabilities of this platform; project implementation is presented. As part of the work, modern software development technologies were used and mastered. Keywords: CHAT-BOT, TESTING, TELEGRAM MESSAGER, TELEGRAM BOT API, QA-SPECIALIST, CHECKLIST ЗМІСТ ВСТУП………………………………………………………………………..... 4 ОПИС ПРЕДМЕТНОЇ ОБЛАСТІ ТЕСТУВАННЯ ЗНАНЬ………………… 6 1.1 Тестовий контроль як засіб оптимізації навчального процесу….. 6 1.2 Основні вимоги до тестових завдань……………………………... 10 1.3 Основні переваги перевірки знань студентів за тестами………... 12 2 ЗАГАЛЬНІ ВІДОМОСТІ ПРО TELEGRAM-БОТИ, ОГЛЯД АНАЛОГІВ ТА ПОСТАНОВКА ЗАВДАННЯ……………………………………………. 15 2.1 Класифікація та методи створення чат-бот додатків…………….. 15 2.2 Види класифікації чат-ботів……………………………………….. 15 2.3 Примітивні боти……………………………………………………. 19 2.4 Процес створення бота та огляд Telegram bot API……………….. 21 2.5 Основні типи, які підтримує Bot API……………………………... 27 2.6 Опис програмних аналогів………………………………………… 29 2.6.1 Чат-бот «Марафон WAYUP»……………………………... 29 2.6.2 Чат-бот «Groward академія»………………………………. 30 2.6.3 Чат-бот «Академія 5 сфер»……………………………….. 31 2.6.4 Чат-бот «Creo»……………………………………………... 32 2.6.5 Чат-бот «SendPulse Academy»…………………………….. 34 2.7 Постановка завдання на розробку чат-бота………………………. 35 3 РОЗРОБКА ЧАТ-БОТУ ДЛЯ ПРОВЕДЕННЯ ТЕСТУВАННЯ QA- СПЕЦІАЛІСТІВ……………………………………………………………….. 36 3.1 Опис середовища розробки SendPulse……………………………. 36 3.2 Блоки платформи SendPulse……………………………………….. 37 3.3 Функції та можливості платформи SendPulse……………………. 42 3.4 Розробка чат-бота для проведення тестування QA-спеціалістів... 44 ЧДТУ.221704.001 ПЗ Змн. Арк. № докум. Підпис Дат РозрКобив Василенко А.Л. а Чат-бот для проведення Літ. Лист Листів Керівник Гресько С.О 2 69 Рецеанзент Ярмоленко тестування QA-спеціалістів Н.Контроль ГМр.еВс.ько С.О. Пояснювальна записка Кафедра ІБ та КІ Затвфердив Рудницький В.М. гр. ЗКМ-175 е д р а К К - 0 6 ВИСНОВКИ…………………………………………………………………… 60 ДОДАТКИ: А – 482.ЧДТУ.21704-01Чат-бот для проведення тестування QA- спеціалістів СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ…………………………………….. 68 Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 3 а ВСТУП Інформаційна технологія – це сукупність методів, виробничих процесів та програмно-технічних засобів, об’єднаних у технологічний ланцюжок, що забезпечує виконання інформаційних процесів з метою підвищення їхньої надійності та оперативності і зниження трудомісткості ходу використання інформаційного ресурсу. Основним завданням розвитку інформаційного суспільства в Україні є сприяння кожній людині на засадах широкого використання сучасних ІКТ можливостей створювати інформацію і знання, користуватися та обмінюватися ними, виробляти товари та надавати послуги, повною мірою реалізовуючи свій потенціал, підвищуючи якість свого життя. Розвиток інформаційного суспільства в Україні та впровадження новітніх ІКТ в усі сфери суспільного життя і в діяльність органів державної влади та органів місцевого самоврядування визначається одним з пріоритетних напрямів державної політики [2]. Національна політика розвитку інформаційного суспільства в Україні ґрунтується на засадах: пріоритетності науково-технічного та інноваційного розвитку держави; формування необхідних для цього законодавчих і сприятливих економічних умов; всебічного розвитку загальнодоступної інформаційної інфраструктури, інформаційних ресурсів та забезпечення повсюдного доступу до телекомунікаційних послуг та ІКТ; сприяння збільшенню різноманітності та кількості електронних послуг, забезпеченню створення загальнодоступних електронних інформаційних ресурсів; поліпшення кадрового потенціалу; посилення мотивації щодо використання ІКТ; широкого впровадження ІКТ в науку, освіту, культуру, охорону здоров'я, охорону навколишнього середовища; забезпечення інформаційної безпеки [2]. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 4 а Але на шляху досягнення цих цілей виникають труднощі, пов’язані з недостатньою технологічною базою, складним фінансовим забезпеченням цього процесу, відсутністю достатньої кількості наукових досліджень процесу формування інформаційного суспільства і його складових. Сучасна інформаційна система дозволяє забезпечити: 1) прямий і своєчасний доступ до інформаційного продукту; 2) ефективну координацію внутрішньої діяльності; 3) використання якісно кращої технології системного аналізу та проектування оперативного управління на різних ланках діяльності підприємства тощо [2]. Останні декілька років зростає популярність систем обміну миттєвими повідомленнями (месенджерів). Вони перетворилися із засобів для спілкування між людьми у засоби для отримання інформації та у потужний маркетинговий інструмент. Велику роль у цьому відіграли боти. Зараз існує безліч їх варіацій – від ботів для отримання розсилок до ботів для замовлення їжі. Звісно таким корисним інструментом цікавляться власники бізнесу. І хоча боти уже декілька років активно використовуються закордоном, в Україні вони не так поширені та тільки набувають популярності, а, отже, є перспективною нішею для розробників. Слід враховувати, що для потенційних клієнтів важливим аспектом є досвід користувача при роботі із ботом, який включає те як бот сприймає команди, наскільки добре він виділяє суть запиту користувача та наскільки доречні і зрозумілі його відповіді. Отже, метою кваліфікаційної роботи бакалавра є розробка чат-боту для проведення тестування QA-спеціалістів. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 5 а 1 ОПИС ПРЕДМЕТНОЇ ОБЛАСТІ ТЕСТУВАННЯ ЗНАНЬ 1.1 Тестовий контроль як засіб оптимізації навчального процесу Контроль у навчальному процесі є необхідним елементом, який має багато способів оцінювання. Найбільш поширеними й досі залишаються спостереження, усна перевірка знань (опитування), письмова перевірка знань (письмові роботи), співбесіди у вигляді інтерв’ю. Екзамен – складний процес підбиття підсумків пізнавальної діяльності студента. Тому нині у вищих навчальних закладах при діагностиці освітньо-професійної підготовки студентів все частіше застосовується тестовий контроль знань, використання якого є ефективним методом виявлення рівня знань, умінь і навичок студентів [6]. Тестовий контроль як засіб оптимізації навчального процесу одержав у вузах широке розповсюдження. Якщо раніше тестова форма контролю була предметом дискусії, то на сьогоднішній день доцільність використання тестів визнана у психології, педагогіці, методиці. Що таке тести? За визначенням Є.А. Михаличова, «тести є одним з видів навчальних завдань, які використовуються для контролю і діагностики знань» [6]. Викладач повинен знати як правильно підбирати тести і як слід їх складати. Адже не кожен набір запитань з варіантами відповідей на них можна назвати тестом, бо тестовий контроль має бути: індивідуальним, що передбачає перевірку, оцінку, облік і корекцію власних результатів навчання кожного студента; систематичним, регулярним, що передбачає контроль просування кожного студента у навчанні (за тему, семестр, рік); об’єктивним, що передбачає виключення суб’єктивних, помилкових суджень і висновків викладача, які ґрунтуються на недостатньому вивченні студентів або упередженому ставленні до них та пом’якшення Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 6 а впливу соціальних, особистісних та емоційних факторів, які супроводжують процес оцінювання; прозорим – студенти повинні розуміти, чому їх відповідь оцінено саме такою кількістю балів; валідним, що передбачає відповідність пропонованих тестових завдань тому, що передбачається перевіряти; всебічним (охоплювати всі розділи програми), що передбачає контроль знань теоретичних положень, предметних та загальних умінь та навичок, інтелектуального й загально-психічного розвитку студентів, виявлення їхніх нахилів і здібностей; диференційованим, що передбачає врахування як рівнів засвоєння програмового матеріалу, так і індивідуальних особливостей студентів; надійним, тобто отримані результати тестового контролю повинні корелювати з результатами повторних вимірювань; точним, тобто мати мінімальну похибку у вимірюванні даним тестом; якісним, який має бути спрямований як на оволодіння предметними знаннями і вміннями, так і на перевірку розвитку загальнопредметних вмінь (аналізувати, міркувати, робити логічні висновки); взаємоповязаним між собою (послідовність у термінології); різноманітним за формами проведення, що створює умови для реалізації всіх функцій контролю та сприяє підвищенню інтересу студентів до його проведення; форма тесту повинна бути уніфікованою, звичною, зручною; послідовність тестових завдань повинна визначатись за принципом «від простого до складного» [7]. Крім того, науковці, які вивчають питання тестування в освіті (В.С. Аванесов, І.Є. Булах, А.Н. Майоров ) висувають ряд вимог і до побудови самого тесту. Точність тесту визначає мінімальну або систематичну похибку, з якою можна провести вимірювання даним тестом. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 7 а І.Є. Булах наводить науково обґрунтований зв’язок між довжиною тесту і точністю вимірювання [7]. З досвіду запровадження системи тестового контролю у вузах можна виділити позитивні сторони, які впливають на якість роботи студентів [7]: реалізація тестового контролю знань дозволяє викладачам упорядкувати процес контролю знань, умінь та навичок студентів, підвищити інформативність та об’єктивність оцінки; за результатами такого контролю студент має можливість об’єктивно оцінити свої досягнення та свідомо здійснити вибір рівня опанування навчальним матеріалом; можливість забезпечення високої стандартизації умов вимірювання; кількісні критерії оцінювання – наявність кількісних показників для визначення повноти та глибини засвоєння матеріалу, незначні затрати часу на виміри у великих групах студентів; рiвнi вимоги до знань та умінь фахівця шляхом використання в тесті завдань однакової складності, обсягу та змісту; тести ставлять усіх студентів в рівні умови, а це приводить до зменшення нервового напруження. Всі студенти мають рівні можливості, а широта тесту дозволяє їм показати свої досягнення на широкому полі матеріалу. Однак система тестового контролю має свої і негативні сторони: мала кількість спеціалістів із тестування в системі освіти, що уповільнить процес переходу на сучасне тестування. Оскільки ні навчання в аспірантурі, ні здобуття освіти в педагогічних закладах, на педагогічних факультетах не передбачало вивчення методики складання тестових завдань; підручники розраховані на усне опитування перевірки знань; деякі тести припускають можливість угадування методом виключення; Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 8 а слухач може забути факти, які слід використовувати у відповіді, але згадати їх, переглядаючи перелік можливих відповідей на завдання тесту; при тестовому контролі не задіяний мовленнєвий апарат, що унеможливлює дослідження логіки міркування студента; повний перехід виключно на тестову перевірку знань студентів швидко зробить не засвоєння, а саме контроль основною метою діяльності студента; у вищому навчальному закладі існують предмети, зміст яких важко охопити системою тестів. Навіть в межах одного предмету не всі теми рівномірно перевіряються за допомогою тестів; знижується рівень кваліфікації викладача. Перевірка тестових завдань та контрольних робіт здійснюється в автоматичному режимі і не надає професійного навантаження; студент представляючи лише номери відповіді не показує характер ходу рішення – розумова діяльність студента і результат може бути тільки ймовірнісним [7]. Незважаючи на усі вимоги щодо тестового контролю та недоліки, тестова перевірка має ряд переваг порівняно з традиційними формами і методами, вона природно вмонтована у сучасні педагогічні концепції, дозволяє більш раціонально використовувати зворотний зв'язок зі студентами і визначати результати засвоєння матеріалу, зосередити увагу на прогалинах у знаннях та внести відповідні корективи. Однак потрібно мати перевірену надійну базу тестів, поєднувати їх використання з іншими методами контролю, серед існуючих автоматичних систем тестування вибрати таку, яка б максимально запобігала б вгадуванню та зубрінню, виробити об’єктивні, чіткі критерії оцінювання, зрозумілі не тільки екзаменатору, а й студентові [7]. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 9 а 1.2 Основні вимоги до тестових завдань Основні вимоги до тестових завдань [6]: повинні належати до однієї теми чи дисципліни; бути взаємопов’язаними між собою (послідовність у термінології); бути взаємодоповнюючими та упорядкованими за труднощами або за логікою; форма тесту повинна бути уніфікованою, звичною, зручною; терміни та поняття у тестах повинні бути загальновідомі і відповідати вимогам навчальної програми; послідовність тестових завдань повинна визначатися за принципом «від простого до складного»; завдання повинні бути стислими. За кількістю завдань існують стислі (до 20 завдань), середні (від 20 до 500 завдань), довгі (більше 500 завдань) тести. За рівнем засвоєння знань, умінь, навичок тести класифікують на 3 рівні. Тести першого рівня розподіляють на тести пізнання, тести розрізнення, тести співвіднесення, тести-завдання з вибірковими відповідями. У тесті пізнання студент дає одну з альтернативних відповідей («так – ні», «є – не є» тощо). У завданні обов’язково фігурує об’єкт, про властивості або характеристики якого студент повинен мати уявлення. Тести розрізнення разом із завданням містять відповіді, з яких учень повинен обрати одну чи кілька. Тести співвіднесення пропонують знайти подібність чи розбіжність у вивчених об’єктах і при цьому порівнювані властивості або параметри обов’язково наявні у завданні. Оформлені таким чином тести мають назву вибіркові. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 10 а Тести-завдання з вибірковими відповідями. У завданні формулюється умова завдання та всі необхідні вихідні дані, а у відповідях представлено кілька варіантів результату рішення у числовому або буквеному вигляді. Студент повинен розв’язати завдання і показати, яку відповідь із запропонованих він одержав. Застосування тестів першого рівня доцільне для проміжного контролю знань студентів в межах викладання окремого курсу. Перевірку засвоєння на другому рівні можна здійснювати за допомогою наступних тестів – відтворення інформації, розв’язання типових задач. За оформленням тести відтворення інформації поділяють на тести- підстановки та конструктивні тести. Тести-підстановки можуть містити у завданнях різноманітну інформацію (словесний текст, креслення або схему, графік тощо), в яких пропущено певні складові (наприклад, суттєву частину слова або фрази, умовні позначення, лінії чи елементи зображення тощо). Для розв’язання завдання студент повинен відтворити в пам’яті і заповнити «пропуски». Завдання конструктивних тестів вимагають від студента самостійного конструювання відповіді (наприклад, відтворити формулювання, дати характеристику, виконати креслення тощо). Таким чином, тести другого рівня доцільно використовувати на проміжному контролі знань студентів з основних розділів курсів, без знання яких загальне засвоєння дисципліни ускладнене чи взагалі неможливе. Так наприклад при вивченні дисципліни «Документування» такий контроль необхідний після вивчення теми «Оформлення документів за державними стандартами», оскільки вона є базовою для всіх подальших тем. Такими ж базовими темами при вивченні дисципліни «Українська мова професійного спілкування» є теми «Документ як вид ділового тексту» та «Усне ділове мовлення» [7]. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 11 а Тести третього рівня (підсумкові) при відповіді на запитання потребують використання засвоєних вмінь та навичок в нових умовах, у невивченій ситуації, у практичній діяльності. Такі тести можна застосовувати як завдання на практичних заняттях або під час підсумкового контролю за весь вивчений курс. Створення таких завдань вимагає особливої майстерності педагогів. Педагогічний тест – це система фасетних знань певного змісту, зростаючої складності, специфічної форми, яка дозволяє якісно оцінити структуру та ефективно виміряти рівень знань, умінь, навичок і уявлень. Такий тест є своєрідним вимірювальним інструментом певної роздільної здатності та точності. При цьому слід пам’ятати, що властивість фасетності (параметризація словарного значення за кількома засадами) у гуманітарному знанні реалізувати складніше через слабку формалізацію та неартикулярність. Тестові завдання можуть мати різні форми, але основними в світі є чотири: закрита, відкрита, на відповідність, на встановлення послідовності. Найважливіші характеристики при розробці педагогічних тестів – це складність завдання (співвідношення учнів, які успішно виконали завдання, до загальної кількості протестованих), розрізнювальна здатність завдання (диференціація учнів, які засвоїли та не засвоїли навчальний матеріал), надійність (точність педагогічних оцінок, постійність, стабільність, стійкість результатів тестування), валідність (комплексна характеристика тесту як обґрунтованість, значущість його результатів, адекватність тесту цілям оцінювання) [7]. 1.3 Основні переваги перевірки знань студентів за тестами Основними перевагами перевірки знань студентів за тестами є: 1. Швидкість обробки одержаних результатів. Врешті-решт, за умови відпрацьованої технології можна довести цей процес до повністю Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 12 а автоматизованої перевірки із забезпеченням максимальної об’єктивності. Але водночас відчуваються втрати щодо культури мовлення та глибини засвоєння знань студента. Традиційні методи в цьому випадку приносять більше користі. 2. Об’єктивність одержаної оцінки, її незалежність від того, хто здійснює тестування. Але дана оцінка не може бути усвідомлена як оцінка саме сукупності знань студента через те, що існує категорія студентів, які традиційно не спроможні ефективно демонструвати свої знання через тестову методику (наприклад, «тугодуми» чи «тестофоби») [6]. В IT-компаніях тестуванням займаються QA-інженери. QA-інженер повинен точно розуміти, в який момент за справу візьметься тестувальник і встигнути підготувати до цього часу план тестування, тестову документацію, тестове оточення. У коло обов'язків QA-інженера входить: аналіз і уточнення вимог з замовником або бізнес-аналітиками; планування процесу тестування; написання тест-кейсів (сценаріїв тестування); тестування функціоналу; ідентифікація проблемних місць, внесення їх в трекінговую систему; обговорення фіксів з розробниками; відстеження життєвого циклу помилок; ре-тест підпорядкованих дефектів; аналіз тестування; оптимізація процесу тестування; аналіз процесів роботи в команді; поліпшення процесів; ведення тестової документації. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 13 а Типовий робочий день QA-фахівця включає в себе: написання тест-кейсів, тестування, документування помилок (в залежності від фази проекту); перевірка баг-трекингової системи на предмет появи виправлених помилок; стенд-ап мітинги; вивчення вимог, їх уточнення у замовника; активне спілкування з розробниками; оформлення тестової документації. Привертає QA-інженерів можливість покращувати якість продукту і, при цьому, освоювати різні технології та вникати в деталі продукту. Деякі опитані відзначають, що інтерес до роботи посилюється з часом: спочатку не зрозуміло, що робиться і для чого, а потім приходить розуміння і бажання брати на себе складні завдання. Ця професія вимагає наявності і постійного застосування аналітичних здібностей. Вона не дає розслабитися і розумово деградувати, а змушує постійно вивчати нові технології і галузі знань. Не останнє місце займає і можливість долучитися до світу високих технологій та великих зарплат. Деякі інженери прийшли до своєї професії, тому що хотіли в IT, а поріг входу на QA нижче, ніж на програміста. Деякі вважають роботу QA більш цікавою і різноманітною, ніж роботу розробника. Головний мінус – монотонна складова роботи, особливо на початку кар'єри. Сюди відносять проходження тест-кейсів при ручному тестуванні і роботу з документацією. Недоліками, швидше за все, можна назвати більшу частину рутинної роботи, яку потрібно робити обов'язково. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 14 а 2 ЗАГАЛЬНІ ВІДОМОСТІ ПРО TELEGRAM-БОТИ, ОГЛЯД АНАЛОГІВ ТА ПОСТАНОВКА ЗАВДАННЯ 2.1 Класифікація та методи створення чат-бот додатків Чат-бот – це програма-співрозмовник, що імітує людське спілкування за допомогою тексту або голосу. Чат-боти допомагають автоматизувати завдання, працюючи за заданим алгоритмом. Вони ведуть діалог з користувачем, виконуючи його прохання, відповідаючи на запити або розважаючи своїми відповідями. Більшість працює на платформах популярних месенджерів: Facebook Messenger, Telegram, Viber, Skype. Боти можуть працювати у вигляді окремих додатків або бути вбудованими в функціонал пошукових систем. Чат-боти використовуються в таких областях, як сервіси електронної комерції, кол-центри, ігрова індустрія. Використання чат-ботів для таких цілей зазвичай обмежена вузькою спеціалізацією, і вони не можуть бути використані для широкого спектра спілкування з людиною [12]. 2.2 Види класифікації чат-ботів Різні компанії мають різне бачення в тому, як класифікувати чат-боти. Однак можна виділити 2 види класифікації: бізнес-класифікація чат-бот додатків і класифікація чат-бот додатків з технічного типу [12]. Діаграма бізнес-класифікації чат-ботів представлена на рисунку 2.1. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 15 а Розмовні чат- боти Бізнес Чат-боти класифікація асистенти Q&A чат-боти Рисунок 2.1 – Бізнес-класифікація чат-бот додатків Розглянемо кожен з типів докладніше [12]: 1. Розмовні чат-боти. Створені для спілкування на зразок розмови з людиною, не мають конкретної мети. 2. Чат-боти асистенти. Мають конкретну заздалегідь певну мету. З призначених для користувача відповідей витягуються дані, які необхідні для досягнення цих цілей. Можуть служити заміною або помічниками (асистентами) в заповненні web-форм, таких як отримання банківської виписки. 3. Q&A (questions and answers). Чат-боти створені надавати прості відповіді по принципу 1 питання – 1 відповідь. Можуть служити заміною FAQ (frequently asked questions) розділів різних сайтів. Технічні типи чат-бот додатків представлені на рисунку 2.2. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 16 а Засновані на бізнес- правилах Технічна Засновані на штучному класифікація інтелекті Гібридні Рисунок 2.2 – Технічні типи чат-ботів Розглянемо кожен з типів докладніше [12]: 1. Засновані на бізнес-правилах. Мають деревоподібну структуру розмови. Розмова з користувачем йде за певним шляхом, який був заздалегідь визначений розробником. Користувач, як головний герой чату, приймає рішення в такій розмові, але ніколи не може відійти від заздалегідь визначеного шляху. Зазвичай чат-боти такого типу уникають питання, що вимагають відповідей у вільній формі, а замість цього містять велику кількість кнопок як альтернатив. 2. Засновані на штучному інтелекті. Такі чат-боти побудовані повністю на використанні штучного інтелекту (NLP, NLU, NN і т.д.). Як протилежність заснованим на бізнес-правилах чат-ботах, не мають заздалегідь певного шляху розмови. Замість цього, шлях розмови визначений неявним чином на основі тренувальних даних, використаних для навчання моделі машинного навчання. Яке питання поставити і що відповісти, чат-бот вирішує на основі минулих діалогів, використаних в навчанні. Це призводить нас до основного мінуса чат- Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 17 а ботів – вони вимагають величезних наборів даних для того, щоб почати говорити «розумно». На даний момент існують тільки прототипи таких чат-ботів. 3. Гібридні. Гібридні чат-боти – це комбінація чат-ботів перших двох типів. Чат-боти такого типу ведуть розмову з користувачем за наперед визначеним шляхом, але використовує для розпізнавання користувальницьких намірів, а також для вилучення цінних даних з користувальницьких повідомлень (ПІП, дата, період і т.д.). Даний тип чат-ботів найбільш використовуваний в комерційних додатках. У Telegram працює платформа чат-ботів. Боти можуть виконувати різноманітні завдання, такі як пошук в інтернеті чи державних реєстрах, покупки, платежі, розваги, модерація груп тощо. У спілкуванні беруть участь користувач Telegram та комп'ютерна програма від стороннього розробника. Користувач може взаємодіяти з ботом за допомогою елементів інтерфейсу месенджера: надсилання повідомлень, натискання на команди та кнопки, використання інлайн-режиму. Telegram надає три способи взаємодії користувача з ботом: приватний чат (класичний спосіб), група й так званий інлайн-режим [13]: Найпоширеніший спосіб — приватний чат. Здебільшого бот не може ініціювати діалог із користувачем. Деякі боти можуть бути учасниками груп. Наприклад, у групах бот може підтримувати розмову, модерувати повідомлення або бути ведучим гри. Інлайн-режим нагадує інтерфейс пошукової системи. Користувач уводить у поле для введення повідомлень запит, що починається з короткого імені бота. Далі користувач може вибрати й надіслати один з результатів. Деякі боти можуть бути учасниками каналів. Їх застосовують здебільшого для запланованого розміщення повідомлень. З такими ботами користувач взаємодіє через приватний чат або веб-інтерфейс. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 18 а Бот взаємодіє з користувачами за допомогою Bot API. Керування ботами на платформі доступне в боті BotFather. Зокрема, там можна створити бота та переглянути чи змінити присвоєний йому токен API. 2.3 Примітивні боти Підтримка команд – це те, що відрізняє бота від звичайного користувача. Примітивні боти обмежуються цим функціоналом. У таких ботів є певний обмежений набір доступних команд, які вони здатні обробити та виконати пов’язану із ними дію. Часто для зручності користувача ці команди подаються візуально у інтерфейсі месенджера і для їх відправки достатньо просто натиснути по ній на екрані, як зображено на рисунку 2.3 [14]. Рисунок 2.3 – Приклад команд-кнопок у інтерфейсі бота для Telegram Загальноприйнятою концепцією є написання фіксованих команд боту, використовуючи символ «/» як префікс, як показано на рисунку 2.4. Наприклад «/help» – команда, реалізована для багатьох ботів, яка виводить список доступних команд чи іншу необхідну користувачу інформацію для початку роботи із ботом. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 19 а Рисунок 2.4 – Приклад команд-кнопок у інтерфейсі Botfather для Telegram Виокремлення команд із повідомлення («розуміння») користувача значно підвищує привабливість бота, а тому стає все популярнішою функцією. Наприклад, при наявності такого функціоналу бот розумітиме різноманітні варіації команди, наприклад: «Чи не міг би ти установити будильник на 10:00 26-го червня» чи «Установи будильник на завтра на 10:00», що є дуже схожим на «природню» розмову. За таких умов необхідне використання засобів обробки природної мови. Людська мова часто є неточною і в залежності від предмета та конкретної мови, що розглядається, одне слово може означати 500 різних речей. Наприклад, англійське слово «run» має 645 різних значень. Засоби обробки природного мовлення визначають значущі фрагменти інформації, наданої користувачем і на їх основі формують правильну відповідь. Ці засоби використовують Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 20 а розпізнавання названого об'єкта (англ. Named Entry Recognition – NER) та токенізацію, щоб точно визначити те, що хоче користувач [15]. Розпізнавання названого об'єкта – це тип вилучення інформації, який призначений для ідентифікації та класифікації названих об'єктів у визначених категоріях, включаючи, але не обмежуючись такими: а) компанії та організації; б) місцеположення; в) імена людей чи назви продуктів; г) позначення часу. Таким чином, система розпізнавання буде знати, що Джейн – це ім’я, 2013 рік – це 2013-й рік в григоріанському календарі, а Сан-Франциско – це місто. Щоб чат-бот зрозумів речення, йому спочатку потрібно розділити його і перетворити на серію «токенів». Ці токени можуть мати будь-яку форму – від слова до числа або будь-якого знаку пунктуації. Це також можна назвати сегментацією речення. Бот потім буде класифікувати всі токени за контекстом. На межі між цим та попереднім видом ботів існують боти, що виділяють ключові слова із фраз користувачів. В таких ботів є заготовані фрази для відповіді на 22 запитання із певним набором ключових слів. Наприклад, слово «акція» для бота на сайті роздрібної компанії призведе до використання попередньо прописаної для цього слова відповіді: «Сьогодні взуття за акційною ціною!». Але, якщо такого бота запитати щось більш складне або серію запитань – він або попросить вас уточнити запитання, або надасть вам абсолютно непідходящу відповідь [15]. 2.4 Процес створення бота та огляд Telegram bot API Для створення бота у системі Телеграм існує бот – BotFather, який представлений на рисунку 2.5. Необхідно розпочати з ним діалог та виконати декілька простих кроків. Основною ціллю цієї процедури є отримання токена Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 21 а авторизації бота, який дозволяє серверам Телеграм унікально ідентифікувати бот. Цей токен буде використовуватися програмою при будь яких запитах до сервера. Після початку роботи із ботом BotFather потрібно використати команду «/newbot» для створення нового бота. BotFather запропонує вказати ім'я бота та ім'я користувача, перед тим як створити токен авторизації. Ім'я бота – це те, що відображатиметься у контактній інформації користувачів та в багатьох інших місцях. Ім'я користувача для бота – це коротке ім'я, яке буде використовуватися у згадуваннях та посиланнях сайту telegram.me. Імена користувачів повинні містити від 5 до 32 символів. Вони нечутливі до регістру, але можуть включати тільки латинські символи, цифри та підкреслення. Ім'я бота повинно закінчуватися на «bot», наприклад, «PersonalizedInfoBot» або «personalized_info_bot» [19]. Рисунок 2.5 – Початок роботи із ботом BotFather та доступні команди Не слід недооцінювати важливість імені бота, оскільки воно завжди видиме користувачу і фактично асоціюється із компанією. Зазвичай ботів називають так як і компанію (лише з приставкою «bot»), або комбінують назву компанії із функцією яку виконуватиме бот, наприклад: «Domino's Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 22 а Pizza Bot» чи «Amazon Search & Price Bot». Діалог обрання імені бота та імені користувача для бота, наведено на рисунку 2.6. Рисунок 2.6 – Процес отримання токену за допомогою BotFather BotFather – це також інструмент для керування уже створеними ботами. Список доступних команд для редагування ботів складається із [19]: /mybots – повертає список ботів та дозволяє редагувати їх налаштування за допомогою зручних елементів керування; /mygames – повертає список ігор та дозволяє редагувати їх налаштування за допомогою зручних елементів керування; /setname – дозволяє змінити ім’я бота; /setdescription – дозволяє змінити опис бота – короткий текст до 512 символів, що описує його суть. Користувач бачить цей текст перед початком розмови з ботом під заголовком «Що може зробити цей бот?»; /setabouttext – дозволяє змінити інформацію про бота – короткий текст до 120 символів. Користувачі бачать цей текст на сторінці профілю бота (рисунок 2.7). Коли вони діляться своїм ботом з кимось, цей текст надсилається разом із посиланням; Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 23 а /setuserpic – дозволяє змінити зображення профілю бота. Зображення бота відображається в пошуку, діалозі та списку контактів користувача, а тому важливо серйозно поставитися до його вибору; /setcommands – дозволяє змінити список команд, що підтримуються ботом. Користувачі побачать ці команди як пропозиції, коли вони вводять «/» в чаті. Кожна команда має назву, яка повинна починатися з косої риски «/», містити букви, цифри чи підкреслення та бути коротше 32 символів, параметри та текстовий опис; /deletebot – дозволяє видалити бота. При цьому його ім’я користувача стає доступним для використання іншими; /setinline – дозволяє ввімкнути чи вимкнути режим використання у будь- якому чаті для бота; /setinlinegeo – дозволяє боту використовувати дані про місцезнаходження користувача, щоб забезпечити результати на основі місцезнаходження; /setjoingroups – дозволяє змінити можливість додавання бота до груп. Будь-який бот повинен мати можливість обробляти приватні повідомлення, але, якщо він не призначений для роботи, в групах необхідно відключити цю опцію; /setprivacy – дозволяє визначити які повідомлення бот отримуватиме при роботі в групах. Якщо «/setprivacy» вимкнено – бот отримуватиме всі повідомлення. Після отримання токену можна приступати до подальшого процесу розробки, та слід пам’ятати ключові технічні відмінності ботів від користувачів [19]: у ботів немає статусу, який відображає чи бот в мережі та, відповідно, відсутня позначка часу, коли бот востаннє був в мережі. Натомість, усі боти мають підпис «bot» під іменем, як, наприклад, у вікні опису бота «markerBot» (рисунок 2.7); Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 24 а у ботів обмежена місткість хмарного сховища повідомлень, а тому застарілі повідомлення будуть видалятися із сервера, як тільки вони були прочитані користувачем. Проте, програми можуть зберігати цю інформацію на власних серверах; Рисунок 2.7 – Вікно інформації про бот боти не можуть самі розпочати діалог із користувачем. Користувач повинен або добавити їх у групу, або першим написати особисте повідомлення. Користувачі можуть використовувати посилання telegram.me/<ім’я бота> або пошук для того щоб розпочати діалог із ботом; імена користувачів-ботів закінчуються на «bot»; після того, як їх додали до групи, боти, за замовчуванням, не отримують усі повідомлення із неї. Це можливо змінити у налаштуваннях. Перед тим як обирати інструменти розробки, необхідно ознайомитися із прикладним програмним інтерфейсом (англ. Application Programming Interface, API), який надає месенджер для розробників. Прикладний програмний інтерфейс – це набір визначень взаємодії різнотипного програмного забезпечення [13]. Якщо простіше – це рівень абстракції, необхідний для зручної комунікації декількох Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 25 а програм, при якій одна або обидві з них надають доступ до певних високорівневих функцій іншим, не розкриваючи внутрішньої їх реалізації. В той же час програма, яка використовує API, отримує доступ до функціоналу програми, яка надає його, без необхідності детально вивчати структуру та зв’язок її елементів. Інтерфейси прикладного програмування полегшують для розробників використання певних технологій при створенні додатків. Також API дозволяють приховати внутрішні особливості реалізації методів для покращення безпеки та забезпечення можливостей для зовнішньої взаємодії із програмою [18]. Найкращим варіантом для створення чат-бота є месенджер Телеграм. Телеграм пропонує два види API для розробників. Перше – це API Telegram, який призначений для створення сторонніх клієнтів для платформи Телеграм. Другий – Bot API, що дозволяє легко створювати програми, які використовують повідомлення Телеграм як інтерфейс у спілкуванні із користувачем. Власне Bot API – це те, що дозволяє легко та зручно створювати чат- ботів. Цей API дозволяє підключати ботів до системи Телеграм. З точки зору системи Телеграм, боти – це спеціальні облікові записи, для яких не потрібно встановлювати додатковий номер телефону. Ці облікові записи служать інтерфейсом для коду, що працюватиме на даному сервері. Для цього не потрібно нічого знати про те, як працює протокол шифрування MTProto, який застосовується у системі Телеграм – їх проміжний сервер буде обробляти всі шифрування та спілкування з API Телеграм. Для зв'язку з цим сервером використовується простий HTTPS- інтерфейс, який пропонує спрощену версію API Телеграм. Будь-які запити до Bot API Телеграм повинні передаватися через протокол HTTPS і мати наступну форму: https://api.telegram.org/bot<ТОКЕН>/<ІМЯ МЕТОДУ>. На місці <ТОКЕН> Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 26 а відповідно повинен міститися токен авторизації бота, а на місці <ІМЯ МЕТОДУ> – метод, який необхідно використати з API. В API підтримуються GET і POST HTTP запити. GET-запит використовується за необхідності отримання певної інформації від API, а GET-запит – при необхідності передати якусь інформацію засобами Bot API [17]. Відповідь на будь-який запит містить об'єкт JSON, який завжди має логічне поле «ok», яке вказує на успішність запиту, а також може мати необов'язкове поле «description» з описом результату. Якщо «ok» встановлено в «true», запит був успішним, а результат запиту можна знайти в полі «result». У випадку невдалого запиту «ok» містить «false», а помилка описується в полі «description». Поле числового типу «error_code» вказує на код помилки. Деякі помилки також можуть мати необов'язкове поле «parameters», яке може допомогти автоматично опрацювати помилку [18]. Є два взаємовиключні способи отримання оновлень для бота – метод «getUpdates» і використання вебхуків, обробників подій. У випадку використання вебхуків сервер Телеграм, за наявності неопрацьованих оновлень, спровокує подію, з якою пов'язаний веб-хук, а той відреагує на неї та отримає необхідні оновлення. Вхідні оновлення зберігаються на сервері до тих пір, поки бот не отримає їх у будь-якому із вище описаних способів, але не більше 24 годин. Отже, необхідно щонайменше раз на 24 години отримувати вхідну інформацію. Насправді, це необхідно робити набагато частіше, оскільки частиною цієї інформації є повідомлення користувачів. 2.5 Основні типи, які підтримує Bot API Основні типи, які підтримує Bot API та ті, які можуть бути передані як у запиті бота, так і при відповіді на цей запит [14]: User – цей об'єкт являє собою користувача або бота; Chat – цей об'єкт являє собою чат чи групу; Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 27 а Message – цей об'єкт являє собою повідомлення. Використовується як для надсилання інформації користувачу, так і для отримання від нього відповідей; MessageEntity – один із елементів повідомлення (наприклад тег, ім’я користувача чи url-посилання); PhotoSize – відображає розмір фотографії, ескізу файлу чи стікера; Audio – аудіо файл, який можна програвати за допомогою месенджера; ж) Document – файл будь-якого не описаного типу; Video – описує відео файл; Voice – голосове повідомлення надіслане користувачем; VideoNote – відео повідомлення надіслане користувачем; Contact – описує контакт телефонної книги; Location – відповідає певній точці на карті; Venue – описує певне місце проведення події; UserProfilePhotos – зображення профілю користувача; File – файл, який можна завантажити. Гарантовано, що посилання буде дійсним протягом, щонайменше, години. Коли термін дії посилання закінчиться, можна згенерувати нове за допомогою команди «getFile»; а також – команди пов’язані зі створенням індивідуальної клавіатури, відповідями від такої клавіатури, надсиланням різноманітних медіа- файлів, а також пов’язані з роботою із елементами та користувачами чатів. Відповідно до наведених типів існують методи, пов’язані із їх надсиланням та отриманням. Також існують методи для більш зручної роботи із чатами – вони дозволяють, наприклад, змінювати елементи, такі як фото, опис, та ін., заблокувати користувача чату чи розблокувати його та багато інших корисних функцій. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 28 а Важливо що Телеграм, як платформа, дозволяє ботам проводити різноманітні операції як із повідомленнями, так і з чатами, а також підтримує та навіть заохочує використання ботів для різноманітної взаємодії. Гнучкість, зумовлена наявністю великої кількості доступних функцій, дозволяє персоналізувати ботів під потреби різних замовників. Для використання бота можна використовувати команди, повідомлення, інтерактивні клавіатури чи навіть голосові повідомлення. Відповіді користувачу можна наводити у формі текстових повідомлень, фото, відео чи файлів [15]. 2.6 Опис програмних аналогів 2.6.1 Чат-бот «Марафон WAYUP» WAYUP – це спільнота успішних людей, які займаються улюбленою справою. Вони навчають веб-дизайну та розробці сайтів. Безкоштовні курси від WAYUP – це відмінна можливість стартувати свою нову кар'єру під наглядом професіоналів. У кожному безкоштовному курсі передбачена перевірка домашніх завдань і персональні коментарі фахівців [16]. Рисунок 2.8 – Сторінка платформи «WAYUP» Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 29 а Рисунок 2.9 – Вигляд чат-бота в спільному вікні чатів Рисунок 2.10 – Вікно діалогу чат-бота 2.6.2 Чат-бот «Groward академія» «Groward» – он-лайн-академія для навчання сучасним інтернет- професіям в напрямку інтернет-маркетингу, дизайну інтерфейсів, управління інтернет-проектами [16]. Рисунок 2.11 – Сторінка платформи «Groward» Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 30 а Рисунок 2.12 – Вигляд чат-бота в спільному вікні чатів Рисунок 2.13 – Вікно діалогу чат-бота 2.6.3 Чат-бот «Академія 5 сфер» Академія 5 сфер – це бібліотека освітніх програм від експертів в особистісному розвитку, здоров'я і харчування, лідерстві, фінансах і побудові відносин. Пройшовши цей тренінг, можна поліпшити свою пам'ять, ораторські навички, духовний і моральний стан, навчитися боротися з лінню, навчитися розпоряджатися своїми фінансами і навіть можна почати вивчати англійську мову [16]. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 31 а Рисунок 2.14 – Сторінка платформи «Академія 5 сфер» Рисунок 2.15 – Вигляд чат-бота в спільному вікні чатів Рисунок 2.16 – Вікно діалогу чат-бота 2.6.4 Чат-бот «Creo» CREO — це екосистема для людей, які працюють в креативній індустрії. Вони допомагають людям абсолютно з нуля освоїти креативну професію та стартувати свою кар'єру в digital, працювати онлайн, бути Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 32 а географічно не прив'язаним, займатися улюбленою справою та створювати чудові проекти для клієнтів з усього світу. Ціль – зробити так, щоб люди завдяки улюбленій справі могли подорожувати та працювати з цікавими проектами з усього світу [16]. Рисунок 2.17 – Сторінка платформи «Creo» Рисунок 2.18 – Вигляд чат-бота в спільному вікні чатів Рисунок 2.19 – Вікно діалогу чат-бота Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 33 а 2.6.5 Чат-бот «SendPulse Academy» В Академії SendPulse навчальні вебінари проходять щочетверга. Фахівці діляться своїм досвідом і знаннями, а учасники задають питання в чаті і отримують на них відповіді [16]. Рисунок 2.20 – Сторінка платформи «Creo» Рисунок 2.21 – Вигляд чат-бота в спільному вікні чатів Рисунок 2.22 – Вікно діалогу чат-бота Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 34 а 2.7 Постановка завдання на розробку чат-бота Мета розробки чат-боту – дати можливість користувачам месенджеру Telegram, які цікавляться сферою IT, пройти тест і дізнатися свій рівень знань в напрямку QA, а також створити чек-лист, який допоможе при тестуванні ПЗ. Чат-бот буде формувати чек-лист для часто використовуваних пристроїв, що дає можливість більш точно створити чек-лист для тестування. Чат-боти – сучасний та ефективний засіб, який стає дедалі більш популярним для проведення масштабних рекламних кампаній брендів. Враховуючи, високий показник конверсії відкриттів і переглядів повідомлень, які приходять до месенджерів, чат-боти є значно ефективнішим за будь-який інший інструмент реклами. Для користувачів буде значно простіше отримати необхідну інформацію в автоматичному режимі за допомогою чат-бота, ніж намагатися отримати ту ж саму інформацію за допомогою пошуку в інтернеті. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 35 а 3 РОЗРОБКА ЧАТ-БОТУ ДЛЯ ПРОВЕДЕННЯ ТЕСТУВАННЯ QA-СПЕЦІАЛІСТІВ 3.1 Опис середовища розробки SendPulse Для розробки чат-боту було обрано платформу SendPulse. Платформа SendPulse була створена у 2015 році. Понад 800 тис. зареєстрованих користувачів і близько 28 тис. платоспроможних клієнтів. Серед клієнтів великий відсоток інтернет-магазинів і e-commerce в загалом. Також, багато представників сфери послуг та event-проектів. Країна розробки платформи – США. Офіси або представники є в багатьох країнах: в Україні, Туреччині, Бразилії, Мексиці та інших. Співробітники надають підтримку цілодобово українською, англійською, турецькою, іспанською та португальською мовами. У SendPulse є все необхідне для професійного email маркетингу: від форми підписки і системи для тригерних розсилок Automation 360 до адаптивного редактора шаблонів і статистики. Користувачі вибирають SendPulse за масу корисних функцій, простоту у використанні і зручний API. SendPulse підходить будь-якому бізнесу, який хоч якось представлений в інтернеті. Навіть якщо у вас немає контактної бази, ви можете створити форму підписки і розмістити її на сайті, почати збирати передплатників і потім відправляти їм розсилки. SendPulse можна використовувати не тільки для email розсилок. Він підходить і для push-маркетингу: можна поставити форму підписки на web-push і відправляти web-push розсилки. Платформу оновлюють постійно. Кожен день сервіс розвивається і поліпшується, відбуваються баг-фікси і дрібні релізи. Платформу оновлюють з точки зору вигоди для користувачів. В основному анонси оновлень проходять через поштові розсилки, де платформа повідомляє користувачів про нові функції [20]. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 36 а 3.2 Блоки платформи SendPulse Конструктор форм За допомогою конструктора форм можна вибрати готовий варіант або створити власний, в стилі свого сайту. Можна вибрати кількість полів, вставити зображення і підібрати необхідний тип форми. У сервісі доступні різні типи форми підписки: Pop-up. Форма з'являється на екрані через деякий час перебування користувача на сайті або після певних його дій. Вбудована форма. Розміщується внизу сторінки або в сайдбарі, зазвичай повторює дизайн сайту. Плаваюча форма. Розташовується внизу або вгорі екрану і при прокручуванні залишається на своєму місці. Фіксована. Закріплюється внизу екрану і не зникає при прокручуванні. Всі форми адаптивні і однаково виглядають на будь-яких пристроях [21]. Automation 360 Automation 360 дозволяє налаштувати серію повідомлень для кожної можливої події і автоматизувати відправлення. Ви можете комбінувати в одному ланцюжку email-, web-push- і SMS- повідомлення. Користуватися Automation 360 дуже просто: всі елементи автовідправлення можна перетягувати в робоче поле за допомогою миші. При створенні автоматичного ланцюжка доступні елементи: email, web-push, SMS, фільтр, умова, дія і мета. Email Ви вибираєте шаблон, прописуєте тему листа і вказуєте час відправки. Можна додати в серію необхідну кількість листів. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 37 а Рисунок 3.1 – Вибір шаблону Push і SMS Якщо користувач не відкрив email повідомлення, є можливість додатково відправити йому web-push і SMS повідомлення. Потрібно просто перетягнути елемент в робоче поле, вказати час відправки, прописати текст повідомлення і задати умову, за якої підписнику відправлятиметься web-push або SMS. Рисунок 3.2 – Створення web-push і SMS повідомлення Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 38 а Фільтр Елемент фільтрує контакти по зазначеним умовам і дозволяє створювати персоналізовані ланцюжки. Наприклад, ви можете створювати листи для чоловіків і жінок або задати умови для відправки за місцем проживання. Рисунок 3.3 – Створення елементу «Фільтр» Умова Цей блок вибудовує подальший ланцюжок відправлення, ґрунтуючись на діях підписника. В умовах можна задати час, протягом якого система очікує дії підписника. Наприклад, якщо підписчик відкрив лист, йому відправиться наступне повідомлення. Якщо не відкрив, то через зазначений час йому відправиться web-push повідомлення. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 39 а Рисунок 3.4 – Створення елементу «Умова» Дія Цей елемент вчиняє дії з користувачами: переміщує підписників в іншу адресну книгу; копіює підписників з однієї адресної книги в іншу; видаляє неактивних підписників; замінює змінну; відправляє листи на ваш e-mail; відправляє webhook. Наприклад, якщо підписник не відкрив лист, то він буде переміщений в список для реактивації. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 40 а Рисунок 3.5 – Створення елементу «Дія» Мета Це кінцева точка автовідправлення. Ви встановлюєте кінцеву умову ланцюжка, наприклад «Купити». Після досягнення мети підписнику відправляється e-mail з вдячністю. Ви можете зупинити ланцюжок, якщо встановите параметр «Зупинити серію для підписника після спрацьовування мети». Рисунок 3.6 – Створення елементу «Мета» Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 41 а 3.3 Функції та можливості платформи SendPulse Різні маркетингові канали Можливість комбінувати e-mail розсилки з іншими каналами, такими як SMS, webpush, Viber і чат-бот повідомлення в месенджерах, або використовувати кожен канал окремо. Форми підписки Можливість додавати у форму підписки потрібну кількість полів тексту, зображення, кнопку і розміщувати її на своєму сайті. Конструктор шаблонів Можливість створювати респонсивні шаблони листів без знання in-line стилів і HTML-тегів. У конструкторі можна додати заголовки, зображення, відеоролики та інші елементи. Безкоштовні шаблони Можливість створювати листи на базі безкоштовних шаблонів. У галереї вони згруповані за темами: для ресторанів, інтернет-магазинів, до свят та інших подій. Сегментація Можливість надсилати розсилки окремо для чоловіків і жінок, а також підбирати релевантний контент під інтереси і переваги підписників за допомогою сегментації. Персоналізація Можливість додавати в тему і тіло листа інформацію про підписника, наприклад ім'я, прізвище, місто проживання або посаду за допомогою персоналізації. Тригерні розсилки Можливість надсилати ланцюжок повідомлень і автоматичні листи. Наприклад, лист про додавання до кошику, підтвердження оплати, привітання до дня народження. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 42 а А/B тестування Можливість визначати найбільш ефективний варіант відправлення шляхом порівняння різних версій одного листа. Відправка по непрочитаних Можливість перевідправляти повідомлення підписникам з новою темою і в інший час і отримувати більше відкривання листів і переходів по посиланнях в ньому. Статистичний звіт Можливість аналізувати відкриваємість і клікабельність відписки, помилки доставки та скарги на спам. Інтеграції Можливість користуватися набором інтеграцій, щоб спростити відправку повідомлень з вашого проекту в СMS або CRM. Налаштування SPF і DKIM Можливість аутентифікувати адресу відправника за допомогою DKIM, SPF і DMARK записів – вони допоможуть знизити ризик потрапляння в спам. Відкритий API Можливість інтегрувати можливості сервісу з особистим проектом. SendPulse надає детальну документацію для розробників. Мобільний додаток Можливість планувати і відправляти повідомлення, керувати адресними книгами, переглядати статистику за допомогою мобільного додатку. Технічна підтримка 24/7 Можливість вирішувати питання оперативно. Менеджери тех. підтримки відповідають українською та англійською мовами по електронній пошті, телефону і в чаті. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 43 а Мова робочої панелі З SendPulse не доведеться довго розбиратися з функціоналом і переводити терміни, адже робоча панель доступна українською мовою. Доступні ціни + безкоштовний тариф Можливість надсилати необмежену кількість листів, якщо у вашій базі до 500 підписників. Якщо адрес в базі більше, то переходите на платне використання. 3.4 Розробка чат-бота для проведення тестування QA-спеціалістів Етапи розробки: 1. Створення каркасу чат-бота з використанням функціоналу чат-бота «BotFather». 2. Приєднання чат-бота до сервісу «SendPulse». 3. Створення серії повідомлень для чат-бота «QA_project». 4. Виглад та перевірка роботи чат-бота «QA_project». 1. Створення каркасу чат-бота з використанням функціоналу чат- бота «BotFather» (рисунок 3.7). Рисунок 3.7 – Вигляд профілю чат-бота «BotFather» Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 44 а Починаємо діалог з ботом «BotFather», натискаємо /start і обираємо команду /newbot (рисунок 3.8). Рисунок 3.8 – Вікно вибору команд Даємо своєму боту ім'я (воно буде відображатися в діалоговому списку) і username (унікальне ім'я, яке закінчується на «bot» і пишеться через @) (рисунок 3.9). Рисунок 3.9 – Створення ім`я та username для чат-бота Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 45 а Після присвоєння ім`я та username для чат-бота висвічується повідомлення про те, що чат-бот успішно створений. 2. Приєднання чат-бота до сервісу «SendPulse» Для роботи в сервісі «SendPulse» необхідно бути зареєстрованим (ми робимо це швидко з допомогою Google аккаунту) (рисунок 3.10). Рисунок 3.10 – Швидка реєстрація в сервісі «SendPulse» Потім обираємо як ми будемо використовувати сервіс, а саме, обираємо пункт «Месенджери» (рисунок 3.11). Рисунок 3.11 – Вибір використання сервісу «SendPulse» Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 46 а Обираємо пункт «Чат-боти» (рисунок 3.12). Рисунок 3.12 – Вибір пункту «Чат-боти» Далі відкривається вікно, в якому розташована кнопка «Створити чат- бот», на яку ми натискаємо (рисунок 3.13). Рисунок 3.13 – Кнопка «Створити чат-бот» Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 47 а Після цього з`являється вікно для підключення каналів. Ми натискаємо на кнопку «Підключити канали» (рисунок 3.14). Рисунок 3.14 – Кнопка «Підключити канали» Далі з’являється вікно, в якому ми повинні підключити створений чат- бот в месенджері Telegram. Для цього натискаємо на кнопку «Додати бот» (рисунок 3.15). Рисунок 3.15– Кнопка «Додати бот» Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 48 а Потім з`являється поле «Введіть ключ доступу (токен бота)» (рисунок 3.16), цей ключ ми можемо знайти в кінці діалогу з чат-ботом «BotFather» (рисунок 3.17). Рисунок 3.16 – Поле «Введіть ключ доступу (токен бота)» Рисунок 3.17 – Токен чат-бота «QA_projects_bot» Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 49 а Після того, як ми скопіювали токен до поля «Введіть ключ доступу (токен бота)», натискаємо кнопку «Підключити» (рисунок 3.18). Рисунок 3.18 – Кнопка «Підключити» З`являється вікно для переходу до чат-боту. Так як месенджер Telegram встановлений на ПК, ми відкриваємо його в самому месенджері, а не в браузері (рисунок 3.19). Рисунок 3.19 – Перехід до чат-боту в месенджері Telegram Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 50 а Далі ми переходимо і бачимо вікно діалогу створеного чат-бота в месенджері без функціоналу (рисунок 3.20). Рисунок 3.20 – Чат-бот без функціоналу У браузері тим часом ми перейшли на вкладку для створення і редагування серії повідомлень, де нам висвітлюються підказки, які допоможуть зрозуміти функціонал сервісу «SendPulse» (рисунок 3.21). Рисунок 3.21 – Вкладка для створення і редагування серії повідомлень Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 51 а 3. Створення серії повідомлень для чат-бота «QA_project» Для того, щоб створити першу серію повідомлень, нам потрібно перейти в пункт «Збережені серії» (рисунок 3.22) і далі натиснути на кнопку «Створи серію» (рисунок 3.23). Рисунок 3.22 – Пункт «Збережені серії» Рисунок 3.23– Кнопка «Створити серію» Потім нам потрібно перейменувати назву серії і почати створювати серію повідомлень (рисунок 3.24). Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 52 а Рисунок 3.24 – Назва серії повідомлень Наш чат-бот буде мати дві серії повідомлень: перша серія буде створена для того, щоб користувач міг дізнатися свій рівень знань в сфері QA (рисунки 3.25 та 3.26); друга серія повідомлень буде направлена на те, щоб користувач міг створити свій власний чек-лист для перевірки ПЗ (рисунки 3.27 та 3.28). Далі ми починаємо створювати серії. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 53 а Рисунок 3.25 – Перша частина серії повідомлень «Тест QA» Рисунок 3.26 – Друга частина серії повідомлень «Тест QA» Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 54 а Рисунок 3.27 – Перша частина серії повідомлень «Створити чек-лист» Рисунок 3.28 – Друга частина серії повідомлень «Створити чек-лист» Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 55 а Тепер у нас є дві серії повідомлень для чат-бота «QA_project», які ми будемо тестувати в месенджері Telegram (версія для ПК). 4. Вигляд та перевірка роботи чат-бота «QA_project» Рисунок 3.29 – Вигляд чат-бота в спільному вікні чатів Рисунок 3.30 – Вікно діалогу чат-бота Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 56 а Рисунок 3.31 – Початок серії повідомлень «Тест QA» Рисунок 3.32 – Кінець серії повідомлень «Тест QA» Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 57 а Рисунок 3.33 – Початок серії повідомлень «Створити чек-лист» Рисунок 3.34 – Продовження серії повідомлень «Створити чек-лист» Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 58 а Рисунок 3.35 – Кінець серії повідомлень «Створити чек-лист» Рисунок 3.36 – Сформований чек-лист Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 59 а ВИСНОВКИ В кваліфікаційній роботі бакалавра розроблено чат-бот для проведення тестування QA- спеціалістів. Метою розробки є надання можливості користувачам месенджеру Telegram, які цікавляться сферою IT, пройти тест і дізнатися свій рівень знань в напрямку QA, а також створити чек-лист, який допоможе при тестуванні програмного забезпечення. В першому розділі виконано опис предметної області тестування знань і основні вимоги до тестових завдань. У другому розділі виконано опис технології розробки чат-боту, поведінка чат-ботів під час збоїв в месенджері «Telegram», огляд програмних аналогів та сформульовано постановку завдання на розробку чат-бота. У третьому розділі описано середовище розробки SendPulse, функції та можливості даної платформи; покроково описана реалізація проекту. Кваліфікацій на робота бакалавра виконана в повному обсязі згідно технічного завдання: – розроблено чат-бот в месенджері «Telegram»; – виконано налаштування чат-бота для проведення тестування QA- спеціалістів; – проведено тестування розробленого чат-бота. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 60 а ДОДАТОК А «ЗАТВЕРДЖУЮ» Завідувач кафедри ІБ та КІ д.т.н., професор Володимир РУДНИЦЬКИЙ __________________ «___» ____________ 2022 року Чат-бот для проведення тестування QA-спеціалістів Специфікація 482.ЧДТУ.21704-01 Листів 2 Розробник _______________ Антон ВАСИЛЕНКО Керівник _______________ Світлана ГРЕСЬКО Черкаси 2022 2 482.ЧДТУ.21704-01 Позначення Найменування Примітка Документація 482.ЧДТУ.21704-01 34 01 Інструкція користувача ДОДАТОК Б Чат-бот для проведення тестування QA-спеціалістів Інструкція користувача 482.ЧДТУ.21704-01 34 01 Листів 5 Розробник: Антон ВАСИЛЕНКО Черкаси 2022 2 482.ЧДТУ.21704-01 34 01 1 ПРИЗНАЧЕННЯ ПРОГРАМИ Мета розробки чат-боту – дати можливість користувачам месенджеру Telegram, які цікавляться сферою IT, пройти тест і дізнатися свій рівень знань в напрямку QA, а також створити чек-лист, який допоможе при тестуванні ПЗ. Чат-бот буде формувати чек-лист для часто використовуваних пристроїв, що дає можливість більш точно створити чек-лист для тестування. 2 РОБОТА З ПРОГРАМОЮ 1. Відкрити діалог з чат-ботом «QA_Project» Рисунок Б.1 – Вікно діалогу з чат-ботом «QA_Project» 3 482.ЧДТУ.21704-01 34 01 2. Натиснути на кнопку «Пройти тест» або «Створити чек-лист» Рисунок Б.2 – Кнопки «Пройти тест» і «Створити чек-лист» 3. Після вибору кнопки «Пройти тест» натиснути на кнопку «Почати» Рисунок Б.3 – Кнопка «Почати» 4 482.ЧДТУ.21704-01 34 01 4. Пройти тестування і отримати результат в кінці тестування Рисунок Б.4 – Результати тестування 5. Після вибору кнопки «Створити чек-лист» потрібно пройти коротке опитування Рисунок Б.5 – Кнопка «Створити чек-лист» 5 482.ЧДТУ.21704-01 34 01 6. В кінці опитування отримати чек-лист Рисунок Б.6 – Чек-лист СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ 1. Перспективи розвитку інформаційних технологій [Електронний ресурс]. – Режим доступу: https://www.sciencedirect.com/topics/computer- science/information-technology – Дата звернення: 20.04.2022. 2. Єдинак В.С. Розвиток інформаційних технологій в Україні.//Наукові доробки молоді – вирішенню проблем європейської інтеграції: збірник наукових статей. В 2 т. Т. 1- Харків: Континент, 2008.- С. 289-290. 3. Какорін М.О. Інформаційні технології як фактор інновацій у глобальній фінансовій системі.// Формування ринкових відносин в Україні: Збірник наукових праць. - №5- 2008.- С. 106-109. 4. Пацай Б.Д. Роль інформаційних технологій в управлінні фінансовими ресурсами підприємств.// Фінанси України. - № 8 – 2008. – С.82-84. 5. Шандра В.М. Застосування інформаційних технологій в забезпеченні технологічного оновлення економіки на інноваційній основі.// Актуальні проблеми економіки. - №10 – 2007. – С.220-223. 6. Чигасова Н.М. Місце інформаційних технологій у розвитку інформаційного суспільства в Україні.// Формування ринкових відносин в Україні: Збірник наукових праць. - № 9 – 2007. – С. 110-113. 7. Тестування як засіб оцінки знань та вмінь студентів. URL:https://xreferat.com/71/5094-1-testuvannya-yak-zas-b-oc-nki-znan-ta- vm-n-student-v.html.(Дата звернення: 20.04.2021). 8. Онлайн-курси по веб-дизайну, розробці сайтів та виходу на фріланс.URL: https://wayup.in/(Дата звернення: 01.05.2022). 9. Онлайн-курси по UI/UX дизайну і digital-маркетингу URL:https://groward.pro/ (Дата звернення: 02.05.2022). 10.Бібліотека освітніх програм від експертів в особистісному розвитку, здоров'я і харчування, лідерстві, фінансах і побудові відносин. URL:https://academy.5sfer.com/(Дата звернення: 02.05.2022). Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 68 а 11.Онлайн школа для творчих. URL: https://c-r-e-o.com/ (Дата звернення: 02.05.2022). 12.Chatbots for business: Benefits and use cases // Salesforce. – Режим доступу: https://www.salesforce.com/resources/articles/chatbots-for- business/ – Дата звернення: 03.05.2022. 13.Chatbot systems: classification and design techniques. – Режим доступу: https://doi.org/10.1007/s00521-020-04930-7 – Дата звернення: 03.05.2022. 14.What is a chatbot? [Електронний ресурс] // Oracle. – Режим доступу: https://www.oracle.com/cx/what-is-chatbot/ – Дата звернення: 04.05.2022. 15.Не соцмережі, а чат-бот: навіщо бізнесу месенджери URL: https://igate.com.ua/news/24336-ne-sotsseti-a-chatbotzachem-biznesu- messendzhery (Дата звернення: 03.05.2022). 16.Why messaging apps are critical for business [Електронний ресурс] // Forbes. – Режим доступу: https://www.forbes.com/sites/forbestechcouncil/2020/02/10/why-messaging- apps-are-critical-for-business/ – Дата звернення: 05.05.2022. 17.Використання чат-ботів для бізнесу URL: https://webguru.pro/blog/use_chat_bots/ (Дата звернення: 04.05.2022). 18.The importance of messaging apps for business [Електронний ресурс] // HubSpot. – Режим доступу: – Дата звернення: 05.05.2022. 19.WhatsApp vs Telegram vs Messenger: comparison [Електронний ресурс] // Twilio. – Режим доступу: https://www.twilio.com/blog/whatsapp-vs- telegram-vs-messenger – Дата звернення: 05.05.2022. 20.random - Generate pseudo-random numbers [Електронний ресурс] // Python Documentation. – Режим доступу: https://docs.python.org/3/library/random.html – Дата звернення: 06.05.2022. 21.datetime - Basic date and time types // Python Documentation. – Режим доступу: https://docs.python.org/3/library/datetime.html – Дата звернення: 06.05.2022. Лист ЧДТУ.221704.001 ПЗ т Зм. Лист № докум. Підпис Дат 69 а