Будь ласка, використовуйте цей ідентифікатор, щоб цитувати або посилатися на цей матеріал:
https://er.chdtu.edu.ua/handle/ChSTU/9080| Назва: | Програмний агент для моніторингу побутових користувачів природного газу |
| Автори: | Голуб, Сергій Васильович Просяник, Олег Валерійович |
| Ключові слова: | РОЗРОБКА TELEGRAM-БОТУ;АДМІНІСТРАТИВНА ПАНЕЛЬ;НЕЙРОМЕРЕЖА;РОЗРАХУНКИ.;АВТОМАТИЗАЦІЯ;КОМУНІКАЦІЯ;ІНТЕГРАЦІЯ;АДМІНІСТРУВАННЯ;КЕРУВАННЯ;ДАНІ;ПРОГНОЗУВАННЯ;ЕФЕКТИВНІСТЬ |
| Дата публікації: | 2023 |
| Короткий огляд (реферат): | Просяник О.В. ПРОГРАМНИЙ АГЕНТ ДЛЯ МОНІТОРИНГУ ПОБУТОВИХ КОРИСТУВАЧІВ ПРИРОДНОГО ГАЗУ – Кваліфікаційна робота на здобуття освітнього ступеня «магістр» за спеціальністю 121 «Інженерія програмного забезпечення», Черкаський державний технологічний університет – Черкаси, 2023. Обсяг роботи КРМ: 132 сторінок, 5 таблиць, 58 рисунків, список літератури з 10 найменувань, 3 додатків. Актуальність: тема КРМ є актуальною, оскільки компанії вкладаються у розробку інноваційних рішень для поліпшення користувацького досвіду, а люди шукають швидкий та зручний доступ до інформації. Telegram-боти забезпечують доступність для користувачів різних пристроїв та операційних систем. Мета КРМ - створення чат-бота на платформі Telegram, що надасть споживачам доступ до достовірної інформації про тарифи за природний газ, якісні послуги та поради з енергоефективності оселі, а також автоматизацію обчислення споживання газу та економію коштів. Завданням КРМ є: аналіз потреб та вимог користувачів; розробка функціоналу Telegram-боту; використання нейромереж, створення нейромережі «Енергорадник», тестування та розвиток, аналіз впливу впровадження Telegram-боту на підвищення якості обслуговування, економічні вигоди для споживачів та забезпечення загальної адаптивності до потреб користувачів, запровадження та підтримка. Предметом дослідження КРМ є процес функціонування Telegram-боту та нейромережі "Енергорадник", спрямований на допомогу споживачам природного газу для отримання інформації про тарифи, послуги та поради з енергоефективності, автоматизацію обчислень та вирішення інших завдань. Об'єктом дослідження КРМ виступають аналіз процесу обробки та передачі даних у клієнт-серверних системах та процеси інформаційної підтримки споживачів природного газу. ЧДТУ.232218-023 ПЗ 5 Інструменти, які використані для реалізації проєкту: мови програмування: HTML, CSS, JS; Telegram API; WEB-технології: ReactJS, NodeJS та ExpressJS, Axios, Bootstrap, jQuery, CORS; Машинне навчання та аналіз даних (бібліотека TensorFlow.js). Розроблений Telegram-бот та нейромережа «Енергорадник» для споживачів природного газу АТ "Черкасигаз" є сучасним та зручним рішенням, що відповідає всім вимогам функціональності, користувальницької зручності та логіки. |
| URI (Уніфікований ідентифікатор ресурсу): | https://er.chdtu.edu.ua/handle/ChSTU/9080 |
| Розташовується у зібраннях: | 121 Інженерія програмного забезпечення (Інженерія програмного забезпечення) |
Файли цього матеріалу:
| Файл | Опис | Розмір | Формат | |
|---|---|---|---|---|
| Magistr_Diplom_Prosianyk_Oleh_2023_нормоконтроль06_12_23_з_додатками.pdf Restricted Access | 5.1 MB | Adobe PDF | Переглянути/Відкрити Запит копії |
Усі матеріали в архіві електронних ресурсів захищено авторським правом, усі права збережено.
Extracted text
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ
Факультет інформаційних технологій і систем
Катедра програмного забезпечення автоматизованих систем
ПОЯСНЮВАЛЬНА ЗАПИСКА
до кваліфікаційної роботи
«магістр»
на тему: «Програмний агент для моніторингу побутових
користувачів природного газу»
Виконав: студент 2 курсу, групи МПЗ-2204
Напряму підготовки:
121 «Інженерія програмного забезпечення»
(шифр і назва напряму підготовки)
Студент: Просяник О.В.
(прізвище та ініціали)
Керівник: Голуб С.В.
(прізвище та ініціали)
Рецензент:
(прізвище та ініціали)
Черкаси 2023
ЧДТУ.232218-023 ПЗ
Черкаський державний технологічний університет
повне найменування вищого навчального закладу
Факультет інформаційних технологій і систем
Кафедра програмного забезпечення автоматизованих систем
Освітній рівень магістр
Спеціальність 121 «Інженерія програмного забезпечення»
Освітня програма Інженерія програмного забезпечення
ЗАТВЕРДЖУЮ
Зав. кафедри ПЗАС, д.т.н., професор
Голуб С.В.
(підпис)
«____»_________________ 2023 року
З А В Д А Н Н Я
НА КВАЛІФІКАЦІЙНУ РОБОТУ СТУДЕНТУ
Просяник Олег Валерійович
(прізвище, ім’я, по батькові)
1. Тему проекту (роботи)
Програмний агент для моніторингу побутових користувачів природного газу
Керівник проекту (роботи):
Голуб Сергій Васильович, завідувач кафедри, д.т.н., професор
(прізвище, ім’я , по батькові, науковий ступінь, вчене звання)
Затверджені наказом Черкаського державного технологічного університету
«06» жовтня 2023 року № 267/04
2. Строк подання студентом проекту (роботи) « » 202 року
3. Вхідні дані до проекту (роботи):
стандарти програмного забезпечення; моделювання системи; вимоги до проекту; система
управління базами даних; реляційна база даних; не реляційна база даних
4. Зміст розрахунково-пояснювальної записки (перелік питань, які потрібно розробити):
Вступ
Розділ1. Існуючі методи та засоби розв’язання поставлених завдань
Розділ2. Теоретичні та експериментальні дослідження
Розділ3. Впровадження результатів досліджень у практику проектування програмного
забезпечення інформаційних систем
Розділ4. Розробка та тестування програмного забезпечення
Список використаних джерел
Додатки
5. Перелік графічного матеріалу (з точним зазначенням обов’язкових робіт проєкту):
2
ЧДТУ.232218-023 ПЗ
Консультанти розділів проекту (роботи)
Прізвище, ініціали та посади Підпис, дата
Розділ
консультанта Завдання видав Завдання прийняв
1
2
3
4
6. Дата видачі завдання ___________ 2023р.
КАЛЕНДАРНИЙ ПЛАН
Строк виконання
№
Назва етапів випускної роботи етапів випускної Примітки
з/п
роботи
1 Постановка задачі 06.09.2023 виконано
2 Підготовка завдання 13.09.2023 виконано
3 Погодження завдання 20.09.2023 виконано
4 Затвердження завдання 27.09.2023 виконано
Основна стадія
1 Підбір матеріалів 04.10.2023 виконано
2 Аналіз шляхів вирішення поставленої задачі 11.10.2023 виконано
3 Розрахунок основних параметрів роботи 18.10.2023 виконано
4 Вибір кінцевого варіанту проектного рішення 25.10.2023 виконано
5 Оформлення первісної редакції роботи 01.11.2023 виконано
Заключна стадія
1 Узгодження прийнятих проектних рішень з 08.11.2023 виконано
керівником
2 Оформлення пояснювальної записки роботи в 15.11.2023 виконано
кінцевій редакції
3 Попередній захист роботи 22.11.2023 виконано
4 Затвердження роботи 29.11.2023 виконано
5 Рецензування роботи 06.12.2023 виконано
6 Захист роботи 11.12.2023 виконано
Студент дипломник Просяник О.В.
(підпис) (прізвище та ініціали)
Керівник проекту (роботи) Голуб С.В
(підпис) (прізвище та ініціали)
3
ЧДТУ.232218-023 ПЗ
АНОТАЦІЯ
Просяник О.В. ПРОГРАМНИЙ АГЕНТ ДЛЯ МОНІТОРИНГУ
ПОБУТОВИХ КОРИСТУВАЧІВ ПРИРОДНОГО ГАЗУ – Кваліфікаційна робота
на здобуття освітнього ступеня «магістр» за спеціальністю 121 «Інженерія
програмного забезпечення», Черкаський державний технологічний університет
– Черкаси, 2023.
Обсяг роботи КРМ: 132 сторінок, 5 таблиць, 58 рисунків, список
літератури з 10 найменувань, 3 додатків.
Актуальність: тема КРМ є актуальною, оскільки компанії вкладаються у
розробку інноваційних рішень для поліпшення користувацького досвіду, а люди
шукають швидкий та зручний доступ до інформації. Telegram-боти забезпечують
доступність для користувачів різних пристроїв та операційних систем.
Мета КРМ - створення чат-бота на платформі Telegram, що надасть
споживачам доступ до достовірної інформації про тарифи за природний газ,
якісні послуги та поради з енергоефективності оселі, а також автоматизацію
обчислення споживання газу та економію коштів.
Завданням КРМ є: аналіз потреб та вимог користувачів; розробка
функціоналу Telegram-боту; використання нейромереж, створення нейромережі
«Енергорадник», тестування та розвиток, аналіз впливу впровадження Telegram-
боту на підвищення якості обслуговування, економічні вигоди для споживачів та
забезпечення загальної адаптивності до потреб користувачів, запровадження та
підтримка.
Предметом дослідження КРМ є процес функціонування Telegram-боту та
нейромережі "Енергорадник", спрямований на допомогу споживачам
природного газу для отримання інформації про тарифи, послуги та поради з
енергоефективності, автоматизацію обчислень та вирішення інших завдань.
Об'єктом дослідження КРМ виступають аналіз процесу обробки та
передачі даних у клієнт-серверних системах та процеси інформаційної
підтримки споживачів природного газу.
4
ЧДТУ.232218-023 ПЗ
Інструменти, які використані для реалізації проєкту: мови програмування:
HTML, CSS, JS; Telegram API; WEB-технології: ReactJS, NodeJS та ExpressJS,
Axios, Bootstrap, jQuery, CORS; Машинне навчання та аналіз даних (бібліотека
TensorFlow.js).
Розроблений Telegram-бот та нейромережа «Енергорадник» для
споживачів природного газу АТ "Черкасигаз" є сучасним та зручним рішенням,
що відповідає всім вимогам функціональності, користувальницької зручності та
логіки.
Ключові слова: РОЗРОБКА TELEGRAM-БОТУ, АДМІНІСТРАТИВНА
ПАНЕЛЬ, НЕЙРОМЕРЕЖА, РОЗРАХУНКИ, АВТОМАТИЗАЦІЯ,
КОМУНІКАЦІЯ, ІНТЕГРАЦІЯ, АДМІНІСТРУВАННЯ, КЕРУВАННЯ, ДАНІ,
ПРОГНОЗУВАННЯ, ЕФЕКТИВНІСТЬ.
5
ЧДТУ.232218-023 ПЗ
ANNOTATION
Prosianyk O.V. SOFTWARE AGENT FOR MONITORING DOMESTIC
USERS OF NATURAL GAS - Qualification work for obtaining a master's degree in
specialty 121 "Software engineering", Cherkasy State University of Technology -
Cherkasy, 2023.
The volume of work of the KRM: 132 pages, 5 tables, 58 figures, a list of
literature from 10 titles, 3 appendices.
Relevance: the topic of KRM is relevant, as companies invest in the
development of innovative solutions to improve the user experience, and people are
looking for quick and convenient access to information. Telegram bots provide
accessibility for users of various devices and operating systems.
The goal of KRM is to create a chatbot on the Telegram platform that will
provide consumers with access to reliable information about natural gas tariffs, quality
services and advice on home energy efficiency, as well as automation of gas
consumption calculations and cost savings.
The tasks of KRM are: analysis of user needs and requirements; development
of Telegram bot functionality; the use of neural networks, the creation of the
"Energoradnyk" neural network, testing and development, analysis of the impact of the
implementation of the Telegram bot on improving the quality of service, economic
benefits for consumers and ensuring general adaptability to user needs, implementation
and support.
The subject of KRM research is the functioning process of the Telegram bot
and the "Energoradnyk" neural network, aimed at helping natural gas consumers to
obtain information about tariffs, services and advice on energy efficiency, automating
calculations and solving other tasks.
The object of KRM research is the analysis of the process of data processing
and transmission in client-server systems and the processes of information support for
natural gas consumers.
6
ЧДТУ.232218-023 ПЗ
Tools used to implement the project: programming languages: HTML, CSS, JS;
Telegram API; WEB technologies: ReactJS, NodeJS and ExpressJS, Axios, Bootstrap,
jQuery, CORS; Machine learning and data analysis (TensorFlow.js library).
The developed Telegram bot and neural network "Energoradnyk" for natural gas
consumers of JSC Cherkasygaz is a modern and convenient solution that meets all the
requirements of functionality, user convenience and logic.
Keywords: TELEGRAM BOT DEVELOPMENT, ADMINISTRATIVE
PANEL, NEURAL NETWORK, CALCULATIONS, AUTOMATION,
COMMUNICATION, INTEGRATION, ADMINISTRATION, CONTROL, DATA,
FORECASTING, PERFORMANCE.
7
ЧДТУ.232218-023 ПЗ
ЗМІСТ
ВСТУП ........................................................................................................................ 12
РОЗДІЛ 1. ІСНУЮЧІ МЕТОДИ ТА ЗАСОБИ РОЗВ’ЯЗАННЯ ПОСТАВЛЕНИХ
ЗАВДАНЬ ................................................................................................................... 21
Висновок до першого розділу .................................................................................. 24
РОЗДІЛ 2. ТЕОРЕТИЧНІ ТА ЕКСПЕРИМЕНТАЛЬНІ ДОСЛІДЖЕННЯ ......... 26
2.1. ТЕОРЕТИЧНІ ДОСЛІДЖЕННЯ ......................................................................... 26
2.2. ЕКСПЕРИМЕНТАЛЬНІ ДОСЛІДЖЕННЯ ........................................................... 29
Висновок до другого розділу ................................................................................... 32
РОЗДІЛ 3. ВПРОВАДЖЕННЯ РЕЗУЛЬТАТІВ ДОСЛІДЖЕНЬ У ПРАКТИКУ
ПРОЕКТУВАННЯ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ ІНФОРМАЦІЙНИХ
СИСТЕМ .................................................................................................................... 33
3.1. МОДЕЛЮВАННЯ ПРЕДМЕТНОЇ ОБЛАСТІ ....................................................... 33
3.1.1. Предметна область моделювання. Модель предметної області.
Словник предметної області ............................................................................ 33
3.1.2. Елементи моделювання предметної області ...................................... 36
3.1.3. Робоча область моделювання .............................................................. 38
3.2. ФОРМУВАННЯ ТА АНАЛІЗ ВИМОГ ................................................................ 40
3.2.1. Формування вимог до програмного забезпечення. Первинні і
детальні вимоги. Вимоги замовника і розробника. Функціональні та
нефункціональні вимоги ................................................................................... 40
3.2.2. Формування вимог за допомогою діаграми прецедентів (діаграми
варіантів використання, Use Case) .................................................................. 44
3.2.3. Проектування логічної структури програмного комплексу ............. 49
ЧДТУ.232218-023 ПЗ
Зм. Лист № документа Підпис Дата
Розробник Просяник О.В.
Програмний агент для моніторингу Літ Лист Листів
Керівник Голуб С.В. побутових користувачів природного Н 3
газу ФІТІС
Н.контр. Голуб С.В. Кафедра ПЗАС, МПЗ-2204
Затв. Голуб С.В.
8
ЧДТУ.232218-023 ПЗ
3.2.3.1. Діаграми класів .................................................................... 49
3.2.3.2. Діаграми пакетів .................................................................. 54
3.3. АРХІТЕКТУРНЕ ПРОЕКТУВАННЯ .................................................................. 56
3.3.1. Діаграма компонентів ........................................................................... 56
3.3.2. Розгортання програмної системи на апаратних засобах. Діаграма
розгортання ........................................................................................................ 62
3.4. МОДЕЛЮВАННЯ ПОВЕДІНКИ СИСТЕМИ. ...................................................... 63
3.4.1. Діаграма діяльності ............................................................................... 64
3.4.2. Діаграма послідовності ........................................................................ 67
3.4.3. Діаграма комунікації ............................................................................ 73
3.4.4. Діаграма скінченного автомату (Діаграма станів) ............................ 76
Висновок до третього розділу .................................................................................. 83
РОЗДІЛ 4. РОЗРОБКА ТА ТЕСТУВАННЯ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ
..................................................................................................................................... 84
4.1. РОЗРОБКА ПРОГРАМНОГО КОМПЛЕКСУ ....................................................... 84
4.1.1. Обґрунтування вибору засобів реалізації ........................................... 84
4.1.2. Опис структурної (функціональної) схеми ........................................ 85
4.1.3. Опис логічної схеми системи .............................................................. 85
4.1.4. Розробка бази даних ............................................................................. 86
4.1.5. Розробка інтерфейсу користувача ....................................................... 87
4.1.6. Опис розробки програмних компонентів ........................................... 89
4.2. ТЕСТУВАННЯ СИСТЕМИ ............................................................................... 89
4.2.1. Модульне тестування ........................................................................... 90
4.2.2. Інтеграційне тестування ....................................................................... 91
4.2.3. Системне тестування ............................................................................ 92
4.2.4. Приймальне тестування ....................................................................... 95
4.3. ПРИКЛАДИ ВПРОВАДЖЕНОГО ПРОГРАМНОГО КОМПЛЕКСУ ........................ 95
Лист
ЧДТУ.232218-023 ПЗ
Зм. Лист № документа Підпис Дата
9
ЧДТУ.232218-023 ПЗ
Висновок до четвертого розділу ............................................................................ 106
ВИСНОВКИ ............................................................................................................. 107
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ ............................................................... 108
ДОДАТОК А ............................................................................................................ 109
ДОДАТОК Б ............................................................................................................ 111
ДОДАТОК В ............................................................................................................ 114
ДОДАТОК Г ............................................................................................................ 120
ДОДАТОК Д .................................................... Помилка! Закладку не визначено.
Лист
ЧДТУ.232218-023 ПЗ
Зм. Лист № документа Підпис Дата
10
ЧДТУ.232218-023 ПЗ
ПЕРЕЛІК УМОВНИХ ПОЗНАЧЕНЬ
Telegram-бот − Програмний агент, який працює в месенджері
Telegram і може взаємодіяти з користувачами
через текстові повідомлення.
Telegram − Популярний месенджер, який дозволяє
користувачам обмінюватися повідомленнями,
фотографіями, відео та іншими файлами.
API − Набір правил і протоколів, які дозволяють різним
(Application програмам взаємодіяти між собою.
Programming Interface)
БД − Організована колекція даних, яка зберігається та
доступна для обробки за допомогою
комп'ютерних систем.
IT − Галузь знань, яка включає в себе розробку,
(інформаційні використання та управління комп'ютерною
технології) технологією для обробки та передачі інформації.
ПЗ − Набір інструкцій та даних, необхідних для
(програмне виконання роботи на комп'ютері або іншому
забезпечення) пристрої.
11
ЧДТУ.232218-023 ПЗ
ВСТУП
Тема кваліфікаційної роботи «Програмний агент для моніторингу
побутових користувачів природного газу».
Актуальність теми. WEB-сайт АТ «Черкасигаз» представляє собою
інструмент для інформування споживачів природного газу про керівництво
підприємства та його структурні підрозділи, послуги підприємства, операторів
до яких споживач може звернутися при виникненні проблем, актуальні тарифи
на постачання блакитного палива, актуальні новини пов’язані зі специфікою
підприємства та отримати іншу актуальну інформацію. Зрозуміло, що на WEB-
сайті повинна бути корисна і зрозуміла інформація для всіх користувачів. Для
оптимального досвіду користування дуже важливо забезпечити, щоб користувачі
легко знаходили необхідну інформацію, не втрачаючись у функціональності та
великій кількості сторінок. В той же час, важливо, щоб користувачі отримували
задоволення від роботи з ресурсом. Безсумнівно, сайт має мати єдиний стиль
оформлення. Такий WEB-сайт має і АТ «Черкасигаз» [2].
Іноді в житті виникають ситуації, коли дуже швидко потрібна певна
інформація про споживання природного газу, або треба негайно замовити
послугу, або отримати інформацію про свою заборгованість. Крім того,
споживачі часто задаються питанням, як зекономити гроші на опаленні та
готуванні їжі з використанням газу. У таких випадках, коли немає доступу до
Інтернету та комп'ютера, але є тільки мобільний телефон, це може створювати
проблеми.
У зв'язку з ростом вимог споживачів, які стають все вищими, і потребою в
швидких, безпечних і персоналізованих рішеннях, компанії активно вкладають
кошти в розробку інноваційних рішень, які забезпечують унікальний досвід для
споживачів.
Тому виникла ідея розробити такий функціонал, який би допоміг
споживачам природного газу отримати більш швидкий та зручний спосіб
доступу до актуальної інформації, особовому рахунку та інших ресурсів АТ
12
ЧДТУ.232218-023 ПЗ
«Черкасигаз». Також виникає питання про створення нейромережі
«Енергорадник», яка допоможе споживачеві прорахувати, розробити
рекомендації та обчислити максимальні (мінімальні) та середні показники
споживання у подібних по характеристиках житлових будівлях. За допомогою
нейромережі «Енергорадник» також можна здійснити порівняльний аналіз
різних видів систем опалення.
У сучасному світі месенджери стали невід'ємною частиною нашого
повсякденного життя, оскільки вони забезпечують миттєвий обмін інформацією
через Інтернет. Один з найвідоміших сервісів - Telegram, що володіє відкритим
вихідним кодом і не містить реклами, це безкоштовний додаток, який
користувачі активно використовують для комунікації та вирішення різних
завдань.
На Telegram платформі є можливість створити чат-бот, що надає
користувачам швидкий доступ до шуканої інформації завдяки автоматичним
відповідям на їх запитання або команд.
Потрібний функціонал для реалізації всіх задач, можна реалізувати у
вигляді чат-боту на платформі Telegram, який буде взаємодіяти з користувачем
в найшвидші терміни. Створення Telegram-боту має декілька ключових переваг
у таких ситуаціях:
1 Створення Telegram-боту дозволяє забезпечити постійну підтримку,
оскільки він доступний 24/7 та надає швидкі відповіді на запити користувача.
Таким чином, користувач Telegram-боту може отримати відповіді на свої запити
в будь-який час, незалежно від часу доби.
2 Створення Telegram-боту дозволяє зекономити час користувача,
оскільки він може отримати швидкі та доступні відповіді на свої запити без
необхідності очікувати на підтримку від живої людини.
3 Telegram-бот дозволяє багатьом користувачам одночасно отримувати
необхідну інформацію, тому кілька осіб можуть використовувати його
одночасно.
13
ЧДТУ.232218-023 ПЗ
4 Telegram-бот доступний для використання на різних платформах, таких
як Windows [3], Linux [4], Android [5], iOS [6] та на інших ОС, які підтримують
Telegram.
5 Завантаження додатків або додаткових програм не є обов'язковими для
простої інтеграції.
На сьогоднішній день існують два основних підходи до розробки Telegram-
ботів: використання методів машинного навчання або використання попередньо
встановлених правил. Використання методів машинного навчання дозволяє боту
вчитися і покращуватися з часом за допомогою аналізу великої кількості даних
та розуміння контексту. З іншого боку, використання попередньо встановлених
правил передбачає програмування конкретних дій та правил, що дає більший
контроль та гнучкість у використанні Telegram-бота.
Проте, при використанні попередньо встановлених правил важливо мати
достатньо повну та актуальну інформацію. Якщо користувач вводить дані або
запити, які не передбачені в правилах, це може призвести до неправильних або
недостатніх відповідей з боку чат-бота, а у ряді випадків - навіть до його зупинки.
Тому для успішної роботи чат-бота важливо постійно оновлювати та
вдосконалювати набір правил або навчання моделі машинного навчання на
основі нових даних. Це допоможе забезпечити більш точні та адекватні відповіді
чат-бота на запити користувачів.
Комбінування цих підходів та постійне покращення алгоритму чат-боту
дозволяють нам створювати все більш ефективних та зручних інтелектуальних
помічників.
Отже, розробка чат-ботів - це непереривний процес, який потребує уваги
до деталей та постійного вдосконалення. Це робиться з метою забезпечення
найкращого функціоналу та створення неперевершеного досвіду взаємодії для
користувачів.
Майже всі державні підприємства з газопостачання та газифікації по
областям України та споживачі можуть використовувати сервіси
Газопостачальної компанії «Нафтогаз України», а саме: особистий кабінет; на
14
ЧДТУ.232218-023 ПЗ
сайті; скориставшись чат-ботами GASUA у Viber чи Telegram [7];
NaftogazGasSupply у Facebook Messenger; за допомогою SMS-повідомлення на
номер 4647.
Під час аналізу запропонованого чат-боту GASUA ТОВ «Газопостачальна
компанія «Нафтогаз України» у Telegram [7] та чат-бот 7104ua Регіональна
Газова Компанія (RGC) [9] було виявлено ряд недоліків та незручностей для
користувачів та споживачів природного газу, а саме:
1 Споживачам складно знайти всю необхідну інформацію та замовити усі
доступні послуги згідно свого району проживання через чат-бот.
2 Немає конкретної інформації про весь перелік послуг підприємства, які
він надає саме у вашому районі конкретного відділення АТ «Черкасигаз».
3 Відсутність такого сервісу, як нейромережа «Енергорадник», для
споживачів природного газу, який допоможе автоматизувати рутинні
обчислення споживання природного газу, замовлення послуг, заощадити кошти
користувачів, отримати консультації адміністратора та вирішити інші задачі
через Telegram-бот та нейромережі.
Нейромережа «Енергорадник» допоможе підвищити точність
прогнозування даних, розробити рекомендацій для споживача, обчислити
максимальні (мінімальні), середні показники споживання серед порівняльно
однакових за своїми характеристиками осель споживачів природного газу, та
зробити порівняльний аналіз видів систем опалення.
Помічник для споживачів природного газу, як нейромережа
«Енергорадник», є унікальною в Україні, і на сьогодні не існує жодного
подібного сервісу. Тому обрана тема дослідження є актуальною.
Мета цієї кваліфікаційної роботи - створення чат-бота на платформі
Telegram, що надасть споживачам доступ до достовірної інформації про тарифи
за природний газ, якісні послуги та поради з енергоефективності оселі, а також
автоматизацію обчислення споживання газу та економію коштів за допомогою
Telegram-боту та нейромереж.
Завданням кваліфікаційної роботи є:
15
ЧДТУ.232218-023 ПЗ
1 Аналіз потреб та вимог користувачів: аналіз ключових потреб та
очікувань клієнтів у області отримання інформації про тарифи, розрахунку
споживання газу та отримання порад щодо енергоефективності оселі
користувача.
2 Розробка функціоналу Telegram-боту: визначення списку функцій, які
буде виконувати Telegram-бот, зокрема створення зручного способу отримання
інформації про тарифи, реалізація розрахунків споживання та надання якісних
порад щодо енергоефективності оселі користувача.
3 Використання нейромереж: дослідження можливостей використання
нейромереж для автоматизації деяких процесів в зручний формат для
користувачів. Створення нейромережі «Енергорадник».
4 Тестування та розвиток: проведення тестувань Telegram-боту з метою
підтвердження його ефективності та коректності в різних сценаріях, а також
можливість постійного вдосконалення та розвитку.
5 Аналіз впливу: здійснення оцінки реального впливу впровадження чат-
боту на підвищення якості обслуговування.
6 Запровадження та підтримка: рекомендації щодо впровадження та
подальшої підтримки Telegram-боту, зокрема плани дій для реалізації проекту в
робочому середовищі.
Об'єктом дослідження даної кваліфікаційної роботи виступають аналіз
процесу обробки та передачі даних у клієнт-серверних системах та процеси
інформаційної підтримки споживачів природного газу.
Предметом дослідження даної кваліфікаційної роботи є процес
функціонування Telegram-боту та нейромережі "Енергорадник", спрямований на
допомогу споживачам природного газу для отримання інформації про тарифи,
послуги та поради з енергоефективності, автоматизацію обчислень та вирішення
інших завдань.
Для досягнення поставлених завдань кваліфікаційної роботи можуть бути
застосовані наступні методи дослідження:
16
ЧДТУ.232218-023 ПЗ
1 Аналітичний метод: Використання цього методу дозволить провести
аналіз актуальності та необхідності створення Telegram-боту та нейромережі
«Енергорадник» для споживачів, а також зробити огляд вже існуючих чат-ботів
на платформі Telegram. Цей метод також може використовуватись для аналізу
призначення та області застосування об'єкта дослідження.
2 Розробка програмного продукту: Реалізація поставлених завдань об'єкта
дослідження включатиме розробку та програмування Telegram-боту на
платформі Telegram. Для цього можуть бути використані методи розробки
програмного забезпечення, такі як ітеративна розробка або методології гнучкого
програмування.
3 Експериментальний метод: Для підтвердження працездатності та
надійності програмного продукту може бути проведено експериментальне
тестування, де описуються експериментальні матеріали, отримані результати та
їх аналіз.
4 Методи описового аналізу: Під час дослідження можуть бути
використані методи описового аналізу для детального опису технічних та
функціональних вимог до чат-боту, а також для опису процесу організації
роботи, пов'язаного з використанням Telegram-боту.
Враховуючи поставлені завдання та об'єкти дослідження кваліфікаційної
роботи, такі методи дослідження допоможуть зробити аналіз, розробити
програмний продукт та оцінити його ефективність. Необхідно пам'ятати, що
вибір конкретних методів дослідження залежить від об'єму, природи та
доступності даних для дослідження.
Наукова новизна одержаних результатів. Наукова новизна
кваліфікаційної роботи на тему “Програмний агент для моніторингу побутових
користувачів природного газу” полягає у вивченні та впровадженні новітніх
технологій розробки Telegram-ботів з використанням Telegram Bot API.
Telegram-бот та нейромережа «Енергорадник» мають велике значення в
інформаційному просторі. Був проведений докладний аналіз технологій для
створення WEB-додатків, в результаті чого були запропоновані нові механізми
17
ЧДТУ.232218-023 ПЗ
обміну даними. Концепція розгортання додатків з мікросервісною архітектурою
також претерпіла подальший розвиток. Також була розроблена система
управління Telegram-ботом.
Практичне значення одержаних результатів. Дослідження має
практичне значення у тому, що дозволяє створити зручний та функціональний
Telegram-бот та нейромережа «Енергорадник», яка надасть користувачам
зручний інтерфейс. Також важливо вивчити вплив особистих уподобань та
потреб користувачів на використання Telegram-бота.
Таким чином, це дослідження спрямоване на створення практичного та
зручного Telegram-бота, каналу новин та нейромережі «Енергорадник», які
будуть доступні для користувачів різного віку. Це забезпечить користувачам
зручний та ефективний інструмент для отримання корисної інформації,
управління своїм часом та економії грошових коштів.
Telegram-бот, канал новин та нейромережа «Енергорадник» були створені
з метою забезпечення користувачів актуальною інформацією вчасно, спрощення
процесу отримання якісних послуг та зменшення використання природного газу,
що призведе до економії коштів споживачів.
Особистий внесок автора
Усі результати наданої кваліфікаційної роботи, які представлені на захист,
були отримані автором особисто.
1 Впроваджено новітні технології розробки Telegram-боту з
використанням Telegram Bot API.
2 Концепція розгортання додатків з мікросервісною архітектурою
отримала подальший розвиток.
3 Нестандартний підхід до метода Фільтра Колмогорова.
4 Створена нейромережа «Енергорадник», яка є унікальною в Україні, і на
сьогодні не існує жодного подібного сервісу.
Апробація результатів КРМ та публікації
Результатом кваліфікаційної роботи було розроблено Telegram-бот, канал
новин та нейромережа «Енергорадник». Telegram-бот, канал новин та
18
ЧДТУ.232218-023 ПЗ
нейромережа «Енергорадник» – це результати дослідження запросів, побажань
споживачів природного газу з сайту АТ «Черкасигаз» та інших підприємств
газорозподільних компаній. що досліджені та викладені в науковій роботі на
тему «Дослідження моделей існуючих WEB-сайтів відомих газопостачальних
компаній України».
Брав участь в студентській науково-практичній конференції ЧДТУ яка
проходила 18 – 20 квітня 2023 року. В науковій роботі була розкрита тема
«Дослідження моделей існуючих WEB-сайтів відомих газопостачальних
компаній України».
Тези докладу (Додаток Б), [8]:
На сьогоднішній день в умовах використання сучасних інформаційних
технологій WEB-сайт являється необхідним чинником існування для
розміщення та знаходження відповідної інформації, спілкування з
користувачами тощо. Актуальність теми підтверджується і тим, що грандіозною
потребою є вибір або створювання нового WEB-сайту на базі дослідження
існуючих сучасних моделей WEB-сайтів газопостачальних компаній.
У роботі проаналізовані таки відомі: WEB-сайт АТ «Київгаз»; WEB-сайт
АТ «Львівгаз»; WEB-сайт АТ «Харківгаз»; WEB-сайт АТ «Черкасигаз».
Проведено оцінювання існуючих WEB-сайтів газопостачальних компаній
за наступними основними вимогами для споживачів: зручність; можливість
online communication; доступність.
Акцентовано увагу до функціональних вимог WEB-сайту АТ
«Черкасигаз», які містять таке: карту з місцем знаходженням підприємства;
реєстрацію; вхід; передачу показників лічильників; перегляд спожитих
кубометрів газу; пристрій рахунків: з розподілу газу з ПДВ; за послугами з ПДВ
(без лічильника); за послугами з ПДВ (з лічильником); доступ з персональних
комп’ютерів та телефонів; надійність; точність; доступність; зрозумілий
інтерфейс. Для розробки WEB-сайту використовувалися таки мови
програмування: JS, HTML, CSS та бібліотеки до них. Розроблено інфологічну і
даталогічну моделі бази даних з системою керування Mongo DB.
19
ЧДТУ.232218-023 ПЗ
Висока швидкість отримання відповідної інформації забезпечена методом
візуалізації. Створено користувачу комфорт: через колірні гамми картинок та
розташування їх у тексті на відповідних сторінках; через швидкість
завантаження сторінок сайту; чіткість і легкість сприйняття меню сайту; умови
можливості для подальшого наповнювання сайту.
Отже, порівняльний аналіз існуючих газопостачальних компаній показав,
що WEB-сайт АТ «Черкасигаз» відповідає усім переліченим вимогам і це дає
право визначити належність його до одного з кращих в Україні.
Опублікована наукова робота у науково-популярному електронному
виданні «Збірник тез доповідей студентської науково-практичної конференції
ЧДТУ 18 – 20 квітня 2023 р.», технічній редактор Манжура Т.А. (Додаток Б), [8].
20
ЧДТУ.232218-023 ПЗ
РОЗДІЛ 1. ІСНУЮЧІ МЕТОДИ ТА ЗАСОБИ РОЗВ’ЯЗАННЯ
ПОСТАВЛЕНИХ ЗАВДАНЬ
Перед початком роботи з програмним продуктом важливо ознайомитися з
наявними Telegram-ботами, щоб виявити їх переваги та недоліки і
використовувати ці знання під час розробки власного проекту.
Перегляд і аналіз існуючих чат-ботів дозволить врахувати виявлені
особливості під час розробки власного Telegram-бота та створити програмний
продукт, який буде найкраще задовольняти потреби користувачів.
Щодо розробки помічника нейромережі «Енергорадник» то він єдиний і
аналогів йому в Україні немає.
Щоб визначити функціональні та не функціональні вимоги до
розроблюваного програмного продукту, було проведено аналіз існуючих
аналогів.
1 На рис. 1.1 показаний чат-бот GASUA ТОВ «Газопостачальна компанія
«Нафтогаз України» [7]:
Рис. 1.1 – Чат-бот GASUA для Telegram
21
ЧДТУ.232218-023 ПЗ
Особливості чат-боту GASUA для Telegram від ТОВ «Газопостачальна
компанія «Нафтогаз України»:
– передати показання лічильника;
– верифікувати свої персональні дані;
– сплатити газ онлайн, а також дізнатися актуальні дані рахунку;
– отримати детальний рахунок-фактуру;
– отримати довідку про субсидії та пільги;
– отримати акт звірки;
– сформувати довідку про відсутність заборгованості за газ;
– бути в курсі новин компанії.
Переваги чат-боту GASUA для Telegram від ТОВ «Газопостачальна
компанія «Нафтогаз України»:
– робота застосунку 24/7;
– компактна та інформативна подача інформації;
– зручний і лаконічний інтерфейс;
– наявність зворотного зв’язку;
– швидкий пошук інформації;
– адаптивність під різні пристрої.
Недоліки чат-боту GASUA для Telegram від ТОВ «Газопостачальна
компанія «Нафтогаз України»:
– споживачам складно знайти всю необхідну інформацію та замовити усі
доступні послуги згідно свого району проживання через чат-бот;
– немає конкретної інформації про весь перелік послуг підприємства, які
він надає саме у вашому районі конкретного відділення АТ «Черкасигаз»;
– відсутність такого сервісу як нейромережа «Енергорадник» для
споживачів природного газу, який допоможе автоматизувати рутинні
обчислення споживання природного газу, замовлення послуг, заощадити кошти
користувачів, отримати консультації адміністратора та вирішити інші задачі
через Telegram-бот та нейромережі.
22
ЧДТУ.232218-023 ПЗ
2 На рис. 1.2, 1.3 показаний чат-бот 7104ua Регіональної Газової Компанії
(RGC) [9]:
Рис. 1.2 – Чат-бот 7104ua для Telegram
Рис. 1.3 – Головне меню Чат-боту 7104ua для Telegram
23
ЧДТУ.232218-023 ПЗ
Особливості чат-боту 7104ua для Telegram від Регіональна Газова
Компанія (RGC):
– можливість миттєво передати показники лічильника;
– можливість отримати інформацію про поточний стан особового рахунку;
– можливість миттєво сплатити доставку газу за допомогою онлайн-
сервісу;
– можливість проаналізувати обсяги спожитого газу.
Переваги чат-боту 7104ua Регіональна Газова Компанія (RGC):
– робота застосунку 24/7;
– компактна та інформативна подача інформації;
– зручний і лаконічний інтерфейс;
– наявність зворотного зв’язку;
– швидкий пошук інформації;
– адаптивність під різні пристрої.
Недоліки чат-боту 7104ua Регіональна Газова Компанія (RGC):
– споживачам складно знайти всю необхідну інформацію та замовити усі
доступні послуги згідно свого району проживання через чат-бот;
– немає конкретної інформації про весь перелік послуг підприємства, які
він надає саме у вашому районі конкретного відділення АТ «Черкасигаз»;
– відсутність такого сервісу як нейромережі «Енергорадник» для
споживачів природного газу, який допоможе автоматизувати рутинні
обчислення споживання природного газу, замовлення послуг, заощадити кошти
користувачів, отримати консультації адміністратора та вирішити інші задачі
через Telegram-бот та нейромережі.
Висновок до першого розділу
Отже, в результаті аналізу аналогів Telegram-ботів було визначено, що для
задоволення потреб користувача необхідно розробити Telegram-бот, що матиме
такі функції:
1 Передача показників лічильника.
24
ЧДТУ.232218-023 ПЗ
2 Надання порад щодо екстрених ситуацій таких як: «порядок дій, якщо у
вас відсутній газ».
3 Взнати актуальні тарифи на газопостачальні послуги.
4 Дізнатись про стан рахунку.
5 Замовити послуги відповідно до свого району.
6 Отримати актуальні новини.
7 Зв’язатися з оператором.
8 отримати поради від моделі нейромережі щодо підвищення
енергоефективності.
Нейромережа «Енергорадник» для споживачів природного газу повинна
допомогти автоматизувати обчислення споживання природного газу, заощадити
кошти користувачів, та вирішити інші задачі через Telegram-бот та нейромережі.
Мета нейромережі «Енергорадник» - це стати зручним помічником та
провідником для споживачів, які користуються природним газом, забезпечуючи
їм комфортне користування та зручність.
25
ЧДТУ.232218-023 ПЗ
РОЗДІЛ 2. ТЕОРЕТИЧНІ ТА ЕКСПЕРИМЕНТАЛЬНІ ДОСЛІДЖЕННЯ
2.1. Теоретичні дослідження
Метою даної кваліфікаційної роботи є створення чат-бота на платформі
Telegram, який допоможе споживачам отримувати достовірну інформацію про
тарифи за природний газ з першоджерел, в зручному форматі отримувати весь
спектр якісних послуг та розробки порад щодо енергоефективності оселі
споживача природнього газу, автоматизувати обчислення споживання
природного газу, заощадити кошти споживачів та вирішити інші задачі через
Telegram-бот та нейромережі.
Завданням кваліфікаційної роботи є:
1 Аналіз потреб та вимог користувачів: аналіз ключових потреб та
очікувань клієнтів у області отримання інформації про тарифи, розрахунку
споживання газу та отримання порад щодо енергоефективності оселі
користувача.
2 Розробка функціоналу Telegram-боту: визначення списку функцій, які
буде виконувати Telegram-бот, зокрема створення зручного способу отримання
інформації про тарифи, реалізація розрахунків споживання та надання якісних
порад щодо енергоефективності оселі користувача.
3 Використання нейромереж: дослідження можливостей використання
нейромереж для автоматизації деяких процесів в зручний формат для
користувачів. Створення нейромережі «Енергорадник».
В якості методів для розрахунків нейромережі «Енергорадник»
використовувалися Фільтр Колмогорова та Ковзне середнє.
Фільтр Колмогорова, який представлений у вказаній нейромережі, не є
стандартним, тому йому було надано назву «Альтернативний Фільтр
Колмогорова». Він використовується для прогнозування значень за допомогою
зваженого середнього попередніх прогнозів та реальних даних.
Основна робота «Альтернативного Фільтру Колмогорова» передбачає
наступні кроки:
26
ЧДТУ.232218-023 ПЗ
– отримання даних;
– розбиття отриманих даних на масив чисел та отримання попередніх
прогнозів;
– врахування особливостей при перевірці наявності значень не числових
значень;
– застосування зваженого середнього до прогнозів та реальних даних для
отримання нового прогнозу.
В коді реалізація «Альтернативного Фільтру Колмогорова» визначена
через клас AlternativeKolmogorovFilterLayer, в якому метод call виконує всі
описані вище кроки.
Щодо стосується математичної формули фільтра AlternativeKolmogorov,
то вона може бути виражена наступним чином:
Нехай predictions - це масив попередніх прогнозів довжини numPredictions,
realData - масив реальних даних та weightedAverage - зважене середнє:
[] + [] + [ − 1]
ℎ = (2.1)
3
Оновлення прогнозу (з використанням попереднього прогнозу):
[] =
= ℎ1 × ℎ + ℎ2 × [] (2.2)
Якщо порівняти зі стандартним методом Фільтра Колмогорова маємо
наступні плюси:
– змінних ваги weight1 та weight2 забезпечують більшу гнучкість моделі і
дозволяють адаптуватися до змінних умов;
– використання realData для заміни першого прогнозу, як стартової точки
прогнозування, може поліпшити точність у випадках, коли у наявності
пропущені дані;
– використовує зважене середнє для корекції прогнозів, що дозволяє
покращити точність прогнозування;
– використання JavaScript дозволяє застосовувати цей фільтр
безпосередньо у WEB-середовищі, що полегшує інтеграцію та використання;
27
ЧДТУ.232218-023 ПЗ
– ці зміни були внесені з метою поліпшення точності прогнозів та адаптації
фільтра для конкретних умов WEB-середовища.
4 Тестування та розвиток: проведення тестувань Telegram-боту з метою
підтвердження його ефективності та коректності в різних сценаріях, а також
можливість постійного вдосконалення та розвитку.
5 Аналіз впливу: здійснення оцінки реального впливу впровадження чат-
боту на підвищення якості обслуговування.
6 Запровадження та підтримка: рекомендації щодо впровадження та
подальшої підтримки Telegram-боту, зокрема плани дій для реалізації проекту в
робочому середовищі.
Створення Telegram-боту для АТ «Черкасигаз» може виявитися важливим
кроком для оптимізації комунікації з клієнтами та управління їхніми послугами.
Дослідження у цій області полягатиме в аналізі можливостей забезпечення
зручності для користувачів, а також удосконалення процесу обслуговування.
Виділимо наступні кроки дослідження АТ «Черкасигаз»:
1 Огляд АТ «Черкасигаз»: потреби та особливості.
Аналіз поточних потреб та вимог користувачів АТ «Черкасигаз». Це
включає в себе розуміння специфіки газових послуг у регіоні, типові запитання
та проблеми, з якими стикаються клієнти.
2 Технічні аспекти створення Telegram-боту.
Дослідження також включатиме вивчення технічних аспектів застосування
Telegram-ботів. Це охоплює вибір платформи для розробки, аналіз можливостей
інтеграції з існуючими системами АТ «Черкасигаз.
3 Функціональні можливості.
Дослідження функціональних можливостей Telegram-боту буде
спрямоване на визначення набору сервісів, які можуть бути реалізовані через цей
канал зв'язку. Це можуть бути надання розрахункової інформації та реагування
на запитання клієнтів.
4 Переваги та виклики.
28
ЧДТУ.232218-023 ПЗ
Остаточна частина дослідження буде присвячена оцінці переваг та
потенційних викликів створення та управління таким Telegram-ботом для АТ
«Черкасигаз». Це включає в собі аналіз впливу на клієнтський сервіс, сприйняття
користувачами, а також технічні й управлінські аспекти.
5 Висновок.
Дослідження зазначеної теми дозволить краще розуміти потреби та
можливості створення та вдосконалення Telegram-боту для АТ «Черкасигаз», що
може сприяти покращенню обслуговування клієнтів та оптимізації процесів
управління газовими послугами.
2.2. Експериментальні дослідження
Експериментальні дослідження - це вивчення явищ, процесів або нових
технологій шляхом проведення спеціально організованих тестів або
експериментів. Основна мета експериментальних досліджень полягає в тому,
щоб перевірити гіпотези, визначити залежності та виявити нові закономірності в
процесі взаємодії об'єктів або явищ.
У таких дослідженнях зазвичай встановлюється певний контроль над
умовами проведення експерименту, щоб забезпечити об'єктивність та
достовірність отриманих результатів. Це може включати в себе порівняння
різних умов здійснення експерименту, введення випадковості або подвійного
сліпого контролю для зменшення впливу спостерігача на результат.
Результати експериментальних досліджень мають велике значення для
наукового та технічного прогресу, оскільки вони дозволяють перевіряти
теоретичні припущення та підтверджувати їх, або, навпаки, відхиляти і
коригувати. Такі дослідження також є важливими для розвитку нових технологій
і методів, урбанізації та вдосконалення вже існуючих систем.
Експериментальні дослідження створення Telegram-боту та нейромережі
«Енергорадник» для АТ «Черкасигаз» можуть включати наступні аспекти:
Гіпотеза: Застосування альтернативного фільтра Колмогорова в порівнянні
зі стандартним фільтром Колмогорова-Габара може призвести до покращення
точності прогнозів за рахунок адаптивних ваг та більшої гнучкості моделі.
29
ЧДТУ.232218-023 ПЗ
1 Тестування користувацького досвіду: проведення етапів Alpha та Beta-
тестування для отримання повноцінного фідбеку від користувачів щодо
функціоналу, зручності використання та загальної якості взаємодії з ботом.
2 Аналіз відповідності очікуванням користувачів: дослідження реакцій
користувачів на різні функції Telegram-боту та їхню відповідність очікуванням.
Вимірювання рівня задоволення та оцінка загального враження від використання
боту.
3 Коректність розрахунків нейромережі.
Для визначення коректності розрахунків було проведено порівняння
Альтернативного фільтра Колмогорова та Реальних даних. Графік порівняння
зображено на рис. 2.1.
Рис. 2.1 – Порівняння Альтернативного фільтра Колмогорова та Реальних
даних
Для визначення коректності розрахунків було проведено порівняння
Ковзного середнього та Реальних даних. Графік порівняння зображено на рис.
2.2.
30
ЧДТУ.232218-023 ПЗ
Рис. 2.2 – Порівняння Ковзного середнього та Реальних даних
Також було проведено порівняння їх похибок від Реальних даних. Графік
порівняння зображено на рис. 2.3.
Рис. 2.3 – Порівняння похибок Альтернативного фільтру Колмогорова до
Ковзного середнього
Виходячи з графіку похибок можна зазначити, що Альтернативний фільтр
Колмогорова є найкращим варіантом прогнозування з найменшими похибками.
31
ЧДТУ.232218-023 ПЗ
4 Технічне тестування: Забезпечення коректної роботи боту в різних
умовах та середовищах. Виявлення та усунення можливих системних помилок
та недоліків.
5 Аналіз впливу та результативності: Вимірювання показників
впровадження Telegram-боту, зокрема зменшення витрат часу на отримання
інформації, автоматизація обчислень тощо.
Висновок до другого розділу
Теоретичні та експериментальні дослідження допоможуть зрозуміти
ефективність та практичну цінність розробленого Telegram-боту для АТ
«Черкасигаз», а також сприятимуть подальшому вдосконаленню та розвитку
проекту.
32
ЧДТУ.232218-023 ПЗ
РОЗДІЛ 3. ВПРОВАДЖЕННЯ РЕЗУЛЬТАТІВ ДОСЛІДЖЕНЬ У
ПРАКТИКУ ПРОЕКТУВАННЯ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ
ІНФОРМАЦІЙНИХ СИСТЕМ
3.1. Моделювання предметної області
Для розробки системи, яка буде відповідати всім вимогам та правильно
виконувати свої функції, розробник повинен мати глибоке розуміння
особливостей функціонування системи. Тому, щоб досягти цієї мети, необхідно
провести моделювання предметної області.
Моделювання предметної області включає в себе використання
спеціальних технік та інструментів для створення абстрактної репрезентації
реального світу з усіма його об'єктами, взаємозв'язками та процесами. Це
дозволяє краще зрозуміти, дослідити та оптимізувати функціонування
предметної області.
3.1.1. Предметна область моделювання. Модель предметної області.
Словник предметної області
Створення системи потребує ретельного моделювання, що є важливим
етапом проектування і аналізу. На цьому етапі створюються моделі, які є
візуальним представленням об'єктів або концептів, що існують у предметній
області. Ці моделі можуть мати різні назви, такі як "моделі об'єктів предметної
області", "об'єктні моделі аналізу" або "концептуальні моделі".
Telegram-бот повинен містити наступні кнопки головного меню:
1 «Передати показники лічильника».
2 «Послуги».
3 «Зв’язатися з оператором».
4 «Інформація для споживачів».
5 «Інформація про тарифи».
6 «Вибір відділення».
33
ЧДТУ.232218-023 ПЗ
Кнопка меню «Послуги» повинно складатися з таких розділів меню:
1 Замовити послуги.
2 Детальніше про послуги.
3 Повернутись до головного меню.
Кнопка меню «Послуги» повинно складатися з усіх послуг, які надає
підприємство у вибраному відділенні.
Кнопка меню «Зв’язатися з оператором» повинно складатися з таких
розділів меню:
1 Диспетчер аварійно-диспетчерської служби.
2 Оператор служби обліку природнього газу.
3 Повернутись до головного меню.
Кнопка меню «Інформація для споживачів» повинно складатися з таких
розділів меню:
1 Договір на технічне обслуговування.
2 Дії для заміни газового приладу.
3 Реконструкція системи газопостачання.
4 Договір на розподіл природного газу.
5 Порядок дій якщо у вас відсутній газ.
6 Повернутись до головного меню.
Кнопка меню «Інформація про тарифи» відображає чинний тариф за
послуги розподілу природного газу та повинно складатися з таких розділів меню:
1 Плата за приєднання до газових мереж.
2 Тариф на послуги з розподілу.
3 Повернутись до головного меню.
Кнопка меню «Вибір відділення» повинно складатися з таких розділів
меню:
1 Черкаське відділення.
2 Смілянське відділення.
3 Золотоніське відділення.
4 Канівське відділення.
34
ЧДТУ.232218-023 ПЗ
5 Звенигородське відділення.
6 Жашківське відділення.
7 Шполянське відділення.
Кнопка меню «Головне меню» при виборі повинна перенаправляти
споживача в головне меню бота.
При виборі меню «Передати показники лічильника» у боті відкривається
вікно з формою вводу показників:
Користувач повинен мати можливість заповнити вікно з формою вводу
показників, вводячи такі дані:
– особовий рахунок;
– показник.
Валідація даних:
– особовий рахунок повинен містити від 9 до 10 цифр;
– показник має містити рівно 5 цифр;
– якщо введені дані некоректні, повинно вивести повідомлення про
помилку.
Кнопка "Передати":
– після введення показника бот повинен ще раз перепитати правильність
показника у наступному вигляді «Перевірте, будь ласка правильність введеного
показника. Ви дійсно хочете передати показник <введений показник> по
особовому рахунку <особовий рахунок зареєстрованого споживача>?»;
– також повинно бути дві кнопки «Так» і «Ні», які відповідно
підтверджують прийняття показника або відхиляють його прийняття і
пропонують ввести правильний показник газового лічильника;
– після заповнення форми користувач може натиснути кнопку "Передати"
для надсилання даних.
Відображення результату:
– після успішної обробки даних, користувачеві має виводитись
повідомлення про успішне відправлення;
35
ЧДТУ.232218-023 ПЗ
– якщо при обробці даних сталася помилка (наприклад, не вдалося
відкрити WEB-сторінку), користувачеві має виводитись модальне вікно з
інформацією про помилку.
При передачі показника газу потрібно проводити перевірку на кількість
числових знаків введеного показника, яка не повинно перевищувати 5 цифр.
Словник термінів предметної області є невід'ємним елементом об'єктно-
орієнтованого аналізу та проектування, який отримав однозначне визнання від
усіх теоретиків цього підходу. Він є основою для подальшого використання
авторами прецедентів на наступних етапах розробки.
Для даної предметної області було сформовано словник, який зображений
на рис. 3.1.
Рис. 3.1 – Словник предметної області
3.1.2. Елементи моделювання предметної області
При проектуванні використаємо мову UML для моделювання предметної
області та проектування системи.
Для діаграм мови UML доступні графічні символи, зв'язки (єднальні
елементи) та текст. Основні графічні символи UML зображені на рис. 3.2, а
єднальні елементи UML на рис. 3.3.
36
ЧДТУ.232218-023 ПЗ
Графічне представлення конкретної функціональної можливості
або взаємодії системи з її зовнішнім середовищем.
Графічне представлення що відображає зовнішній суб'єкт, який
взаємодіє з системою, називається актором
Графічне представлення що відображає структуру класу
програмного забезпечення.
Графічне представлення що слугує для організації та групування
елементів моделі, що належать до одного логічного набору.
Графічне представлення що відображає окрему частину системи,
що має визначену функціональність та можливості.
Графічне представлення що відображає точки контакту між
двома частинами системи.
Графічне представлення що представляє взаємодію між
компонентами системи та може включати в себе обчислювальні
вузли, сервери, девайси або інші фізичні або логічні об'єкти.
Графічне представлення що позначає початковий пункт
виконання діаграми або процесу.
Графічне представлення що використовується для моделювання
послідовних дій, процесів або бізнес-логіки, показуючи вхідні та
вихідні дані, прийняття рішень та різні шляхи виконання дій у
системі.
Графічне представлення що визначає логіку розгалуження в
процесі, здійснюючи перехід до різних шляхів в залежності від
умов, що виконуються.
Графічне представлення що вказує на завершення певного шляху
в системі або завершення виконання конкретної дії в
послідовності процесів.
Рис. 3.2 – Основні графічні символи UML
37
ЧДТУ.232218-023 ПЗ
Графічне представлення зв'язку між двома або більше класами,
який вказує на взаємодію чи залежність між ними.
Графічне представлення яке вказує що один клас (частка) є
частиною іншого класу (цілого).
Графічне представлення що відображає зв'язок між цілісним
об'єктом (це "контейнер" або "частина") і його складовими
частинами.
Графічне представлення що показує, що зміна в одному елементі
може вплинути на інший.
Графічне представлення що позначає дію або діяльність, що
відбувається в процесі моделювання.
Графічне представлення що показує перехід від одного стану до
іншого у процесі моделювання.
Рис. 3.3 – Єднальні елементи UML
3.1.3. Робоча область моделювання
Створення системної моделі є складним та ключовим етапом у процесі
проектування. Цей етап включає у себе візуальне уявлення об'єктів або
концептуальних класів, що існують у предметній області. Створені моделі
можуть включати моделі об'єктів предметної області, об'єктні моделі аналізу або
концептуальні моделі.
Даний етап проектування та аналізу розпочинається зі створення моделі
предметної області, де всі об'єкти відображаються на блок-схемі програмного
алгоритму та на рис. 3.4.
38
ЧДТУ.232218-023 ПЗ
Рис. 3.4 – Блок-схема програмного алгоритму
Алгоритм роботи Telegram-боту можна описати за допомогою текстового
варіанту:
Спочатку користувач заходить до Telegram-бота, обирає відділення АТ
«Черкасигаз». З представленого головного меню користувач обирає:
1 Передача показників лічильника.
2 Послуги.
3 Зв’язатися з операторами.
4 Інформація для споживачів.
5 Інформація про тарифи.
У пункті меню «Передача показників лічильника» йде введення у форму,
перевірка та відправлення даних показників газового лічильника.
У пункті меню «Послуги» можна замовити послугу та переглянути
інформацію про послуги.
У пункті меню «Зв’язатися з операторами» можна зв’язатися з
диспетчером аварійно-диспетчерської служби та оператором служби обліку
39
ЧДТУ.232218-023 ПЗ
природного газу.
У пункті меню «Інформація для споживачів» можна ознайомитися з
Договором на технічне обслуговування, Договором на розподіл природного газу,
отримати інформацію про дії для заміни газового приладу, про реконструкцію
системи газопостачання, про порядок дій, якщо у Вас відсутній газ.
У пункті меню «Інформація про тарифи» можна отримати інформацію про
плату до приєднання до газових мереж та тарифи на послуги розподілу.
3.2. Формування та аналіз вимог
Інформаційна система є організаційно-технічною системою, яка
використовує технологію обробки інформації з використанням технічних і
програмних засобів.
Основу будь-якої інформаційної системи складають засоби передачі даних
та повідомлень, засоби аналізу, обробки і представлення інформації, засоби
фіксації та збору інформації, а також засоби збереження інформації.
При проектуванні необхідно сформувати специфікацію програмного
забезпечення, провести проектування програмного забезпечення, здійснити
програмування та тестування, а також провести розгортання програмного
забезпечення.
Процес формування специфікації програмного забезпечення включає
аналіз вимог та документування опису поведінки системи з урахуванням
технічних можливостей та обмежень.
3.2.1. Формування вимог до програмного забезпечення. Первинні і
детальні вимоги. Вимоги замовника і розробника. Функціональні та
нефункціональні вимоги
Існує значна варіативність вимог до програмного забезпечення.
Для забезпечення стабільної роботи Telegram-бота, Каналу з новинами та
нейромережі «Енергорадник» рекомендовано виконати наступні вимоги щодо
програмного забезпечення:
1 Перш за все потрібен смартфон с додатком Telegram або комп’ютер на
любій операційній системі Windows 7 або кращої версії, Linux та інші.
40
ЧДТУ.232218-023 ПЗ
2 Щоб мати стабільну роботу, також важливо мати оновлений Telegram до
останньої версії.
3 Постійний доступ до мережі Інтернет.
Розглянемо функціональні та нефункціональні вимоги щодо програмного
забезпечення для програмного продукту, що будуть реалізовані.
При формулюванні вимог цілком доцільно використовувати класифікацію
вимог до програмних систем, яку в 1992 році запропонував Робейт Грейді, яка
включає наступні вимоги:
1 Функціональність - включає в себе можливості та властивості системи.
2 Зручність в користуванні - спосіб, яким людина використовує систему,
включаючи її легкість використання та послідовність кроків, необхідних для
виконання певних завдань.
3 Надійність - стійкість системи під час використання, частота виникнення
помилок та можливість відновлення до робочого стану після збою.
4 Продуктивність - здатність системи витрачати ресурси в ефективний
спосіб та підтримувати високий рівень продуктивності навіть при збільшенні
масштабу та навантаження системи.
5 Підтримка - характеристика системи, яка включає в себе вимоги до
можливості гнучкості, модульності та розширюваності.
Функціональні вимоги описують поведінку програмного продукту під час
експлуатації. Ці вимоги зазвичай орієнтовані на дії користувача та реакцію
системи на них.
Telegram-бот АТ «Черкасигаз» повинен містити наступний функціонал
(Додаток В):
1 Зберігання інформації про споживачів у базі даних: номер особового
рахунку, переданий показник та дата передачі.
2 Головне меню з кнопками для вибору функціоналу.
3 Прийом показників газового лічильника.
4 Прийом заявок на послуги підприємства.
41
ЧДТУ.232218-023 ПЗ
5 Вибір відділення підприємства.
6 Надання інформації для споживачів.
7 Інформація про тарифи, надані послуги для кожного відділення та зв'язки
з операторами.
8 Електронний помічник споживача - нейромережа «Енергорадник», що
аналізує енергоефективність осель та надає рекомендації щодо зменшення
енерговитрат.
9 Адміністративна панель для оновлення даних в базі даних, експорту
показників, перегляду даних з бази даних та статистики по переданим
показникам та заявкам на послуги.
10 Канал з новинами для сповіщення споживачів про останні новини
підприємства та технічні роботи.
Основні вимоги нейромережі «Енергорадник» (Додаток В):
1 Аналіз та представлення інформації про енергоефективність системи
опалення в зручній для споживача формі:
– відображення показників енергоефективності системи опалення.
2 Аналіз та представлення інформації про споживання газу споживачем в
річному, місячному та добовому аспектах з можливістю вибору будь-якого
періоду для аналізу:
– відображення споживання газу відповідно до обраного періоду;
– порівняння споживання газу в різних періодах.
3 Аналіз та представлення інформації про рекомендовані заходи з
утеплення житла (квартири, будинку тощо) в зручній для споживача формі:
– відображення рекомендованих заходів з утеплення оселі;
– порівняння різних заходів з утеплення за їхньою ефективністю.
4 Аналіз та представлення інформації про різні системи опалення (тверде
паливо, електро тощо) в зручній для споживача формі:
– відображення переваг та недоліків різних систем опалення;
42
ЧДТУ.232218-023 ПЗ
– порівняння різних систем опалення на основі ефективності та вартості.
5 Аналіз та представлення інформації про ефективність роботи газової
системи опалення в зручній для споживача формі:
– відображення ефективності роботи газової системи опалення;
– порівняння ефективності роботи різних систем опалення.
6 Аналіз та представлення інформації про можливі варіанти циклічності
роботи газової системи опалення для опалювальних котлів з виносним
термостатом.
7 Аналіз та представлення інформації та розрахунків стосовно
максимальної економії та ефективного використання енергоресурсів (природний
газ, електричні ресурси та інші) для забезпечення комфортного життя.
Нефункціональні вимоги не орієнтовані на дії користувача, а скоріше на
технічні характеристики системи, такі як швидкодія, масштабованість, безпека,
надійність та інші. Вони є важливим елементом при проектуванні та розробці
системи, оскільки визначають якість та ефективність її роботи.
Нефункціональні вимоги можуть бути визначені як внутрішні вимоги
(тобто вимоги, що стосуються розробки та підтримки системи) або зовнішні
вимоги (тобто вимоги, що стосуються взаємодії з користувачами та зовнішніми
системами). Узагальнюючи, нефункціональні вимоги доповнюють
функціональні вимоги та сприяють покращенню якості та ефективності роботи
системи.
До нефункціональних вимог можна віднести: атрибути якості; обмеження
в проектуванні; реалізація, зовнішні або прикладні програмні інтерфейси.
Також опираючись на класифікацію вимог до програмних систем можна
виділити наступні нефункціональні вимоги:
1 Практичність - це створення зручного інтерфейсу для користувачів
програмного забезпечення. Важливо забезпечити простоту в оволодінні
сервісом, додавши достатньо текстових повідомлень для опису кроків,
43
ЧДТУ.232218-023 ПЗ
необхідних для досягнення мети. Також необхідно порівняти практичність
сервісу з аналогами та використовувати існуючі системи підказок та
документації для спрощення орієнтації користувачів. Використання угод та
стандартів для розробки людино-машинного інтерфейсу також допоможе
забезпечити конкурентоспроможність сервісу.
2 Надійність включає можливість виникнення помилок або відмов у роботі
сервісу. Втрата даних або тривале "падіння" системи є неприйнятними, тому
опис надійності є важливим у створенні програмного забезпечення. У роботі
будь-якого сервісу можуть траплятися помилки та збої, тому важливо зводити
такі ситуації до мінімуму при розробці. Аспекти надійності включають
доступність, час між відмовами, точність, час відновлення, максимальний
коефіцієнт помилок в коді, кількість різних видів помилок.
3 Вимоги продуктивності зазвичай включають: час відповіді для транзакції
(середній або максимальний), пропускну спроможність, ємність та можливість
функціонування в режимі зниження продуктивності для забезпечення
працездатності на обмежених ресурсах.
4 Можливість підтримки системи дозволяє вносити зміни, модифікації,
виправляти несправності і оновлювати можливості системи. Це важливо для
подальшого розвитку і підтримки системи на ранніх етапах проектування.
3.2.2. Формування вимог за допомогою діаграми прецедентів (діаграми
варіантів використання, Use Case)
Діаграма прецедентів, відома також як діаграма варіантів використання
або Use Case, надає чітке візуальне уявлення про вимоги користувачів та
поведінку системи з точки зору користувача. Вона є важливим інструментом для
початкового моделювання динаміки системи та використовується для
визначення вимог замовника до розроблюваної системи. Діаграма прецедентів
дозволяє фіксувати ці вимоги в формі, що сприятиме подальшій розробці та
реалізації проекту.
44
ЧДТУ.232218-023 ПЗ
Рис. 3.5 – Use Case Diagram для Telegram-боту
Як показано на рис. 3.5 на діаграмі використання представлені основні
сценарії використання та актори, задіяні у функціонуванні Telegram-боту
"ChatGPT Assistant". Діаграма допомагає нам зрозуміти, які дії виконує бот, і які
користувачі та системи взаємодіють з ним.
Актори:
Користувач бота: Цей актор представляє звичайного користувача, який
взаємодіє з ботом через платформу Telegram.
Бот: Цей актор представляє комп'ютерну програму, яка створена для
автоматизації спілкування та надання інформації користувачам через платформу
Telegram.
Сценарії використання:
Запит інформації: Користувач на початок роботи з ботом обирає
відділення підприємства з представлених у меню. В головному меню користувач
має змогу переглянути наступну інформацію:
1 Інформацію про послуги підприємства. які він надає у вашому відділенні.
2 Інформацію про операторів до яких користувач може звернутися при
виникненні технічних проблем.
3 Інформацію для споживачів.
45
ЧДТУ.232218-023 ПЗ
4 Інформацію про тарифи.
Відправлення показників лічильника: Після вибору відділення
користувачем він може викликати форму для відправлення показників
лічильника у головному меню натиснувши на відповідну кнопку.
Замовлення послуг підприємства: Після вибору відділення користувачем
він може викликати форму для замовлення послуг підприємства у головному
меню натиснувши на відповідну кнопку.
Відповідь на команди: Бот може реагувати на команди, надіслані
користувачем, та виконувати відповідні дії. Наприклад, якщо користувач
натискає кнопку у головному меню "Інформація про послуги", бот надає
інформацію про доступні у вашому відділенні послуги підприємства.
Відносини:
Асоціація між користувачем і сценаріями використання: Ці асоціації
показують, які дії може виконувати користувач щодо бота.
Рис. 3.6 – Use Case Diagram для адмінпанелі Telegram-боту
Як показано на рис. 3.6 на діаграмі використання представлені основні
сценарії використання і актори, які беруть участь у роботі адміністративної
панелі системи. Діаграма допомагає нам зрозуміти, які дії виконуються
адміністратором, як СУБД взаємодіє з системою, і як сама система працює.
Актори:
46
ЧДТУ.232218-023 ПЗ
Адміністратор: Цей актор представляє адміністратора системи, який має
права доступу до адміністративної панелі для управління системою.
СУБД: Цей актор представляє систему управління базами даних, яка
відповідає за зберігання і обробку даних системи.
Система: Цей актор представляє саму систему, яка включає в себе
додатковий функціонал, не пов'язаний з адмініструванням.
Сценарії використання:
Логін адміністратора: Адміністратор може увійти до адміністративної
панелі, вводячи свої облікові дані.
Відправлення повідомлень у канал з новинами: Адміністратор може
відправляти повідомлення у канал з новинами з адмінпанелі не заходячи до
самого каналу.
Запити до СУБД: Адміністратор може відправляти запити до СУБД для
отримання статистики.
Керування налаштуваннями системи: Адміністратор може налаштовувати
параметри системи через адміністративну панель, наприклад, змінювати права
доступу користувачів (Тільки суперадмін).
Моніторинг системи: Адміністратор може відслідковувати стан системи
та отримувати повідомлення про помилки або проблеми.
Запити до системи: СУБД може взаємодіяти з системою, надсилаючи
запити на отримання, оновлення або видалення даних.
Внутрішні операції системи: Система сама може виконувати внутрішні
операції, які не потребують втручання адміністратора або СУБД.
Відносини:
Асоціація між адміністратором і сценаріями використання: Ці асоціації
показують, які дії може виконувати адміністратор в адміністративній панелі.
Асоціація між СУБД і сценаріями використання: Ці асоціації показують,
як СУБД взаємодіє з адміністративною панеллю та системою.
47
ЧДТУ.232218-023 ПЗ
Асоціація між системою і сценаріями використання: Ці асоціації
показують, як сама система реагує на запити та взаємодіє з адміністратором через
адміністративну панель.
Рис. 3.7 – Use Case Diagram для нейромережі Telegram-боту
Як показано на рис. 3.7 на діаграмі використання показані основні сценарії
використання та актори, що беруть участь у роботі системи нейромережі.
Діаграма допомагає зрозуміти, які дії виконує нейромережа та як користувач
взаємодіє з цією системою.
Актори:
Користувач: Цей актор представляє звичайного користувача, який
взаємодіє із системою нейромережі.
Нейромережа: Цей актор представляє собою нейромережу, який
використовується для розрахунків, прогнозування майбутніх значень та
розробки рекомендацій.
Сценарії використання:
48
ЧДТУ.232218-023 ПЗ
Запит на прогноз майбутнього значення: Користувач може надсилати
системі запит на прогноз майбутніх значень своїх показників Нейромережа
аналізує дані та надсилає прогноз користувачеві.
Аналіз результатів: Користувач може отримувати результати прогнозу та
аналізу від системи. Він може розглядати прогнозовані значення та рекомендації
щодо їх покращення.
Запит на рекомендації для поліпшення: Користувач може надсилати запит
на рекомендації щодо поліпшення майбутніх значень. Нейромережа аналізує
дані та надсилає рекомендації користувачеві.
Відносини:
Асоціація між користувачем і сценаріями використання: Ці асоціації
показують, які дії користувач може виконувати стосовно системи.
Зв'язок між нейромережею та сценаріями використання: Цей зв'язок
показує, що нейромережа використовується для виконання певних дій.
3.2.3. Проектування логічної структури програмного комплексу
Формування і аналіз вимог проектування - це створення концепції для
розв'язання задач системи, тоді як проектування логічної структури системи - це
створення моделі класів і пакетів, що описують компоненти системи. Логічне
проектування також відоме як детальне проектування класів.
3.2.3.1. Діаграми класів
Класи та об'єкти є основними поняттями об'єктно-орієнтованого аналізу й
проектування. Вони використовуються для створення переліку об'єктів або для
аналізу предметної області. Принципи, такі як абстракція, інкапсуляція,
поліморфізм та наслідування, також є важливими у цьому контексті.
Класи на етапі аналізу можуть бути використані для створення глосарію
системи або для аналізу предметної області. Проте, для детального проектування
необхідно деталізувати ці класи до одного або кількох проектних класів. Це
виникає через відсутність повного набору атрибутів та операцій у класах на етапі
аналізу.
49
ЧДТУ.232218-023 ПЗ
Таким чином, класи є основними будівельними блоками детального
проектування. Діаграми класів використовуються для статичного моделювання
об'єктів, опису типів об'єктів системи та статичних відношень між ними. На
діаграмах класів також відображаються властивості класів, операції та
обмеження між об'єктами. Діаграма класів відображає тільки статичну структуру
моделі системи у термінах основних будівельних блоків та відношень між ними.
Інші структурні діаграми, такі як діаграми компонентів та розгортання, також
використовуються для моделювання системи.
Узагальнюючи вище згадане, діаграми класів є важливим інструментом
для детального проектування програмних систем. Вони дозволяють
візуалізувати статичну структуру системи та деталізувати класи з усіма
необхідними атрибутами та операціями.
В даній кваліфікаційній роботі діаграму класів я використовував для опису
типів об'єктів у системі та різних видів статичних відносин, які існують між
ними.
Рис. 3.8 – Class Diagram для Telegram-боту
Як показано на рис. 3.8 на діаграмі класів представлені основні класи та їх
взаємозв'язки, які використовуються у функціонуванні Telegram-боту. Діаграма
допомагає нам розібратися, які класи і які атрибути вони мають, а також
взаємодію між класами.
50
ЧДТУ.232218-023 ПЗ
Класи:
Клас "Бот": Цей клас представляє бота, який обробляє запити
користувачів і надає відповіді. Він може містити методи для обробки
повідомлень та взаємодії з користувачами.
Клас "Замовлення": Клас, який відображає замовлення, які роблять
користувачі бота. Він може містити атрибути, такі як інформація про замовлення
і статус.
Клас "Послуги": Цей клас представляє послуги, які можуть бути замовлені
користувачами. Може містити атрибути, такі як опис послуги і вартість.
Клас "Каталог Послуг": Клас, який відображає каталог послуг, доступних
для користувачів. Він може містити методи для отримання інформації про
послуги та їх опис.
Клас "Користувач": Клас, який представляє користувачів бота. Може
містити атрибути, такі як ім'я користувача і ідентифікатор користувача.
Відносини:
Зв'язок між класами "Користувач" і "Бот": Ця асоціація показує, що
користувачі можуть взаємодіяти з ботом, надсилаючи запити та отримуючи
відповіді.
Зв'язок між класами "Бот" і "Каталог Послуг": Ця асоціація вказує, що
каталог послуг знаходиться у боті.
Зв'язок між класами "Замовлення" і "Послуги": Ця агрегація вказує, що
замовлення можуть містити послуги.
Зв'язок між класами "Бот" і "Замовлення": Ця агрегація вказує, що
замовлення можуть бути представлені в боті.
Як показано на рис. 3.9 на діаграмі класів представлені основні класи
системи, що використовуються в адмінпанелі Telegram-боту. Діаграма
допомагає нам зрозуміти, як ці класи пов'язані між собою та які функції вони
виконують.
51
ЧДТУ.232218-023 ПЗ
Рис. 3.9 – Class Diagram для адмінпанелі Telegram-боту
Класи:
Клас "Система": Цей клас представляє адміністративну систему, яка керує
функціонуванням адмінпанелі Telegram-боту. Він містить методи та властивості,
необхідні для управління системою.
Клас "Користувач": Цей клас відображає користувачів адмінпанелі. Він
може містити інформацію про адміністраторів, які мають доступ до панелі. Та
методи для авторизації та ідентифікації адміністраторів.
Клас "СУБД": Цей клас відображає систему управління базами даних, яка
використовується для зберігання та обробки даних, пов'язаних з адмінпанеллю.
Він також містить методи для взаємодії з базою даних.
Відносини:
Залежність між Системою та СУБД: Ця залежність вказує, що Система
використовує СУБД для зберігання та отримання даних, необхідних для
функціонування адмінпанелі.
Агрегація між Системою та Користувачем: Ця агрегація показує, як
Система взаємодіє з Користувачем, наприклад, як користувачі авторизуються та
використовують адмінпанель.
52
ЧДТУ.232218-023 ПЗ
Рис. 3.10 – Class Diagram для нейромережі Telegram-боту
Як показано на рис. 3.10 на діаграмі класів представлені основні класи та
їх взаємозв'язки, які використовуються у функціонуванні Telegram-боту.
Діаграма допомагає нам розібратися, які класи і які атрибути вони мають, а також
взаємодію між класами.
Класи:
Клас "Нейромережа": Цей клас представляє нейромережу, яка
використовується користувачем для аналізу та обробки даних показників та
обрахування даних енергоефективності його оселі. Нейромережа містить методи
для розрахунків та розробки рекомендацій щодо поліпшення значень
енергоефективності оселі користувача.
Клас "Бот": Цей клас представляє бота, який обробляє запити
користувачів і надає відповіді. Він може містити методи для обробки
повідомлень та взаємодії з користувачами.
Клас "Замовлення": Клас, який відображає замовлення, які роблять
користувачі бота. Він може містити атрибути, такі як інформація про замовлення
і статус.
Клас "Послуги": Цей клас представляє послуги, які можуть бути замовлені
користувачами. Може містити атрибути, такі як опис послуги і
вартість.
53
ЧДТУ.232218-023 ПЗ
Клас "Каталог Послуг": Клас, який відображає каталог послуг, доступних
для користувачів. Він може містити методи для отримання інформації про
послуги та їх опис.
Клас "Користувач": Клас, який представляє користувачів бота. Може
містити атрибути, такі як ім'я користувача і ідентифікатор користувача.
Відносини:
Зв'язок між класами "Користувач" і "Бот": Ця асоціація показує, що
користувачі можуть взаємодіяти з ботом, надсилаючи запити та отримуючи
відповіді.
Зв'язок між класами "Бот" і "Нейромережа": Ця агрегація вказує, що
нейромережа представлена в боті у головному меню.
Зв'язок між класами "Бот" і "Каталог Послуг": Ця асоціація вказує, що
каталог послуг знаходиться у боті.
Зв'язок між класами "Замовлення" і "Послуги": Ця агрегація вказує, що
замовлення можуть містити послуги.
Зв'язок між класами "Бот" і "Замовлення": Ця агрегація вказує, що
замовлення можуть бути представлені в каталозі послуг.
3.2.3.2. Діаграми пакетів
Зручно управляти моделлю де існує небагато класів. Існують системи які
мають більшість класів, а таких багато, тому в даному випадку потрібен
механізм, щоб згрупувати класи і полегшити їх повторне використання. І цим
механізмом є пакети. Пакети угруповують елементи UML, такі як діаграми,
варіанти використання та класи, для розбиття великих моделей на частини з
схожими класами. Це полегшує розуміння та управління проектованою
моделлю. У UML для встановлення взаємодій між пакетами використовується
відношення залежності. Залежність показує, як клас залежить від визначень,
зроблених в іншому класі, і вказує, що модифікація постачальника може
вплинути на клієнта.
54
ЧДТУ.232218-023 ПЗ
Рис. 3.11 – Діаграма пакетів
Дивлячись на діаграму пакетів на рис. 3.11 можна виділити кілька
основних пакетів:
Bot Package: Цей пакет містить модулі та класи, які забезпечують
взаємодію з API Telegram. Він включає модулі для відображення меню, обробки
команд користувача, відповідає за отримання вхідних повідомлень від
користувачів, відправку відповідей і управління різними аспектами роботи з
ботом через Telegram.
WEB app Package: Цей пакет містить модулі, які відповідають за логіку
роботи бота, специфічну для газової компанії. Сюди входять функції надання
послуг газової компанії, передачі лічильників та обрахунків нейромережі.
База даних (БД) (Database) Package: Цей пакет включає компоненти для
зберігання даних, пов'язаних з користувачами та інформації і відомостей
необхідних для роботи бота.
Admin panel Package: Цей компонент відповідає за керування
користувачами адміністративної панелі. У цьому компоненті формуються
55
ЧДТУ.232218-023 ПЗ
аналітичні звіти на основі даних про споживання газу та інші важливі параметри.
Тут здійснюється взаємодія з Telegram API для надсилання повідомлень
користувачам в канал з новинами.
3.3. Архітектурне проектування
Основна мета логічного представлення полягає в аналізі структурних і
функціональних відношень між елементами системної моделі. Проте для
створення конкретної фізичної системи необхідно перетворити логічне
представлення у фізичні сутності. Для цього використовується фізичне
представлення моделі. Фізичне представлення використовується для опису
реальних сутностей, які реалізують логічні елементи моделі.
Створення архітектури системи - це проектування на найвищому рівні
абстракції. Логічна архітектура описує систему у термінах її організації шляхом
визначення пакетів, програмних класів і підсистем. Вона називається логічною,
оскільки не визначає, як саме ці елементи будуть розгортатися в операційних
системах або на фізичних комп'ютерах в мережі - це вже відноситься до
архітектури розгортання.
На етапі архітектурного проектування інформаційної системи проводиться
об’єктно-орієнтована декомпозиція системи до рівня підсистем та їх
взаємозв'язків. Логічна структура системи описується у вигляді пакетів
компонентів, які включають класи та інші компоненти системи. Для подання цієї
структури використовується діаграма компонентів.
3.3.1. Діаграма компонентів
Діаграма компонентів відображає визначення, внутрішню структуру та
зв'язки між компонентами, що складають систему. У діаграмі компонентів
можуть бути представлені різні фізичні компоненти, такі як файли, бази даних,
бібліотеки, модулі, пакети, інтерфейси інформаційні системи та інші.
Пояснення діаграми зображеної на рис. 3.12:
56
ЧДТУ.232218-023 ПЗ
Рис. 3.12 – Діаграма Component (Telegram-бот)
Компоненти:
Користувач: Компонент, який представляє користувачів бота.
Telegram-бот: Основний компонент системи, який надає інтерфейс для
клієнтів для замовлення послуг та спілкування з компанією через платформу
Telegram.
WEB App: Компонент, який відображає та відправляє заявки до БД
замовлень з каталогу послуг, та форми для передачі показників лічильника
доступних для користувачів.
База даних (БД): Компонент, який відображає систему управління базами
даних, яка використовується для зберігання та обробки даних, пов'язаних з
замовленнями та показниками лічильника.
Взаємодія між компонентами:
Замовлення послуг: Клієнт взаємодіє з Telegram-ботом для замовлення
певної послуги. Інформація про замовлення передається до системи керування
57
ЧДТУ.232218-023 ПЗ
замовленнями.
Обробка замовлення: Система керування замовленнями приймає
інформацію про замовлення та зберігає її. При необхідності вона може
реєструвати замовлення інших клієнтів.
Повідомлення клієнту: Коли послуга виконана, система може автоматично
або вручну повідомити клієнта через Telegram-бот.
Комунікація з користувачами: Користувач на початок роботи з ботом
обирає відділення підприємства з представлених у меню. В головному меню
користувач має змогу переглянути наступну інформацію:
1 Інформацію про послуги підприємства які він надає у вашому відділенні.
2 Інформацію про операторів до яких користувач може звернутися при
виникненні технічних проблем.
3 Інформацію для споживачів.
4 Інформацію про тарифи.
Рис. 3.13 – Діаграма Component (Адмінпанель)
Пояснення діаграми зображеної на рис. 3.13:
Компоненти:
58
ЧДТУ.232218-023 ПЗ
Користувач: Компонент, який представляє користувачів бота.
Адмінпанель: Основний компонент системи, який надає інтерфейс для
системи, яка керує функціонуванням адмінпанелі Telegram-бота.
База даних (БД): Компонент, який відображає систему управління базами
даних, яка використовується для зберігання та обробки даних, пов'язаних з
замовленнями та показниками лічильника.
Канал з новинами: Компонент, який надає інтерфейс для надання
інформації споживачу, такої як: (новини, повідомлення, інформування про
технічні роботи та ін.)
Взаємодія між компонентами:
Відправлення повідомлень у канал з новинами: Адміністратор може
відправляти повідомлення у канал з новинами без потреби входити у сам канал.
Запити до СУБД: Адміністратор може надсилати запити до системи
управління базами даних (СУБД) для отримання статистичних даних.
Керування налаштуваннями системи: Адміністратор може змінювати
налаштування системи через адміністративну панель, зокрема права доступу
користувачів, іноді їх буває кілька рівнів доступу, наприклад, "Тільки
суперадмін".
Моніторинг системи: Адміністратор може відстежувати стан системи і
отримувати повідомлення про помилки або проблеми, які виникають у боті.
Запити до системи: СУБД може взаємодіяти з системою, надсилаючи
запити на отримання, оновлення або видалення даних, адміністратор може
керувати цими запитами через адміністративну панель.
Внутрішні операції системи: Система сама може виконувати внутрішні
операції, які не потребують втручання адміністратора або СУБД. Наприклад,
59
ЧДТУ.232218-023 ПЗ
система може автоматично оновлювати базу даних з новими даними, що
надходять від адміністратора.
Рис. 3.14 – Діаграма Component (Адмінпанель)
Пояснення діаграми зображеної на рис. 3.14:
Компоненти:
Користувач: Компонент, який представляє користувачів бота.
Telegram-бот: Основний компонент системи, який надає інтерфейс для
клієнтів для замовлення послуг та спілкування з компанією через платформу
Telegram.
WEB App: Компонент, який відображає та відправляє заявки до БД
замовлень з каталогу послуг, та форми для передачі показників лічильника
доступних для користувачів.
База даних (БД): Компонент, який відображає систему управління базами
даних, яка використовується для зберігання та обробки даних, пов'язаних з
замовленнями та показниками лічильника.
60
ЧДТУ.232218-023 ПЗ
Нейромережа: Компонент, який відображає нейромережу, яка
використовується для розрахунків, прогнозування майбутніх значень та
розробки рекомендацій.
Взаємодія між компонентами:
Замовлення послуг: Клієнт взаємодіє з Telegram-ботом для замовлення
певної послуги. Інформація про замовлення передається до системи керування
замовленнями.
Обробка замовлення: Система керування замовленнями приймає
інформацію про замовлення та зберігає її. При необхідності вона може
реєструвати замовлення інших клієнтів.
Повідомлення клієнту: Коли послуга виконана, система може автоматично
або вручну повідомити клієнта через Telegram-бот.
Комунікація з користувачами: Користувач на початок роботи з ботом
обирає відділення підприємства з представлених у меню. В головному меню
користувач має змогу переглянути наступну інформацію:
1 Інформацію про послуги підприємства які він надає у вашому відділенні.
2 Інформацію про операторів до яких користувач може звернутися при
виникненні технічних проблем.
3 Інформацію для споживачів.
4 Інформацію про тарифи.
Зчитування та запис в базу даних: Дані, отримані від користувачів та
нейромережі, зберігаються в базі даних для подальшого аналізу та використання.
Запит на прогноз майбутнього значення: Користувач може надсилати
системі запит на прогноз майбутніх значень своїх показників Нейромережа
аналізує дані та надсилає прогноз користувачеві.
Аналіз результатів: Користувач може отримувати результати прогнозу та
61
ЧДТУ.232218-023 ПЗ
аналізу від системи. Він може розглядати прогнозовані значення та рекомендації
щодо їх покращення.
Запит на рекомендації для поліпшення: Користувач може надсилати запит
на рекомендації щодо поліпшення майбутніх значень. Нейромережа аналізує
дані та надсилає рекомендації користувачеві.
3.3.2. Розгортання програмної системи на апаратних засобах. Діаграма
розгортання
Під час впровадження програмної системи на апаратних пристроях
використовується діаграма розгортання, яка відображає розміщення фізичних
компонентів програмної системи на апаратному обладнанні. Ця діаграма
ілюструє, як компоненти програми розміщені на серверах, комп'ютерах,
мережевих пристроях та інших апаратних ресурсах, а також показує їх
взаємозв'язки. Вона допомагає розібрати архітектурні особливості впровадження
системи та визначити, як програмна система буде використовувати апаратні
засоби для задоволення потреб користувачів.
Рис. 3.15 – Діаграма розгортання
62
ЧДТУ.232218-023 ПЗ
Діаграма розгортання, яка зображена на рис. 3.15, відображає архітектуру
системи газової компанії, яка включає в себе Telegram-бот для спілкування з
користувачами. У цій діаграмі є кілька вузлів:
Сервер (Server): Цей вузол відповідає за забезпечення роботи та обробку
запитів від бота, передаючи їх до відповідних частин системи.
Бот (Bot): Це ПЗ, що відповідає на запити користувачів через платформу
Telegram та взаємодіє з іншими компонентами системи.
WEB-додаток (WEB app): Вузол, який надає можливість користувачам
звертатися до системи через WEB-інтерфейс, який доступний для розрахунків,
прогнозування майбутніх значень та розробки рекомендацій, відстеження витрат
газу тощо.
База даних (БД) (DB): Це місце, де зберігається вся необхідна інформація
про користувачів, споживання газу та інші деталі.
Користувачі (Users): Цей вузол представляє користувачів, які
взаємодіють з системою через панель адміністратора.
Панель адміністратора (Admin panel): Вузол, призначений для
адміністраторів або працівників газової компанії для управління та моніторингу
системи, доступу до аналітики та іншої важливої інформації.
Пристрій (Device): Це пристрій, на якому користувачі використовують
Telegram-бот газової компанії, наприклад, смартфон, планшет або комп’ютер.
Ця діаграма демонструє взаємодію різних компонентів системи газової
компанії, починаючи від бота, який служить як інтерфейс для користувачів, до
бази даних, яка забезпечує збереження та доступ до важливої інформації про
користувачів та їхнє газове споживання.
3.4. Моделювання поведінки системи.
При створенні програмної системи необхідно розуміти, як система працює.
Це відображається за допомогою моделі поведінки, яка описує алгоритм роботи
системи та взаємодію об'єктів за допомогою діаграм діяльності, взаємодії та
кінцевих автоматів. UML надає різні засоби для опису поведінки, такі як
діаграми станів для опису життєвого циклу об'єкта та
63
ЧДТУ.232218-023 ПЗ
діаграми діяльності для опису потоку управління.
3.4.1. Діаграма діяльності
Опис вимог у формі варіантів використання є дуже важливим кроком у
процесі розробки програмного забезпечення. На цьому кроці замовник і аналітик
узгоджують, як має працювати і виглядати система. На основі погоджених вимог
потрібно спроектувати і реалізувати систему.
Завдання аналітика на цьому кроці – перетворити варіанти використання
на технічний опис структури і поведінки системи, який буде зрозумілий для
архітекторів і розробників. Таким чином, перехід від моделювання використання
до інших видів моделювання полягає в уточненні, деталізації та конкретизації
варіантів використання.
В даній кваліфікаційній роботі діаграму діяльності я використовував для
опису поведінки програмного продукту, що включало велику кількість
паралельних процесів.
Рис. 3.16 – Activity Diagram для Telegram-боту
64
ЧДТУ.232218-023 ПЗ
Пояснення діаграми, яка зображена на рис. 3.16:
Дії:
Запит інформації: Користувач на початок роботи з ботом обирає
відділення підприємства з представлених у меню. В головному меню користувач
має змогу переглянути наступну інформацію:
1 Інформацію про послуги підприємства, які він надає у вашому відділенні.
2 Інформацію про операторів до яких користувач може звернутися при
виникненні технічних проблем.
3 Інформацію для споживачів.
4 Інформацію про тарифи.
Відправлення показників лічильника: Після вибору відділення
користувачем він може викликати форму для відправлення показників
лічильника у головному меню натиснувши на відповідну кнопку.
Замовлення послуг підприємства: Після вибору відділення користувачем
він може викликати форму для замовлення послуг підприємства у головному
меню натиснувши на відповідну кнопку.
Відповідь на команди: Бот може реагувати на команди, надіслані
користувачем, та виконувати відповідні дії. Наприклад, якщо користувач
натискає кнопку у головному меню " Інформацію про послуги", бот надає
інформацію про доступні у вашому відділенні послуги підприємства.
Пояснення діаграми, яка зображена на рис. 3.17:
Дії:
Логін адміністратора: Адміністратор може увійти до адміністративної
панелі, вводячи свої облікові дані.
Відправлення повідомлень до каналу з новинами: Адміністратор може
відправляти повідомлення до каналу з новинами з адмінпанелі не заходячи до
самого каналу.
Запити до СУБД: Адміністратор може відправляти запити до СУБД для
отримання статистики.
65
ЧДТУ.232218-023 ПЗ
Рис. 3.17 – Activity Diagram для адмінпанелі Telegram-боту
Керування налаштуваннями системи: Адміністратор може налаштовувати
параметри системи через адміністративну панель, наприклад, змінювати права
доступу користувачів (Тільки суперадмін).
Моніторинг системи: Адміністратор може відслідковувати стан системи
та отримувати повідомлення про помилки або проблеми.
Запити до системи: СУБД може взаємодіяти з системою, надсилаючи
запити на отримання, оновлення або видалення даних.
Внутрішні операції системи: Система сама може виконувати внутрішні
операції, які не потребують втручання адміністратора або СУБД.
66
ЧДТУ.232218-023 ПЗ
Рис. 3.18 – Activity Diagram для нейромережі Telegram-боту
Пояснення діаграми, яка зображена на рис. 3.18:
Дії:
Запит на прогноз майбутнього значення: Користувач може надсилати
системі запит на прогноз майбутніх значень своїх показників Нейромережа
аналізує дані та надсилає прогноз користувачеві.
Аналіз результатів: Користувач може отримувати результати прогнозу та
аналізу від системи. Він може розглядати прогнозовані значення та рекомендації
щодо їх покращення.
Запит на рекомендації для поліпшення: Користувач може надсилати запит
на рекомендації щодо поліпшення майбутніх значень. Нейромережа аналізує
дані та надсилає рекомендації користувачеві.
3.4.2. Діаграма послідовності
Опис вимог у формі варіантів використання є дуже важливим кроком у
процесі розробки програмного забезпечення. На цьому кроці замовник і аналітик
67
ЧДТУ.232218-023 ПЗ
узгоджують, як має працювати і виглядати система.
На основі погоджених вимог потрібно спроектувати і реалізувати систему.
Завдання аналітика на цьому кроці – перетворити варіанти використання
на технічний опис структури і поведінки системи, зрозумілий для архітекторів і
розробників.
Таким чином, перехід від моделювання використання до інших видів
моделювання полягає в уточненні, деталізації та конкретизації варіантів
використання.
В даній кваліфікаційній роботі діаграму послідовності я використовував
для уточнення діаграм прецедентів, більш детального опису логіки сценаріїв
використання.
Рис. 3.19 – Sequence Diagram для Telegram-боту
68
ЧДТУ.232218-023 ПЗ
Як показано на рис. 3.19 ця діаграма послідовності ілюструє послідовність
взаємодій між актором (користувачем) та різними компонентами системи -
ботом, WEB-додатком та базою даних (БД) - підчас взаємодії з Telegram-ботом.
Актори:
Користувач: Цей актор представляє звичайного користувача Telegram,
який взаємодіє з ботом.
Лінії життя:
Бот: Лінія життя бота показує, як бот реагує на повідомлення та інші
запити від користувача. Він може відправляти та отримувати повідомлення.
WEB-додаток: Ця лінія життя представляє WEB-додаток, який обробляє
дані, які користувач надсилає через Telegram-бота, і зберігає їх в базі даних.
База даних (БД): Лінія життя бази даних показує, як дані зберігаються та
використовуються в системі.
Послідовність подій:
Запит інформації: Користувач на початок роботи з ботом обирає
відділення підприємства з представлених у меню. В головному меню користувач
має змогу переглянути наступну інформацію:
1 Інформацію про послуги підприємства, які він надає у вашому відділенні.
2 Інформацію про операторів до яких користувач може звернутися при
виникненні технічних проблем.
3 Інформацію для споживачів.
4 Інформацію про тарифи.
Відправлення показників лічильника: Після вибору відділення
користувачем він може викликати форму для відправлення показників
лічильника у головному меню натиснувши на відповідну кнопку.
Замовлення послуг підприємства: Після вибору відділення користувачем
він може викликати форму для замовлення послуг підприємства у головному
меню натиснувши на відповідну кнопку.
Відповідь на команди: Бот може реагувати на команди, надіслані
користувачем, та виконувати відповідні дії. Наприклад, якщо користувач
69
ЧДТУ.232218-023 ПЗ
натискає кнопку у головному меню "Інформацію про послуги", бот надає
інформацію про доступні у вашому відділенні послуги підприємства.
Рис. 3.20 – Sequence Diagram для адмінпанелі Telegram-боту
Як показано на рис. 3.20 ця діаграма послідовності відображає основні
взаємодії між актором (адміністратором) та системними компонентами, такими
як адмінпанель, БД (база даних) і Telegram канал з новинами. Діаграма вказує
послідовність подій та взаємодій в контексті адміністрування та оновлення
новин.
Актори:
70
ЧДТУ.232218-023 ПЗ
Адміністратор: Цей актор представляє адміністратора системи, який має
права доступу до адміністраторської панелі та може оновлювати інформацію у
Telegram каналі з новинами.
Лінії життя:
Адмінпанель: Лінія життя адмінпанелі показує взаємодію адміністратора з
адміністраторською панеллю для внесення змін до новин у Telegram каналі.
База даних (БД): Лінія життя Бази даних представляє собою звернення до
бази даних для зберігання та отримання інформації.
Telegram канал з новинами: Лінія життя Telegram каналу показує відправку
нових новин у Telegram канал за допомогою бота.
Послідовність подій:
Логін адміністратора: Адміністратор може увійти до адміністративної
панелі, вводячи свої облікові дані.
Відправлення повідомлень у канал з новинами: Адміністратор може
відправляти повідомлення у канал з новинами з адмінпанелі не заходячи до
самого каналу.
Запити до СУБД: Адміністратор може відправляти запити до СУБД для
отримання статистики.
Керування налаштуваннями системи: Адміністратор може налаштовувати
параметри системи через адміністративну панель, наприклад, змінювати права
доступу користувачів (Тільки суперадмін).
Моніторинг системи: Адміністратор може відслідковувати стан системи
та отримувати повідомлення про помилки або проблеми.
Запити до системи: СУБД може взаємодіяти з системою, надсилаючи
запити на отримання, оновлення або видалення даних.
Внутрішні операції системи: Система сама може виконувати внутрішні
операції, які не потребують втручання адміністратора або СУБД.
71
ЧДТУ.232218-023 ПЗ
Рис. 3.21 – Sequence Diagram для нейромережі Telegram-боту
Як показано на рис. 3.21 ця діаграма послідовності відображає основні
взаємодії між актором (Користувачем) та системними компонентами, такими як
Нейромережа, база даних (БД) і Бот. Діаграма вказує послідовність подій та
72
ЧДТУ.232218-023 ПЗ
взаємодій в контексті дій які виконує нейромережа та як користувач взаємодіє з
цією системою.
Актори:
Користувач: Цей актор представляє звичайного користувача Telegram,
який взаємодіє з ботом.
Лінії життя:
Нейромережа: Лінія життя нейромережа представляє, яким чином
нейромережа використовується для розрахунків, прогнозування майбутніх
значень та розробки рекомендацій.
БД (База даних): Лінія життя Бази даних представляє звернення до бази
даних для зберігання та отримання інформації.
Бот: Лінія життя бота показує, як бот реагує на повідомлення та інші
запити від користувача. Він може відправляти та отримувати повідомлення.
Послідовність подій:
Запит на прогноз майбутнього значення: Користувач може надсилати
системі запит на прогноз майбутніх значень своїх показників Нейромережа
аналізує дані та надсилає прогноз користувачеві.
Аналіз результатів: Користувач може отримувати результати прогнозу та
аналізу від системи. Він може розглядати прогнозовані значення та рекомендації
щодо їх покращення.
Запит на рекомендації для поліпшення: Користувач може надсилати запит
на рекомендації щодо поліпшення майбутніх значень. Нейромережа аналізує
дані та надсилає рекомендації користувачеві.
3.4.3. Діаграма комунікації
Як і діаграма послідовності, діаграма комунікації (Collaboration Diagram)
використовується для опису взаємодії об'єктів та протоколу обміну
повідомленнями між ними. Один і той самий об'єкт може брати участь у різних
взаємодіях, виконуючи різні ролі. Таким чином, взаємодія завжди відбувається в
контексті, що визначається групою учасників, які беруть участь у взаємодії
об'єктів, а також зв'язками між ними.
73
ЧДТУ.232218-023 ПЗ
Рис. 3.22 – Collaboration Diagram для всієї системи Telegram-боту
Як показано на рис. 3.22 на діаграмі співпраці показані основні взаємодії
та обмін повідомленнями між акторами у системі Telegram-боту. Діаграма
допомагає нам зрозуміти, як актори співпрацюють один з одним для
забезпечення роботи бота.
Актори:
Користувач бота: Цей актор представляє звичайного користувача, який
взаємодіє з ботом через платформу Telegram.
Нейромережа: Цей актор представляє собою нейромережу, який
використовується для розрахунків, прогнозування майбутніх значень та
розробки рекомендацій
Бот: Цей актор представляє комп'ютерну програму, яка створена для
автоматизації спілкування та надання інформації користувачам через платформу
Telegram.
СУБД: Цей актор представляє систему управління базами даних, яка
відповідає за зберігання і обробку даних системи.
Система: Цей актор представляє саму систему, яка включає в себе
додатковий функціонал, не пов'язаний з адмініструванням.
74
ЧДТУ.232218-023 ПЗ
Адміністратор: Цей актор представляє адміністратора системи, який має
права доступу до адміністративної панелі для управління системою.
Сценарії використання:
Запит інформації: Користувач на початок роботи з ботом обирає
відділення підприємства з представлених у меню. В головному меню користувач
має змогу переглянути наступну інформацію:
1 Інформацію про послуги підприємства, які він надає у вашому відділенні.
2 Інформацію про операторів до яких користувач може звернутися при
виникненні технічних проблем.
3 Інформацію для споживачів.
4 Інформацію про тарифи.
Відправлення показників лічильника: Після вибору відділення
користувачем він може викликати форму для відправлення показників
лічильника у головному меню натиснувши на відповідну кнопку.
Замовлення послуг підприємства: Після вибору відділення користувачем
він може викликати форму для замовлення послуг підприємства у головному
меню натиснувши на відповідну кнопку.
Відповідь на команди: Бот може реагувати на команди, надіслані
користувачем, та виконувати відповідні дії. Наприклад, якщо користувач
натискає кнопку у головному меню "Інформацію про послуги", бот надає
інформацію про доступні у вашому відділенні послуги підприємства.
Запит на прогноз майбутнього значення: Користувач може надсилати
системі запит на прогноз майбутніх значень своїх показників Нейромережа
аналізує дані та надсилає прогноз користувачеві.
Аналіз результатів: Користувач може отримувати результати прогнозу та
аналізу від системи. Він може розглядати прогнозовані значення та рекомендації
щодо їх покращення.
Запит на рекомендації для поліпшення: Користувач може надсилати запит
на рекомендації щодо поліпшення майбутніх значень. Нейромережа аналізує
дані та надсилає рекомендації користувачеві.
75
ЧДТУ.232218-023 ПЗ
Логін адміністратора: Адміністратор може увійти до адміністративної
панелі, вводячи свої облікові дані.
Відправлення повідомлень у канал з новинами: Адміністратор може
відправляти повідомлення у канал з новинами з адмінпанелі не заходячи до
самого каналу.
Запити до СУБД: Адміністратор може відправляти запити до СУБД для
отримання статистики.
Керування налаштуваннями системи: Адміністратор може налаштовувати
параметри системи через адміністративну панель, наприклад, змінювати права
доступу користувачів (Тільки суперадмін).
Моніторинг системи: Адміністратор може відслідковувати стан системи
та отримувати повідомлення про помилки або проблеми.
Запити до системи: СУБД може взаємодіяти з системою, надсилаючи
запити на отримання, оновлення або видалення даних.
Внутрішні операції системи: Система сама може виконувати внутрішні
операції, які не потребують втручання адміністратора або СУБД.
3.4.4. Діаграма скінченного автомату (Діаграма станів)
Діаграма кінцевого автомата, також відома як діаграма станів, відображає
послідовність станів, через які проходить об'єкт, надаючи потік управління.
Кінцевий автомат - це поведінка, яка описує послідовність станів під час
існування об'єкту. Діаграма конкретизує дію, яка виконується об'єктом для
кожного стану, коли об'єкт отримує сигнал про подію. Той самий об'єкт може
виконувати різні дії відповідно до стану, в якому він знаходиться. Виконання дій
часто призводить до зміни стану об'єкта. Таким чином, моделювання станів
ґрунтується на поняттях "подія" та "стан".
76
ЧДТУ.232218-023 ПЗ
Рис. 3.23 – State Diagram для Telegram-боту
Як показано на рис. 3.23 на діаграмі станів представлені різні стани, в яких
може перебувати Telegram-бот, а також переходи між ними. Діаграма
допомагає нам розуміти, як бот реагує на вхідні події та змінює свій стан.
Стани:
Запит інформації: Користувач на початок роботи з ботом обирає
відділення підприємства з представлених у меню. В головному меню користувач
має змогу переглянути наступну інформацію:
1 Інформацію про послуги підприємства які він надає у вашому відділенні.
2 Інформацію про операторів до яких користувач може звернутися при
виникненні технічних проблем.
3 Інформацію для споживачів.
4 Інформацію про тарифи.
Відправлення показників лічильника: Після вибору відділення
користувачем він може викликати форму для відправлення показників
лічильника у головному меню натиснувши на відповідну кнопку.
77
ЧДТУ.232218-023 ПЗ
Замовлення послуг підприємства: Після вибору відділення користувачем
він може викликати форму для замовлення послуг підприємства у головному
меню натиснувши на відповідну кнопку.
Відповідь на команди: Бот може реагувати на команди, надіслані
користувачем, та виконувати відповідні дії. Наприклад, якщо користувач
натискає кнопку у головному меню "Інформацію про послуги", бот надає
інформацію про доступні у вашому відділенні послуги підприємства.
Події:
Введення користувача: Ця подія виникає, коли користувач надсилає
текстове повідомлення боту.
Аналіз завершено: Ця подія відбувається після успішного аналізу введення
користувача.
Відповідь надіслана: Після відправлення відповіді користувачеві, ця подія
вказує, що бот завершує обробку даного запиту.
Передача показників: Ця подія виникає, коли користувач надсилає
показники лічильника.
Замовлення послуг: Ця подія виникає, коли користувач замовляє послуги
підприємства.
Переходи:
З очікування введення до аналізу введення: Після отримання введення
користувача, бот переходить у стан "Аналіз введення" для обробки тексту.
З аналізу введення до відправлення відповіді: Після успішного аналізу
тексту бот готує відповідь та переходить у стан "Відправлення відповіді" для
надсилання відповіді користувачеві.
З відправлення відповіді до завершення: Після надсилання відповіді бот
переходить до стану завершення обробки запиту.
З відправлення відповіді до завершення: Після натискання користувачем
кнопки надсилання показників бот відправляє дані до БД.
З відправлення відповіді до завершення: Після натискання користувачем
кнопки замовити послугу бот відправляє заявку до БД.
78
ЧДТУ.232218-023 ПЗ
Рис. 3.24 – State Diagram для адмінпанелі Telegram-боту
79
ЧДТУ.232218-023 ПЗ
Як показано на рис. 3.24 на діаграмі станів показані можливі стани та
переходи в адмінпанелі Telegram-бота. Діаграма допомагає нам розібратися, як
адміністратор може взаємодіяти з панеллю та які дії він може виконувати.
Стани:
Логін адміністратора: Адміністратор може увійти до адміністративної
панелі, вводячи свої облікові дані.
Відправлення повідомлень у канал з новинами: Адміністратор може
відправляти повідомлення у канал з новинами з адмінпанелі не заходячи до
самого каналу.
Запити до СУБД: Адміністратор може відправляти запити до СУБД для
отримання статистики.
Керування налаштуваннями системи: Адміністратор може налаштовувати
параметри системи через адміністративну панель, наприклад, змінювати права
доступу користувачів (Тільки суперадмін).
Моніторинг системи: Адміністратор може відслідковувати стан системи
та отримувати повідомлення про помилки або проблеми.
Запити до системи: СУБД може взаємодіяти з системою, надсилаючи
запити на отримання, оновлення або видалення даних.
Внутрішні операції системи: Система сама може виконувати внутрішні
операції, які не потребують втручання адміністратора або СУБД.
Події:
Логін адміністратора: Адміністратор може увійти до адміністративної
панелі, вводячи свої облікові дані.
Відправлення повідомлень у канал з новинами: Адміністратор може
відправляти повідомлення у канал з новинами з адмінпанелі не заходячи до
самого каналу.
Запити до СУБД: Адміністратор може відправляти запити до СУБД для
отримання статистики.
80
ЧДТУ.232218-023 ПЗ
Керування налаштуваннями системи: Адміністратор може налаштовувати
параметри системи через адміністративну панель, наприклад, змінювати права
доступу користувачів (Тільки суперадмін).
Моніторинг системи: Адміністратор може відслідковувати стан системи
та отримувати повідомлення про помилки або проблеми.
Запити до системи: СУБД може взаємодіяти з системою, надсилаючи
запити на отримання, оновлення або видалення даних.
Внутрішні операції системи: Система сама може виконувати внутрішні
операції, які не потребують втручання адміністратора або СУБД.
Переходи:
Вхід в адмінпанель: Перехід зі стартового стану в адмінпанель після входу
адміністратора.
Перехід до статистики: Перехід зі стартового стану до стану перегляду
статистики.
Перехід до керування користувачами: Перехід зі стартового стану до стану
керування даними СУБД.
Перехід до налаштувань бота: Перехід зі стартового стану до стану
налаштувань адмінпанелі.
Вихід з адмінпанелі: Перехід з будь-якого стану назад у початковий стан,
коли адміністратор завершує сеанс роботи.
Рис. 3.25 – State Diagram для нейромережі Telegram-боту
81
ЧДТУ.232218-023 ПЗ
Як показано на рис. 3.25 на діаграмі станів показані можливі стани та
переходи в адмінпанелі Telegram-бота. Діаграма допомагає нам розібратися, як
адміністратор може взаємодіяти з панеллю та які дії він може виконувати.
Стани:
Запит на прогноз майбутнього значення: Користувач може надсилати
системі запит на прогноз майбутніх значень своїх показників Нейромережа
аналізує дані та надсилає прогноз користувачеві.
Аналіз результатів: Користувач може отримувати результати прогнозу та
аналізу від системи. Він може розглядати прогнозовані значення та рекомендації
щодо їх покращення.
Запит на рекомендації для поліпшення: Користувач може надсилати запит
на рекомендації щодо поліпшення майбутніх значень. Нейромережа аналізує
дані та надсилає рекомендації користувачеві.
Події:
Запит на прогноз майбутнього значення: Користувач може надсилати
системі запит на прогноз майбутніх значень своїх показників Нейромережа
аналізує дані та надсилає прогноз користувачеві.
Аналіз результатів: Користувач може отримувати результати прогнозу та
аналізу від системи. Він може розглядати прогнозовані значення та рекомендації
щодо їх покращення.
Запит на рекомендації для поліпшення: Користувач може надсилати запит
на рекомендації щодо поліпшення майбутніх значень. Нейромережа аналізує
дані та надсилає рекомендації користувачеві.
Переходи:
Вхідні дані від користувача: Після того як користувач надсилає дані через
Telegram-бот, нейромережа переходить з початкового стану до стану розрахунку
даних для обробки вхідних даних.
82
ЧДТУ.232218-023 ПЗ
Завершення розрахунків: Після завершення аналізу та прогнозування
нейромережа переходить до стану надання рекомендацій для повернення
результатів користувачеві через Telegram.
Висновок до третього розділу
Моделювання предметної області є важливим етапом у процесі
проектування систем та програмного забезпечення. Цей процес передбачає
використання спеціальних технік та інструментів для створення абстрактної
репрезентації реального світу з усіма його об'єктами, взаємозв'язками та
процесами. Це дозволяє краще зрозуміти, дослідити та оптимізувати
функціонування предметної області.
Для того, щоб розробити ефективну систему, яка задовольнятиме всі
потреби користувачів Telegram-боту та нейромережі "Енергорадник", необхідно
мати глибоке розуміння функціонування цієї системи. Тому перед розробкою
необхідно провести моделювання предметної області, використовуючи
спеціальні техніки та інструменти для створення абстрактної репрезентації
реального світу з усіма його об'єктами, взаємозв'язками та процесами.
Під час проектування було оцінено потужність інструменту, також були
розроблені основні діаграми, такі як діаграма класів, діаграма пакетів, діаграма
компонентів, діаграма розгортання, діаграма діяльності, діаграма послідовності,
діаграма комунікації, діаграма скінченого автомату.
83
ЧДТУ.232218-023 ПЗ
РОЗДІЛ 4. РОЗРОБКА ТА ТЕСТУВАННЯ ПРОГРАМНОГО
ЗАБЕЗПЕЧЕННЯ
4.1. Розробка програмного комплексу
Розробка Telegram-бота передбачає використання різноманітних
інструментів і технологій. Процес розробки включає аналіз вимог, визначення
ключових функцій, проектування інтерфейсу та створення необхідних модулів.
Велика увага приділяється взаємодії бота з базою даних компанії для отримання
актуальної інформації для користувачів.
4.1.1. Обґрунтування вибору засобів реалізації
Для розробки програмного агенту та чат-боту використано ряд ефективних
інструментів, які відповідають вимогам та завданням проєкту.
Щодо мов програмування, вибір пав на HTML, CSS і JS. Цей вибір
обґрунтований їхньою широкою поширеністю та високою популярністю у WEB-
розробці. HTML використовується для структуризації WEB-сторінок, CSS
забезпечує стилізацію та зовнішній вигляд інтерфейсу, а JS використовується
для програмування логіки WEB-сайту та взаємодії з користувачем.
Telegram API було вибрано для створення чат-боту через його
популярність та простоту використання. Отримання API ключа від BotFather
надає повний доступ до функціоналу Telegram та дозволяє ефективно керувати
ботами. Використання бібліотеки Telegram Bot API дозволяє розробникам
зручно взаємодіяти з Telegram та отримувати оновлення в реальному часі.
У сфері WEB-технологій використано ReactJS для швидкої розробки
інтерфейсів користувача, а NodeJS та ExpressJS відіграють роль у розробці
серверної частини додатку. Axios використовується для зручного виконання
HTTP-запитів, Bootstrap та jQuery використовуються для швидкої стилізації та
розмітки WEB-сторінок. Використання CORS middleware дозволяє ефективно
керувати HTTP-запитами відповідно до політики безпеки браузера.
84
ЧДТУ.232218-023 ПЗ
Даний набір інструментів було обрано з урахуванням їхньої сумісності,
швидкості розробки та забезпечення високої продуктивності в реалізації
функціоналу проєкту.
4.1.2. Опис структурної (функціональної) схеми
Опис структурної (функціональної) схеми є ключовим етапом у процесі
розробки Telegram-бота для газової компанії. Ця схема визначає основні функції
системи та взаємозв'язки між ними. Вона відображає логіку роботи бота, його
можливості та способи взаємодії з користувачем. Структурна схема включає в
себе блоки, які відповідають окремим функціям бота, і зв'язки між ними, що
показують порядок виконання операцій. Опис структурної (функціональної)
схеми можна побачити на рис. 4.1.
Рис. 4.1 – Структурна (функціональна) схема
4.1.3. Опис логічної схеми системи
Опис логічної схеми системи включає в себе детальний розгляд
85
ЧДТУ.232218-023 ПЗ
взаємозв'язків та взаємодії компонентів розробленого Telegram-бота. Цей етап
розробки визначає структуру та взаємодію різних модулів програмного
продукту. Логічна схема системи визначає, як дані будуть оброблятися та
передаватися між різними частинами бота, забезпечуючи ефективність та
надійність роботи. Логічну схему системи можна побачити на рис. 4.2.
Рис. 4.2 – Логічна схема системи
4.1.4. Розробка бази даних
Створення концептуальної моделі бази даних (БД) є важливим етапом в
розробці Telegram-бота для газової компанії. На цьому етапі визначається
структура та взаємозв'язки між різними елементами системи, що дозволяє
оптимізувати зберігання та обробку інформації.
Концептуальна модель БД визначає сутності, атрибути та їх взаємозв'язки,
що є основою для подальшого проектування БД. Однією з ключових задач на
цьому етапі є врахування специфічних потреб газової компанії, таких як збір та
аналіз даних про споживання газу та обробка заявок. Концептуальна модель
дозволяє визначити оптимальний спосіб організації інформації для ефективної
роботи Telegram-бота і підтримки потреб газової компанії та зображена на рис.
4.3.
86
ЧДТУ.232218-023 ПЗ
Рис. 4.3 – Концептуальна модель бази даних
4.1.5. Розробка інтерфейсу користувача
На сьогоднішній день в умовах використання сучасних інформаційних
технологій розробка Telegram-бота є необхідним елементом для забезпечення
розміщення та доступу до відповідної інформації, спілкування з користувачами
та багатьох інших функцій газової компанії. Telegram-боти є ефективним
інструментом для надання інформації та взаємодії з користувачами у зручний
спосіб.
Актуальність цієї теми підтверджується тим, що газові компанії все більше
зацікавлені у розробці та використанні Telegram-ботів на основі сучасних
моделей для поліпшення своїх послуг та забезпечення зручного спілкування з
клієнтами. Вони можуть бути використані для замовлення послуг, отримання
актуальної інформації про газові ресурси, повідомлення про
87
ЧДТУ.232218-023 ПЗ
аварійні ситуації та багатьох інших цілей.
Розробка Telegram-бота вимагає знань і навичок у галузі програмування та
розробки інтерфейсу користувача. Також потрібно мати розуміння процесу
взаємодії з Telegram API та його можливостей. Розробка Telegram-бота включає
створення команд, обробку повідомлень, відправку повідомлень, роботу з базою
даних та інші функції. При розробці Telegram-бота важливо продумати його
функціонал, зручність використання та взаємодії з користувачами, зокрема,
забезпечити зручний доступ до інформації та можливість виконання різних
операцій. Telegram-бот може спростити процеси взаємодії з клієнтами, надати
зручний канал комунікації та вирішення питань, пов'язаних з газовими
послугами.
Отже Telegram-бот АТ «Черкасигаз» повинен містити наступний
функціонал (Додаток В):
Працювати з базою даних, в якій будуть міститься дані про споживачів, а
саме: номером особового рахунку, переданий показник та дата передачі
показника.
Telegram-бот повинен містити:
1 Кнопкове головне меню для вибору відповідного фунціоналу.
2 Можливість приймати показники газового лічильника.
3 Можливість приймати заявки на послуги підприємства.
4 Можливість вибору відділення підприємства.
5 Можливість надавати інформацію для споживачів.
6 Можливість надавати інформацію по тарифам, наданим підприємством
послугам для кожного відділу, зв’язкам з операторами.
Аналіз та представлення інформації та розрахунків стосовно максимальної
економії та ефективного використання енергоресурсів (природний газ,
електричні ресурси та інші) для забезпечення комфортного життя.
Порівняльний аналіз існуючих газопостачальних компаній показав, що
Telegram-бот АТ «Черкасигаз» відповідає усім переліченим вимогам і це дає
право визначити належність його до одного з кращих в Україні.
88
ЧДТУ.232218-023 ПЗ
4.1.6. Опис розробки програмних компонентів
Основні Компоненти та їхнє призначення:
1 Компонент "Взаємодія з користувачем":
– призначення: забезпечення інтерактивної взаємодії з користувачем через
чат-бота;
– зв'язки: взаємодіє з іншими модулями для отримання необхідної
інформації.
2 Компонент "Обробка запитань":
– призначення: аналіз та обробка запитань користувачів з метою надання
відповідей;
– зв'язки: взаємодіє з базою даних для отримання необхідної інформації.
3 Компонент "Взаємодія з базою даних":
– призначення: забезпечення доступу до інформації про газові послуги
компанії;
– зв'язки: взаємодіє з модулем обробки запитань та модулем взаємодії з
користувачем.
4 Компонент "Візуалізація даних":
– призначення: створення графічних елементів для зручного відображення
інформації користувачеві;
– зв'язки: інтегрується з модулем взаємодії з користувачем для
відображення результатів запитань.
4.2. Тестування системи
Тестування системи – важливий етап у розробці будь-якого програмного
забезпечення чи технологічного продукту. Його мета полягає у виявленні
помилок, аномалій та недоліків, які можуть вплинути на роботу системи. Процес
тестування включає ряд дій, що охоплюють перевірку функціональності,
продуктивності, безпеки та інших аспектів системи.
У тестуванні систем використовують різноманітні методики та підходи.
Функціональні тести перевіряють, чи виконує система очікувані функції згідно з
заданими вимогами. Наприклад, якщо створено програму для обробки тексту,
89
ЧДТУ.232218-023 ПЗ
тестування функціональності перевірить, чи вона вміє зберігати, відкривати та
редагувати файли.
У тестуванні продуктивності оцінюють, як швидко та ефективно система
працює при різних навантаженнях. Безпека також стає важливим аспектом –
тестування на проникнення визначає, наскільки систему складно зламати та чи
забезпечено вона захист від несанкціонованого доступу.
Правильне тестування системи дозволяє виявити та усунути помилки на
ранніх етапах розробки, що значно зменшує витрати та ризики під час подальшої
експлуатації. Такий підхід допомагає створювати надійні та стабільні системи,
які задовольняють потреби користувачів та бізнес-вимоги.
4.2.1. Модульне тестування
Модульне тестування є ключовою складовою процесу розробки ПЗ. Цей
метод передбачає перевірку окремих модулів або компонентів програми на
коректність їх роботи і відповідність специфікаціям. Головна мета модульного
тестування полягає в тому, щоб переконатися, що кожен модуль працює
правильно, незалежно від інших частин програми.
Кожен модуль тестується ізольовано від інших, що дозволяє виявляти та
виправляти помилки на ранніх етапах розробки. Це підвищує стабільність
програми і сприяє більш швидкому виявленню та усуненню проблем.
Модульне тестування забезпечує впевненість у функціональності окремих
блоків програми, роблячи їх легше супроводжуваними і забезпечуючи високу
якість кінцевого продукту. Цей підхід дозволяє ефективно організувати робочий
процес розробників та забезпечує відповідність вимогам замовника чи
користувача.
На рис. 4.4 відображено тестування даних запиту на відправлення
показників лічильника, які виконуються за допомогою метода POST:
90
ЧДТУ.232218-023 ПЗ
Рис. 4.4 – Запит на відправлення показників лічильника
На рис. 4.5 відображено тестування даних запиту на замовлення послуг
підприємства, які виконуються за допомогою метода POST:
Рис. 4.5 – Запит на замовлення послуг підприємства
4.2.2. Інтеграційне тестування
Інтеграційне тестування є значимою частиною розробки ПЗ, спрямованою
на перевірку взаємодії й коректності роботи різних компонентів системи. Це
полегшує виявлення помилок, сприяє високій якості продукту та зменшує ризик
неполадок у майбутньому.
Під час інтеграційного тестування перевіряється взаємодія модулів,
компонентів або підсистем, забезпечуючи роботу програми як єдиної системи.
Ефективні тести на цьому етапі розробки допомагають ідентифікувати проблеми
на початкових стадіях, підвищуючи стабільність та працездатність програми у
реальних умовах.
Інтеграційне тестування сприяє покращенню якості та стабільності
програмного продукту, забезпечуючи успішну роботу системи в цілому.
В табл. 4.1 показані результати тестування даних запиту на відправлення
показників лічильника.
91
ЧДТУ.232218-023 ПЗ
Таблиця 4.1
Результати тестування даних запиту на відправлення показників
лічильника
Чи задовольняє
Тип даних, Тип даних, що
Параметр функції умови коректної
що має бути надсилається
взаємодії
Особовий рахунок json number Так
Показник json number Так
Дата відправки показника json string Так
Результати тестування даних запиту на замовлення послуг підприємства
надані в наступній табл. 4.2.
Таблиця 4.2
Результати тестування даних запиту на замовлення послуг підприємства
Чи задовольняє
Тип Тип даних,
умови
Параметр функції даних, що що
коректної
має бути надсилається
взаємодії
Іd користувача Telegram json number Так
nickname користувача Telegram json string Так
name користувача Telegram json string Так
surname користувача Telegram json string Так
phone користувача Telegram json string Так
Дата відправки заявки json string Так
4.2.3. Системне тестування
Системне тестування є невід'ємною частиною процесу розробки ПЗ. Цей
процес спрямований на перевірку взаємодії всіх компонентів системи та їх
відповідність вимогам. Основна мета системного тестування полягає в
92
ЧДТУ.232218-023 ПЗ
переконанні, що програма працює правильно в реальному середовищі перед її
випуском.
У цьому типі тестування використовуються різні стратегії, такі як
тестування функціональності, тестування відмов, навантаження, безпеки та інші.
Важливо враховувати різні сценарії використання програми, а також різні
конфігурації та умови роботи.
Процес системного тестування передбачає створення тестових випадків,
виконання тестів, аналіз результатів та виправлення виявлених помилок. Це
допомагає покращити якість програмного продукту та забезпечити коректну
роботу системи в реальних умовах.
Завдяки системному тестуванню можна виявити потенційні проблеми та
помилки ще до випуску програмного забезпечення на ринок, що дозволяє
підвищити його надійність та задоволення користувачів.
Систему перевірили на виконання основних функцій шляхом тестування її
згідно з наступними вимогами у табл. 4.3, 4.4, 4.5.
Таблиця 4.3
Тести результатів даних з інтерфейсу для відправлення показників
лічильника
Вимога Виконується чи ні?
Відображення форми для введення даних Так
Сповіщення
Сповіщення про помилки Так
Сповіщення про успішне відсилання даних показників Так
Масив даних форми повинен складатись
Особовий рахунок Так
Показник Так
Дата відправки показника Так
Стилізація вікон
Яскравість Так
Насиченість Так
Контрастність Так
Мінімалістичний стиль Так
93
ЧДТУ.232218-023 ПЗ
Таблиця 4.4
Тести результатів даних з інтерфейсу для замовлення послуг підприємства
Вимога Виконується чи ні?
Відображення форми для введення даних Так
Сповіщення
Сповіщення про помилки Так
Сповіщення про успішне відсилання даних показників Так
Масив даних форми повинен складатись
Іd користувача Telegram Так
nickname користувача Telegram Так
name користувача Telegram Так
surname користувача Telegram Так
phone користувача Telegram Так
Дата відправки заявки Так
Стилізація вікон
Яскравість Так
Насиченість Так
Контрастність Так
Мінімалістичний стиль Так
Таблиця 4.5
Тести результатів даних з інтерфейсу для розрахунків нейромережі
Вимога Виконується чи ні?
Відображення форми для введення даних Так
Сповіщення
Сповіщення про помилки Так
Сповіщення про успішне відсилання даних показників Так
Масив даних форми повинен складатись
Особовий рахунок Так
Дані про оселю споживача Так
Дані про споживання природнього газу Так
Стилізація вікон
Яскравість Так
Насиченість Так
Контрастність Так
Мінімалістичний стиль Так
94
ЧДТУ.232218-023 ПЗ
4.2.4. Приймальне тестування
Приймальне тестування - це ключовий етап у перевірці відповідності
системи вимогам, що визначаються під час її створення. Цей процес передбачає
виконання ряду тестів та перевірок з метою забезпечення того, що система
працює згідно з поставленими завданнями та потребами користувачів.
Головною метою приймального тестування є перевірка того, наскільки
ефективно та коректно працює система в реальних умовах експлуатації. Для
досягнення оптимальних результатів цієї перевірки важливо залучити
користувачів, які мають безпосередню потребу у використанні цієї програми.
Вони нададуть цінний фідбек, щодо функціональності, зручності використання
та відповідності програми їхнім потребам.
Під час приймального тестування важливо переконатися, що система
відповідає, як первинним, так і детальним вимогам. Це означає, що вона повинна
не лише виконувати основні завдання, а й забезпечувати високу якість роботи в
усіх аспектах, враховуючи різноманітні потреби користувачів та специфіку
використання.
4.3. Приклади впровадженого програмного комплексу
Завданням до кваліфікаційної роботи було створити програмний агент для
моніторингу побутових користувачів природного газу на прикладі АТ
«Черкасигаз». В моєму розумінні Telegram-бот для газової компанії - це
інноваційний інструмент, що допомагає забезпечити зв’язок з клієнтами та
оптимізувати різні процеси.
Telegram-бот призначений для автоматизації взаємодії зі споживачами
газу, надаючи доступ до інформації про рахунки, споживання, та інші.
Користувачі можуть отримати оперативну інформацію про тарифи, акції та
нагадування про планове обслуговування обладнання у каналі з новинами. Це
дозволяє спростити спілкування з компанією та забезпечити зручний та
ефективний сервіс для всіх клієнтів.
95
ЧДТУ.232218-023 ПЗ
Спочатку було створено Telegram-бот АТ «Черкасигаз» (Додаток Г). На
початок роботи з Telegram-ботом користувача зустрічає початкова сторінка, яка
зображена на рис. 4.6.
Рис. 4.6 – Telegram-бот АТ «Черкасигаз»
Після натискання на кнопку «Старт» користувач починає свою роботу з
Telegram-ботом і робить вибір свого відділення АТ «Черкасигаз». Скріншот
можна побачити на рис. 4.7.
Рис. 4.7 – Вибір відділення АТ «Черкасигаз»
96
ЧДТУ.232218-023 ПЗ
Як тільки користувач вибрав відділення АТ «Черкасигаз» він перейде до
головного меню свого відділення, яке розділене на дві сторінки. Головне меню
свого відділення сторінка 1 АТ «Черкасигаз» зображено на рис. 4.8.
Рис. 4.8 – Головне меню свого відділення сторінка 1 АТ «Черкасигаз»
Головне меню свого відділення сторінка 2 АТ «Черкасигаз» зображено на
рис. 4.9.
Рис. 4.9 – Головне меню свого відділення сторінка 2 АТ «Черкасигаз»
97
ЧДТУ.232218-023 ПЗ
Натиснувши на «Передати показники лічильника» споживачу природнього
газу надається форма, яка зображена на рис. 4.10, для відправки виду.
Рис. 4.10 – Форма «Передати показники лічильника» АТ «Черкасигаз»
Натиснувши на «Послуги» у користувача виникне меню, яке зображене на
рис. 4.11.
Рис. 4.11 – Меню «Послуги» АТ «Черкасигаз»
98
ЧДТУ.232218-023 ПЗ
Натиснувши на «Замовити послуги» у користувача з’явиться вікно,
скріншот якого наведений на рис. 4.12.
Рис. 4.12 – «Замовити послуги» АТ «Черкасигаз»
Натиснувши на «Детальніше про послуги» та «Ремонтно-механічна
майстерня» у користувача з’явиться вікно, яке зображене на рис. 4.13.
Рис. 4.13 – «Детальніше про послуги» та
99
ЧДТУ.232218-023 ПЗ
«Ремонтно-механічна майстерня» АТ «Черкасигаз»
Натиснувши на «Інформація про тарифи» у користувача з’явиться меню,
скріншот якого наведений на рис. 4.14.
Рис. 4.14 – Меню «Інформація про тарифи» АТ «Черкасигаз»
Натиснувши на «Інформація для споживачів» у користувача з’явиться
меню, яке можна побачити на рис. 4.15.
Рис. 4.15 – Меню «Інформація для споживачів» АТ «Черкасигаз»
100
ЧДТУ.232218-023 ПЗ
Натиснувши на «Зв’язатися з операторами» у користувача з’явиться меню,
яке можна побачити на рис. 4.16.
Рис. 4.16 – Меню «Зв’язатися з операторами» АТ «Черкасигаз»
Натиснувши на «Диспетчер аварійно диспетчерської служби» у
користувача з’явиться меню, яке можна побачити на рис. 4.17.
Рис. 4.17 – Меню «Диспетчер аварійно диспетчерської служби»
АТ «Черкасигаз»
101
ЧДТУ.232218-023 ПЗ
Натиснувши на «Порядок дій якщо у вас відсутній газ» у користувача
з’явиться меню, яке можна побачити на рис. 4.18.
Рис. 4.18 – Меню «Порядок дій якщо у вас відсутній газ» АТ «Черкасигаз»
Натиснувши на «Вибір відділення» у користувача з’явиться меню, яке
можна побачити на рис. 4.19.
Рис. 4.19 – Меню «Вибір відділення» АТ «Черкасигаз»
102
ЧДТУ.232218-023 ПЗ
Змінивши темну тему в Telegram на світлу, бот та всі вікна підлаштуються
під неї автоматично і будуть виглядати наступним чином («Енергорадник у
світлій темі» пошук даних по особовому рахунку). Скріншот зображений на рис.
4.20.
Рис. 4.20 – Світла тема
Після вводу особового рахунку та натисканні на кнопку «Знайти дані»
користувачу буде виведено дані, які беруть участь в розрахунках нейромережі
«Енергорадник». Скріншот можна побачити на рис. 4.21.
Рис. 4.21 – Дані, які беруть участь в розрахунках нейромережі
103
ЧДТУ.232218-023 ПЗ
Під даними буде кнопка «Розрахувати». Скріншот можна побачити на рис.
4.22.
Рис. 4.22 – Після натискання кнопки «Розрахувати»
Після натискання кнопки «Розрахувати» почнеться розрахунок та буде
виведений результат. Скріншоти розрахунку та результату зображені на рис.
4.23, 4.24.
Рис. 4.23 – Результат розрахунків нейромережі «Енергорадник»
104
ЧДТУ.232218-023 ПЗ
Рис. 4.24 – Результат розрахунків нейромережі «Енергорадник»
Якщо користувач зазначить «Варіант комбінування наявних систем
опалення» у вихідних даних у нього з’явиться ще один розрахунок, який
зображений на рис. 4.25
Рис. 4.25 – Розрахунок нейромережі «Енергорадник»
105
ЧДТУ.232218-023 ПЗ
Висновок до четвертого розділу
Тестування ПЗ дозволяє забезпечити його функціональну працездатність і
впевненість у тому, що воно відповідає вимогам. У процесі розробки та
тестування ПЗ Telegram-боту були використане модульне та інтеграційне
тестування для перевірки функціональності компонентів, а також тестування
користувача для перевірки зручності інтерфейсу та взаємодії користувача з
ботом.
У підсумку, процес розробки та тестування ПЗ Telegram-боту можна
вважати ефективним, оскільки він включає використання сучасних технологій та
методик, які спрямовані на забезпечення високої якості продукту та задоволення
потреб користувачів.
106
ЧДТУ.232218-023 ПЗ
ВИСНОВКИ
Під час написання магістерської кваліфікаційної роботи на тему "Розробка
програмного агента для моніторингу побутових користувачів природного газу"
було проведено детальний аналіз предметної області та виявлено актуальність
створення чат-бота на платформі Telegram, включаючи нейромережу
«Енергорадник». Були сформульовані мета та завдання проекту, проведено
аналіз існуючих ботів та показано їх приклади використання.
З метою забезпечення структурованості і систематизації чат-бота було
проведено детальне проектування. Була обґрунтована підстава для розробки
програмного рішення та деталізовано мету та завдання проекту. Визначено
функціональні можливості Telegram-бота та нейромережі «Енергорадник».
Для реалізації проекту були використані мови, як HTML, CSS і JS. Були
побудовані діаграми, що відображають функціональні можливості програмного
продукту, і визначена архітектура Telegram-бота.
На наступному етапі була здійснена реалізація Telegram-бота та
нейромережі «Енергорадник», а також було продемонстровано основний
функціонал. Були вивчені способи використання нейронних мереж при роботі з
користувачем, описано можливості самописних нейронних мереж та готових
бібліотек.
В результаті були створені Telegram-бот та нейромережа «Енергорадник»
для споживачів природного газу АТ "Черкасигаз". Система є сучасною та
зручною, і вона задовольняє всі вимоги з точки зору функціональності,
користувальницької зручності та логіки.
107
ЧДТУ.232218-023 ПЗ
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ
1 Експлуатація і технічне обслуговування газорозподільчих станцій
бакалавральних газопроводів / заг. ред. А.А. Руднік. Київ, 2003. 370 с.
2 АТ "ЧЕРКАСИГАЗ" [Електронний ресурс] - Режим доступу до ресурсу:
https://chergas.ck.ua/
3 Microsoft Windows [Електронний ресурс].– Режим доступу до ресурсу:
https://www.microsoft.com/uk-ua/windows
4 Linux [Електронний ресурс].– Режим доступу до ресурсу:
https://www.linux.org/
5 iOS [Електронний ресурс].– Режим доступу до ресурсу:
https://www.apple.com/
6 Android [Електронний ресурс].– Режим доступу до ресурсу:
https://www.android.com/
7 Нафтогаз України [Електронний ресурс].– Режим доступу до ресурсу:
https://gas.ua/
8 Збірник тез доповідей студентської науково-практичної конференції
ЧДТУ 18 – 20 квітня 2023 р. — ЧДТУ [Електронний ресурс]. – Режим доступу
до ресурсу: https://chdtu.edu.ua/ndi-chdtu/tezy-dniv-studentskoi-nauky/item/17415-
zbirnyk-tez-dopovidey-studentskoyi-naukovo-praktychnoyi-konferentsiyi-chdtu-2022
9 Регіональна Газова Компанія (RGC) 7104ua [Електронний ресурс].–
Режим доступу до ресурсу:
https://t.me/ua7104_bot?fbclid=IwAR3kAK6aWc1y3UQNcDqLMgkeeApY2cHsqvx
bpFSBAO3SIEUGe0uUBv1dd-8
10 Авраменко В.С. Операційні системи [Електронний ресурс]: практикум
/ Черкаський національний ун-т ім. Б. Хмельницького. Електрон. текст, дані.
Черкаси, 2014. 1 електрон. опт. диск (CD-R).
108
ЧДТУ.232218-023 ПЗ
ДОДАТОК А
ЗАТВЕРДЖЕНО
Зав. кафедрою ПЗАС, професор
Голуб С.В.
(підпис)
«____»_________________ 2023 року
Програмний агент для моніторингу побутових користувачів природного
газу
Специфікація
482.ЧДТУ 232218.023
Листів 2
Розробник ________________ Просяник О.В.
Керівник ________________ Голуб С.В.
2023
109
ЧД4Т82У..Ч2Д32Т2У1 82-3022231 П8.З0 23
Позначення Найменування Примітка
ЧДТУ.232218-023 ПЗ Тези докладу
ЧДТУ.232218-023 ПЗ Технічне завдання
482.ЧДТУ 232218.023-34 01 Інструкція користувача
482.ЧДТУ 232218.023-90 01 Презентація
110
ЧДТУ.232218-023 ПЗ
ДОДАТОК Б
111
ЧДТУ.232218-023 ПЗ
112
ЧДТУ.232218-023 ПЗ
113
ЧДТУ.232218-023 ПЗ
ДОДАТОК В
«ЗАТВЕРДЖЕНО»
АТ «ЧЕРКАСИГАЗ»
Голова правління
_________________ І.М. Стойков
М.П.
___ ____________ 2023р.
«ЗАТВЕРДЖЕНО»
___ ____________ 2023 р.
ТЕХНІЧНЕ ЗАВДАННЯ
на створення, налаштування Telegram-бота
2023
114
ЧДТУ.232218-023 ПЗ
Функціонал Telegram бота
Telegram бот (надалі бот) повинен містити наступний функціонал:
1 Працювати з базою даних, в якій будуть міститься дані про споживачів,
а саме: номером особового рахунку, переданий показник та дата передачі
показника.
2 Бот повинен містити кнопкове головне меню для вибору відповідного
фунціоналу.
3 Можливість приймати показники газового лічильника.
4 Можливість приймати заявки на послуги підприємства.
5 Можливість вибору відділення підприємства.
6 Можливість надавати інформацію для споживачів.
7 Можливість надавати інформацію по тарифам, наданим підприємством
послугам для кожного відділу, зв’язкам з операторами.
8 Розробити електронного помічника споживача - нейромережу
«Енергорадник», що аналізуватиме енергоефективність осель споживачів
природнього газу і надаватиме рекомендації щодо зменшення енерговитрат та
представлення всієї інформації в доступному для споживача вигляді.
9 Мати адміністративну панель для оновлення даних в базі даних та
експорту показників, перегляду даних з бази даних, перегляду статистики по
кількості переданих показників та кількості переданих заявок на послуги
підприємства.
10 Мати канал з новинами для сповіщення споживачів про останні новини
підприємства та технічні роботи.
По кожному вищезазначеному пункту нижче детально описаний
функціонал ботів.
Програмні та фізичні налаштування серверу
Для перенесення ботів на сервери замовника виконавець повинен вказати
відповідні характеристики сервера (CPU, RAM, HDD, SSD) для нормальної
роботи ботів під навантаженням.
115
ЧДТУ.232218-023 ПЗ
Боти повинні взаємодіяти з базою даних та зберігати дані, які
використовуються у процесі роботи.
Головне меню ботів та функціонал
Бот повинен містити наступні кнопки головного меню: «Передати
показники лічильника», «Послуги», «Зв’язатися з оператором», «Інформація для
споживачів», «Інформація про тарифи» та «Вибір відділення».
Кнопка меню «Послуги» повинно складатися з таких розділів меню:
1 Замовити послуги.
2 Детальніше про послуги.
3 Повернутись до головного меню.
Кнопка меню «Послуги» повинно складатися з усіх послуг які надає
підприємство у вибраному відділенні.
Кнопка меню «Зв’язатися з оператором» повинно складатися з таких
розділів меню:
1 Диспетчер аварійно-диспетчерської служби.
2 Оператор служби обліку природнього газу.
3 Повернутись до головного меню.
Кнопка меню «Інформація для споживачів» повинно складатися з таких
розділів меню:
1 Договір на технічне обслуговування.
2 Дії для заміни газового приладу.
3 Реконструкція системи газопостачання.
4 Договір на розподіл природного газу.
5 Порядок дій якщо у вас відсутній газ.
6 Повернутись до головного меню.
Кнопка меню «Інформація про тарифи» відображає чинний тариф за
послуги розподілу природного газу та повинно складатися з таких розділів меню:
1 Плата за приєднання до газових мереж.
2 Тариф на послуги з розподілу.
3 Повернутись до головного меню.
116
ЧДТУ.232218-023 ПЗ
Кнопка меню «Вибір відділення» повинно складатися з таких розділів
меню:
1 Черкаське відділення.
2 Смілянське відділення.
3 Золотоніське відділення.
4 Канівське відділення.
5 Звенигородське відділення.
6 Жашківське відділення.
7 Шполянське відділення.
Кнопка меню «Головне меню» при виборі повинна перенаправляти
споживача в головне меню бота.
При виборі меню «Передати показники лічильника» у боті відкривається
вікно з формою вводу показників:
1 Користувач повинен мати можливість заповнити вікно з формою вводу
показників, вводячи такі дані:
– особовий рахунок;
– показник.
2 Валідація даних:
– особовий рахунок повинен містити від 9 до 10 цифр;
– показник має містити рівно 5 цифр;
– якщо введені дані некоректні, повинно вивести повідомлення про
помилку.
3 Кнопка "Передати":
– після введення показника бот повинен ще раз перепитати правильність
показника у наступному вигляді «Перевірте, будь ласка правильність введеного
показника. Ви дійсно хочете передати показник <введений показник> по
особовому рахунку <особовий рахунок зареєстрованого споживача>?»;
– також повинно бути дві кнопки «Так» і «Ні», які відповідно
підтверджують прийняття показника або відхиляють його прийняття і
пропонують ввести правильний показник газового лічильника;
117
ЧДТУ.232218-023 ПЗ
– після заповнення форми користувач може натиснути кнопку "Передати"
для надсилання даних.
4 Відображення результату:
– після успішної обробки даних, користувачеві має виводитись
повідомлення про успішне відправлення;
– якщо при обробці даних сталася помилка (наприклад, не вдалося
відкрити WEB-сторінку), користувачеві має виводитись модальне вікно з
інформацією про помилку.
При передачі показника газу потрібно проводити перевірку на кількість
числових знаків введеного показника, яка не повинно перевищувати 5 цифр.
Енергорадник
Основні функції радника (нейромережі):
1 Аналіз та представлення інформації про енергоефективність системи
опалення в зручній для споживача формі:
– відображення показників енергоефективності системи опалення.
2 Аналіз та представлення інформації про споживання газу споживачем в
річному, місячному та добовому аспектах з можливістю вибору будь-якого
періоду для аналізу:
– відображення споживання газу відповідно до обраного періоду;
– порівняння споживання газу в різних періодах.
3 Аналіз та представлення інформації про рекомендовані заходи з
утеплення житла (квартири, будинку тощо) в зручній для споживача формі:
– відображення рекомендованих заходів з утеплення оселі;
– порівняння різних заходів з утеплення за їхньою ефективністю.
4 Аналіз та представлення інформації про різні системи опалення (тверде
паливо, електро тощо) в зручній для споживача формі:
– відображення переваг та недоліків різних систем опалення;
– порівняння різних систем опалення на основі ефективності та вартості.
5 Аналіз та представлення інформації про ефективність роботи газової
системи опалення в зручній для споживача формі:
118
ЧДТУ.232218-023 ПЗ
– відображення ефективності роботи газової системи опалення;
– порівняння ефективності роботи різних систем опалення.
6 Аналіз та представлення інформації про можливі варіанти циклічності
роботи газової системи опалення для опалювальних котлів з виносним
термостатом.
7 Аналіз та представлення інформації та розрахунків стосовно
максимальної економії та ефективного використання енергоресурсів (природний
газ, електричні ресурси та інші) для забезпечення комфортного життя.
119
ЧДТУ.232218-023 ПЗ
ДОДАТОК Г
Інструкція користувача
по роботі з Telegram-ботом та нейромережею «Енергорадник»
Специфікація
482.ЧДТУ 232218.023-34 01
Листів 11
2023
120
482Ч.ЧДДТТУУ.2 23322221188-.002233 -П3З4 01
Щоб почати, вам потрібно буде перейти до Telegram-бота АТ
«Черкасигаз». На початок роботи з Telegram-ботом користувача зустрічає
початкова сторінка, яка зображена на рис. В1.
Рис. В1 – Telegram-бот АТ «Черкасигаз»
Після натискання на кнопку «Старт» користувач починає свою роботу з
Telegram-ботом і робить вибір свого відділення АТ «Черкасигаз». Скріншот
можна побачити на рис. В2.
Рис. В2 – Вибір відділення АТ «Черкасигаз»
121
482.ЧЧДДТТУУ 2.3223221281.80-2032-33 4П 0З1
Як тільки користувач вибрав відділення АТ «Черкасигаз» він перейде до
головного меню свого відділення, яке розділене на дві сторінки. Головне меню
свого відділення сторінка 1 АТ «Черкасигаз» зображено на рис. В3.
Рис. В3 – Головне меню свого відділення сторінка 1 АТ «Черкасигаз»
Головне меню свого відділення сторінка 2 АТ «Черкасигаз» зображено на
рис. В4.
Рис. В4 – Головне меню свого відділення сторінка 2 АТ «Черкасигаз»
122
482.ЧЧДДТТУУ. 223322221188-.002233 -П34З 01
Натиснувши на «Передати показники лічильника» споживачу природнього
газу надається форма, яка зображена на рис. В5, для відправки виду.
Рис. В5 – Форма «Передати показники лічильника» АТ «Черкасигаз»
Натиснувши на «Послуги» у користувача виникне меню, яке зображене на
рис. В6.
Рис. В6 – Меню «Послуги» АТ «Черкасигаз»
123
482.ЧЧДДТТУУ 2.23322221188.0-02233-3 П4 З0 1
Натиснувши на «Замовити послуги» у користувача з’явиться вікно,
скріншот якого наведений на рис. В7.
Рис. В7 – «Замовити послуги» АТ «Черкасигаз»
Натиснувши на «Детальніше про послуги» та «Ремонтно-механічна
майстерня» у користувача з’явиться вікно, яке зображене на рис. В8.
Рис. В8 – «Детальніше про послуги» та «Ремонтно-механічна майстерня»
АТ «Черкасигаз»
124
482.ЧЧДДТТУУ 2.23322221188.0-20323-3 П4 З0 1
Натиснувши на «Інформація про тарифи» у користувача з’явиться меню,
скріншот якого наведений на рис. В9.
Рис. В9 – Меню «Інформація про тарифи» АТ «Черкасигаз»
Натиснувши на «Інформація для споживачів» у користувача з’явиться
меню, яке можна побачити на рис. В10.
Рис. В10 – Меню «Інформація для споживачів» АТ «Черкасигаз»
125
482.ЧДЧТДУТУ 2.3223221281.80-2032-334 П 0З1
Натиснувши на «Зв’язатися з операторами» у користувача з’явиться меню,
яке можна побачити на рис. 11.
Рис. В11 – Меню «Зв’язатися з операторами» АТ «Черкасигаз»
Натиснувши на «Диспетчер аварійно диспетчерської служби» у
користувача з’явиться меню, яке можна побачити на рис. В12.
Рис. В12 – Меню «Диспетчер аварійно диспетчерської служби» АТ
«Черкасигаз»
126
482Ч.ЧДДТТУУ.2 23322221188-0.02233 П-3З4 01
Натиснувши на «Порядок дій якщо у вас відсутній газ» у користувача
з’явиться меню, яке можна побачити на рис. В13.
Рис. В13 – Меню «Порядок дій якщо у вас відсутній газ» АТ «Черкасигаз»
Натиснувши на «Вибір відділення» у користувача з’явиться меню, яке
можна побачити на рис. В14.
Рис. В14 – Меню «Вибір відділення» АТ «Черкасигаз»
127
482.ЧЧДДТТУУ. 223322221188-.002233- П34З 01
Змінивши темну тему в Telegram на світлу, бот та всі вікна підлаштуються
під неї автоматично і будуть виглядати наступним чином («Енергорадник у
світлій темі» пошук даних по особовому рахунку). Скріншот зображений на рис.
В15.
Рис. В15 – Світла тема
Після вводу особового рахунку та натисканні на кнопку «Знайти дані»
користувачу буде виведено дані, які беруть участь в розрахунках нейромережі
«Енергорадник». Скріншот можна побачити на рис. В16.
Рис. В16 – Дані, які беруть участь в розрахунках нейромережі
128
482Ч.ЧДДТТУУ. 223322221188-.002233 -П34З 01
Під даними буде кнопка «Розрахувати». Скріншот можна побачити на рис.
В17.
Рис. В17 – Після натискання кнопки «Розрахувати»
Після натискання кнопки «Розрахувати» почнеться розрахунок та буде
виведений результат. Скріншоти розрахунку та результату зображені на рис.
В18, рис. В 19.
Рис. В18 – Результат розрахунків нейромережі «Енергорадник»
129
482.ЧДТУ 232218.023-34 01
ЧДТУ.232218-023 ПЗ
Рис. В19 – Результат розрахунків нейромережі «Енергорадник»
Якщо користувач зазначить «Варіант комбінування наявних систем
опалення» у вихідних даних у нього з’явиться ще один розрахунок, який
зображений на рис. В20
48428.Ч2Д.ЧТДУТ 2У3 2321986.042.032-930-3 04 1 0 1
Рис. В20 – Розрахунок нейромережі «Енергорадник»
130