Please use this identifier to cite or link to this item: https://er.chdtu.edu.ua/handle/ChSTU/9160
Title: Розробка програмного забезпечення системи перевірки знань фахівців
Authors: Первунінський, Станіслав Михайлович
Прудько, Максим Сергійович
Issue Date: 15-Jun-2022
Abstract: ЛІІОТЛНІSІ Кваліфіквційна робота бакалавра на тему : «Розробка програмного забезпечення системи перевірки знань фахівців» . Метa розробки чат-боту - дати можливість користувачам месенджеру Теlegгаm. які цікавляться сферою JT, пройти тест і дізнатися свій рівень знань в напрямку QA, а також створити чек-ліст, який допоможе при тестуванні ПО. Чат-бот буде формувати чек-ліст для часто використовуваних пристроїв, шо дає можливість більш точно створити чек-ліст для тестування. Чат-боти - сучасний та ефективний засіб, який стає дедалі більш популярним для проведення масштабних рекламних кампаній брендів. . Враховуючи , високий показник конверсії відкритів і переглядів повідомлень, які приходять до месенджерів, чат-боти є значно ефективнішим за будь-який інший інструмент реклами. Для користувачів буде значно простіше отримати необхідну інформацію в автоматичному режимі за допомогою чат-бота, ніж намагатися отримати ту ж сам у інформацію за допомогою пошуку в інтернеті , шо значно підвищує лояльність . Обсяг бакалаврської роботи складає 90 сторінок, з них 4 додатки. При написанні бакалuврської роботи була використана література та Інтернет джерела .
ANNOTATION Тhе purpose of the chatbot development is to епаbІе Telegram messenger users wІю аге interested in ІТ to pass the test and find out their level of knowledge in the field of QA, as well as to create а checklist that will help in software testing. The chatbot will generate а checklist for frequently used devices, which allows you to more·с accuгately create а checklist for testing. Chatbot. are а modern and effective tool that is becoming increasi ngly popular fог large-саІе brand advertising campaigns. Given the high conversion rate of discovегіеs. and view of messages that come to messengers chatbot are much mоге effective than апу otheг advertising tool. Іt will be much easier for useгs to get the information they need automatically usiпg а chatbot than to tгу to get the same iпformation through ап intcmet search which greatly increases loyalty. ТІ, с volume of the ЬасhеІог's thesis is 90 pages. including 4 appendices. Literature and lnterпet souгces were used in writing the bachelor's thesis.
URI: https://er.chdtu.edu.ua/handle/ChSTU/9160
Appears in Collections:121 Інженерія програмного забезпечення (Інженерія програмного забезпечення)

Files in This Item:
File Description SizeFormat 
Кваліфікаційна робота бакалавра Прудько Максим Сергійович.pdf
  Restricted Access
22.59 MBAdobe PDFView/Open Request a copy


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.

Extracted text
ІІНІl' 11 : Рстно ()( ' ІН ТІ І І І І Л УКИ УКІ'ЛЇІ ІИ 
ч~:Рh::\<..'ЬІ~ІІІЇ ) 11 : Р)КЛНІІ\1ІЇ п :., ІІОJ ІОІ 'ІЧІІИ \/і У ІІІВІ ~РСИТІ ·:· г 
Факул ьтет інформ :1ні1ї1111 х тсх 11шю1 ·ій і систем 
h:~ф~л.ра nро1'рамно1 ·0 1абс·1 11 с •1 с1 111я автомати·юваr-,их систем 
Пояснювальна записка 
до кваліфікаційної роботи бакалавра 
з напряму підготовки 121 «Інженерія програмного забезпечення» 
(ос11іл 1ьо-к11ru1іфікаці11ш1й piu~111,) 
на тему: 
РОЗРОБКА ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ С:ИСТЕ1'1И 
ПЕРЕВІРКИ ЗНАНЬ ФАХІВЦІВ 
Виконав: студент ПЗ-184 
Напряму підготовки 
121 «Інженерія програмного забезпечення>~ 
(шифр і назва напря,1у п ідготuRКИ) 
Студент _____~ Лр~у.L:;д~ь:..:..:к~о.....:Мс.:,;:.,:..С=..:..•_ _ _ 
111р ізв11ще та ініціали) 
Керівник ----'Л~е~р~в.J_у..!.!_н~ін. .!..:с~ь~~ки~й~С:...:..:.t-v:...:..1-=----­
(прізв~1ше та ініціали) 
Peцeнзeнт~.Jl~rд,w..'IJr.a.~t:t,;j~';/-(4~"4,11t,._.._~...!....,d/:[,L.;•~.d.'~'i:'---:--­
(пpiзв11шe та і ніціал~, ) 
Черкаси 2022 рок 
Форм:~ .М'tl Y-«J.fll 
) l_o; ~a·, ок 2 
Чt'ркас1~к11й нсржшншіі тех110.11оr ·і1111ий університет 
Q);H,: .'11, І'СТ iJ.t~)_Q,Pi\І :11 Ї ІЇ ІІІІХ 1\.'ХІІШ\t)І 'ііі і t: llfTt:M 
( ІІ ІІІІІ І І І ІІ /І tІ\11) 
І<афс:tра 11\)\)\'\);\і\І \ЮГ() за6СЗІ\С'ІСІІШІ аuтuі\ШПІЗUUШІИХ систем 
( 1111111 1111111 11111) -----·-
І lапряі\І підГ01\)НКН lt ІЖІ::Нl]' І }І ПІ'ОГРЛІ\1\J ІОІ 'О ЗЛБЕЗІ 11.} І Е І ІНЯ 
(1<011, 11/1' 1ІН1 ) ------------
l псніальніt:ть 121 « ІНЖ[НЕІ'ІЯ 111'0 1' РЛ МНОГО ЗЛG[ЗГІ[Ч ЕННЯ» 
(KUII. 11а111а) - --- --------
ЗА ТВЕРД ЖУІО: 
Зав. кафедри ~ 
".І)_{_" (/ 2 20 ~~-
ЗАВДАННЯ 
на кваліфікаційну роботу бакалавра 
" Бакалавр " 
(11азоа рів11я) 
студенту Прудько Максим Сергійович 
(прізовщс, ім 'я, по батьков і ) 
1. Тема проекту (роботи) Розробка програмного забезпечення системи перевірки знань 
ахшшв 
затверджена наказом по університету від "07"02 2022р. №45/04 
2. Термін здачі студентом закінченого проекту (роботи) "Об" 06 2022_р. 
З. Вихідні дані до проекту (роботи); __________________ ____  
ОПЕРАЦІЙНА СИСТЕМА - МІСІЮSОFТ WINDOWS ХР/7. 
(вuзначшиться кількіс11і або (та) якіс11і показ1111к11. яким пов1111е11 відповідати об ·є,.,·111 проектуватт 
11аукового дослід:нсе111,я) 
4. Зм і ст розрахунково-пояснювальної записки (перелік питань, що їх належить розробити) 
І . Опис напряму дослідження _ _ _____________ ________ ___  
2.Анал із існуючих рішень 
З. Аналіз середовища розробки 
4.O11ис розробки системи 
5.Висновки 
б. о ..tатки 
5. Перелік графічного матеріалу 
РИСУНОК Г. І - ГОЛОВНА СТОРІНКА . 
РИСУНОК Г.2 -ЗАДАЧІ ДОСЛІДЖЕННЯ. 
РИСУНОК Г.3 - СЕРЕДОВИЩЕ РОЗРОБКИ. 
r 
)'ІІ~, ll\'h 1 . ➔ І t'ІІ ' 1()'11 ІІІ't)І І' \\ 1111 \ 11 \JІОІї І . 
-------
Ка.11е11дар1111 іІ п ш1 1 
(11рі зв11щ.:. і11і11іат1 ) 
.. r~ Назва етапів випускної магістерської Строк виконання етапів 
з n роботи проекту (роботи) Пр11 r-.1і· 
І /7J.7Гі.JТО8Ч..J СН,'/ІЯ ВЕРЕСЕНЬ В1ж011,111 
І І ПОСї-1НОВЛ.:-1 J.J,7..J I// ВЕРЕСЕНЬ Внко,1,,f, 
І ~ Пuготовл.:-1 з.шд.-1ння ВЕРЕСЕІІЬ Внко11,1f, 
І.З ПОГОДЖЕННЯ ЗАВД.-ІННЯ ЖОВТЕНЬ Вико,,,,f, 
І . -І 3.ПВЕР,JЖЕННЯ ЗАВДАННЯ ЖОВТЕНЬ Внко11;111 
) Основн. .~  СТ4д!Я ЖОВТЕНЬ В1жо111,fІ 
l . l Пt:JБІР \І.ПЕР/А. 71В ЛІ'1СТОІІАД BNK0t-111f1 
АНА. 713 Ш. 7ЯХІВ РІШЕННЯ ПОСТАВЛЕІ-ІОЇ 
2.2 3..UA ЧІ ЛНС70!ІАД В1жо1-1,u, 
2.3 0ФОР.\f.7ЕННЯ ПЕРВІСНОЇ РЕДАКЦІЇ РОБОТИ СІЧЕНЬ В1жо1-щ 
з 3"U.:.7/ОЧН..J СТ.JДІЯ СІЧЕНЬ Btжm111fl 
0ФОР,\f.7ЕННЯ ПОЯСНЮВАЛЬНОЇ ЗАПИСКИ 
3.1 РОБОТІ! БЕРЕЗЕНЬ ВІІКОІ·!АfJ 
3.2 3..JТВЕРДЖЕННЯ РОБО7И ТРАВЕНЬ ВІІКОІ-!1~ 
З.З РЕUЕНЗ.\'ВАННЯ РОБОТИ 7Р.-ШЕНЬ Внкоп"їі, 
Сту..1ент 
Прvдько М.С. 
( 11рі1вище Iа  ін1ша:1и) 
Керівник проек'Г) 
І Іервунінський С.М. 
(11р1шище 111 і11і1lіа:1и ) 
ЛІІОТЛНІSІ 
І(вал іфі1,~щійна робота бакатшра 11 а ·, ему : «Ро-Jробка програмного 
-~,16с·тсчснн>1 системи перевірки 311а111, фах івuів» . 
1lt:тa ро1робки чат-боту - дати можливість користувачам месенджеру 
Теkgгаш. які цікаnляться сферою JT, пройти тест і дізнатися свій рівень знань в 
напрямку QA, а також створити чек-ліст, який допоможе при тестуванні ПО. 
Чат-бот буде формувати чек-ліст для Lшсто використовуваних пристроїв, шо дає 
можливість більш точно створити чек-ліст для тестування. 
Чат-боти - сучасний та ефективний засіб, який стає дедалі більш 
,... . 
популярним для проведення масштабних рекламних кампаній орен111 в . 
Враховуючи, високий показник конверсії відкриттів і переглядів повідомлень, 
які приходять до месенджерів, чат-боти є значно ефективнішим за будь-який 
інший інструмент реклами. 
Для користувачів буде значно простіше отримати необхідну інформаuію 
в автоматичному режимі за допомогою чат-бота, ніж намагатися отримати ту ж 
саму інформанію за допомогою пошуку в інтернеті, шо значно підвищує 
ЛОЯЛhН1С1 Ь . 
Обсяг бакалаврської роботи складає 90 сторшок, з них 4 додатки. При 
написаню бакалuврської роботи була використана література та І нтернt>'Т 
джерела . 
ANNOTATION 
ТІ,е purpose of the chatbot development is to епаЬІе Telegram messenger users 
wІю аге interested іп ІТ to pass the test and find out their level of knowledge in the 
field of QA, as well as to create а checklist that will help іп software testing. The 
cl1atbot will generate а checklist for frequently used devices, which allows you to 
11101·с accuгately create а checklist for testing. 
l1atbot. are а modern and effective tool that is becoming increasi ngly popular 
rог la1·ge-. саІе brand advertising campaigns. Given the high conversion rate of 
di. С()vегіе. and view of messages that come to mes enger,, chatbot are much mоге 
eiїcctivc tl1a11 апу otheг advertising tool. 
Іt will Ьс mucl1 еаsіег for useгs to get tl1e information thcy need automatically 
usiпg а cl1atbot tl1a11 to tгу to get tl1e same iпformatio11 throL1gh ап intcmet searcl1, 
wl1icl1 gп-.:atly iпc1·eases loyalty. 
ТІ,с volume or tl1e ЬасІ,еІ ог's tl1t:sis is 90 pagcs. including 4 appendices. 
Liteп:itt1гc ai1d l11teп1et souгces , er·c uscd іп ,,тiting tl1c bachclor's thcsis. 
1,11< ·т 
1 --1 ~ 11 .... ....... . ........................................ ...... ........ .... ............... з 
1 )J11t '1 1РІ ;Л 11 =т1 101· о~;лл 'ТІ п :ст ВЛІ111Я ] ІІ Л ІІh ....... .............................. 6 
І . І Тс(тон 1111 1',,1п1 о.'1 1~ Я 1' ·Jaci6 навч , н)1юrо ІІ))(нtсс ........ ... .. ... .... .. ............. ..... ... .. 6 
1 - 0 LHORHi В1ІМОГІі ,10 тсстопнх ·нш ань ......... ...... .. .. .. ......... ..... .... .. ...... ... .. ............ 11 
І. : Основн і псревал1 перевірки знань студе,пш за тестами ... .. ....... ................. ... 13 
~ . \НАЛlЗ пrо1 ·р мни т нллопв ............ .............................. ......... ................ ] б 
~.1 Т ,но поп я розробки чат-боту ....... .. ........ ......... ... ............. ... ....... ....... ......... .... .. І б 
2.- Як пово.1яться чат-боти під час збоїв в Telegra111 .... ..... .. ...... .... ...... .... ..... .... ... . 22 
2.3 Як створювати чат-ботів .... ... ....... ......... ......... ...... ..... .... ...... .. ... .... ... ... .... ........... 24 
2.4 Опис програмних аналогів ...... .......... ..... ..... ..... .... .... ..... ............. ......... .......... .... 29 
2.5 Постановка задачі ...... .. ... ................. ...... ........ .... .... .. ... .. ............ ... ... ... ... ..... ... ..... 34 
З ОПИС РОЗРОБКИ ЧА Т-БОТУ ........... ... .......... .. .............. ................. ... ....... ........... . 36 
3.2 OІ1ИС cepeдOBИllla ... .......... ................. ........ .. ......... ... ........ ... ...... .. ..... .... .... ..... .... .. 39 
З.З Блоки платформи SendPulse ................... .. ..... .............. .... .. ..... .... .... ................ ... 40 
3.4 Функuії та можливост1 платформи SendPu]se ...... ... .. .. .... ....... ... .. ... ... ..... .......... 43 
3.5 Реалізаuія проекту ...................... .. ... ............ ......... ..... .......... .. ......... ................... 45 
ВИСНОВКИ .... ....... ... ..... ... .. ..... ..... .... ................... ... .... .... ...... .. .... ... .. .. ......... ... ... ......... . 69 
СПИСОК ВИК О РИ СТА Н:ИХ ДЖЕРЕЛ ... .......... ..... ........... ......... .. .. ............... .. .... .... 70 
ДОДАТКИ ......... ..... . .. . .. . .. . . ... . .... .............. . ....... .. ..... . ....... ........ . .. ..... .. . 72 
ЧДТУ.22 І 82 1.009 ПЗ 
'Ім Ат: )\Іq r)п,:,,м Пи>n,и" Іfтп 
І'п•,ппfі Прудько М.С. ~ и Розробка програмного flim l/11r 111 l!u t ·n1u1 
l l, 1nt•пin l lc111J:"llit1c1,,11n с М. Yf/,ft!J. ~/ забезпечення системи 11еревірки І І 2 90 
JJt•IІІ"ll l 
- А знань фахівців ЧДТУ, 
І { 1,·иитп П івс1-1.ь О . Б. t:1/1;;:; Пояснювальна записка кафедра ПЗАС, ПЗ-184 
~ІІ "Щ1•m) t І..:1щ~ ні110,. .. нН С.М. &IV,///. [/ 
ЧЛ ГУ _21Х  1.009 IIJ 
ВСТУІІ 
1нqк,r,fзtti1'iн.:1 тс:х нС'.1югія - itc су 1<у11 11 ісп, ,стодш, uироб11ичнх проuес 1 в та 
ПJ1 111,зч1-ю-тсхнічн11:х ззсобів. 06 ·сю-1u1111х у технологічний ланцюжок, що 
"'збе псчус RН1'онання інформаніі1ннх процесів з 1стою підвищення їхньої 
. . . 
11з.J.ііhюсті тз оnсрзт1пзності 1 ЗІІНЖСШІЛ трудОМlСТІ(ОСТІ ходу ІЗИІ<Ористашш 
інформаці1-пюго ресурсу. 
1нформаuійні технології одю з найважливіших досягнень діяльності 
.т.-о.:ктва. Впкористшшя інформаційних технологій дає мо:жливість створJ,ТТИ 
сприятли:в1 ) юви для розвитку економ1ки, стимулювати зростання 
продуктивності праці та підвищення заробітної платні, полегшити оргаюзащю 
КОіvі}НікадіЙ на всіх р1внях управління, швидко знижувати матеріало- та 
енергоємність окремого виробництва і національної економіки в цілому. 
Розвиток сфери новітніх технологій зробив вешший внесок у створення 
l. Н ф ормаrн·-иних систем. Для У країни дуже важливо, що застосуваюm 
інформаuійних технологій дає можливість підвищити яюсть підготовки і 
прийняття важливих рішень виконавчої влади. З 2000 р. Україна активно 
вю1Юч.и.J1<:1<.;я в <.;1ё::1нuнлення інформаційн01·0 сусніJ1ьстна. У 2007 р. був нрийюпий 
закон України «Про основні засади розвитку інформаційного суспільства в 
Україні на 2007-201 5 роки». 
Основним завданням розвитку інформаційного суспшьства в Україні є 
сприяння кожній людині на засадах широкого використання сучасних ІКТ 
можливостей створювати інформацію і знання, користуватися та обмінюватися 
ними, виробляти товари та надавати послуги, повною мірою реалізовуючи свій 
потенці ал, підвищуючи якісп, свого життя . Розвиток інформаційного суспільства 
в Україні та впровадження новітніх fKT в усі сфери суспільного житп1 і в 
. . . . 
ДІЯЛЬНІСТЬ оргашв державної влади та оргаюв м1сцевого самоврядування 
визначається одним з пріоритетних напрямів державної політики. 
Національна пол ітика розвитку інформаційного суспільства в Україні 
грунтується на засадах: пріоритетності науково-технічного та інноваційного 
розвитку держави; формування необхідних для цього за~<о1-юдавчих і сприятливих 
з 
ЧЛТ 22 1821. 009 ПЗ 
сконо нчннх У •юв; в с6ічного розnит1<у загальнодоступної інформаційної 
інфрзстр~~ї)1)Н. інформаційних pecypcin та забезпечення повсюдного доступу 
до телеко ~rнікаційних послуг та ІКТ; сприяння збільшенню різноманітності та 
кількості електронних послуг, забезпеченню створення загальнодоступних 
еле1'.їрОННИХ інформаційних ресурсш; полшшення кадрового потенц~алу; 
посилення мотивації щодо використання ІКТ; широкого впровадження ІКТ в 
нау~·у, освіту, ·культуру, охорону здоров'я, охорону навколишнього середовища; 
забезпечення інформаційної безпеки. 
Але на шляху досягнення цих цілей виникають труднощі пов'язані з 
недостатньою технологічною базою, складним фінансовим забезпеченням цього 
. . . . 
процесу, вщсутюстю достатньої юлькост1 наукових досшджень процесу 
формування інформаційного суспільства і його складових. 
Сучасна інформаційна система дозволяє забезпечити: 
І прямий і своєчасний доступ до інформаційного продукту; 
2 ефективну координацію внутрішньої діяльності; 
З використання яюсно кращої технології системного анал1зу та 
проектування оперативного управління на різних ланках діяльності підприємства 
тощо. 
У країна накопичила значний потенц1ал в інформаційних технолопях. Її 
національною конкурентною перевагою є діяльність з їх розробки. Але Україна як 
товаровиробник може бути витиснута з найбільш перспективних світових ринків 
через відсутність обrрунтованої державної політики. Розробка інформаційного 
сусшльства в У країні має базуватися на узгодженості дій усіх гілок влади. 
Розв'язання проблем відсталості інформаційних технологій в Україні вимагає 
загальнодержавного підходу, а саме: 
1 формування національної стратегії, міжнародної і внутрішньої політики, 
сприятливої законодавчої, суспільної, економічної атмосфери у сфері 
використання інформаційних технологій; 
2 забезпечення потенціальної можливосп технолопчного доступу 
населення до інформаційних комп'ютерних технологій за рахунок 
4 
ЧДТУ 22 1Х 2 І .009 l 1J 
' \('ІІ.11' дІ:'ржавного та пр1шат1юго сектор1в еко1 юм11<и LІ ЮJЮ ро'J витку 
інф1)р\1аці1іної інфр~струh:турн: 
. . 
сприяння збільшенню розповсюдженню юлькосп послуг населенню 
01 нес~. на.1аних за .10110 югою інформаційних комп 'ютерних технологій ; 
4 1':онuентраuія зусиль держави сусп1льства для створення 
--аrа.1ьнодоступних елеh:тронних ресурс1в на основі врахувань національних, 
полІТичних. економічних. Мовних, культурних та релігійних аспектів розвитку 
України: 
5 забезпечення можливості отримання знань, ум1нь навичок 
використання інформаuійних комп 'ютерних технологій у процесі одержання 
ОСВІТИ. 
5 
ЧЛТУ ... _ 18 1.009 1I J 
І'О'JДІЛ t 
ОПІІС ПРЕДl\ІІі, ТІ-ІОЇ ОБЛАСТІ ТЕСТУНАВІІЯ ЗІІЛІ-ІЬ 
1.1 Тестовий копч>оль як засіб ш1вчаль11ого процесу 
По тз.1ювхз про6ле~111 . Входження України у Болонський процес вимагас 
ск.,1а...1но1· і багатогранної перебудови системи освіти. Пріоритетним нагrр~1мом 
розвитку вищої освіти УкраІни сьогодні є модернізація її змісту з метою інтеграцjї 
,;ю европейського та сnітоrюго освітнього простору ш1 прю-щипах Болонської 
декларації. Входження України в сучасні соціально-економічні умови вимагає від 
моп:одого покошння володіння науковими знаннями на високому рtвю. 
Гефорr"гу ~sання змісту вищої освіти, її розбудова відповідно до і'vІіжнародн:их 
стандартів забезпечує вирішення цього завдання. 
Зазначений спосіб вивчення предметів дає можлив1сть привести їх 
вик.,-шдання та оціFгювання до норм, які існують у більшості європейських 
уmверситет~ осюльки основними характеристиками навчання студенпв при 
трансферах є: перелік вивчення навчальних дисциплін, їх кредитний об'єм в 
ECTS і отри.мс:t.На оцінка. Проте, окрім таких формальних да.них, надзвичайно 
важливим є сама організація навчального процесу та способи контрольних 
заходtв, зокрема таких, які б відповідали сучасним поглядам на вищу освіту в 
Європі. 
До визначальних рис Болонського процесу відноситься тестова моду льно­
рейтингова система контролю якості вищої освіти. Міністерство освіти і науки 
України передбачає використа1-п-1я тестового контролю у складі модульно­
рейтинrової системи як діаrностичноrо, стандартизованого засобу вимірювання 
якості вищої освіти, що у свою чергу розширює можливості для отримання 
необхідної кваліфікації, знань, умінь та навичок у зручний для кожної людини 
спосіб. 
В останю десятир1ччя тестова модульно-рейтингова система ощнки 
досягнень студентів стала частиною нових технологій навчання, вона знаходить 
все більше прибічників у навчальних закладах України, що підтверджується 
б 
ЧЛТУ 22 І 821.009 113 
. . 
чн~.т1сн1ш tн nу6лі1'аніямн . Ця снстема ·тачrюю м1рою вщ1юв1щ1є новим 
l'l'Н1~1льно-пратювнм )'!\ЮtЗам, які мають нереваги проти традиційних форм 
персвіркн знань. 
Мета даної роботи полягає в тому, щоб розглянути тестування як засіб 
Аналіз останніх досліджень і публікацій. Питання теорії педагопчних 
тестів, композиції і форми тестових завдань, алгоритми обробки результатів 
тестування та і'х інтерпретації досшджено у працях В.С. Аванесова, 
Ю.М. Богачкова, Я.С. Бродського, І.Є. Булах, А.Н. Землякова, О.Ф. Кабардіна, 
С.К. Кожухова, С.Ю. Курганова, О.І. Ляшенко, А.Н. Майорова, О.С. Масалітіної, 
Т. В. Солод--~ої, К. lhтeнI~aivшa, Дж. Равена та ін. Проблеjvіу оцінювання знань 
студентів, обгрунтування ефективності тестових методик контролю досліджували 
у вітчизняній науці І. Алексейчук, Н. Тализіна, В. Бочарникова, Н. Шиян. 
Виклад основного матеріалу. Ко:н-троль у навчш1ьному процесі ви.-щи:х 
навчальних закладrn є необхідним елементом, який має багато способів 
оцшювання. Найбільш поширеними й досі залишаються спостереження, усна 
неревірка зн,:1.нь (онитунання), нисьмона неренірка зна.нь (нисьмоні роботи), 
співбесіди у вигляді інтерв 'ю. Екзамен - складний процес підбиття підсумків 
пізнавальної діяльності студента. Тому нині у вищих навчальних закладах при 
діагностиці освітньо-професійної підготовки студентів все частіше застосовується 
тестовий контроль знань, виr<ористання якого є ефективним методом виявлення 
. . . . 
ршня знань, ум1нь 1 навичок студентш. 
Т естови.й контроль як засіб оптимізації навчального процесу одержав у 
вузах широке розповсюдження. Якщо раніше тестова форма контролю була 
предметом дискусії, то на сьогоднішній день доцільність використання тестів 
визнана у психології, педагогіці, методиці. lЦо таке тести? За визначенням Є.А. 
Михаличова, «тести є одним з видів навчальних завдань, які використовуються 
для контролю і діагностики знань». 
7 
ЧДТУ 22 1821.009 І ІЗ 
13нкладач повинен знати я1< nраuиль110 підбирати тести і SІІ< слід їх складати . 
.-uже нt: кожен набір запитань з варіантами відповідей на них можна назвати 
т~~том. бо тестовий контроль мас бути: 
- індивідуальним, що передбачає перев1рку, оц1нку, облік корекщю 
влас1шх результатш навчання кожного студента; 
- систематичним, регулярним, що передбачає контроль просування кожного 
студента у навчанні (за тему, семестр, рік); 
що передбачає виключення суб' єктивних, ПОіvПL1.Кових 
. . 
суджень 1 висновкtв викладача, які rрунтуються на недостатньому вивченю 
студентів або упередженому ставленні до них та пом'якшення впливу соціальних, 
особистісюіл та емоційних фаь.-горів, які супроводжують процес оці1-повання; 
- прозорим - студенти повинні розуміти, чому їх відповідь оцінено саме 
такою кількістю балів; 
- вал.іднІіМ, що передбачає відповід-ність пропоноваюгх тестових завдань 
тому, що передбачається перевіряти; 
- всебічним ( охоплювати всі розділи програми), що передбачає контроль 
ЗНсllіЬ теоре1ич.них ноножень, нредметних та запшьних ум1нь та навичок, 
інтелектуального й загально-псих1чного розвитку студентів, виявлення їхніх 
нахилів і здібностей; 
- дифере1щійованим, що передбачає врахування як ршюв засвоєння 
програмового матеріалу, так і індивідуальних особливостей студентів ; 
- надійним, тобто отримані результати тестового контроmо повиню 
корелювати з результатами повторних вимірювань; 
- точним, тобто мати мінімальну похибку у вимірюванні даним тестом; 
- якісним, який має бути спрямований як на оволодіння предметними 
знаннями і вміннями, так і на перевірку розвитку загальнопредметних вмінь 
(аналізувати_, міркувати, робити логічні висновки); 
- взаємоповязаним між собою (послідовн ість у термінології); 
8 
ЧЛТУ 22 182 1.009 ПЗ 
- різном:.знітннм зn форі\1амн провс;\с1111я , що створює умови д,1н1 реалізацї1 
вс1х фун~1...r1і1 контролю та сnрняс пію1ищеншо інтересу студентів до його 
проведення: 
- форма тесту повинна бути уніфікованою, звичною, зручною; 
rюслідоnність тестових завдань поnшша визначатись за принципом «ВІД 
простого до складного». 
Крім того, науковці, яю вивчають питання тестування в освtтt 
(В.С. Аванссов, І.С'. Булах, А.Н. f\1айоров ) висувають ряд вимог і до побудови 
самого тесту. Точність тесту визначає мінімальну або систематичну похибку, з 
якою можна провести вимірювання даним тестом. І.Є. Булах наводить науково 
обrру1--t-тований зв' язок між довжиною тесту і точністю вимірювання. 
З досвіду запровадження системи тестового контролю у вузах (зокрема у 
Інституті туризму Прикарпатського національного університету імені Василя 
Сїефан-й:Ка) можна виділити позитивні сторони, які впливають на якість роботи 
студеmш: 
- реашзац1я тестового контролю знань дозволяє викладачам упорядкувати 
11puцeL: контроню зні:інь, умінь та наничок сту,центін, 11і,1.1.1:шщити інформатИlіність 
та об'єктивність оцінки; 
- за результатами такого контроmо студент має можлив1сть об'єктивно 
оцінити свої досягнення та свідомо здійснити вибір рівня опанування навчальним 
матер1алом; 
- можливість забезпечення високої стандартизації умов вимірювання; 
- кількісні критерії оцінювання - наявність кількісних показників для 
визначення повноти та глибини засвоєння матеріалу, незначні затрати часу на 
вим1ри у великих групах студенпв; 
- рівні вимоги до знань та умінь фахівця шляхом використання в тест~ 
завдань однакової складності, обсягу та змісту; 
- тести ставлять усіх студентів в рівні умови, а це приводить до зменшення 
нервового напруження. Всі студенти мають рівні можливості, а широта тесту 
дозволяє їм показати свої досягнення на широкому полі матеріалу. 
9 
ЧЛТУ 22 І 82 І . (І09 113 
Одна'h: ~н те ·ta тсстово1'0 контролю мас сnої і 11с1 ·атиu11і сторони : 
- мала 'h:tЛb'h:tcть спс1\іалістіn із тсстуnаш-1я в системі освіти, що уповільнить 
процес переходу на С) 1асне тестування. Оскільки ні навчання в аспjрантурі, ні 
з..106уття освітн в педагогічних 3акладах, на педагогічних факультетах не 
nередбача.1: 0 виnчення методики складання тестових заІЗдань; 
- пщµуч.ники розраховані на усне опитування перевірки знань; 
- деякі тести припускають можливість угадування методом виключення; 
- слухач може забути фаь.1и, які слід nш,ористоnуnати у відповіді, але 
згадати їх, переглядаючи перелік можливих відповідей на завдання тесту; 
- nри тестовому контрол і не задіяний мовленнєвий апарат, що 
)'-мerviOnu"IiffiJtIOЄ дослідження логіки міркування студента; 
- пов~шй перехід виюпочно на тестову перевірку знань студенпв швидко 
зробить не засвоєння, а саме контроль основною метою діяльності студента; 
- у вищому навчальному закладі існують предмети, зміст яких важко 
охопити системою тестів. Навіть в межах одного предмету не всі теми рівномірно 
перевіря:ються за допомогою тестів; 
- 5НИЖУ(:.;l'ься рі.нень к.на.ніфікації uикладачtl. Перенірка тестоних завдань та 
контрольних робіт здійснюється в автоматичному режимі і не надає професШного 
навантаження ; 
- студент представляючи лише номери відповщ1 не показує характер ходу 
р~шеш1я - розумова діяльність студента і результат може бути тільки 
ймовірнjсним. 
Незважаючи на усі вимоги щодо тестового контролю та недоліки, тестова 
перевірка мас ряд переваг порівняно з традиційними формаl\m і методами, вона 
природно вмонтована у сучасю педагопчю концепції, дозволяє більш 
раціонально використовувати зворотний зв 1язоІ< з1 студентами 1 визначати 
результати засвоєю-1я матеріалу, зосередити увагу на прогалинах у знаннях та 
внести відповідні кореІ<тиви. Однак потрібно мати перевірену надійну базу тестів, 
поєднувати їх ви1<ористання з іншими методами контролю, серед існуючих 
автоматичних систем тестуваю-ІЯ вибрати таку, яІ<а б маІ<симально запобігала б 
10 
Ч)\ТУ 22 1821.009 ПЗ 
вг, цувзнн1) та ""'у6рінню, uнробити об\:ктионі, чпю критерії ошнювання , 
зро..,у 1іл і н1.:: тільки екзаменатору , а й студентові. 
1.2 Основні вимоги до тестових завдань 
Основні вимоги до тестових завдань: 
повинні належати до однієї теми чи дисципліни; 
1 бути взаємопов 'язаними між собою (послідовність у термінології); 
3 бути взаємодоповнюючими та упорядкованими за труднощами або за 
лапкою; 
4 форма тесту повинна бути уніфікованою, звичною, зручною; 
5 терм1ни та поняття у тестах повинні бути загальновідомі і відповідати 
вимогам навчальної програми; 
б послідовність тестових завдань повинна визначатися за принципом «вщ 
простого до складного»; 
7 завдання повинні бути стислими. 
За кількістю завдань існують стислі (до 20 завдань), середн1 (від 20 до 500 
завдань), довгі (більше 500 завдань) тести. 
За рівнем засвоєння знань, умінь , навичок тести класифікують на З рівні . 
Тести першого рівня розподіляють на тести пізнання, тести розр1знення , 
тести співвіднесення, тести-завдання з вибірковими відповідями. 
У тесті пізнання студент дає одну з альтернативних відповідей («так - ні», 
«є - не є» тощо). У завданні обов'язково фігурує об 'єкт, про властивості або 
характеристики якого студент повинен мати уявлення. 
Тести розрізнення разом і з завданням містять відповщ1 , з яких учень 
повинен обрати одну чи кілька. 
Тести співвіднесення пропонують знайти подібність чи розбіжність у 
вивчених об 'єктах при uьому порівнювані властивост1 або параметри 
обов ' язково наявн1 у завданні . Оформлені таким чином тести мають назву 
вибіркові . 
І І 
ЧЛТУ 22 182 1.009 ПЗ 
Тсстн-заnдання з nибіркоnими uіJщооіJ~лми . У зшщшші формулюється умова 
завдання та всі необхідні вихідні л.ані, а у відповідях представлено кілька 
вар1ант1в результату рішення у числоnому або буквеному вигляді. Студент 
повинен розв ' язати завдання і показати, яку відповідь із запропонованих він 
одержав . 
Застосування тестів першого ршня доцшьне для проміжного контролю 
знань студентш в межах викладання окремого курсу. 
Перевірку засвоєння на другому рівні можна здійсшовати за допомогою 
наступних тестів - відтворення інформації, розв'язання типових задач. 
За оформленням тести відтворення інформації поділяють на тести­
підстановh."И та конструктивні тести. 
Тести-підстановки можугь містити у завданнях різноманітну інформацію 
(словесний текст, креслеІО-Ія або схему, графік тощо), в яких пропущено певні 
складов і (наприклад, суттєву частину слова або фрази, умовні позначення, лінії чи 
елементи зображення тощо). Для розв 'язання завдання студент повинен 
відтворити в пам 'яті і заповнити «пропуски». 
Завдання конструктивних тестів нима~ ·ають вщ (;тудента (;амостійно1 ·0 
конструюваю-1я в1дпов1д1 (наприклад, вщтворити формулювання, дати 
характеристику, виконати креслення тощо) . 
Таким чином, тести другого ршня доцшьно використовувати на 
проміжному контролі знань студентів з основних розділів курсів, без знання яких 
загальне засвоєння дисципліни ускладнене чи взагалі неможливе. Так наприклад 
при вивченні дисципліни «Документування» такий контроль необхідний після 
вивчення теми «Оформлення документів за державними стандартами», оскільки 
вона є базовою для всіх подальших тем . Такими ж базовими темами при вивченні 
дисципліни «Українська мова професійного спілкування» є теми «,l....І.окумент як 
вид ділового тексту» та «Усне ділове мовлення». 
Тести третього рівня (підсумкові) при відповіді на заmпання потребують 
використання засвоєних вмінь та навичок в нових умовах, у невивченій ситуації, у 
прю(тичній діяльності. Такі тести можна застосовувати як завдання на практичних 
12 
Ч)\ТУ 22 1~ 21.009 113 
заняттях ~10l) пщ час піл.сумкового 1<01прото за весь вивчений курс . Створення 
Т31'ІІ:\ ·,авдань вимагає особливої майстерності педагогів. 
Педагогічний тест - це система фасетних знань певного змісту, ·зростаючої 
скла.:~ності . сп~цнфічної форми. яка дозволяє якісно оцінити структуру та 
ефективно виміряти рівень знань, умінь, навичок і уявлень. Такий тест є 
своєрідним вимірювальним інструментом певної роздільної здатності та точності. 
При цьому слід пам'ятати, що властивість фасетності (параметризація 
словарного значення за кількома засадами) у гуманітарному знанні реалізувати 
складніше через слабку формалізацію та неартикулярність. Тестові завдання 
можуть мати різні форми, але основними в світі є чотири: закрита, відкрита, на 
відповідність, на встановлення послідовності. Найважливіші характеристики при 
розробці педагогічних тестів - це складність завдання (співвідношення учнів, які 
усmшно виконали завдання, до загальної кількості протестованих), 
розрізнювальна здатність завдання (диференціація учнів, які засвоїли та не 
засвоїли навчальний матеріал), надійність (точність педагопчних оц1нок, 
постійність, стабільність, стійкість результапв тестування), валщн1сть 
(комплексна характеристика тесту як обrрунтованість, значущ1сть його 
результатів, адекватність тесту цілям оцінювання). 
1.3 Основні переваги перевірки знань студентів за тестами 
Швидкість обробки одержаних результапв. Врешті-решт, за умови 
відпрацьованої технолог11 можна довести цей процес до повн1стю 
автоматизованої перевірки із забезпеченням максимальної об'єктивності. Але 
водночас відчуваються втрати щодо культури мовлення та глибини засвоєння 
знань студента. Традиційні методи в цьому випадку приносять більше користі . 
2 Об'єктивність одержаної оцінки, їі незалежність від того, хто здійснює 
тестування . Але дана оцінка не може бути усвідомлена як оцінка саме сукупності 
знань студента через те, що існує категорія студентів, які традиційно не 
спроможні ефективно демонструвати свої знання через тестову методику 
(наприклад, «тугодуми» чи «тестофоби» ). 
13 
_J 
Ч)tl \ І~ І 009 113 
- 111жс11срI1 QЛ 111)1 СІІСр flORИHCH 
Т\)\_ \ Pt)\\\tlІH. В ~hНЙ \ 1)\ 1 'Hl 'Н1 СІЧ НВ\ ВІJЬ\ІС\ЬСЯ 1сс1 уваJІІ,ІІІІК, І встигнути 
ПЇ ;'ІГОІ \Іатн '\О нього ЧЗС\ ПЛШІ 1СС1)В..1ІІ ІІЯ . 1 еС І ОВ)' ...1.окумс11Iа11но. rестове 
) 1'0.10 обов'яз1'ів QЛ-інжснсрн в~о 11ть: 
- аналіз і ) точнсння вн юг з замовником або бізнес-аналітиками ; 
- план~ вання процесу тест вання; 
- написання тест-кейсів ( сценаріїв тестування); 
- -:-ест) вання ф) нкціоналу~ 
- 1...1ен rифікація проблемних місць, внесення їх в трекінговую систему; 
- обговорення фіксів з розробниками; 
- вщстеження життєвого циклу помилок; 
- ре-тест підпорядкованих дефектів; 
- ана.,111з тестування; 
- оптим1защя процесу тестування; 
- аналіз процесів роботи в команді; 
. . 
- полшшення процес1в; 
- ведення тестової доку 1ентації. 
Типовий робочий день QА-фахівця включас в себе: 
- написання тест-кейсів, тестування , документування помилок (в 1алежності 
від фа1и проект)); 
- перев1рка баг-трекингової системи на предмет появи виправлених 
ПО\1И!ІОК; 
- СІ енд-ап .І\11ТИНГИ: 
- вивчення вимог. їх уточнення у замовника; 
- активне спі.1кування з розробниками; 
- оформ.1ення тестової документації. 
l lpинepra( QА-інженерів можливість покращувати як1сть прод) КТ) при 
цьо,1у освоювати різні технології 1 вникати в детал і про.д) КТ). Деякі опитаю 
від1начають. що штерес до роботи поси.1юсться з часоІ\1: спочатк) не зроз) ,нло. 
14 
ЧЛТУ 22 182 1.009 І ІЗ 
що ро611тм.- я 1 л.ля чо1 ·0. u нотім 11рих(щ1п1, розум і ння бажшшя брати на себе 
ск11:щн і З.:lR,ТЩННЯ. 
Ця професія вимагас наявності і постійного застосуuшнш аналпичних 
здібностей . Вона не дає розслабитися і розумово деградувати, а змушує постійно 
внвчат11 нові технологіі· і галуз і знань. Не останнє місце займає і можливість 
долучитися до світу високих технологій та великих зарплат. Деякі інженери за 
якістю прийшли до своєї професії, тому що хотіли в ІТ, а поріг входу на QA 
нижче, ніж на програміста. Деякі вражають роботу QA більш цікавим і 
р ізноманітним, ніж роботу розробника. 
Головний м інус - монотонна складова роботи, особливо на початку кар'єри. 
Сюди відносять проходження тест-кейсів при ручному тестуванні і роботу з 
документацією. Недоліками, швидше за все, можна назвати більшу частину 
рутинної роботи, яку потрібно робити обов'язково . 
15 
ЧДТУ 22 182 1.009 ПЗ 
РО'J),ІЛ 2 
АІ--ІЛЛІ 'J ІlРОГРЛМІІИХ ЛІІЛJІОГ'ІВ 
2.1 Техно.rюгія 1ю·чюбю-1 чат-боту 
Чат-боти - itc с..-: 11 c, 1t·1,1 ЛІ· .з ова111•  части11и 11рограмного 1абе·н1ечення ЯКІ 
покл икан1 ' 
0110МОГТН І(()І)И " ' 
t 1 увачам виконувати р 1 1111 -швлш-rня шляхом 
811 1
~ овадження ашинноrо навчання і штучного інтелекту . Це означає, що чат-бот 
з юже в аємо іяти з вашими сп·ш ро 5·п никами або клієнтами і допомагати їм без 
..10110 юги іншої людини. 
Чат-боти виявилися надійними 1нструментами, як1· можна використовувати 
..1л я збільшення продажів і поліпшення маркетингових зусиль. Сьогодні сотні 
ко ,шаній вже використовують можливості віртуальних помічників. Більшість з 
uих компаній використовують ботів, щоб допомоrги споживачам, інші ж компанії 
знайшли їм застосування в своїх особистих цілях. 
Основна причина, по якій боти використовуються, і їх найбільш очевидне 
застосування , полягає в поліпшенні комунікацій у всій вашій компанії. Крім того, 
вони здатю виконувати величезну кількість завдань, які мають вплив на вашу 
оргаюзаu1ю. 
При uьому щоб створити усшшного бота, Ви повиню швестувати значну 
кількість часу і зусиль в його розробку і оптимізувати його на регулярній основі. 
Створення власного чат-бота 
Більшість підприємств малого бізнесу зупиняються на рішенні про купівлю 
чат-ботів. Існують альтернативні способи, через різні редактори, або так звані 
«коробкові» р1шення, але це мало ефективно. По-перше, розробка бота на 
замовлення дозволяє адаптувати його абсолютно під будь-яке завдання і 
користувача. По-друге, замовлення бота у досвідчених розробникjв, дозволить 
вам не думати про зміст серверів та іншого. 
Як чат-боти змінять роботу всередині бізнесу 
Telegrarn вже є ефективним бізнес-додатком, і таке використання чат-бота 
може перетворити и~ оrо в наи~ важливr· шии~  ·1 нстру мент , який буде у ваших 
16 
ЧДТУ 22 18 2 1. 009 ПЗ 
співробітників. Використс1ння бот.-1 1ю1111істю ·1мі11и ·1 ,, с11осіб роботи компаній , 
оскільки вони зможуть : 
Ко шянії. які внкорнстов 1юп, Tck 1 га~11 . часто мшоп, гаr11ий 1н'я·юк -~ 
кліснта ш. і внкорнстання 6t)тін може 11олі11шити 1ie в ус і х напрямках нкюочаючи 
внутрішню взас юді~-о співро6ітннкіu . Замість тоr ·о, щоб в ·1аJІежності від член ів 
ваШL)Ї ко 1андн ві повілати на 1апити кл ієнтів або при·тачати 1устрічі , бот може 
допомогти організуватн зустріч і та нал.ати миттєво інформацію . 
2 Централізувати завдання 
Хоча чат-бот не повинен замінювати важлив1 компоненти програмного 
"'абезnечення. такі як СRМ, він може допомогти централізувати всі бізнес­
програми. Замість того щоб перемикатися з однієї програми на іншу, ваші 
півробітники зможуть задати питання безпосередньо вашому боту або просто 
попросити його виконати будь-які завдання, які їм потрібні. 
3 Синхронізувати все відділи 
Ефективні бізнес-моделі розбивають свої операції на конкретю вщдІЛи. У 
бі пьшості випадюв кожен в1ддІЛ звертається незалежно, що може створювати 
проблеми синхронізації і приводити до негативних результатів. Бот може 
синхроюзувати ВСІ ВІДДІЛИ, вщправляючи масою повщомлення. ЩО 
шдтверджують їх доставку і відповідають на будь-які питання про будь-які 
зроблені зміни . 
4 Надати особистого віртуального помічника для всієї вашої команди 
Традиційно тільки лідери в бізнесі мали доступ до особистих помічників. 
Однак, якшо ви створите бота, ви дозволите всім своїм співробітникам мати 
спеціального помічника, шоб допомогти 1м у вирішенні своїх завдань, не 
наймаючи нових членів команди . 
5 Проаналізувати більше даних 
Дані відіграють жи·1.єво важливу рол ь в усшху б ільшості компан і й. При 
цьому вам часто доводиться наймати аналітиків і виділ яти час для інтерпретації 
цих результатів. Бот може допомогти Вам , сортуючи і а нал і зуючи дані протягом 
17 
ЧДТУ 22 18 2 1. 009 ПЗ 
декількох годин або хвилин . Найкршна частина 11оляпк н тому, шо во11и зможуть 
представити свої висноо1 и ло, ·ічннм чином J\ШІ ос іб , які 1 1 риймають рішення або 
для всієї органі · а1\ії. в міру нсо6хіл1юсті . 
6 Спростити з:нщання 
Існуr баг~їїо задач , які повторюнJться , але 11 еобхілні ;щя операІlій бул.ь-якої 
1--0 шанії. Бот може допомогти спростити ці -завдання , тому що він може 
виконувати більшість, якщо не всі , з них . Вам просто потрібно налаштувати свого 
б та. щоб автоматично подбати про виконання необхідних завданнь або дати 
свої 1 роботам прямі інструкції, коли вам потрібно, щоб ці дії були виконан і . 
Якщо ви шукаєте найбільш ефективний спосіб підвищити загальну 
продуктивність своєї компанії, то впровадження чат-бота може допомогти вам 
організувати свій бізнес. 
Правильне і своєчасне впровадження нових технологій - це те, без чого не 
може прожити бізнес. Якщо вчасно не задіяти корисну новинку - це обов'язково 
зроб пять КОН1''У})енти. І в особі потенційних і діючих клієнтів саме вони бу дуть 
виглядати більш прогресивними. 
Одним з останніх трендів є використання телеграм-ботів. Їх впровадження 
дозволяє отримати серйозні позитивні ефекти: 
1 Залучення нових клієнтів. 
2 Розвантаження персоналу. 
З Утримання клієнтської бази. 
Розглянемо їх докладніше. 
Залучення нових клієнтів через чат-ботів 
Телеграм-бот може взяти на себе завдання, пов'язані з першим контактом 
клієнта з компанією. У нього можна закласти такі функції: 
- збір контактів (телефонів, електронних адрес, акаунтів в соцмережах); 
- збір готових заявок (на покупку або послугу); 
- відправка актуальних цін ; 
- відповіді на поширені питання . 
У чому плюс чат-бота для Telegra111: 
18 
ЧДТУ 22 182 1.009 ПЗ 
- бот працює автономно, ним.:tпночи унап, с11іnробітrrика тільки тоді, коли 
клієнт вже «теплий~>, сю~ав 11сршс нражс11ш1 про 1сом 11а11ію, і '-JаІ(ЇІ<авився 
продуктом І nосл ,гою: 
- бот пращос 1\іло;щбово, бс·J нсрсрн вих іп11их - компш11н не упускає 
кліснта. навіть яюцо нін '{ахочс ·~роб11п1 ·1амовлс11ш1 <160 J tі ·шатис,r яr\ycr, 
інфор шнію в ноноr ічну ніч . 
Ро:JВ:ІНЛІЖСІ·ШЯ псрсона.11. 'Иt ).ОІІОІ\10ГОЮ чат-ботів 
На 'пілку-вання., кпіснтамн й;,с ' 'Ш1 11 ш кілr,кісп, часу співробітників . 
Причому mпання у нових користувачів в біш,шості своїй повторюються. Як 
результат - співробітник ' доводип)ся виконувати одну і ту ж роботу постійно, 
Це завдаюrя можна перекласти на бота, а співробітника - можна 
розвантажити, і зайняти чимось кориснішим. Наприклад, якщо протягом робочого 
. , 
,.н-ffi llf'dUHHiИK tsИ L} Jdч .ав 1 L о дина на 
Утримання клієнтської бази за допомогою месенджерів 
У явімо, що у вас вже є напрацьована клієнтська база, або просто «тепш» 
контакти, які з великою ймовірністю можуть ста~·и нашими клієнтами. 
З цією аудиторією можна і потрібно працювати постійно - щоб утримувати 
клієнта і стимуmовати його частіше робити замовлення. Це особливо актуально 
дJІЯ компаній, послуги І товари яких можуть замовлятися регулярно 1 часто 
(наприклад - перукарні, доставка піци, тренажерні зали, таксі) 
Для цього завдання теж можна використовувати чат-бота, за допомогою 
розсилки з інформацією про: 
- акції; 
- знижки; 
- конкурси; 
- роз1граш1 ; 
- нов1 товари. 
19 
ЧДТУ 22 1821 .009 ПЗ 
Крім інформаційно·1· µо·~силкн телеграм -"\ ЮПІ можна використовувати 
іншими способами , в 1алсж110сті віл сфери Gі ·н,есу, в якій ви прашоєте . 
Наприклад: 
- якщо ви займаєтеся щющ,жем нерухомості - бот може щ1лси1шп1 клі І'·нтам 
оголошення. які ї 1 п ілхоJ\ять ; 
- якщо вн зай '1аст~ся перевезеннями (не важливо, пасажирськими або 
вантажними) - можна «навчити» бота розраховувати вартість в залежност1 вщ 
кількості пасажирів / ваги вантажу і відстані між пунктами; 
- якщо ви працюєте в сфері краси - бот може за запитом клrєнта 
повіло шяти, на які числа і який час є вільні місця; 
- якщо У вас служба доставки - бот може повідомляти статус посилки ; 
- якщо ви робите меблі - бот може «радити» клієнтам правильне поєднання 
кольорів лпя інтер'єру, або «розповідати» про різні стилі його оформлення. 
Це - тільки приклади: чат-боти можуть містити й інші функції. Кожна така 
фішка виділяє Вас серед конкурентів, і робить вашу компанію такою, що 
І • 
запам ятовується для кшєнта. 
Для якої ніші буде корисний чат-бот? 
1 Готельна-ресторанний бізнес. Тут постійно сшд дотримуватися 
шоденних, рутинних дій і контролю рівня обслуговування клієнтів. Всі ці функції 
легко бере на себе чат-бот. Як приклад дуже наочний бот «HoReCa». З його 
допомогою виконуються наступю завдання: 
- Замовлення і бронювання. Через чат кшєнт легко підбере і забронює 
номер в готелі, столик в ресторані, їжу в номер, таксі до готелю і в аеропорт, 
заявку на сервісне обслуговування номера; 
- Пошук довідкової інформації. Через бота доступю номери телефонів 
сервісної служби, режим роботи, меню; 
- Нагадування. Чат-бот запам'ятовує важливу для кшєнта інформацію і в 
потрібний момент видає їі у вигляді повідомлень. Такі функції як будильник, 
нагадування про закінчення терміну бронювання номера, сигнал про заплановану 
зустріч; 
20 
> 
ЧЛ.ТУ 22 1R 2 І .009 П1 
- Збір оплати за посл 1 1 ·н . І1 пс11ют111 і 11тп 1ж111 · ис re ,и г а r ·<1ман11і 
дозволяють здійснювати оплату ,ifio · 1 :1 монлс1111я н кіт,ю1 rori ків rrr,я ro в цаті на 
зручній платформі Н (' внхолячн ·1 лом ,. 
2 І нтернет- 1а1 'а ·тнн . І lрн кл.щом ~:</Н.'ктинпої pofio, и ч ,п-fіоп, на fі~пі 
інтернет-мага · нну в11ст~, 11~1с J)t)()oт я r ні! н1-tко1mстонусп,ся т, ·с1 й·г · і «vVil<IH ·rrie<i» і 
ви конус наступні нії: 
- пср~ннн, 1 1юнні Кt)І ·н:уm,т:щії про товари на сайті . r rorrr yк потрібної 
пропозиції чсре:.< чат-бt)Та швнJщ1с ніж перегл ял категор і й товарів, їх фіт:,тра11 ії. 
Бот відразу направляс по потрібному запиту, видає кілька яаріантів; 
- пря ,11 продажі. Боти давно випснили живих менеджер1в в 11-пернет­
маrазинах. де покупка відбувається шаблонно по кроках . Наприклад, покупка 
о.Jягу. кос rетики. подарунків. Робот працює швидше людини, обслуговує 
озноразово багато клієнтів, автоматизує процеси, скорочує терміни оформлення 
замов.1ення: 
- створення ланцюжків для продажів на сайті. У чат-боті створюється 
а1анuюжок лій: інформування клієнта про товар або послугу, надання знижки або 
бонусу, підбір аналогічних або конкурентних пропозицій. Чат-бот мотивує 
к.,1ієнта ло здійснення угоди, підтримує його інтерес, схиляє до покупки; 
- розсилання контенту. У чаті регулярно присутня корисна і актуальна 
інформація: новинки асортименту товарів на сайті, акції та знижки, подарунки, 
корисний контент у вигляді новин, статей, інструкцій щодо товарів і послуг, 
опитування, статистика. 
3 Медичні послуги . Частина роботи шкарш здатю виконати чат-боти , 
наприклад, «DOC +». Цей робот вмі є: 
- збирати інформацію для анамнезу. Більше 65% свого спілкування з 
пацієнтом лікар витрачає на збір необхідної' інформації. Чат-бот візьме на себе цю 
функцію, виконає ранжування симптомів, визначить можливу групу захворювш-.1ь: 
- оформляти цілодобово запис до лікаря . Митт'євий запис хворого до лікаря 
на найближчий час з урахуванням симптоматики і поточних скарг без втрати часу 
на багатогодинні черги; 
21 
► 
ЧДТ 22 І R2 1 . СЮ9 І П 
- підбір вузькоспс~tіал і ·юнаннх фах і1щі11 . Л кту,1т,но лля слабо 
урбанізованих і відла.псннх район ін , л~ ·н1 :1Іі 111 лікнря і мсли • 111у лоrюмог у сюrално . 
Чат-боти знай уть на~'Юл нжч1..,1 '0 л і, аря і ' \ :11111111 п, щ1 11рні1ом ; 
- надаватн 111..'н ·0 J1•' )1 ·1· '-11-•.  • 
JЮ11омо1· . Роботи ·~бері пнот r, н 11 <н11 м н 1 ст1-,, 
ви1'орнстову~,їїь 11Р11 Нlt1111 ІІ ко1 ·нітнrтої тсра11ії тrри спінкунанr1і ·1 люлин,,ю . 
Спілt-:увзтн ся · ро6отt, 1 част1..) прос..:тіте і 1<омфортні111е , ніж ·1 лікарем ; 
- з(нр~їїн оп.п ату мед11чннх посл г. Оплачувати ;юпомогу л ікаря в чат, 
н;:~багато ко нfюртніш~ і легше, тому що використовуються готові шаблони . 
4 Фітнt:с і спорт. Використання чат-ботів фітнес клубами стає хорошою 
ттрактнкою. портивна мережа X-Fit- активно використовує свого робота <<xfitbot» 
,1.1 я вирішення наступних завдань : 
- J.-онсу ттьтації кшєнпв. Чат-бот пщкаже варт1сть клубних карт, час 
. . 
групових та 1ндив1дуальних тренувань, розповість про акції та знижки; 
- підбір персонального тренера. Детальне анкетування клієнта в чат1 
.1озволяє точно підібрати тренера для виконання поставлених цілей ; 
- проведення онлайн-тренувань. Чат боти не гірше інструктора задають 
. . 
спортивний тонус, вщстежують параметри навантаження штенсивюсть 
тренування, пропонують різні спортивні програми занять; 
- оплата тренувань, харчування, клубних карт. Придбати і відразу оплатити 
в чаті потрібну послугу за допомогою чат-бота швидко і зручно. 
Кількість користувачів Telegram зростає з кожним роком. Це привщ для 
використання чат-ботів для вашого бізнесу як інструмент який може вирішувати 
комплекс завдань 1 автоматизувати процеси. 
2.2 Як поводяться чат-боти під час збоїв в Telegram 
Telegram - найнадійніший месенджер, що славиться своєю безпекою і 
захищеністю. За це він так і подобається мільйонам користувачів по всьому с віту 
- легкий, швидкий, надійний, секретний. Проте, часом з'являються повідомлення 
про збої в Telegram, та й кожен з нас напевно стикався з такою проблемою: 
повідомлення не доставляються і не приходять, боти не відповідають, канали не 
оновлюються. Найчастіше проблеми виникають на території декількох країн, але 
22 
► 
ЧЛТ 22 182 1.009 І І ' 
декілька раз СПІЛІ< nання в 1 '·сн;,ж ·рі G ло 11 •;,ост 111ю 1ю вс,,ому свtту. ІЗарто 
віДдатн належне шжснс1 а 1 і {Н ·tp< fі1111ю1 1 ТсІсgп1111 , 'J •11:1со 1 11.с траплясться все 
рідше j рідше. ~JlC І10НІІ1СТІ() Hlt! .ІІЮЧ ІІТІІ іІмовірrrісп, ВИІІИІОІСІІІІЯ 11роблсм не 
можна. Ві;, внп. ,коностс\1 ні . то не ·1астрахова11иН, ш , с все ж ;щвайте ро'н·лянемо 
тзку тему: « Щ<.._ віл6унасп)сн. К< л 11 ТсІсgг~нн 11.1щн·, і як , юв<щятr)ся боти під •rac 
такнх форс-мажщ ін? 
Геогр:1фіч11і збої 
Збої 6уtзшоть р; ·•1-шмп: шою, шшриюнщ, яю1с1, частина сервсрш, 
розташованих в одном географічному регіоні, з якоїсь причини перестає 
вuповщати. Причин том може бути деюлька: падшю1 напруги, високе 
навантажс:r-п-ія. фізичні ушкодження . ІЗ цьому випадку постраждати МОіn.')'ТЬ 
корпстувачі і боти, зареєстровані в країнах, де стався збій, а також канали і групи, 
власники яких зна.-ходяться в зоні ураження. Наприклад, якщо ваш бот хоститься 
.1е-небудь в Польщі, а у Telegїa111 трапи--вся збій в східній Європі, то зап:ити, що 
приходять на сервера в зоні ураження, не отримують відповіді і «зависають». 
Повідомлення користувачам будуть доставлені, як тільки буде відновлена 
нраuе: Нtаl'ність серверів, а ось боти можуть реа1 ·ува1·и но-різному : не отримавши 
відповіді на запит, програми з низькою стійкістю до відмов можуть зациклитися 
або вилетіти зовсім, в той час як більш надійні аналоги прийдуть до тями після 
збою самостійно. 
Внутрішні збої 
Крім регіональних збоїв, трапляються відмови внутрішніх частин Telegram, 
не прив :язаної до певного регіону. Так, «впасти» може АРІ Telegram, тобто, 
безпосередньо механізм взаємодії з ботами. Тоді звичайні користувачі по всьому 
світу не відчувають труднощів при відправці повідомлень, групи і канали 
працюють як належить, а ось боти не отримують відповідей від сервера Telegram і 
завмирають. Звичайна людина, яка відправляє у цей час запит в бота, не побачить 
причини, і буде просто сердитися на розробнш<ів, хоча, на жаль, вони ніяк не 
можуть вплинути на таку ситуацію. Бот, який не отримав відповіді від АРІ, буде 
вести себе по-різному в залежності від налаштувань : ЯІ<що при розробці не 
23 
ЧJ\ТУ 22 182 1.009 113 
с.. . 11 " 
пропрацювап, мехаш·зм рсщ · щ11111я на тш< ситушою, 11ро1 ·рама може впасти 1 
відновлювати. пращ.~·татнісп, .J \( нс,1\стм.: ,~ вру ,111 ,. 
Таіімаут і f)С3КЦЇSІ ••:• ІІМН '() 
lноді збої 6 т.:ноп, мінорними : нихо;\НТІ, з шщу <щиrr rJ серверш великого 
клзстсr а . ' ;:11'ал1)на пр~JІ\с:m;:tтнісп> снстсмн ·1бсрі1 ·шт1~сн, але •,ас віюювіді на 
"ап1-rп-t збільшусться, з точки зору користувачu Тс Іеgгат просто "тупить" . 
З аналося 6. нічо1 о страшного немає, uідrювідь адже приходить, просто з 
затрн11,:к",1", хіба бот може ''JШмnтися від та((оrо? Внявллсться, що і тnке можливо: 
якщо під час наm-1сання програми не налаштувати поведінку при тривалому 
таймауті. то бот може впасти в ступор і не обробляти запити. 
Бuтіі і 'і·х р~акція на проблеми 
Так що ж відбувається під час збоїв? Якщо у випадку з користувачами все 
приблизно зрозуміло: повідомлення не відправляються і не приходять, то з 
бопімй все трохи СКJІадніше. Деякі після відновлення Telegra111 залишаються без 
відповіді, в той час як інші самостійно оживають. Залежно від налаштованої 
схеми взаємодії бот може відповісти на всі надіслані під час збою заrшти, а може 
залишити їх без ува.~·и і надіслати сновіщення, щоб оновісти~-и нро відновлення 
працездатності. Звичайно, користувачеві важливо знати, що збій позаду 1 все 
відновилося, але отримувати безліч повідомлень незручно і марно. 
Грамотно написаний бот повинен включати в себе всі сценарії можливих 
збоїв і вміти самостійно відновтоватися після пад1нь. Робота в умовах 
підвищеного таймаута, своєчасне включення в дію після бездіяльності без участі 
безпосередньо людини, запобігання зациклення 1 вв1чливе ставлення до 
користувача - ось як повинен виглядати якісний чат-бот 
2.3 Як створювати чат-ботів 
Hott 'ather - найпростіший спосіб для реєстрації, налаштування та управління 
іншими telegram-бoтaми. Робота з ним проста і не вимагає специфічних навичок. 
За допомогою BotFather можна зареєструвати необмежену кількість нових 
чат-ботів. Єдиною умовою для реєстрації нового бота - є його унікальний 
username. 
24 
ЧДТУ 22182 1.009 ПЗ 
:.~ ~::-·~,.:~:.,::;;·. ... , .• """'"' ,с,, , ...- -с, "'' t "~ ., '\,\' ••• ,._ , ., 
v,...,t< ,.,,,~,-.. ~..,.. ''W:'""•• r •~.  .,,, llr. 
,,.,.}. ....... .·...-...·..~. , --•~ ·· 
•• ,""'(. . "'""""'l"'·­
.................. ..r --, .. , ••( .\ 
~,.,._,. , ·t,..-.:• "li'W-C 
,..., ... ,t. .- ,-,:•-'~°' · ...... , -~•t--.t••!jt 
~~ .. ....... , ..._ ,,м~ , 
~••- ... .._...,,(r•-. 
f~. . 
,~р,..-, ........  ·-•'-'t'­
,..,.)_"~t--a<;~f<-'lf'"l""''I. ... , 
,~-... "'С'(•'\"-\ 
"О~ )~U' ' rь.,. .1  
Р•,11"•41.-­
("°-"•'>Ім,-,., .. - ..., . 
""-"-"•,.,.,..... 
~~-....- "(і.••~ 
Рисунок 2. 1 -Команди чат-бота «BotFather» 
BotFather стане відмінним рішенням для тих, хто не розбирається в 
програмуванні і не хоче довіряти створення і управління своїм ботом стороннім 
тодям або стороннім організаціям. 
Як зареєструвати нового бота за допомогою BotFather? 
Взаємодія з BotFather здійсmоєгься за допомогою простих команд. 
Наприклад, для того, щоб зареєструвати нового бота, досить відправити в 
чат команду /newbot і слідувати простим інструкціям: 
1 Придумати ім'я бота, яке буде відображатися в чатах 1 контактах. 
Надалі його можна буде змінити. Тут все залежить тільки від вашої фантазії і 
вимог; 
2 Придумати username - це вже складніше: ім'я повинно бути унікальНИt\1 
закінчуватися на «bot». Допускаються букви латинського алфавіту, цифри і 
символ підкреслення (приклад - «MySuper_  wow_  bot» ). Загальна кількість 
символів не менше 5 і не більше 32; 
. . 
з Якщо все в порядку, то у ВІДПОВІДЬ ми отримаємо повІДомлення з 
токеном. Токен необхідний для роботи з Bot АРІ за допомогою httр-протоколу. Не 
можна передавати його іншим і бажано не втрачати. Хорошим рішенням бу де 
скопіювати його: зберегти в теr<стовий файл і покласти в наді..йне, завжди 
~ оступне місце - наприклад, хмарне сховище. 
25 
ЧДТУ 22 182 І .009 ПЗ 
Після реєстрації можна nрист пати до облш ·оро;tж вс:1111ш бота : nстановити аватар, 
додати опис та шше. 
,..... t 
:...·   ·.. ~. ,...·  ,,. .': , ,. . .. ,..: .: :;·:. . 
Рисунок 2.2 - Отримання повідомлення з токеном 
Що вміє BotFather? 
допомогою BotFatl1er МО)!СЧа здійснювати його 
. . 
напаштування 1 управл1ння. 
Зовнішній вигляд 
JQ.Lv&тU.пЦАV  iR.JU~-l •...J...  .u&..аo'-'  .Т.1.Т.1.АV,rt-tr., о"V аєт.&. ься .і. ... ,~1Уі•. 'я бо Та  , ТО  1·1х ого I\.f О жна ЗМІНИТИ кома}ЩОЮ 
/setname 
Рисунок 2.3 - Зміна імені бота 
Встановити аватарку можна командою /setLІserpic, а змшити або додати 
коротю1й опис - командою І setd.escription. Зміна інформації в профіл і виконується 
командою І setabouttext. На ЦІ>ому кастомізацію зовнішн1)ого вигляду бота южна 
вважати закінченою, і можна зайнятися його фу11кціо11альними можJшвостями. 
26 
Р2 
ЧДТУ 22 182 1.009 ПЗ 
Функціонал 
Картинка і опис - це, звичайно теж нажливо, але все ж таки, головне в боті -
це його можливості. Можлино ·ті ·шJ1сжат1. віJ \ щ1бору 1шмш1;(, які з;щтний 
обробити бот. 
Для встано.вле ння списк коман;, ввс;\іть /sctcoпнnaпds у вікн і чату . 
- ~-:------:-:-:~------,_.,.....------....-----
о St.">n\, ff'e.) l•~t ~ · ~ ('ff'•"І"''-,Ч'd., 1 LV ,,'-t.)i Ь..)t rr. ....н e- •І~~ th•'1 
І..; \J'" 
Рисунок 2.4 - Встановлення команд для бота 
Команди вводяться без / ( слеша ), в форматі «command 1 - опис команди» 
Ol.'..L,..,  п•n•І .'.А, .І.І....l~ "Г-І '-JІ ~ГІ' І-'А-І •П•'м!.) ПІ'.А..І.І.'.'. .J.І.UU.  я OCHOBH!fX команд І• "!J ( рОЗШІі ф.  ровка: 
- І Newbot - зареєструвати нового бота 
- І Mybots - редагувати своїх ботів [бета] 
- редагуванР...я  
- І Setname - змінити ім'я бота; 
- І Setdescription - змінити опис бота; 
- І IСJ' еІ+., аЬrV-U•l•.iн. ех+І.,  .,._> l.V•lJ; .C . ПLЖl'J'JУ.'~ПJ  1· .1."."J..  Ф,.V. ,Рl"- v"J."(.tЦ ;JІ О .J...J..  ро 6V""J'J; .,  
- І Setuserpic - змінити фотографію профіmо бота; 
- І Setcommands - змінити список команд; 
- І Deletebot - видалити бота. 
Налаштування бота 
- І Token - генерувати токен авторизації; 
- І ReYoke - відкликати токен доступу до боту; 
- І Setinline включити вбудований режим (дозволяє звертатися 
безпосередньо до боту з будь-я1<0го каналу, групи або чату, написавши його ім'я в 
11оле ніднранки нонідuмш:~нь) (11ltps://1,;uгe . l~k~п,л 1.01·g/buLs/iнliш:) ; 
27 
> 
ЧДТУ 22 182 1.009 ПЗ 
/ Setinlinegeo - перемикати '3ШІити щю ро·па111ува11 11я при використаш-п 
бота у вбудованом рс)І нмі . (l l ttps ://cшc . t clc 1п1m . org/bots/i11 J ine#location-based-
results); 
- І еtінІіпсГ-сtН)асІ · - · Jмішпи 11шннн·,·унш 111я ·торот1101 ·0 -т'я·1ку (1бір 
статистики най6іm>1u часто нід1 1 ра13ш1 ют 1,сн боту команд) 
(11ttps :// ог ' . tсІсgпнп . огg/tюts/ін І iпc#co llcctiпg- Гccdt1ack) ; 
- І с~jоіпgгонрs - визначає можливість додавання вашого бота в групи; 
- І еtµгі,,ас переключити режим конфіденційності в групах 
(11ttp :// ore. telegra111 . org/Ьots#privacy-1110de) . 
Ігри 
/ Муgаше - редагуйте свої 1rри (https://core.telegram. org/Ьots/games) 
[бета] : 
- І ewgame - створити нову гру (https ://core.telegram.org/Ьots/games) ; 
- І Listgames - отримати список ваших ігор; 
- І Editgame - редагувати гру; 
- І Deletegame - видалити існуючу гру. 
con-.m.Vldl , ~ •P'.J()n 
cornman<:12 - AnQ!her ~scnpuoo 
COIІ'l<naf\Q 1 · Пр<•ІЮ І 1 Я 6о1 
• 
Рисунок 2.5 - Створена команда для бота 
Таким чином можна додати будь-які необхідні команди 1 завершити 
налаштування. 
Висновки 
28 
ЧЛТ 21 R2 I 009 І ІЗ 
Ось так пр то, 11' но юдію llt Н:lВІІІ а 111 11\ЮІ р(І 1 ІНШІШ, ОЖШ) 'Ja кшька 
ЬІІ 1Ші Щ) 1 l) І)d 11 
ш ІІІ І ІШ І Р< І Ін J {J J н 
час на Ф0І 11 ннн 1 а 1нор1..'11111 · 11 ·11іа 1іювш111 , о 1шщ, 10 Ви три af·re 
повнісп 11 ,нnщ а 1ЬН( І о вщн. щ I о 01 а ф ІІІ<І\іошш і , южJ~и1юсr і нкоr о бyJJy-11, 
3., І~Л\.<1 1 11 І IJH~ 11 І j ~ { •• . 
2. 1111 •ч 01 І :t 11111 • 11а. 1щ ін 
... 4.l ча - , 1щ афон , а, щ » 
- ц ·шm~н І а \ ІШІІШІ щ, ~~и >Ію jctй юu1 ьс,;}І yJ1юGJ1t:нuю 
•rq 3R) працюють · ш ,кн · ав10 но I т1юрю101ь круп речі щодня. Вони 
навчають в б-ди· аин , р зро )ЦІ айтів і тому, як максимально швидко вийти на 
фрі.пан I ар -~пи п 'рші гроші ще в процесі навчання. 
Б копповні к р и ві W YUP - це відмінна можливість стартувати свою 
нову кар'єру під наглядом професіоналів. У кожному безкоштовному курс~ 
п р дбач на пер ВІрка домашніх завдань 1 персональю коментарі фах1вц~в. 
Рисунок 2.6 Сторінка платформи «W YUP» 
--1'-•---М~іірафон WAYUf.~~~-~·--·-·-~-·---~-- . .. ----
WAY . . -
-.--!., ~----~-~. --~~~-'- ~ ___ .. ~_ .... :. . ._. ........ _.._ ... 6 ____ ,._ ..... __. ..,._,._ __, . .>.;_,_ - • 
Рисунок 2. 7 Вигляд чат-ботn в спjльном вікні чаті в 
29 
► 
ЧДТУ 22 182 1.009 ПЗ 
.Рисунок 2.8 -Вікно діалогу чат-бота 
2.4.2 чат-бот «groward академія» 
«Groward» - онлайн-академія для навчання сучасним інтернет-професіям в 
напрямку rnтернет-маркетингу, дизайну інтерфейсів, управлumя інтернет-
.f-- С О 8 gr0\\'.11tclprn 
Рисуно ( 2.9 - Сторінка платформи ((Growш·J» 
...... L, ~ ...__ - ~- ... • • - - - •• - - • 
___ ,g, Groward академия 
<, f.• O «А~ __ -~ • ., ,,__ , • _ .._ ~ - - • ... • • - -
. . . . ... ~- ,. . .. . . ' - - - - - . -- . -
Рисунок 2. ] О - Вигл яд чат-fіота n спіт~1-юму віr,ні чатів 
30 
ЧДТУ 22 182 1.009 113 
Рисунок 2.11 - Вікно діалогу чат-бота 
2.4.3 чат-бот «академія 5 сфер» 
Академія 5 сфер - це бібліотека осв1тюх програм вщ експерпв в 
особистісному розвитку, здоров'я і харчування, лідерстві, фінансах і побудові 
вщносин. 
Пройшовши цей тренінг, ти поліпшиш свою пам'ять, ораторсью навички, 
духовний 1 моральний стан, навчишся боротися з шито. Навчишся 
розпоряджатися своїми фінансами і навіть почнеш вивчати анг;rійську мову. 
* 
ДЕИСТВУЙ. -
ЖІ.-1В!і!. 
влияй. 
БОГАТЕЙ. 
ЛЮБИ. 
LJ 
Рисунок 2. 12 - Сторінка платформи «Академія 5 сфер» 
31 
Ч)~ТУ 22 182 1.009 І І З 
Рисунок 2. 13 - Вигляд чат-бота в спільному ві1< 11і чатів 
Рисунок 2. 14 - Вікно діалогу чат-бота 
2.4.4 чат-бот «creo» 
С R Е О - це екосистема для людей, які працюють в креативній індустрії. 
Вони допомагають людям абсолютно з нуля освоїти креативну професію та 
стартувати свою кар1єру в digital, працювати онлайн, бути географічно не 
прив1язаним, займатися утобленою справою та створювати чудові проекти для 
. . . 
КЛІЄНТІВ З усього СВІТУ. 
Ціль - зробити так, щоб люди завдяки улюбленій справ~ могли 
подорожувати та nраwовати з цікавими проектами з усього світу. 
Рисунок 2. 15 - Сторінка платформи «Creo» 
32 
ЧД І\ "'> І ~р І 009 І ІЗ 
• tQt ВІтаnІі4 Ваnьков І CREO -h
.., .... r --•-J- 
п 1 1......t.• t::: .. t1'1 • l-:t.l1t "1,t \~ 1 _-:, .. ) ,-.- ~'l,, ,1•.·:· [ І•(. 1~ tJrl'.' •t~J . ,t 
Рнс, нок - 16 - Вигляд чат-бо1а в сшль1ю 1у вікні чатів 
Рисунок 2.17 - Вікно діалогу чат-бота 
2.4.5 чат-бот «sendpulse academy» 
В Ака,J,е\fії endPulse навчальні вебінари проходять щочетверга. Фахівці 
діляться своїм досвідом і знаннями, а учасники задають питання в чап 1 
отри::-~І)їОГD на і-її.іл в1дпошд1 . 
Рисунок 2. 18 1 ор інка платформи « reo» 
33 
Ч)\1 > 2 tH2 I . 00<J I П 
~Qi.....s~ndPulse.AcadQm У- --- --·-·- ---------··--- ---- ______ !1  
1U 
• -'-<.('-І< ~'t l- --,--,~р ~" '··~  ь,r, ".  ,1, ,1,1,1: Н? lP· rq , , •.•:, 'ltY' дг , • ,,,, •.• ,·,:,чrt,1:-г,,~ f'' н, . 
-----·-·-- --- ---------·. - ----- ---·· -- ·- - ----- -----
---___ - ---~- - -_ - ---
Р1 І,, Н )1 19 Вш·ляд чаг-601 а в с11іm,1юму ві1·11і ча, ів 
Рисунок 2.20 - Вікно діалогу чат-бота 
2.5 Постановка задачі 
l\1ета розробю1 чат-боту - дати можли.в1сть користувачам месенджеру 
Telegr~ яю цікавляться сферою ІТ, пройти тест і дізнатися свій рівень знань в 
напрямку QA, а також створити чек-ліст, який допоможе при тестуванні ПО. Чат­
бот буде формувати чек-ліст для часто використовуваних пристроїв, що дас 
можливість більш точно створити чек-ліст для тестування . 
Чат-боти - сучасний та ефективний засіб, який стає дедалі бі.1ьш 
попуJrярним для проnсдсппя м:асштабпих рсrшамних ка~шштій бр 'Іщіn. 
Враховуючи, високий показник конверсії відкриттів і псрегля ів повідо шень, які 
нриходять до месенджерів, чат-боти значно ефскпш11іш11~1 за б дь-який іншнй 
шструмснт реклами. 
34 
-
Ч)~ТУ 22 1Н 2 І .009 І П 
Лня корн ·1· 1вачів 6 ,;~с 111ач110 11 рості111с отримати 11собхіюrу інформаrtію в 
,ш1·0~1а1·11ч110м . 1 рс:чш 1і ·н1 ,rщ110 101·ою чат-бота, ніж на 1аrатися сrrримати ту ж 
са -t I інформанію за л.0110мо1·ою 11ошуку в і11тср11ет і , що 111аt1но підвищує 
ОЯJ11,Н \СТІ, . 
l lоnуллрність месс1щжсріо зростас ·з ІСожним днем, і зростання популярності 
J\аннх програм проп-юзуrтt>СН мінімум на найближчі 5-1О  років вперед. Самі 
мссснлжсри - не безкоштовне 11рограм11с забезпечення, яке встановлюється на 
смартфон, для обміну поnідомлсшшми, медіа файлами та іншою інформацією. 
35 
Ч!\ТУ 22 182 1.009 113 
l)O'J)~IJI З 
ОПИС })О]І)ОGІ(И ЧЛ Т-БОТУ 
3. 1 Аналіз і 111>оскту І·Щ ІІІІЯ Щ).О Г()3МІІОГО :Jaбe'Jnc•1e111ш 
мові U!\1L nизна•1ені •rопtри типи nіrщошеш,: 
- залежність · 
' 
- асощащя; 
- узагш1мtснпя ; 
- реалізація. 
Ці відношення є основними сполучними будівельними блоками в UМL 1 
застосовуються для створення коректних моделей. 
Таким чином, в UМL виділяють дев'ять типів діаграм: 
- діаграми класів; 
- діаграми об'єктів; 
- д1аграми прецедентів; 
- діаграми послідовностей; 
- діа1·рами коонерації; 
- діаграми станів; 
- діаграми дій; 
. . 
- щаграми компонентш; 
- д1аграми розгортання. 
На діаграмі класів показуються класи, інтерфейси, об'єкти й кооперації, а 
також їхні відношеЮІЯ. При моделюванні об'єктно-орієнтованих систем цей тип 
діаграм використають найчастіше. Діаграми класів відповідають статичному виду 
системи з погляду проектування. Діаграми класів, які вкточають активні класи, 
. . . 
вщповщають статичному виду системи з погляду процес1в. 
На діаграмі об'єктів представлені об'єкти й відношення між ними. Вони є 
статичними "фотографіями" екземллярів сутностей, показаних на діаграмах 
класів . Діаграми об'єктів, я1< і діаграми класів, належать до статичного виду 
системи з погляду проектування або процесів, але з розрахунком на дійсну або 
36 
ЧЛТУ 22 182 1.009 ПЗ 
rJакетну реатзащю. 
На діа:?ра~ні пре1rеде11тів 11рс,1,стаолс11і прсцсде11ти й а1<тори (окремий 
:випадок класіu), а також від~-юшення між ними. Діаграми прецедентів належать до 
статичного виду системи з погляду пре1\едентів використання . Вони особливо 
nажmші при організації й моделюванні поnоджешш системи. 
Діаграми послідовностей і кооперації є окремими випадками д~аграм 
взаємодіі'. На діаграмах взаємодії' представлені зв'язки між об'єктами; показані, 
зокрема, повщомлс~-шя, я1<ими об'скти можуть обмішоватися. Діаграми взnємодії 
належать до динамічного виду системи. При цьому діаграми послідовності 
відбивають тимчасову впорядкованість повідомлень, а діаграми кооперації' -
стру~турну організацію об'єктів, що обмінюються повідоwшеннями. Ці діаграм"и є 
ізоморфними, тобто можуть бути перетворені одна в одну. 
На діаграмах станів (Statechart diagrams) представлений автомат, що 
вкюочає в себе стани, переходи, події й види дій. Діаграми станів належать до 
динамічного виду системи; особливо вони важливі при моделюванні поводження 
інтерфейсу, класу або кооперації. Вони акцентують увагу на поводжеЮІі об'єкта, 
що залежить від нослідовності 110дій, що дуже корисно для модешонання 
динамічних систем. 
Діаграма діяльності - це окремий випадок д1аграми стаюв; на ній 
представлені переходи потоку керування від однієї діяльності до інший усередині 
системи. Діаграми діяльності належать до динам1чного виду системи; вони 
найбільш важливі при моделюванн.І її функціонуваЮІя й відбивають потtк 
керування між об'єктами. 
На діаграмі компонент ів представлена організація сукупності компонентів і 
існуючі між ними залежності. Діаграми компонентів належать до статичного виду 
системи з погляду реалізації. Вони можуть бути співвіднесені з діаграмами класів, 
тому що компонент звичайно відображається на один або кілька класів, 
інтерфейсів або кооперацій. 
На діаграмі розгортшmя представлена конфігурація вузшв системи й 
розміщених у них компонентш. Діаграми розгортання належать до статичного 
37 
ЧДТУ 22 182 І . 009 ПЗ 1 
вИдУ архпектури системи 1 поI ·шIJ\У ро1 I ·ортш IшI . Вони 11оо'язані з д~аграмами 
комnонс1-п113 , ОС І<іm)ки У вузл і :.ш11чай 110 1ю·-1міщаються один або декілька 
компонснт,в. 
Розроблена npot рамна система призначена для розрахунку тривалостьr 
проекту . 
Зручність 1111кор11ста1111я . 
lнтерфейс користувача повинен бути Windows-cyм icним. 
Інтерфейс користувача повинен бути простим і не вшvшrати додаткового 
навчання для користувачів . 
Кожна функція системи повинна супроводжуватися вбудованої онлайн­
допомогою, яка повинна включати покрокові інструкції по роботі з системою, а 
також ВІпначеЮІЯ термінів і скорочень . 
Надійність 
Система повинна бути в працездатному стані 24 год в день 7 дн1в на 
тиждень, час простою - не більше 10%. Середній час безвідмовної роботи має 
перевищувати 300 ч. 
Ідентифікувати 11рецеденl'и і дійові особи це один з наЙН<іЖJtи..віших 
моментів проектування системи. При ідентифікації виконуються наступні кроки : 
- чітко розмежується система і її оточення; 
- визначається, які дійові особи і як саме вони взаємодіють з системою, який 
функціонал (варіанти використання) очікується від системи; 
- визначається і описується в словнику предметної області (глосарії) 
загальні поняття, які необхідні для детального опису функціоналу системи 
(прецедентів). 
Подібний вид діяльності зазвичай виконується в такій послідовності : 
1 Низначення дійових осіб; 
2 Визначення прецедентів (варіантів використання) ; 
З Складання опису кожного прецеденту ; 
4 Опис моделі прецедентш в цілому (цей етап включає в себе створення 
словника предметної області) . 
38 
ЧЛ,ТУ 22 182 1.009 ПЗ 
Спочатку вимо1 ·и O(j)<>,n, l\·••J i•,i to·,·,)c,•,  у uи, ·лящ зоичаи" 11оrо те1<стовоrо 
t'\'МСІІП1 ' Яt<lftt СПЮ})Ю("І '\" с с'1  , б е::. . 
до ';' ,1 ю самим 1<0ристувuчсм, n"o користувачем 1 
ро·Jробннком разом . Дан і вимо1 ·и оформю1юп_) у uи1 ·1шді таблиці . У ліву колонку 
1
110~1• 1· 11 , ·ноть 11 ,сцс;-\енти '.\ "0  11р·1 ny - · ., · · 
,.._ t ._, , юиових ос1б, що берут,> участь в прецедент~ . 
3.2 О1111с ссрсдощнщ, 
ІЦо такс Sc11dJ>ulsc•! 
ScнdPulsc був стrюрений в 20 15 році . Понад 800 тис. зареєстрованих 
користувачів і близько 28 тис. платоспроможних клієнтів . Серед клієнтів великий 
відсоток інтернет-магазинів і е-сошл1еrсе в загальному. Так само багато 
rrредставників сфери послуг та еvеnt-проектів. 
Країна розробки платформи - США. Офіси або представники є в багатьох країнах : 
в Укра1·н1, Росії, Білорусі, Туреччини, Бразилії, Мексиці та Чилі. 
Співробітники надають підтримку цілодобово російською, українською, 
англійською, турецькою, іспанською та португальською мовами. 
У SendPulse є все необхідне для професійного емейл-маркетингу: від форми 
підписки і системи для тригерних розсилок Automation 360 до адаптивного 
редактора шаблонів і статистики. Користувачі вибирають SendPulse за масу 
корисних функцій, простоту у використанні і зручний АРІ. 
SendPulse підходить будь-якому бізнесу, який хоч якось представлений в 
інтернеті. Навіть якщо у вас немає контактної бази, ви можете створити форму 
підписки і розмістити її на сайті, почати збирати передплатників і потім 
відправляти їм розсилки. SendPulse можна використовувати не тільки для емейл­
розсилок. Він підходить і для пуш-маркетингу: можна поставити форму підписки 
на веб-пуш і відправляти веб-пуш-розсилки. 
Платформу оновлюють постійно. Кожен день серв1с розвивається 1 
поліпшується , відбуваються баг-фікси і дрібні релізи. Платформу оновлюють з 
39 
ЧДТУ 22 1821.009 І J З 
точки зору ІНІГОJ\ІІ для корнстущ\11ів , а 11с те мщжстинrовий крок з пафосними 
rтрс:іЄJП'ЗЦ\ЯМН. 
в основном анонси 011овлс111, 11роходяп., через поштов1 розсилки, де 
nлатфор -tй повіломляr К()ристуnачів пn() 110111 (І)vню,її. Тшюж nofiитh не R 
1-елеграм-канаш 1 соцмережах. 
3.3 Блоки платформи Se11dP1.1Іse 
конструктор форм 
За допомогою конструктора форм можна вибрати готовий вар~ант або 
створити власний, n стилі свого сайту. Можна вибрати кількість полів, вставити 
зоораження 1 шдюрати неоохщнии тип форми. 
у сервісі доступні різні ТИШІ форми підписки : 
- попап-вікно. Форма з'являється на екрані через деякий час перебування 
користувача на сайті аоо після певних його д1й. 
- вбудована форма. Розміщується внизу сторінки або в сайдбарі, зазвичай 
повторює дизайн сайту. 
- плаваюча форма. Уозташовується внизу аtю вгор1 екрану 1 при 
прокручуванні залишається на своєму місці. 
- фіксована. Закріпmоється внизу екрану і не зникає при прокручуванні. 
- всі форми адаптивні і однаково виглядають на ьудь-яких пристроях. 
Automation 360 
Automation 360 дозволяє налаштувати омн1канальную сер1ю повщомлень 
. . 
ДЛЯ КОЖНО! МОЖЛИВО) ПОД11 1 автоматизувати вщправлення. Ви можете 
комбінувати в одному ланцюжку емейл-, веб-ПУШ- і СМС-повідомлення. 
Користуватися Automation 360 дуже просто: всі елементи автовідправлення 
можна перетягувати в роооче поле за допомогою мишки. 11ри створеню 
автоматичного ланцюжка доступні елементи : емейл, веб-пуш, СМС, фільтр, 
умова, дія і мета. 
11 () 
r v 
ЧДТУ 221821.009 ПЗ 
С?.І -~...~.,... .,..,-... ." "'• • 
о ,. .... ,..tel,--
<> · 
♦•D 
о • 
Рисунок 3.1 - Вибір шаблону 
Веб-пуш і СМС 
Якщо користувач не вщкрив емейл-повідомлення, можете додатково 
· равити йому Веб-пуш і СМС-повідомлення. Потрібно просто перетягнути 
• емент в робоче поле, вказати час відправки, прописати текст повідомлення 1 
ати умову, за якої підписнику відправлятиметься веб- пуш або СМС. 
І =оmРАв=ить sмs t , ... , І\  О Cpuy ~•= 
G) Ч~ре-:, 
До('~."ІUЛСІІІ~(.• 
n("),1,fНІ(•НІІо: ;І J зо 
о j SMSoт: ('; 
І ~1•1 ;11 СТfПРr'~,1,Ц \t..'S 
І 
.. 1 Тuст SMS: 
, 
/, 
• О :-.-vsQ;..:.& 1 S\ti 
" ' . -- --''~~ 
"' ~,,,. ~!7',".'Т · j~ •• 
ІЮІ  / : 
,J Отмена 
Рисунок З .2 - Створення Веб-пуш і СМС-повідомлення 
Фільтр 
Елемент фільтрує контакти по зазначеним умовам і дозволяє створювати 
персоналізовані ланцюжки. Наприклад, ви можете створювати листи для 
чоловіків і жінок або задати умови для відправки за місцем проживання. 
41 
ЧДТУ 22 182 J. 009 ПЗ 
~ мм,, а,,.; , еме 
І'І,\\\а, .......1 ., 
, ..u n. .,  ••. ,. , , .....,  • • • • • "t-.• ,, 
'l.,1' r•H~"••• • Т""'••· • 
.,. ... 
IIКim;C:W, 2
• о ІМІ ,1· •-
о• • 
0тt.Ai!H.J 
Рисунок З.З - Створення елементу «Фільтр» 
Умова 
Цей блок вибудовує подальший ланцюжок відправлення, грунтуючись на 
діях підписника: відкрив він лист, клікнув по посиланню чи ні. В умовах можна 
задати час, протягом якого система очікує дії підписника. 
Наприклад, якщо підписник відкрив лист, йому відправиться наступне 
повідомлення. Якщо не відкрив, то через зазначений час йому відправиться веб­
пуш-повідомлення. 
,Ji-. ~~~•втораrо,,пка2017- 1G-31 о°"""""""'.......,."' ~ Х 
І rо,о,н, 
,., 
о 
~ --- ~ ., ,; , 
------,... • ••• -.... J . f 
' a♦--Оt  - -- -·- ·І , 
j 
Оr"ена 
J 
Рисунок 3.4- Створення елементу «Умова» 
Дія 
Цей елемент вчиняє дії з користувачами: 
42 
ЧДТУ 22 І 821 .009 113 
перемішує 11ідписни1<ів u іншу адресну книгу; 
копно nідnисвиків з однієї адресної книги в іншу; 
видзnяє неактивних nідnисників· 
' 
замінює змінну; 
відправляє листи на ваш емейл· 
' 
відправляє вебхуки. 
Наприклад, якщо підписник не вщчинив лист, то вш буде переміщений в 
список для реактивації. 
А Новаяавтор.хСЬІЛка2017-1(}.31 г:==-п 
04 
"у -.:,,~■!І:С■ 0 0nЦІІИ3mр.ІОЬІІІІІІ ~ х 
0 ■•·4ЧМ ДЙСТВИ! 
j lwбepntAllinм 
Y,1.1;nn,no,111/.(\!10 
;-} . 
.... 
~ 
н 
а• 
-- j 
Рисунок 3.5 - Створення елементу «Дія» 
Мета 
Кінцева точка автовідправлення. Ви встановлюєте кінцеву умову ланцюжка, 
наприклад «Купити». Після досягнення мети підписнику відправляється емейл з 
вдячністю. Ви можете зупинити ланцюжок, якщо встановите параметр «Зупинити 
серію для підписника після спрацьовування мети». 
43 
ЧДТУ 22 182 1.009 ПЗ 
,,.,,рщ;.; І • 
щл~ 
:- ... , І,А,,~"АJІ",'І j 
Н11uкмtцtм.: 
t\"tt І 
І Гo,1nu ~1>1 
Оn-ковмt" сtрюо NІJІ noNt""мa 
І nосм ,р,е......,..,. цш • 
о 
І 
,. 
Рисунок З .б - Створення елементу «Мета» 
3.4 Функції та можливості платформи SendPulse 
Різні маркетингові канали 
Комбінуйте email розсилки з іншими каналами, такими як SMS, web push, 
Viber і чат-бот повідомлення в месенджерах або використовуйте кожен канал 
окремо. 
Форми підписки 
Додавайте в форму підписки потрібну кількість полів, тексту, зображення, 
:кнопку і розміщуйте її на своєму сайті. 
Конструктор шаблонів 
Створюйте респонсивні шаблони листів без знання inline стилів і НТМL­
тегів. У конструкторі можна додати заголовки, зображення, відеоролики та інші 
елементи. 
Безкоштовні шаблони 
Створюйте листи на базі безкоштовних шаблонів. У галереї вони згруповані 
за темами: для ресторанів, інтернет-магазинів, до свят і інших подій. 
Сегментація 
44 
JII 
ЧДТУ 221821.009 ПЗ 
Надсилайте розсилки окремо для чоловіків і жінок, а також підбирайте 
релевантний контент шд інтереси і переваги підписників з допомогою 
сеrментації. 
Персоналізація 
Додавайте в тему і тіло листа інформацію про підписника, наприклад ім'я, 
прізвище, місто проживання або посаду, з допомогою персоналізації. 
Тригерні розсилки 
Надсилайте ланцюжок повідомлень і автоматичні листи. Наприклад, лист 
про додавання до кошику, підтвердження оплати, привітання до дня народження. 
А І В тестування 
Визначайте найбільш ефективний варіант відправлення шляхом порівняння 
різних версій одного листа. 
Відправка по непрочитаних 
Перевідправляйте повідомлення підписникам з новою темою і в інший час і 
отримуйте більше відкривання листів і переходів по посиланнях в ньому. 
Статистичний звіт 
Аналізуйте відкриваємість і клікабельність, відписки, помилки доставки та 
скарги на спам. 
Інтеграції 
Користуйтеся набором інтеграцій, щоб спростити відправку повідомлень з 
вашого проекту в CMS або СRМ. 
Налаштування SPF і DKIM 
Аутентифікуйте адрес відправника за допомогою DКІМ, SPF 1 DМАRК 
записів - вони допоможуть знизити ризик потрапляння в спам. 
Відкритий АРІ 
Інтегруйте можливості сервісу з вашим особистим проектом. SendPulse 
надає детальну документацію для розробників. 
Мобільний додаток 
Плануйте і відправляйте повідомлення, керуйте адресними книгами, 
переглядайте статистику за допомогою мобільного додатку. 
45 
ЧДТУ 22 1821.009 ПЗ 
Технічна підтримка 24/7 
Виріm йте питання оперативно. Менеджери техпідтримки відповідають 
у~q,аїнською,росі:йською та англійською мовами по електронній пошті, телефону і 
вЧЗ1'1 · 
1\1.ова робочої панелі 
З Seпd.Pulse вам не доведеться довго розбиратися з функціоналом 1 
переводити терміни, адже робоча панель доступна українською мовою. 
Доступні ціни + безкоштовний тариф 
Надсилайте необмежену кількість листів, якщо у вашій базі до 500 
підпИсників. Якщо адрес в базі більше, переходите на платне використання. 
3.5 Реалізація проекту 
Хід роботи: 
1 Створюємо каркас чат-бота використовуючи функціонал чат-бота 
«BotF ather» 
2 Приєднуємо чат-бота до сервісу «SendPulse» 
З Створюємо серії повідомлень для чат-бота «QA_project» 
4 Виглад та перевірка роботи чат-бота «QA_ project» 
1 Створюємо каркас чат-бота використовуючи функціонал чат-бота 
«ВotFather» 
Рисунок 3.7 - Виглад профілю чат-бота «BotFather» 
46 
18 І .ОО 11· 
П чатн д1t 1 г 1 1 1 tl"at11 '1 > 11 1 ім 1ш·гиска ·мо / start і обира мо 
11 ' \ t t. 
Рисунок З .8 - Вікно вибору команд 
Даємо своєму боту ім'я (воно буде відображатися в діалоговому списку) і 
юзернейм (унікальне ім'я, яке закінчується на «bot» і пишеться через @) 
Рисунок 3.9 - Створення ім'я і username для чат-бота 
Після присвоєння ім' я і username для чат-бота ми бачимо повідомлення про 
те що чат-бот успішно створений 
47 
ЧДТУ 22 І 82 1.009 1 ІЗ 
2 Приєднуємо ч~,1'-бота до ссрнісу «Sc11dP1.1Jse» 
Для роботи в сервісі «SendPulse» необхідно бути зареєстрованим (ми 
р<>бнмо ц швидко з допомогою Google аккаунту ) 
1J.t HOTEL 
- - CROUP 
Аа 
lf ··J І 
ІВ І 
G 
• --·1 
C:J 
r-..-•. 1,·. ..... 
До6рмйденw 
Гі>1 Na-.e иvт-, дрt.адіМ. • rопс.нt-М ~р • ,от, 
Рисунок З .1 О - Швидка реєстрація в сервісі «SendPulse» 
Потім обираємо як ми будемо будемо використовувати серв1с, а саме 
обираємо пункт «Месенджери» 
Ласкаво просимо до SendPulse! 
Щоб нам було простіше надати вам персональнии сервіс і підтримку, ми б хотіn" дізнатися трохи 
61льwе інфор~,аціі про вас. 
Як ви ллануєте використовувати наш сервіс? 
о о 
LJ 
V 
Тран1акuІинІ листи Web Pu,h ло1ІдоИ11tННR 
В,дnрамt-н~R ,aicтttt ~ерс?-3 SMTP Ньпашrуь.\"111)1 Ор..,у.Jерм~1>: 
Wl\~ d6uAPI noi:щ.:i .. ,r.tмь дnя в~шоrо со~їу' 
о 
SMS ро,сиnки Месонджери 
f,ta<')!Jд SMS. r,ox"1лna у 6tлt.W 1111='1 Чаr-6Qн, І ро3с11.л,с.и в non)·n~pn1 
2r;c ".pai,, c.err, HiC1t.Hд,.".ep~t 
Рисунок З .11 - Вибір використання сервісу «SendPulse» 
48 
ЧДТУ 221821.009 П 
1 rтотім обираємо пункт «Чат-боти» 
Q Push Ф SMTP Q Чат-боти 
0 В,1111рао"1" SMS Ф· 
Що ви збираєтеся використовувати біпьше? l 
10 r 
t 
о fr 
~ 
Сrз~о,'ть І налз\L І)'іІте чат -оот.; д"я Facroool(. те:~gггm 
І \'І: 
Додайте отримувачів 
С~ріть сwю nepwy адресну кн11гу. В неї 8'1 можєтt сr.оnІюваrи ,окта,ти nІдnисників еручку. ~а3анrаw.иш у ЕхсеІ 
фа11ЛІ або скор1ю.;nкя АРІ . Д,зна111ся бir..w~ ~ 
8 СТІОf)І<тм_~кни,у L .. 
Рисунок 3.12 - Вибір пункту «Чат-боти» 
Далі ми бачимо вікно в якому знаходиться кнопка «Створити чат-бота» на 
яку ми натискаємо 
f, 
EJ Fo,c>111,., І). Push <І> SМТР 0 Чат-боти 0 П,реаІрКІ rma!I 0 f":;ч>JlkT.4 $;°..\$, Ф· 
1-
~ 
Дякуємо! ~ 
Пер,;fщІ~ у рощІЛ •·І~т -Gии, І наnаwrоауйтє ааrоsІдnоаLЗІ та автоащюн,.11 nредажJз s Tel~m. Fa,eЬook t, 
або vк. 
°" ~ 
~ j 
~- -1 
> 
Дсдайте отр11щоач10 _ 
(І~рІІь (~) llfµuty a'-P{(rtї iv,:Hy ~ :,ёІ !,1 НО.-..f!С' (,і\)'1;,ОЗОr.1 r.0 ,tB:if.1 ПW'!IІ(rJІtJ! ! ;)}'11'!\ Sa3)1"111iJtJtfИ І/ t .((1::1 
~.tЙ.'11 а6о С"-СРИСІаnш~ АіІ . Ц/1.-tJІ.Юt Ol f,:L:.t ~ 
Рисунок З .13 - Кнопка «Створити чат-бота» 
49 
ЧДТУ 221821.009 ПЗ 
Після цього в нас з' являє1·ьсо"  31•1<1-.10 • 1 'rут ми 
дш1 шдю1ючення каналш 
sаruскаємо на кнопку «Підключити канали» 
Підключити канапи 
Чаr-боти FaceЬook Messenger, 
ВКонrакrе і Telegram в 
SendPulse 
nu"""'1ro,rop1, 
ВКІJНт;'<!е,б)б;, 
(11;)j)m1!)?00.'0( 
і.=..3, 
~-=-··\ :i., ..: .;.,: 
'-с.= 
0 
Рисунок З .14 - Кнопка «Підключити канали» 
Далі ми бачимо в1кно в якому ми повинні підключити чат-бота якого ми 
створили в месенджері Telegram, для цього натискаємо на кнопку «Додати бота>> 
ЕІ Ро1с11пки Q. Pu~h </> S'-!ТР 0 Чат-бати е Пере■ірка em1il С] бідарааm, s;.15 ф. 
Підключити канали 
о 
Рисунок 3.15 - Кнопка «Додати бота» 
50 
І) ~Т 2 18 2 І .ОО 11·3 
Потім 'явш~ гь я н л' «1 n діть кmоч достуну (токсн бота)», цей ключ ми 
r.fO:>К, є { знайти в кінці діа.J1 г ч.ат- т м «BotPather» 
О Fкcoook Mшengєr 
Ylh'\111 чсрс1 Fta:Ьook 
◄ Te!egram 
11( vк 
І+ІІНФІ 
U.a1пiiwr.l'J)'ll11( c:.nce1,1l oU'I nс,тр.-(:>tІ пр.а•(- 11•~s.'\'t'11q Q',i,"Hf-:}fM-• .~нІ а...- ftTT~!iU 
С:щ ,tli4 ,t,.11!'/СІЦ,,мfа 
Рисунок 3.16 -Поле «Введіть ключ доступу (токен бота)» 
Use thls token to access the НТТР АРІ: 
1( 91994244 :А,:..Є у 3,..<юf t,• 'l ~u,e5~b: ОО Т ;:11 с Х,;.., )t;,. Р З Н.-: 
Рисунок 3.17 - Токен чат-бота «QA_projects_bot» 
51 
ЧДТУ 22 J 821.009 ПЗ 
Після того як ми скоnіюnали ТОJ<ен до поля «Введіть ключ доступу (токен 
бота)», натискаємо кнопку «Підt<пючити» 
Підключити канали 
'f Telcgram 
Ви.u1'\ ...,,.., lJIX'rylrf (т00<,м бота) 
!б91~41~4#Ey)1 6<!ro~IIІ.luqStb,(l{JTz,r,o}(Q)),)<f'J!!,t 
Рисунок З .18- Кнопка «Підключити» 
З'являється в1кно для переходу до чат-боту, так як месенджер Telegram 
встановлений на пк, ми відкриваємо його в самому месенджері, а не в браузері 
EJ PoJotn , Oщ>t:nt. npt1JIO)К~H..,,t ·unt;TtJtgr,m LlrК1 
C, i r htll:1"/ /k~Stnepc.iw:.:or., tof,tpJr1U cr11p,<~ )!О np,t.'.Oжtl'f.'f. 
Підкл 
о FіГ 
,,,.я  L!7'i1J tи &,•Jt1e 
І 
Що\ 
А~ 61д,сри;1;t І!t6·Іt;)(ІІО 
СІ&І 
ідЧІ'І 
,.с VK 
&і 
Рисунок 3 .19 - Перехід до чат-боту в месенджері Telegram 
52 
lДТ І .ОО 11 
далі ми п р / дн:м: 
ачнм ні1 н )\і ю, · 11, пю~ ·о чат-бота в мссснджері 
ф нкц1 нал 
6 
Рисунок З .20 - Чат-бот без функціоналу 
У браузері тим часом ми перейшли на вкладку для створення і редагування 
серії повідомлень де нам висвітлюються підказки, які допоможуть зрозуміти 
функціонал сервісу «SendPulse» 
Н1111wтуйтс c, oro ~•т•6ото 
ЗJ~••.нrть :,,,tct (ер:А Я ~амоечув3ННRN 
СІАНдіртма е,;wюць боtа ctpof nlerя 
П~ТІІ&І,1ТU'(Кl' 
_..,,.. -
8 КШ~ІІДА о о о 
Стандартна s1дnов1Дь ....... 
• C•~'(I.N"t~hl(; > f\111,1,1(11,f ,.,.~ 
tA-J-.")14.-1.'4Д!І,Al'IU'•""U 
• PfAІf)UT,i tepilo 
ВІдn""" І<д боІІ • 
Рисунок 3 .21 . _ Вкладка для створення і редагування серії повідомл нь 
53 
lДТ 2 І 8 1.00 11 
3 творю мо серії 11оnідомJа tlh ДJщ шт-бота «QЛ_projecЬ> 
Ід тв ритн п рщ рі1 11овідом . 
лень нам потр1бно перейти в пункт 
,р ж и1 рії» і алі нати н ти на кнох 
11<У « твори серію» 
1 Project 
' ' ·r 1 rt о 
Ау.а..нтор1111 Сttтж.1'Н8'а 
n1(./1Япtдnн('К,,f 
З 2 
Wekome-cep1я 
с~,» ~•;lPflrtt\a(mn.,..,."',;.)U 
36с:ремt.с.нІ c.cp(r ] 
Рисунок З .22 - Пункт «Збережені серії» 
8 РозСІІЛки Q Push ф SMTP Q Чат-бот~ 0 ПеревІркнmаИ 
1 Project 
' 
~ Чати бота ~ Налащуаання бота 
Збережені серії 
Рисунок З .23 - Кнопка «Створити серію» 
Потім нам потрібно перейменувати назву серії і почати створювати серію 
no в·щ омлень ( як користувати блоками платформи описано в темі №6 «Блоки 
nлатформи SendPulse» ) 
54 
Ч)1Т 1R2 1 .{)()9JП 
Рисунок 3-24 - Назва серії повідомлень 
flaID qат-бот буде мати дві серії повідомлень. Перша серія буде створена для 
ІJІоб корис'І)'ВаЧ міг дізнатися свій рівень знань в сфері QA. Друга серія 
,.,;-о. 
-:,~;rтомлень буде направлена на те, щоб користувач міг створити свій власний 
J(l)Jµ 
'11ст для перевірки ПО. Далі ми починаємо створювати серії. 
~/--J!J 
4 вигляд та перевірка роботи чат-бота 
Рисунок 3.25. - Вигляд чат-бота в спільному вікні чатів 
Рисунок З .26 - Вікно діалогу чат-бота 
55 
ЧДТ 221821.009 ПЗ 
Рисунок З .27 - Початок серії повідомлень «Тест QA» 
Рисунок 3.28 - Кінець серії повідомлень «Тест QA» 
Рисунок З .29 - Початок серії повідомлень «Створити чек-лі ст» 
56 
ЧДТУ 221821.009 ПЗ 
Рисунок З.ЗО - Продовження серії повідомлень «Створити чек-ліст» 
Рисунок З.З 1 - Кінець серії повідомлень «Створити чек-ліст» 
57 
ЧДТУ 221821.009 ПЗ 
f О И І 
:/ 
І 
І 
І 
11 
Рисунок 3.32 - Сформований чек-ліст 
3.6 Тестування системи 
З.5.1 Види тестування програмного забезпечення 
Тестування програмного забезпечення ( англ. Software Testing) - це процес 
технічного дослідження, призначений для виявлення інформації про якість 
продукту відносно контексту, в якому він має використовуватись. Техніка 
тестування також включає як процес пошуку помилок або інших дефектів, так і 
випробування програмних складових з метою оцінки. Може оцінюватись: 
- . . . 
вщповщюсть вимогам, якими керувалися проектувальники та 
розробники; 
- правильна відповідь для усіх можливих вхідних даних; 
- виконання функцій за прийнятний час; 
- практичність; 
- сумісність з програмним забезпеченням та операційними системами; 
- відповідність задачам замовника. 
Оскільки число можливих тестів навіть для нескладних програмних 
58 
ЧДТУ 22182 l .009 113 
nоненr практично нескінченне том 
~о~• . . ' У стратегія 
00ести вс1 можлив1 тести тестування полягає в тому, 
06 nP 3 Урахуванням 
111 r nрограмне забезпеченн наявного часу та ресурсів. Як 
,з)'лr,rа я тестується стан а 
І иявлення багів (поми . д ртним виконанням програми 
s ~(е1'0ІО 13 ЛОІ< або ~нwих дефектів). 
По-
~ - .,. .р у. ...... 
'- (ІРКСОООІ ) 
.._ 
,vn, -
ет-.осn. 
Нerarмa,1ot 
Рисунок 3.ЗЗ - Види тестування програмного забезпечення 
Тестування ПЗ може надавати об'єктивну, незалежну інформацію про якість 
ПЗ, ризики вщмови, як для користувачів так і для замовників.[6] Процес 
тестування починається з першого етапу розробки програмного продукту, а 
виконуються тести, як тільки створено виконуваний код (навіть частково). 
Існують різні види тестування, які розділяються за певними ознаками. Деякі з них 
наведені на рисунку 3.33 
Функціональне тестування - один з основних видів незалежного тестування 
. . 
програмного забезпечення, спрямований на перев1рку реал1зованост1 
функціональних вимог, тобто при його проведенні визначається, чи вирішує 
розроблене ПЗ завдання, заради яких воно було створено, чи задовольняє воно 
потреби замовника або користувача. 
Основні критерії функціонального тестування: 
- функціональна придатність продукту; 
- точність виконання поставлених завдань; 
- відповідність стандартам розробки [7] · 
59 
Ч)tТ 22 ІR2 1 .ОО9ІП 
ФУ111,ніональ1 11 тести 6u•1у~от,)сн ,щ (І) . 
. У 1І ІОщ1х та особливостнх а також на 
!'l(.,ч)Jtii' 'J 11111шмн сн те 1амн і мо ' 
.•, ' жут1> бу·1·и . . . 
11 , 11рсдстаr~лс 111 на вс1х р1внях 
, · ~·уІНtння : ком понснтном або 
1 L • • мол.ут)~юму (Co111po11cnt/Unit testing), 
, . ,ані~1ном 1 
( l11tcgгat1011 testiпg) сис· · , 
j 1 1 Р,: 1 І· . ' 1 см~юму (SysLc111 Lesting) і приймальному 
яосс tcstшg). 
(.'\сСС\) 1 ' 
мо.пулм1с тестування (ювіт-тест , 
ув,н-шя) - тестуєп>ся мінімалr>І-Ю можливий 
тест вання компонеm, наприклад V 
~.,я , OІ <ремии rmac або функція . Часто модульне 
,-естування зл.ійснюється розробниками ПЗ. 
1нтеграційне тестування _ . 
тестуються 1нтерфейси м1ж компонентами, 
...;nснсrемами. За наявності резерву часу на •v ••• 
11i;,. даюи стадн тестування ведеться 
. ераuійНО, з поступовим підключенням наст . 
1т УПНИХ шдсистем . 
рівні інтеграційного тестування: 
компонентний Інтеграційний ршень (Component Integration testing). 
Перевіряється взаємодія між компонентами системи після проведеІО-ІЯ 
компонентного тестування; 
- системний інтеграційний рівень (System Integration Testing). Перевіряється 
взаємодія між різними системами після проведення системного тестування. 
Підходи до інтеграційного тестування: 
- знизу вгору (Bottom Up lntegratioп). Усі низькорівневі модулі, процедури або 
функції збираються воєдино і потім тестуються. Після чого збирається 
наступний рівень модулів для проведення інтеграційного тестування. Даний 
шдхІД вважається корисним, якщо вс1 або практично вс1 моду ш 
розроблюваного рівня готові. Також даний ПІДХІД допомагає визначити за 
результатами тестування рівень готовності додатків ; 
- зверху вниз (Тор Down Integratioп). У першу чергу тестуються компоненти 
верхнього рівня ієрархії об'єктів з використанням заглушок зам1сть 
компонентів більш низького рівня ; 
- великий вибух ("Big Bang'1 Integration ). У сі або пра~пично vci розроблені 
модулі збираються разом у вигляді закінченої системи або її основної 
частини, і потім проводиться інтеграційне тестування . Такий пщхщ дуже 
60 
Ч)~ТУ 22 1821.009 І І З 
. )011н111 для збереження час\, , 
, 01 . J • 11 ро, с, нюр,0  тест І(СЙси та їх r,с1ую,тати 
з,11111сан1 не в1рно, то са ,1 проr\сс і11тсг1J ... 
аrн 1 !tужс усклаю,ип,ся що стане 
11срс11оною для. командн тсстува111щ ' 
при )ЮСШ'ІІСНІІі основної мети 
інтеграційного тестування . 
i'11 ·1·cмt1c тестування. - тестується ІНтеrрова11а 
\. система на її відповідність 
в,~1оrам. 
Альфа-тестування імітац1· n р 
п. еальної роботи з системою штатними 
бнтrками, або реальна робота з 
розР0 V • системою потенційними користувачами І 
і1'ОМ . Наичаспше альфа-тестува . V ••• 
3амовІ-fІ ння проводиться на раниш стадн розробки 
'\.'Т)' ' але у д.е яких випадках може за rтроД) " стосовуватися для закінченого продукту 
в якості внутр~шнього приймального тестування. Іноді альфа-тестування 
81rконується mд вщлаrоджувачем або з використанням оточення, яке допомагає 
аrвИдКО виявляти знайдені помилки. Виявлені помилки можуть бути передані 
тесrувальникам для додаткового дослідження в оточенні, подібному тому, в 
якому буде використовуватися програма. 
Бета-тестування - У деяких випадках виконується поширення версії з 
обмежеІО-ІЯМИ (за функціональністю або часом роботи) для певної групи осіб, з 
тим щоб переконатися, що продукт містить достатньо мало помилок. Іноді бета­
тестуваІffіЯ виконується для того, щоб отримати зворотній зв'язок про продукт від 
його майбутніх користувачів. 
Часто для вщкритого ПЗ стад1я альфа-тестування характеризує 
функціональне наповнення коду, а бета-тестування - стадію виправлення 
помилок. При цьому, як правило, на кожному етапі розробки проміжні результати 
роботи достуm-1і кінцевим користувачам . 
Приймальне тестування (Ассерtалсе Testing) - формальний процес 
тестування, який перевіряє відповідність системи вимогам і проводиться з метою: 
визначення чи задовольняє система приймал,>ним критеріям ; винесення рішення 
замовником або іншою уповноваженою особою приймається додаток чи ні . 
Тестування безпеки (Security and Access Control Testing) - стратегія 
тестування, що використовусrься для перевір1<и безпе1<и системи, а також для 
61 
ЧДТУ 22 І 82 1.009 І ІЗ г 
·. У µн311ків, пов'язаних із забсз t 
:111:l.'113. . . пе ~ енням ці1 1іс11оrо пщходу /(О захисту 
. нt. атак хю<ерш, n1русів, несан • . . ,, 
11111)1 ·р,1~ І<цю,юоаноrо доступу ;ю 1<онф1денщиних 
. тестування безпеки може uиi<oi- . . , . 
1і11111~ - . ~у ва r ися ЯІ< автоматизовано так I в руLІну, 
очJ-1 rrерев1рку як позитивних т • 
N~Jf10чar ' Ш< 1 негативних тестових випадків. 
тестування навантаження (PerГoпnance алd Load Testing) - визначення 
бованості додатків під наванта>1 . 
,18сшrа <енням , при ЦІ>Ому відбувається : вим1р часу 
· тя вибраних операцій за певн · . V 
6111-oJ-JaJ их Інтенсивностей виконання цих операщи; 
иня кількості користувач· 
6113J-Іачеп ІВ, що одночасно працюють з додатком; 
внз»ач ення меж прийнятної продук тивност~•  при зб.ш ьшеюп.  навантаження ( при 
. ,neIOJi інтенсивності ВИІ<онаІО-Ія цих · v) • · 
361JТЬІР Oп ерацш ; досшдження продуктивност1 
rтри високих, граничних, стресових навантаженнях. 
Стресове тестування (Stress Testing) дозволяє перевірити наскільки додаток 
і система в цілому працездатні в умовах стресу і також оціІ-Шти здатність системи 
до регенерації, тобто до повернення до нормального стану після пришmення 
впливу стресу. Стресом У даному контексті може бути підвищення інтенсивності 
виконаІО-ІЯ операцій до дуже високих значень або аварійна зміна конфігурації 
сервера . Також одним із завдань при стресовому тестуванні може бути оцінка 
деградації продуктивності, таким чином цілі стресового тестування можуть 
. . 
перетинатися з цшями тестування продуктивносп. 
Тестування стабільності або надійності (Stability / Reliability Testing) -
перевірка працездатності програми при тривалому (багатогодинному) тестуванні з 
середнім рівнем навантаження. Час виконання операцій може грати в даному виді 
тестування другорядну роль. При цьому на перше місце виходить відсутність 
витоків пам'яті, перезапусків серверів під навантаженням й інші аспекти, які 
впливають саме на стабільність роботи; 
Об'ємне тестуваЮІя (Volume Testing) - отримання оцшки продуктивності 
при збільшенні обсягів даних у базі даних програми, при цьому відбувається : 
вимір часу виконання вибраних операцій за певних інтенсивностей виконаю-ш цих 
операцій; може проводитися визначення r<іль1<ості 1<ористувачів, що одночасно 
працюють з додатком . 
G2 
Ч,!\ТУ 22 1821.009 І ІЗ 
·~руч ност і t<ористувш ІІ ІЛ 
(Usability Tcsting) - це метол 
, t-1НЯ СJЧ)ЯМОDЗНИЙ на встаноu 
1х:.:1•у11•1 ' . • ' лснt1я сту11сш1 зруч11ості ви1<ористання, 
, ості, зрозум1лосп та nриnабли .. · 
11і1н*;Н . ІЮсJ I nпя J<ористувачін розроблюваного 
'"1.у в контекст~ заданих умоn. 
,q,оД) 
тестування зручності t<ористуnання 
дає ОЦІНКУ РІВНЯ зруtІНОСТІ 
·ор"'стання програми за наступними пунктам . 
nJІI- . И. 
- продуктивюсть, ефективність (efficieпcy) - скільки часу і кроків 
надобиться користувачеві дл 
з я завершення основних завдань програми, 
наприклад, розміщення новини, реєстрації, покупки тощо (менше - краще); 
- правильюсть (accuracy) - скільки помилок зробив користувач під час 
роботи з додатком (менше - краще); 
- активізація в пам'яті (recall) - як багато користувач пам'ятає про 
роботу програми після припинення роботи з нею на тривалий період часу 
(повторне виконання операцій після перерви має проходити швидше ніж у 
нового користувача); 
- емоційна реакція (emotioпal response) - як користувач почувається 
після завершення завдання: розгублений, знаходиться у стані стресу? Чи 
порекомендує користувач систему своїм друзям (позитивна реакція -
краще)? 
Тестування на вщмову вщновлення (Failover and Recovery Testing) 
перевіряє тестований продукт з точки зору здатності протистояти й усшшно 
відновлюватися після можливих збоїв, що виникли у зв'язку з помилками 
програмного забезпечення, відмовами обладнання або проблемами зв'язку 
(наприклад, відмова мережі) . Метою даного виду тестування є перевірка систем 
вщновлення (або дублюючих основний фу,шціонал систем), які, у разі 
виникнення збоїв, забезпечать збереження і цілісність даних тестованого 
продукту. 
Конфігураційне тестування (Coвfiguratioп Testiпg) - ще один вид 
традиційного тестування проду1пивності . У цьому випадку замість того, щоб 
тестувати продуктивність системи з точки зору нанантаження, тестується ефект 
,,.. .., 
0.J 
ЧЛТУ 22 182 1.009 І ІЗ 
. на І ,род ктиnність ·~м 1· J 11 У l(Oll(j)i 1,  ... 
11 11111»~ УРаtщ . І Іриюrw.1.ом такого тестунання 
1 ·ь бути експерименти з різними . 
1),,_~,, ме~ оrщми бала11суна~шя навантаження. 
'' . ~)граній не тестування та~<ож МО) б 
~011Ф11 . кс ути поєднане з нана11тажунальним, 
,,, або тестуванням стаб~льності . 
t., p1.: . . 
тестування локал 1защї (Localiz t' Т . 
а юn estшg) - це процес тестування 
... пізованої версіі' програмного продукту або cav 
101'tL'' иту. 
· локалізація програмного забез 
печення - процес адаптації до культурних 
,zпостей тієї чи іншої країни· пер . . 
0со6Яr•" · еклад документацй, елеменпв призначеного 
,1,1я кор истувача інтер
11
ч> ейсу допом~ж· них матер~· ' аш·в  з одн1•є ї мови на 1· ншу. 
Процес локалізації тестування може вюпочати в себе: 
_ визначення та вивчення списку підтримуваних мов; 
- перевірка правильності перекладу згідно з тематикою даного сайту або 
програми; 
- перевірка правильності перекладу елементів інтерфейсу користувача; 
- перевірка правильності перекладу системних повідомлень і помилок; 
- перевірка перекладу розділу «Допомога», супровідної документації [8]. 
Тестування графічного інтерфейсу користувача (UI Testiнg) - це тестування, 
яке передбачає перевірку відповідності додатка вимогам до графічного 
інтерфейсу, чи професійно воно виглядає, чи виконано воно в єдиному стилі. 
До тестування графічного інтерфейсу користувача відносяться: 
- тестування на відповідність стандартам графічних інтерфейсів; 
- тестування з різними дозволами екрану; 
- тестування в обмежених умовах, напрюшад, в умова,х браку пам'яті ; 
- сумісність з різними Інтернет-браузерами [9]. 
Після проведення необхідних змін, таких як виправлення бага, програмне 
забезпечення має бути перетестоване для підтвердження того факту, що проблему 
було дійсно вирішено. Нижче перераховані види тестування, які необхідно 
проводити після установки програмного забезпечею-ш, для шдтвердження 
працездатності програми або правильності здійсненого виправлення дефекту. 
64 
... 
ЧЛ І У 22 1821 009 І ІЗ 
лн tовс тсс1 вання ( шоkс т cs tш' g)  . По ня 1тя димове гестування пішло '3 
і,Ф~н~, рноrо ссрсдовшца. l Іри ввсд сшн·  8 скснлуатацію нового "заліза" вважалося, 
t1 1.~ , ст вання пройшло вдало , я •<що з установки не ш.ш ов дим. В обласл ж 
111
rccr_ вання програмного забезпечення, вово спрямоване на поверхневу перевірку 
-всі'- ,1:одулів програми на предмет працездатності та наявність швидко 
встаtJовлювани критични і блокуючих дефектів. За результатами димового 
тест) вання робиться висновок про те, приймається чи ні встановлена версія 
програмного забезпечення на тестування, експлуатацію або на постачання 
3амовJ-ПіКУ-
Регресійне тестування (Regression Testing) _ вид тестування спрямований на 
перевірку зм:ін, зроблених У додатку або навколишньому середовищі (лагодження 
дефекту, злиття коду, міграція на іншу операційну систему, базу даних, веб­
сервер або сервер додатка), для підтвердження того факту, що існуюча раніше 
функціональність працює як і раніше. 
У термінології професіоналів тестування фрази "тестування білого ящика" і 
"тестування чорного ящика" відносяться до того, чи має розробник тестів доступ 
до вихідного коду ПЗ, що тестується, або ж тестування виконується через 
інтерфейс користувача або прикладний програмний інтерфейс, наданий модулем, 
що тестусться . 
Під час тестування білого ящика, розробник тесту має доступ до вихідного 
коду програм і може писати код, який пов'язаний з бібліотеками ПЗ, що 
тестується. Це типово для юніт-тестування (unit testing), при якому тестуються 
тільки окремі частини системи. Воно забезпечує те, що компоненти конструкції -
працездатні й стійкі до певного ступеня. Під час тестування білого ящика 
використовуються метрики покриття коду. 
При тестуванні чорного ящика тестер має доступ до ПЗ тільки через ті ж 
інтерфейси, що й замовник або користувач, або через зовнішні інтерфейси, що 
дозво.1яють іншому комп'ютеру або іншому процесу підключитися до системи 
д..'Ія тестування. Наприклад, модуль, що тестується, може віртуально натискати 
к.1авіші або кнопки миші за допомогою механізму взаємодії процесів, із 
65 
ЧЛТУ 22 1821.009 ПЗ 
упевненістю в том , що ncc ЙJJ.C правильно, і ці 1юдії викли1<а1оть той же відгук, 
1но й рсал~~ні натискання клавіш і 1шопо1, миші. Я1< 11р,шило, тестування чорного 
яо1нка ведеться 3 використанням специфікацій чи інших до1<ументів, що описують 
81,rмоrи до системи [ 1О ] . 
Позитивні тести мають на меті перевірку здатністі системи працювати з 
sttКонанням тих функцій, для яких вона розроблялася . Як правило, перед 
початком тестування створюються тестові сценарії, які передбачають коректне 
функціонування системи. 
Негативне тестування веб-додатків передбачає відпрацювання тих 
сuенаріїв, яю можуть статися з системою, якщо, скаж1мо, користувач 
nриnуститься помилки при введенні даних. В даному випадку, система повинна 
бути готова «відповісти» на запит користувача повідомленням про помилку. Саме 
для таких цілей необхідно негативне тестуваЮІя. Цікаво, що негативні тести 
створюється з урахуванням людського фактора - тестувальник передбачає 
найбільш частотні помилкові запити, які можуть вводити користувача при роботі 
з системою (11 ]. 
3.5.1 Вибір принципу тестування програмного забезпечення 
Проаналізувавши існуючі методи для тестування, було обрано методи 
функuіонального тестування, випадкове тестування, структурне тестування. Ці 
методи широко відомі і детально описані в літературі. В традиційній класифікації 
їх відносять до методів "чорного ящика" . 
Розроблено тести для програмного забезпечення: 
перевірка зчитування параметрів системою; 
перев1рка обробки виняткової ситуації при неправильно 
введених даних: 
помилка в логіці функціонування системи; 
коректність обраху~шів та виведення. 
Відповідно до ()бrаних методі11 тя ПfШІ-щиnів тес.тування Пf)()Грямн()r<' 
забезпечення було проведено тестування системи, я1<е представлено у виrлнді 
таблиці (rабл. 3.7). 
66 
ЧДТУ 22 1821.009 ПЗ 
Таблиця 3. 1 
J>івн і тсстущннш 
рівень тестування Призначення 
!~стування окремих елементів Перевір ~<а рез у ЛІ>ТаТІВ роботи 
окремих методів і функцій системи. 
L---fI- fferpauiйнe тестування Орієнтоване на перевірку 
зв 'язків l взаємодії компоненпв 
системи 
1---виняткові ситуації Перевірка правильносп 
• v 
обробки виняткових ситуацш, ЯКl 
можуть виникнути в процесі роботи 
системи. 
~ 
Загальне тестування системи Перевірка правильносп 
функціонування системи, пошук l 
виявлення дефектів у системи 1 їх 
усунення . 
3.6 Вибір техні111-1их засобів 
Для повноцінної роботи додатка потрібно щоб комп'ютер клієнта володів 
Процесор із тактовою частотою не менше 1 ГГц 
2 Оперативна пам'ять не менше 500 Мб. 
3 R c-r:::tH()JH lf>H~ nr Winr!mл1,;: 
4 Відеокарта не менше 256 Мб 
5 Вільне місця на жорсткому диску 5 Мб 
67 
ЧЛТУ 22 1821.009 І ІЗ т 
ВИСІІОВІ(І1 
чат-боти - с часний та ефе1пиш1ий засіб, яt<ий стає дедал і більш 
рним для проведення мас~·  б ·.., б · 
11011~ -1я uта них рекламних 1сам1шн1и рендш. 
10чи ' високий показник ко,"•в е . ··· · · · · · · 
м:~.хов) рсн nщкриттш 1 переглядш повщомлень, яю 
ffРІf~одять до 1есенджерів, чат-боти є значно ефективнішим за будь-який інший 
. rрУмент реклами. 
11-ІС , 
Для користувачів буде значно простіше отримати необхідну інформацію в 
авто~1атичному режим~ за допомогою чат-бота, ніж намагатися отримати ту ж 
саМУ інформацію за допомогою пошуку в інтернеті, що значно підвищує 
лояльність. 
Популярюсть месенджерів зростає з кожним днем, і зростання популярності 
даІОfХ програм прогнозується мінімум на найближчі 5-1 О років вперед. 
Існує багато задач, які повторюються, але необхідні для операцій будь-якої 
ком.панії. Бот може допомоrrи спростити ці завдання, тому що він може 
виконувати більшість, якщо не всі, з них. Вам просто потрібно налаштувати свого 
бота, щоб автоматично подбати про виконання необхідних завданнь або дати 
своїм роботам прямі інструкції, коли вам потрібно, щоб ці дії були виконані . 
Якщо ви шукаєте найбільш ефективний спосіб шдвищити загальну 
продуктивність своєї компанії, то впровадження чат-бота може допомогти вам 
організувати свій бізнес. 
Правильне і своєчасне впровадження нових технологій - це те, без чого не 
може прожити бізнес. Яюцо вчасно не задіяти корисну новинку - це обов'язково 
зроблять конкуренти. І в особі потенційних і діючих кл ієнтів саме вони будуть 
виглядати більш прогресивними. 
68 
ЧДТУ 221821.009 ПЗ 
СПИСОК ВИКОРИСТАНИХ ДїІ(ЕРЕЛ 
1 Перспективи розвитку інформаційних технологій в У1<раїні. [Електронний 
ресурс] І Режим доступу: 
http://wwwxusnauka.com/17_ AND_ 201 0/Informatica/68784.doc.htm. 
2 Єдинак В.С. Розвиток інформаційних технологій в Україні.І/Наукові 
доробки молоді - вирішенню проблем європейської інтеграції: збірник 
наукових статей.В 2 т. Т. 1- Харків: Континент, 2008.- С. 289-290. 
З Какорін М.0. Інформаційні технології як фактор інновацій у глобальній 
фінансовій системі.// Формування ринкових відносин в Україні: Збірник 
наукових праць. - №5- 2008.- С. 106-109. 
4 Пацай Б.Д. Роль інформаційних технологій в управлінні фінансовими 
ресурсами підприємств.// Фінанси України. -№ 8 -2008. -С.82-84. 
5 Шандра В.М. Застосування інформаційних технологій в забезпеченні 
технолог1чного оновлення економіки на інноваційній основі.// Актуальні 
проблеми економіки. - №10- 2007. -С.220-223. 
6 Чигасова Н.М. Місце інформаційних технологій у розвитку інформаційного 
суспільства в Україні.// Формування ринкових відносин в Україні: Збірник 
наукових праць. -№ 9 - 2007. - С. 110-113. 
7 Тестування як засіб оцінки знань та вмінь студентів. [Електронний ресурс] І 
Режим доступу: https://xreferat.com/71/5094-1-testuvannya-yak-zas-b-oc-nki­
znan-ta-vm-n-student-v .html. 
8 Онлайн-курси по веб-дизайну, розробці сайтів та виходу на фріланс 
[Електронний ресурс]/ Режим доступу: https://wayнp.in/ 
9 Онлайн-курси по UI/UX дизайну і dіgіtаl-маркетингу [Електронний ресурс] / 
Режим доступу: https://groward.pro/ 
10 Бібліотека освітніх програм від експертів в особистісному розвитку, 
здоров'я і харчування, лідерстві, фінансах і побудові відносин. 
[Електронний ресурс]/ Режим доступу : https://academy.5sfer.com/ 
11 Онлайн школа для творчих [Електронний ресурс] / Режим доступу: https://c­
r-e-o.com/ 
69 
ЧДТУ 221821.009 ПЗ 
12 Документація Codelgniteг З [Електронний ресурс] . - Режим доступу: 
http://codeignite1·З.info 
13 Документація НТМL [Електронний ресурс]. - Режим доступу: 
http://htmlbook.ru 
14 Документація css [Електронний ресурс]. Режим доступу: 
http://htmlbook.ru 
15 Документація JQuery [Електронний ресурс]. - Режим доступу: https://jquery­
docs.ru 
16 Документація РНР [Електронний ресурс]. Режим доступу: 
http://www.php.su 
17 Документація MySQL [Електронний ресурс]. - Режим доступу: 
http://www.mysql.ru/docs 
18 Документація Ajax [Електронний ресурс]. Режим доступу: 
http://api.jquery.com/jquery.ajax/ 
19 Патерни проектування [Електронний ресурс]. - Режим доступу: 
http://ru.wikipedia.org/wiki/Шaблoн_  проектирования 
20 Технологія htaccess [Електронний ресурс]. Режим доступу: 
https://httpd.apache.org/docs/2.4/howto/htaccess.html 
21 Патерн МУС [Електронний ресурс]. Режим доступу: 
https://en.wikipedia.org/wiki/Мodel-view-controller 
22 Т. А. Павловська, Програмування високого ршня, Києво-Могилян. акад. 
285с. 2005. ISBX 911-1 lS-418-4. 
23 Н. Вірт - Алгоритми і структура даних, Києво-Могилян. акад., Зббс. ISBX 
962-75S-358-0. 
70 
ДОДАТОК А 
ЗАТВЕРДЖЕНО: 
едрою ПЗАС, професор 
Первунінський С.М. 
~f--,4,\-.,,(,,1<-,+,ЬЧ,__ 
,,_2_1-" --"'-()~(_ __ 2022 р. 
РОЗРОБКА ПРОГРАМНОГО ЗАБЕЗПЕЧЕІ--П-ІЯ СИСТЕМИ ПЕРЕВІРКИ ЗНАНЬ 
ФАХІВЩВ 
Специфікація 
482. ЧДТУ 221821.001 
Листів 2 
Розробник Прудько М.С. 
Керівник Первунінський С.М . 
2022 рік 
482. чдт 221821.009
Познач ння Найменування Примітка 
48:.Чдт .221821-01 4 О l lнструкц я користувачеві 
482,Чдт .221 21-01 90 01 Гра і
фі
V,чдт .221821-01 12 О 1 чні м
Текст прогартаериі а
� м ли 
r--
г--
,--
,--
,-
,-
� 
� 
72 
розrоБК. ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ СИСТЕМИ ПЕРЕВІРКИ ЗНАНЬ 
ФАХІВЦІВ 
Текст програми 
482. ЧДТУ 221821.120 l 
Листів 7 
Пр ько t . . 
Ро1робник 
Черкаси 2022 року 
2 
т
ІХ 1.1 О І 
. ч �
4 ;
r1clude <Q LWidgct 
#i
" 
#inclt1de "Pixe1Тп111s пfo нat i
iot1.l
#iпclude "Iinagc.11" 
#includc "lmagc еотсtг , ..m ag 'i-.li" 
d
t i
сІа 1111 ageWidgc : рнЬІі, Q L gct 
Q _OBJ 
pubJi -: 
e\ idgct (1таgе i g. Р хеІТга11 
ag & tоппаt іо 11  * T
p 1·a11s fo г 111 , 
J111 111 і
Q\\ idQ І * рРагепt): 
Т Г 1)
GL\ 1/idget (рРагепt ), 111_img f ( 1
Q (i111g), 111_рТ гап s по 11 га11s оn , 
р
_ e 111 a
111 g o M пage1· (111_i111g, t l 1is) 
І 
\ 
111_geo111Ma11ageг.fitW ndow (); 
i
d i l
1 б qu i l
( n б)
connect ( 11_yTra11sfonn, S G A L ( ng n t ), I c ha e u t
tJ1 . 
(011 ra11
T s 11n
fo o n
a t ha11ge d ()) q
i )
LOT i C ; 
S
} 
,rirtual - m t 
I ageW id eg () 
makeCurrent (); 
g!DeleteTextures 1 & m_texld); 
( M
g!DeleteTextures (1, & m_tex ap); 
g!DeleteShade r (m_shade r); 
g!DeleteProgram (m_yrogram); 
r
dele te m_yT ansfoпn· 
} 
protected: 
s h
virtu la void re iz eG L (in t wi tdh, in t  eigh )t 
{ 
wi dth = qMax (wid h
t , )J · 
height = qMa x (height 1 ); 
g!Viewpor t (О О, width, height): 
O 
glMatrixMode 
(GL P R OJEC IT ); 
g!Loadldentity (); i
1 t 2 0 l1e t І 2
І . · 
gluOrtho2D (-wrid.rth 2.0 wid l1 І 2.0, -!1eig . l1 0)
І t l g
d J
m_ ew o
geom ana e p rt (wz i tl1 1ei 1
e glt); 
M ge i V i
} 
ze
virtual void initial i G L О  
{ 
o l
. 
qglC\ear lor (palette (). back ogru пd () c or )· 
o ()
g\Di аЬІе (GL _DEPTH_T EST); 
Е 
 
g\Pi ·е\ tore (G _U PACK_A Т , І); 
i L LI G М
(  
� І _
.-\ ·ti\'e ·ture G L TEXTU R E O): 
5
gIGeпTextнгes (І . & 111 tcxltJ); 482. ЧJ~ТУ J 8 1. І О 1 1 
g/Bi11dTextш-e (GL_ ТЕ.\П ІJН:· ) ! ) 
g/Тех Рага111сtегі ( 1L. Тl::ХП І /{І·~ ; 111 _1cx /ti) ; 
GL_Ll EAR); -О. (i / , l'EXтtll{ J : М І / .' Jl ,J' І i f{ . 
gITe xPaгametcii ( <1.  L _Т Є: ХТLІ /\ Е , r 
GL_LI EAR): - ) . Ct l" TE.XTt1n1: мло г: 11 ІТН . 
o:1Texlmage2D ( L_ TEXTURE )Q 
І; imo..o-et\~lidtl1 (). п, іщо o-etH- ~ І . о. GL_Luм, ЛNС'І.?. 1 6. 
- - - - ~-~ eto- 11 О 
o.GL_ L_ М А СЕ. GL_U SIGl::- ED. 
m_img.p1xels ()): _SНОІ~Т. 
g/A.cri,1eTextuгe (GL_ TEX TURE І ): 
g/Geп Textures ( І . & 111_ texMap ); 
o/ВindTexture ( G L TEXTURE 
- . - - 20 , m texMap) · 
oJTexParameten (GL TEXTURE 20 GL ' 
GL_ rE.AREST): - - ' _ TEXTURE_MfN_FILTER, 
oJТexParameteri (GL TEXTURE GL 
GL_ ТEAREST); 20 
- - ' _TEXTURE_MAG_FILTER, 
g1_тex1:71age2D (GL_TEXТURE_2D, О, GL LUMINANCE8 
2,6. 2,6. О, GL_ LUMINANCE, - ' 
GL_ UNSIGNED_ ВУТЕ, m_pTransfonn-> getMap ())· 
/oadSbaders (); ' 
glUseProgram (т_ program); 
setUniforrn Values (); 
} 
virtual void paintGL () 
f 
( 
enum ECubeComer 
{ 
CORNER_  LEFT_  ТОР, CORNER_  LEFT_  ВОТТОМ, CORNER_  RIGHT_  ВОТТОМ, 
CORNER_RIGHT_TOP, CUBE_CORNERS_COUNT, 
}; 
const GLint CUBE_CORNER_COORDS [CUBE_CORNERS_COUNT] [2] = 
{{-1 , 1} , { -1 , -1 } , {1 , -1 } , {1 , 1 }} ; 
qglClearColor (palett 
е (). background () . color ()) ; 
glClear (GL_ COLOR_ BUFFER_ BIT); 
glMatrixMode (GL MODELVIEW); 
glLoadidentity (); 
g!Scalef (m_ geomManager.getVisibJeJmage Widt/1 () І 2.0, 
m_geomManager.getVisiblelmageHeight О І 2.0, І); . 
GLdouble tx 1 = (GLdouble) m_geomManager.getRect (). Left О 
І (М img.getWidth () - 1); 
GІ.,d~uble ty l = (GLdouble) m_geomManager.getRect () . Тор О 
( 1.111g.getHeigl1t () - 1); 
76 І 
482. ЧДТУ 22 І82 1.1 201 4 
(,l д,щ\1\с tx.2 = (Gldoнblc) 111_gco111 1:111:1gcг. gctRcct (). Rig11t () 
(~1 1111g .gct\\1iLit11 () - І): 
GLd,1uhlc ty2 = (Gldouble) 111_gco111Ma11agei-.gctRcct (). Bottom О 
(М _ i111g.gctHeigl1t () - l ): 
!!1llscProgra111 (111 _pгogra111): 
~\Bcgin (GL_ Q ADS): 
;\TcxCoord2d (tx 1. tyl ): 
g\\ lertex2i, , (С BE_CORNER_COORDS [CORNER_LEFT_TOP]); 
g\ТcxCoord2d (tx 1, ty2): 
gl ertex2i" (С BE_COR 1ER_COORDS [CORNER_ LEFT_ BOTTOM]); 
g\ТexCoord2d (tx2. ty2); 
-ol\ ' ertex2iv (CUВE_COR ER_COORDS [CORNER- RIGHT- ВОТТОМ]) ; 
g\ТexCoord2d (tx2. ty1) ; 
gl e11ex2iv (CUBE_CORNER_COORDS [CORNER_RIGHT_TOP]); 
g!End (): 
private slots: 
void onTransformationChanged О 
І 
m' akeCurrent (): 
glActiveTexture (GL_TEXTUREI); 
g]Texlmage2D (GL_TEXTURE_2D, О, GL_LUMINANCE8, 256,256, О, 
GL_LUMINA СЕ. GL_ U SIG ED_BYTE, 
m_pTransform-> getMap ()); 
updateGL О; 
} 
private: 
void loadShaders () 
1 
m_shader = g!C reateShader (GL_ FRAGME Т _SHADER); 
const char * strings [І] = { 
"Uniforrn sampler2D srclmage: \ n" 
"Uniforrn sampler2D соІогМар ; \ 11" 
"Uniforrn int negative; \ n" 
"Const uint МАР _SIZE = 256; \ n" 
"Const float EPS = 5е-7 ; \ n" 
"Const uint МАХ_ COLOR _V ALUE = 65535 ; \ 11" 
"Void main (void) {\ n" 
"Float с = texture2D (src \mage, gl_Т ех oord [О] .st) . г ; \ 11" 
"Uint rc = clamp (uint (с * MAX_COLOR_ VALUE), О, \ 11" 
"MAX_COLOR_ VALUE); \ 11 " 
"lf (negative! = О) \ n" 
"Rc =~ rc; \ 11" 
" int ГО\1/ = ге / МАР _SIZE; \ 11" 
" int со\ = ге% МАР S IZE; \ n" 
77 
..... 
r 
482 5 
· ЧДТУ 22 1821.1201 
"\'сс2 ро. == vec2 (float (со\) / МАР SIZE \ 11 
- • 11 
"flont (ГО"'' ) 1 МАР _SlZE)): \ 11 11 
"G1 FragColoг = tехtнге20 (соlогМа,) pos)· \ 
_ t , , 11 11 
" } \ І " 
}: 
g!ShadeгSouгce (111_sl1ader, 1, striпgs, NULL); 
aJCompileSl1ader (111_sl1adeг); 
::, 
тnyrogгa111 = glCгcatcPгogra111 (); 
g1Attac11Sl1adeг (111_progгa111 , 111_sl1ader); 
gІLinkProgгa111 (111_pгogra111) ; 
} 
,roid setUnifon11Values О 
{ 
glUnifonn І і (glGetU11ifonnLocation (111 _progra111, " sгclmage11), О); 
g1Unifom1 І і (g1GetUпifon11Location (111_progra111, "colorMap"), І ); 
glUnifom1 І і (glGetU11ifon11Location (111_progra111, 11negative11
) , О); 
} 
tтnage & ш_img; 
CPixelTransformatioп * ш _pTransform; 
C lmageGeo111etryMaлager 111 _geo111Manageг; 
GLuint m_texld, 111_texMap; 
GLuint m_sl1ader; 
GLшnt т _progra111; 
}:  
#include <QString> 
#include <Qlmage> 
#include <QStringList> 
llinclude 11lmage.h" 
const QStringList IMAGE_FORMAT S = QStriпgLi st () << "jpg11 << "рпg" << "bmp" ; 
linage 1oadFromQlmage (Qlmage image) ; 
buol loadFromFile (QStгing fi lename, \111age * геs) 
{ 
QІ111age img; 
fогеасІ1 (QStriпg fonnat, IMAGE_FORMA TS) 
{ 
if (i111g..load (& іп, foпnat.toAscii 0)) 
{ 
* Res = loadF'romQlmage (img): 
rctuгn tп.1е ; 
} 
78 
r 
482· ЧДТУ 22 І 82 І . 120 І 6 
111,age ]('ladfroп1Ql111agc (Ql111agc іщаgс) 
І 
\ 
int "·idtl1 = imageжidt11 (): 
int heigl11 = image.l1eigl1t (): 
quintlб ~ buf = ne\\: quiпt16 [\vidt11 * Jieigl1t]: 
tor (int ~ = О: ~ <11e1gl1t: +- у) 
І 
\ 
for tint х = О: х <width: ++ х) 
І 
) 
ьuf (у* \\i dth """ х] = qGray (image.pixel (х, у))* 256; 
} 
return lmage (~·idth. height, buf): 
} 
void sa\1eT0File (const lmage & img, QString filename, QString fonnat) 
{ 
Qlmage res (img.getWidth (). img.getHeight (), Qlmage :: Fomшt_RGB32); 
for (int у = О: у <img.getHeight (); ++ у) 
{ 
for (int х = О; х <img.getWidth (); ++ х) 
t 
quint І б і = img.getPixel (х, у) / 256; 
res.setPixel (х. у. qRgb (і. і. і)) ; 
} 
res.save (filename. format .toAscii ()); 
constant Mask filterMask; 
texture <u 16. cudaTextureType2D, cudaReadModeElementType> iпpLtt ; 
_g]obal void filterlmage (image out) { 
int row = blockldx.y * blockDim.y + tl1readldx.y; 
int соІ = blockldx.x * blockDim.x -r- tl1readldx.x; 
if (out.inside (row, со!)) { 
const шt hs = filterMask.size / 2 ; 
float sum = О · 
' 
for (int і - -hs: і <= hs; ++ і) { 
for (int j = -hs; j <= hs; ++ j) { 
sum .,. = tex2D (input, соІ + j , row + і)* filteгMask .valuc (і , j); 
} 
І 
out. ctPixel (row, со\ , (int) um); 
79 
,,.. 
7 
482. ЧДТУ 22 182 1.1201 
,юіd fil tcr (u І 6 * pixcls. іпt \vidtl,. і1н І,сіgІн. tloat * mask, 
iJ1t 1пaskSizc) 
І 
\ 
coпst int imagc izclпBytc. = \vidtl1 * \1cigl1t * sizcof(ul6); 
снdаСІ1аппс\FоппаtОеsс dc с =c udaCrcatcCІ,anлelOesc ( 16. О, О, О, 
d Chanпe\Fon11atKi11dU11 igпed); 
cu а . 
cudaArra * tnputArтay: 
cudaMallocArтay (& iпputArтay, & desc, width, height); 
cudaMemcpyToA1тay (iпputArтay, О , О . pixels, imageS i ze lпBytes, 
cudaMemcpyHostToOe\1ice): 
input.nom1alizcd = false: 
input.filterModc = cudaFilterModePoint; 
input.addressModc (О] = iпput.addressMode [ І ) = cudaAddressModeClamp; 
cudaBindTexrureToArтay (& input, inpнtArтay, & desc); 
Image out: 
out.width = width: 
out.heigl1t = heigl,t: 
cudaMalloc (& out .pixels, imageSizelnBytes); 
Mask k; 
k.size = maskSize; 
memcpy (k.values, mask, sizeof (float) * k.size * k.size); 
cudaMemcpyToSymbol (filterMask, & k. sizeof (Mask)): 
dimЗ threc1ds ( 16, І б): 
dimЗ blocks ((width + threads.x - І) / threads.x, 
(Height ~ threc1ds. у - І ) І threads. у); 
fi lterJmage <<< blocks, threads >>> (out); 
cudaMemcpy (pixels. out.pixels, imageSizelnBytes, 
cudaMemcpyOe,1iceT0Host); 
cudaUnbindTexture (& iпput); 
cudaFreeArray (iпputArray) ; 
cudaFree (out.pixels): 
} 
80 
дОЛАТОК В 
РОЗРОБКА ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ СИСТЕМИ ПЕРЕВІРКИ 
ЗНАНЬ ФАХІВЦІВ 
Jнструкцjя користувачев1 
482. ЧДТУ.22І821-013401 
Листів 5 
п ько м.с . 
Розроб1~ик 
Черкаси 2022 року 
482 Ч/ІJУ. 221821-013401 2 
1 І1РИ'1ІІЛЧЕІІІІЯ ІІРОІ 'РЛМИ 
Мста ро3робки чат-бо~ У дати можливість користувачам месенджеру 
1·cJcgraJ11, яю щкавляться сферою ІТ, пройти тест і дізнатися свій рівень 
знан1> в напрямку ОА, а також створити чек-ліст, який допоможе при 
тестуванні І ІО . Чаr-бот буде формувати чек-ліст для часто використовуваних 
fстроїв , що Jtac можливість більш точно створити чек-ліст для тестування. 
нр~ 
2 РОБОТА З ПРОГРАМОЮ 
1. Відкрити діа.J101· '3 чаг-ботом 
.. 
в 1 - Вікно діало1у з чат-ботом 
Рисунок • 
82 
-
-
482-чдТУ. 22 l 82 l-Ol  34 О І з 
2. Натп нути на кнопку «п v • • • • 
. рон, 111 ес, » або «Стnорити чек-mст» 
Рисунок В.2 - Кнопки «Пройти тест» і «Створити чек-ліст» 
З . Після вибору кнопки «Пройти тест» натиснути на кнопку «Почати» 
Рисунок В.З _ К11011ка «Почати» 
83 
482 uчn ~т  · 22 І 821-0 І 14 О І 4 
4. 1 1ротттн 1 'СТ)Rання і о~ рима~ 11 pcзym>r-aI в к.ш щ.  тестування 
Рисунок В.4 - Результати тестування 
5. Після вибору кнопки «Створити чек-ліст» потрібно пройти коротке 
ошrrування 
Рисунок В.5 Кнопка «Створити чск-ніст» 
84 
4t - ·Ч Д Г . 22182 1-01 34 О І 5 
б. в 1' -1.ц1 ошпування отримати чек-лісr 
Рисунок В.6 - Чек-ліст 
85 
додлтокг 
РОЗРОБКА ПРО ГР АМН ОГО ЗАБЕЗПЕЧЕННЯ СИСТЕМИ ПЕРЕВГРКИ 
ЗНАНЬ ФАХІВЦІВ 
Графічні матеріали 
482.ЧДТУ.221821-019001 
Листів 5 
Прудько М.С. 
Розробник 
Черкаси 2022 року 
-
482-ЧдТУ.221822-Оі 90 01 
-~ 
Рисунок Г.1 - llрИІ<лал. аналога системи 
р исунок г .2  - rІриклад а11алоrа системи 
87 
--
з 
482-ЧдТУ.221822-О І 90 01 
Рисунок Г.3. -Приклад аналога системи 
' .,._,, _, ""І 11- .,у-, , • ' ~ 
·11.:--,.1-т. ,~•-"' '";:•;v-•  }' ', .,.. 
І,~ CJWl8itlOI)' ._ 
- - ,,~___,._ ~. ..- ~.  -. 
Рисунок Г.4. - Приклад аналога системи 
88 
4 
482 . ЧДТУ .22 1822-0 І 90 01 
\ , • lfrJ1"'11"нnp.• . .c·n -.,,."" ,?017 1о , 1 
1
о--- х 
rr 
о 
.о "•   
., , Прмw .., кn. 
Рисунок Г.5- Вибір шаблону 
-,:•- новая авторассьи~к.а 2011 -10-з1 о OnJ\1111....,......... EIJ х 
оmРА6ІІТЬ SMS 
8wnot.l"JIJ1ti ao1';n111: 
О cr•J) 
@"'юv 
L:c6J1":.:-,f,•~· 
~Q.1fM.Cч,t.!>J 
о SMSor. 
6 0 
о. 
__" _. П_рм_wе_нк_ть_ -  _, _.·.,, _ 
Рисунок Г.6- Створення Веб-пуш і СМС-пов ідомлення 
89 
482 5 
-ЧДТУ .22 І 822-0 l 90 О І 
.• .  Hr1ШJ11.JМlf1'f")l'tN1t1r,)1{)1710-\t -............. .. ~ 
о---~ х 
~- д. -
nr..e .:~,,,.-<"'•,-•.:... a~  
'О' 
(] 
,.,...... 
M ,' ,•f··,M М ·E·,W 
• о 
о . 
- . ~ ' . 
Рисунок Г.6- Створення елементу «Фільтр» 
.,. . нова11ав10рd(СІ,ІЛка2017-1а.31 о 0щц.,.-- В] Х 
' 
Дg~Jllt -,~ 
по.:,·-.•<\,.,и 
о 
------------.... 
6 D 
D І 
-, - .. 
'2 Пrшwшкn, 
' .~ "І'-"'-""-" ~ -~-
Рисунок г . 7- створення елементу «Умова» 
90