МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ Рубцовский институт (филиал) федерального государственного бюджетного образовательного учреждения высшего образования «Алтайский государственный университет» Кафедра Математики и прикладной информатики ДИПЛОМНЫЙ ПРОЕКТ Тема: Разработка Telegram-бота для спортивного комплекса (на примере МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ») Допустить к защите И.о.зав. кафедрой ст.преподаватель Рязанова О.В. ______________ (подпись) «___» _________ 2024 г. Выпускную квалификационную работу (дипломный проект) выполнил студент 3 курса, группы 1215С11 Коротаев Р.С. ______________________________ (подпись) Руководитель: преподаватель ______________________________ (подпись) Выпускная квалификационная работа (дипломный проект) защищена «___» ________________ 2024 г. Оценка _______________________ Председатель ГЭК Селиванов А.Ю ______________________________ (подпись) Рубцовск 2024 РЕФЕРАТ Дипломный проект: страниц, рисунков, таблицы, источников. Ключевые слова: 1С: Бухгалтерия, интерфейс, бот, диаграмма, телеграмм, вид спорта. Объект исследования – МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ». Предмет исследования – процесс информирования родителей и обучающихся секций МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ». Цель исследования – разработка Telegram-бота для спортивного комплекса (на примере МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ»). Для достижения поставленной цели необходимо решить следующие задачи: дать характеристику предметной области; проанализировать деятельность МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ»; построить модель предметной области «как есть» с целью выявления недостатков МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ»; построить модель предметной области «как должно быть»; выполнить обзор существующих программных продуктов; разработать информационную систему для предоставления информации; рассчитать трудоемкость выполнения работ и общие затраты на разработку ИС. СОДЕРЖАНИЕ ВВЕДЕНИЕ .................................................................................................................. 4 1 Аналитическая часть ................................................................................................ 6 1.1 Характеристика предметной области............................................................... 6 1.2 Анализ функционирования объекта исследования ...................................... 10 1.3 Определение требований к проектируемой ИС, цели и задачи проектирования ИС, разработка ТЗ ...................................................................... 13 1.4 Обзор и анализ существующих разработок................................................... 16 1.5 Выбор и обоснование проектных решений ................................................... 19 2 Проектная часть...................................................................................................... 23 2.1 Разработка информационного обеспечения .................................................. 23 2.2 Разработка программного обеспечения ......................................................... 24 3 Прикладная часть ................................................................................................... 48 ЗАКЛЮЧЕНИЕ ......................................................................................................... 52 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ ............................................... 53 ВВЕДЕНИЕ Телеграмм бот – это программа, которая автоматизирует определенные задачи и взаимодействие с пользователями в мессенджере Telegram. В дипломном проекте был рассмотрен процесс создания телеграмм-бота для МБУ СП «Юбилейный». Актуальность дипломного проекта обусловлена тем, что родители и обучающиеся в МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ» сталкиваются с проблемой не своевременного получения информации, что снижает эффективность обучения. Телеграмм-бот позволит быстро и конструировано получать информацию о тренерском составе, расписании тренировок, турниров и результатов. Объектом исследования в написании дипломного проекта послужил МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ». Предметом исследования является процесс заполнения и просмотра информации об расписании занятий, турниров и результатов в МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ». Целью работы является разработка Telegram-бота для спортивного комплекса (на примере МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ») Для достижения поставленной цели потребовалось решить следующие задачи: дать характеристику предметной области; проанализировать деятельность МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ»; определить цели и задачи; построить модель предметной области «как есть» с целью выявления недостатков в деятельности; построить модель предметной области «как должно быть»; выполнить обзор существующих программных продуктов; разработать информационную систему для автоматизации работ инженера производственно-технического отдела (ПТО); рассчитать трудоемкость выполнения работ и общие затраты на разработку ИС. 1 Аналитическая часть 1.1 Характеристика предметной области МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ» – учреждение, которое занимается организацией спортивных занятий и тренировок для детей и подростков. Основная цель школы – развитие спортивных навыков и физической подготовки учащихся, популяризация здорового образа жизни и спорта. В учреждении проводятся соревнования и мероприятия по спорту, а также организуются выездные тренировки и сборы. Учреждение располагается по адресу: г. Рубцовск, пр. Ленина, 203. В учреждении работают высококвалифицированный персонал различных специальностей, имеющие большой опыт работы. В учреждении МБУ СП «Спортивной школы «ЮБИЛЕЙНЫЙ» оказываются следующие спортивные мероприятия: – бадминтон – волейбол – баскетбол – каратэ – плавание Организационная структура МБУ СП «Спортивной «ЮБИЛЕЙНЫЙ» имеет следующую структуру: 1. Руководство: 1.1 Директор 2. Педагогический состав: 2.1 Тренерский состав отделения «Бадминтон» – 2 человека. 2.2 Тренерский состав отделения «Баскетбол» – 5 человека. 2.3 Тренерский состав отделения «Волейбол» – 2 человека. 2.4 Тренерский состав отделения «Каратэ» – 7 человека. 2.5 Тренерский состав отделения «Плавание» – 7 человека. 3. Медицинский персонал: школы 3.1 Фельдшер – 1 человек. 4. Административный персонал: 4.1 Главный бухгалтер – 1 человек. 4.2 Администратор спортивной деятельности – 1 человек. 4.3 Администратор по работе с клиентами – 1 человек. 5. Обслуживающий персонал: 5.1 Уборщик помещения – 2 человек. 5.2 Смотритель спортивного инвентаря – 1 человек. На рисунке ТАКОЙ представлена организационная учреждения. Рисунок 1 – Организационная структура структура Должностные обязанности и компетенции сотрудников. Директор – координация работы всех подразделений и сотрудников, работа с документацией и отчетностью, взаимодействие с родителями и учащимися. Администратор по работе с клиентами Секретарь – введение деловой переписки, прием и передачу телефонных звонков, управление документацией, планирование встреч, организацию поездок и другие административные обязанности. Бухгалтер – введение финансовой отчетности, учет расходов и доходов, подготовка отчета для налоговых служб и аудиторов. Тренер – планирование и проведение тренировок, мониторинг физической подготовки и успехов воспитанника. Фельдшер – проведение медицинских осмотров, оказание первой медицинской помощи при травмах и ушибах, контроль за общим состоянием. Уборщик – отвечающий за уборку и чистоту помещения. Смотритель спортивного инвентаря – определяет оптимальный режим эксплуатации спортивного оборудования, техники, инвентаря спортсменами. В учреждении имеется следующая компьютерная и периферийная техника: Рабочее место директора оборудовано ПК с конфигурацией: – процессор Intel Pentium Gold с двумя ядрами и частотой 4100 МГц; – 4 ГБ оперативной памяти; – дискретная видеокарта NVIDIA GeForce GT 1030 с 2 ГБ видеопамяти; – общий объём накопителей SSD256ГБ. Рабочие места главного бухгалтера, администратора по работе с клиентами и администратора по спортивной деятельности оборудованы ПК с характеристиками: – процессор Intel Dual Core G620 с тактовой частотой 2.60 ГГЦ; – 4 ГБ оперативной памяти (RAM); – жесткий диск (HDD) объемом 250 ГБ. Так же на рабочих местах имеются лазерные принтеры HP LaserJet Pro 4003N черно-белая печать, для формата A4. Помимо этого, на рабочем месте администратора по работе с клиентами установлен кассовый аппарат для безналичной оплаты. На рабочем месте главного бухгалтера - «1С: Бухгалтерия». На всех ПК установлен стандартный пакет программного обеспечения: – операционная система Windows 10; – антивирусное программное обеспечение Kaspersky; – пакет MS Office 2010; – браузер Yandex; – Adobe Reader (программа для чтения PDF-файлов); – WinRAR (для работы с архивами). Учреждение подключено к сети интернет через провайдера «Ростелеком» по волоконно-оптическому каналу связи пропускной способностью до 1 Гбит/с. Распределение канала в пределах здания спортивной школы осуществляется Wi-Fi роутером D-Link DIR-880L. В учреждении используются информационная система 1С: Бухгалтерия. Бухгалтерский и налоговый учет спортивной школы автоматизирован с помощью программы «1С: Бухгалтерия 8». На базе программного продукта автоматизированы следующие участки: – банковские и кассовые операции; – учет взаиморасчетов с контрагентами; – учет зарплаты; – налоговый учет; – составление различных видов отчетов (стандартная бухгалтерская отчетность, налоговые декларации). 1.2 Анализ функционирования объекта исследования Для описания функциональной и объектной корпоративной информационной сети учреждения был выбран язык моделирования UML. UML (англ. Unified Modeling Language – унифицированный язык моделирования) – язык графического описания для объектного моделирования в области разработки программного обеспечения, моделирования бизнеспроцессов, системного проектирования и отображения организационных структур. UML является языком широкого профиля, это – открытый стандарт, использующий графические обозначения для создания абстрактной модели системы, называемой UML-моделью. Для построения схем в проекте использовалось Microsoft Visio (ТАКОЙ). Данное программное обеспечение является бесплатным продуктом компании Microsoft. Рисунок ТАКОЙ – Microsoft Visio Для моделирования исследуемого объекта основными видами диаграмм стали: – диаграмма компонентов; – диаграмма деятельности; – диаграмма вариантов использования. Диаграмма компонентов – это элемент языка моделирования UML, статическая структурная диаграмма, которая показывает разбиение программной системы на структурные компоненты и связи (зависимости) между ними (ТАКОЙ). Диаграммы деятельности – они представляют собой графическое представление рабочих процессов поэтапных действий и действий с поддержкой выбора, итерации и параллелизма. Они описывают поток управления целевой системой, такой как исследование сложных бизнес-правил и операций, а также описание прецедентов и бизнес-процессов. В UML диаграммы деятельности предназначены для моделирования вычислительных, так и организационных процессов (ТАКОЙ). как Рисунок ТАКОЙ – Диаграмма деятельности Диаграмма вариантов использования – это одна из разновидностей диаграммы UML, которая используется для описания возможного сценария использования разрабатываемой системы. Иными словами, она демонстрирует, как потенциальный пользователь будет взаимодействовать с системой. При том, что она отражает работу системы и то, какие её функции будут актуальны для тех или иных пользователей, она не учитывает какие бы то ни было детали реализации (структуры данных, алгоритмы и т. п.) (ТАКОЙ). 1.3 Определение требований к проектируемой ИС, цели и задачи проектирования ИС, разработка ТЗ Определение целей и задач чат-бота в Telegram для предоставления информации пользователям, имеет важное значение при разработке данного бота. Цели и задачи помогут определить функциональность и требования к боту, а также ориентироваться на конечный результат. Вот несколько ключевых аспектов, которые следует учесть при определении целей и задач: Упрощение предоставление информации о спортивной школе. 1. Главная цель чат-бота – обеспечить удобство и простоту предоставлении информации пользователям. Предоставление информации о различных видах спорта: Волейбол, 2. баскетбол, плавание. Бот должен предоставлять краткую информацию о каждом виде спорта, так же о: «Тренерском составе», «Расписании тренировок», «Турнирах» и давать возможность скачивать файлов для поступления. Постоянное улучшение и обновление. Целью проектирования чат- 3. бота должно быть создание гибкой и масштабируемой системы, которую можно будет легко обновлять и дорабатывать в будущем. Это может включать в себя добавление новых функций, оптимизацию интерфейса и других аспектов, чтобы обеспечить более эффективное и удобное взаимодействие с пользователями. В целом, определение целей и задач для чат-бота в Telegram, предназначенного для предоставления информации, требует тщательного анализа потребностей пользователей, а также обеспечения безопасности данных и удобства использования. Разработка и реализация бота, удовлетворяющего указанным целям и задачам, поможет оптимизировать процесс быстрого и удобного просмотра информации и получение удовлетворенности пациентов. Техническое задание по созданию телеграмм-бота. 1. Общая информация 1.1. Наименование Чат-бот Тест 1.2. Общее описание Телеграмм состоит из 5 команд: 1.1 Главное меню 1.2 Бадминтон 1.3 Волейбол 1.4 Каратэ 1.5 Помощь 1.6 О нас Создание рабочего телеграмм-бота разрабатывается для учреждения МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ». 4. Источник финансирования. Собственные средства МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ». 5. Плановые сроки начала и окончания. Начало оказания услуг: 1 мая 2024 года. Окончание оказания услуг: 10 июня 2024 года. 6. Требования. Работы по созданию бота должны оказываться Исполнителем, имеющим опыт работы с конфиденциальной информацией и по защите данных не менее двух лет. 7. Состав и содержание работ. 1 Создание команды «Бадминтон», «Волейбол», «Каратэ» должны включать в себя следующий функционал: 1.1 Тренерский состав. 1.2 Расписание тренировок. 1.3 Турниры. 1.4 Заявление. 1.5 Будущему спортсмену. 2 Создание команды «Помощь» должны включать в себя описание каждой команды и команда «О нас», описание учреждение МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ». 3 Ввод данных в телеграмм-бот должен поступать через программное обеспечение, состоящий из 2 пользователей: «Администратор» и «Секретарь». «Администратор» имеет возможность открывать: «Бадминтон», «Волейбол», «Каратэ» и добавлять, и изменять данные о: 3.1 Тренерском составе. 3.2 Расписании тренировок. 3.3 Турнирах. 4. «Секретарь» имеет возможность открывать: «Бадминтон», «Волейбол», «Каратэ» и добавлять, и изменять данные о: 4.1 Объявление турниров. 4.2 Объявление текущего турнира. 4.3 Результаты турниров. 5. Состав документации. Перечень документов, оформляемых при приемке и входе выполнения работ: 5.1 Заявка на выполнение работ 5.2 Договор на выполнение работ 5.3 Акт приемки-передачи работ 5.4 Спецификация выполненных работ 5.5 Счет-фактура за выполненные работы 5.6 Документы, подтверждающие качество выполнения работ 5.7 Документы о принадлежности прав на выполненные работы 10. Порядок оплаты. Оплата производится МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ». 1.4 Обзор и анализ существующих разработок В наше время существует множество информационных систем для спортивных учреждений, которые облегчают просмотр информации. Телеграм бот «Спорт-Экспресс» – это бот, который предоставляет пользователям последние новости и статистику в мире спорта. Он предлагает информацию о футбольных матчах, теннисных турнирах, баскетбольных играх и других спортивных событиях. Пользователи могут получать уведомления о результате матчей, а также другие актуальные материалы. Бот также предлагает возможность пользователям следить за своими любимыми спортивными командами, предоставлять статистику игроков, расписание предстоящих матчей и другую полезную информацию для настоящих болельщиков. В целом, бот «Спорт-Экспресс» обеспечивает пользователям доступ к обширной базе данных спортивной информации, помогая им быть в курсе всех последних событий в мире спорта. ТАКОЙ, ТАКОЙ. Рисунок ТАКОЙ – Список команд Рисунок ТАКОЙ – Виды спорта «Бот МСОШКК-Кузбасс» – предоставляет информацию о спортивных мероприятиях, соревнованиях, проходящих в МСОШКК-Кузбасс. Бот предоставляет список текущих турниров, результаты турниров и позволяет включить оповещение о командах или турнирах. Рисунок ТАКОЙ – Бот МСОШКК - Кузбасс, команды 1.5 Выбор и обоснование проектных решений В качестве основной среды разработки использовался «IntelliJ IDEA» и язык программирования Java. «IntelliJ IDEA» – это интегрированная среда разработки программного обеспечения, который используется для написания, исполнения, отладки и оптимизации кода. IntelliJ IDEA предлагает разработчикам ряд преимуществ: 1. Умные подсказки при кодировании: Функционал автодополнения кода и другие возможности, которые повышают производительность и скорость написания кода. 2. Встроенные инструменты для кодирования: Уже включены в состав среды разработки различные полезные инструменты, такие как терминал, профайлер и т.д. 3. Обширные интеграции: Множество интеграций с различными внешними системами и сервисами доступны прямо из коробки. 4. Возможности рефакторинга: Разработчики могут легко менять структуру кода без боязни повлиять на существующую функциональность. Java – это многоплатформенный объектно-ориентированный язык программирования, работающий на миллиардах устройств по всему миру. На нем работают приложения, операционные системы для смартфонов, корпоративное программное обеспечение и многие известные программы. Несмотря на то, что Java был изобретен более 20 лет назад, в настоящее время он является самым популярным языком программирования среди разработчиков приложений. Поскольку Java является бесплатным и универсальным языком, на нем создаются локализованные и распространяемые программы. Типичные примеры использования Java: 1. Разработка игр. Многие популярные мобильные, компьютерные и видеоигры созданы на Java. Даже современные игры, в которых используются передовые технологии, такие как машинное обучение или виртуальная реальность, создаются с использованием технологии Java. 2. Облачные вычисления. Язык Java часто называют WORA (Write Once and Run Anywhere – «Напиши один раз, запускай где угодно»), что делает его идеальным для децентрализованных облачных приложений. Поставщики облачных услуг выбирают язык Java для запуска программ на широком спектре базовых платформ. 3. Большие данные. Язык Java используется для механизмов обработки данных, которые могут работать со сложными наборами данных и большими объемами данных в режиме реального времени. 4. Искусственный интеллект. Java – это кладезь библиотек машинного обучения. Благодаря своей стабильности и скорости язык стал выбором № 1 для разработки приложений искусственного интеллекта, таких как обработка естественного языка и глубокое обучение. 5. Интернет вещей. Язык Java используется для программирования датчиков и аппаратного обеспечения периферийных устройств, которые могут независимо подключаться к Интернету. Популярность языка Java заключается в простоте его использования. Некоторые причины, по которым разработчики предпочитают Java другим языкам программирования: 1. Высококачественные учебные ресурсы. Поскольку Java существует уже давно, для новых программистов доступно множество учебных ресурсов. Подробная документация, исчерпывающие печатные материалы и курсы помогают разработчикам на протяжении всего обучения. Кроме того, новички могут начать писать код на Core Java, прежде чем переходить на Advanced Java. 2. Встроенные функции и библиотеки. При использовании Java разработчикам не нужно каждый раз писать новую функцию с нуля. В качестве альтернативы Java предоставляет богатую экосистему встроенных функций и библиотек для разработки ряда приложений. 3. Активная поддержка сообщества. У Java много активных пользователей и сообщество, которое может поддержать разработчиков, когда они сталкиваются с трудностями при написании кода. 4. ПО обновляется. платформы Java также регулярно поддерживается и Высококачественные инструменты разработки Язык Java предлагает различные инструменты для поддержки автоматизированного редактирования, изменениями. отладки, Эти тестирования, инструменты развертывания делают и программирование управления на Java экономичным и быстрым. 5. Независимость от платформы Код Java может работать на любой базовой платформе, такой как Windows, Linux, iOS или Android, без перезаписи. Таким образом, язык особенно эффективен в современной среде, где приложения запускаются на нескольких устройствах. В качестве основной среды создания пользовательского интерфейса ПО использовался JavaFX «Scene Builder». «Scene Builder» – это инструмент визуального макета, который позволяет пользователям быстро создавать пользовательские интерфейсы приложений JavaFX без кодирования. Пользователи могут перетаскивать компоненты пользовательского интерфейса в рабочую область, изменять их свойства, применять таблицы стилей, а код FXML для макета, который они создают, автоматически генерируется в фоновом режиме. Для работы с СУБД была выбрана база данных PostgreSQL. PostgreSQL – это мощная, открытая система управления базами данных (СУБД), которая поддерживает множество современных функциональных возможностей, таких как реляционная модель данных, транзакционность, возможность расширения функционала через пользовательские функции на разных языках программирования, включая C, C++, Java и другие. Она широко используется в различных отраслях для хранения и обработки больших объемов данных, а также для обеспечения высокой надежности и безопасности данных. Основные преимущества PostgreSQL: 1. Интегрирована система расширений, удобная возможность для администратора задавать типы данных, подключать необходимые модули из каталога PGXN, а также использовать различные функции и процедуры, написанные на нескольких языках программирования, включая Питон, Ява, PHP. 2. Простота масштабирования и повышение производительности за счет применения индексировании, обобщенного дерева поиска и наследования таблиц. 3. Команды и инструменты для анализа времени обработки запросов, переиндексации, удаления мусора. 4. Кроссплатформенность, обеспечивается работа с любыми видами приложений и операционными системами, всеми дистрибутивами Линкус, а также Виндовс и МакОС. 5. Поддержка языка разметки XML. 6. Свободная лицензия распространения BSD, открытый программный код с возможностью загрузки из репозитория на гит хабе. 2 Проектная часть 2.1 Разработка информационного обеспечения Для дальнейшей разработки чат-бота необходимо построить модели «Как должно быть». Задачей описания модели как должно быть, отражение целевого состояния, которое в дальнейшем предполагается претворить в жизнь. Диаграмма деятельности «Как должно быть» представлена на ТАКОЙ. Рисунок ТАКОЙ – Диаграмма деятельности На диаграмме деятельности «Как должно быть», изменилась в выгрузке данных. Теперь информация выгружается в чат-бота, который быстро и конструировано показывает информацию. 2.2 Разработка программного обеспечения Для прототипирования чат-бота необходим хостинг. При разработке чатбота был выбран хостинг Heroku. Heroku – облачная мультиязычная платформа как услуга (PaaS), основанная на управляемой контейнерной системе, с интегрированными службами передачи данных и развитой экосистемой для развертывания и запуска приложений (ТАКОЙ). Рисунок ТАКОЙ – Интерфейс «Heroku» Работающие в Heroku приложения выполняются изолированно от других – они заключены в специальные контейнеры, которые называются диносами или дино (dyno, dynos). Диносы позволяют создать легковесную независимую среду и развернуть в ней приложение так, чтобы настройки его среды не конфликтовали несколькими с другими. диносами, и Одно приложение проект легко может использоваться масштабируется под задачи разработчика. Теперь необходимо выбрать интерфейс для разработки бота. Для этой цели был выбран IntelliJ IDEA. «IntelliJ IDEA» – это интегрированная среда разработки (IDE) от компании JetBrains, предназначенная для работы с языками программирования Java, Kotlin, Groovy, Scala и другими. Она предлагает различные инструменты для удобного создания, отладки и тестирования программного обеспечения, а также поддерживает множество плагинов и расширений для расширения функциональности. IntelliJ IDEA широко используется разработчиками по всему миру и считается одним из лучших инструментов для разработки программного обеспечения (ТАКОЙ). Рисунок ТАКОЙ – Среда разработки «IntelliJ IDEA» Далее необходимо найти пользователя BotFather, который также является ботом, позволяющим осуществлять регистрацию и настройку пользовательских ботов (ТАКОЙ). BotFather позволяет присвоить имя нашему боту, задать его описание, изображение и список команд, доступных пользователям. Необходимо заполнить все пункты, так как в дальнейшем от этого будет зависеть то, насколько ботом удобно пользоваться. При регистрации выдается уникальный ключ, необходимый для связи пользователей с ботом и организации их взаимодействия. Отправляем команду /newbot и вводим имя нашего бота и его ник, по которому его будут находить другие пользователи (ТАКОЙ). В дальнейшем все настройки, кроме никнейма, можно будет поменять. При необходимости также можно получить новый уникальный ключ. Далее можно добавить описание бота, которое пользователь будет получать вначале диалога, расписать команды, которые позволят ускорить ввод сообщений и присвоить боту картинку для упрощения процесса поиска. Также BotFather дает нам уникальный ключ, при помощи которого и будет осуществляться клиент-серверная связь. Далее необходимо найти пользователя BotFather, который также является ботом, позволяющим осуществлять регистрацию и настройку пользовательских ботов (ТАКОЙ). BotFather позволяет присвоить имя нашему боту, задать его описание, изображение и список команд, доступных пользователям. Необходимо заполнить все пункты, так как в дальнейшем от этого будет зависеть то, насколько ботом удобно пользоваться. При регистрации выдается уникальный ключ, необходимый для связи пользователей с ботом и организации их взаимодействия. Отправляем команду /newbot и вводим имя нашего бота и его ник, по которому его будут находить другие пользователи (рисунок 2.8). В дальнейшем все настройки, кроме никнейма, можно будет поменять. При необходимости также можно получить новый уникальный ключ. Далее можно добавить описание бота, которое пользователь будет получать вначале диалога, расписать команды, которые позволят ускорить ввод сообщений и присвоить боту картинку для упрощения процесса поиска. Также BotFather дает нам уникальный ключ, при помощи которого и будет осуществляться клиент-серверная связь (ТАКОЙ). Рисунок ТАКОЙ – Окно регистрации бота Рисунок ТАКОЙ – Окно описание бота Теперь переходим к разработке бота. Бот будет выполнять 6 команд, а именно: 1. Старт 2. Помощь. 3. О нас. 4. Бадминтон. 5. Волейбол. 6. Каратэ. Теперь необходимо добавить доступ боту к базе данных, для отправки данных, которые записал «Администратор» или «Секретарь». Для этого необходимо подключить PostgreSQL к нашему боту (ТАКОЙ). Рисунок ТАКОЙ – Подключение базы данных Дальше необходимо создать базу данных в PostgreSQL, в которую будет сохранятся информация о пациентах. Для этого необходимо зайти в PostgreSQL и создать PostgreSQL (ТАКОЙ), в которой необходимо указать: 1. Hostname (Ip-адрес). 2. Port. 3. Имя пользователя. 4. Пароль. Рисунок ТАКОЙ – Создание базы данных в «PostgreSQL» После этого необходимо создать таблицу для внесения данных, на рисунке ТАКОЙ, представлено создание таблицы для видов спорта. Рисунок ТАКОЙ – Создание таблицы в «PostgreSQL» Для подключения базы данных к проекту, необходимо подключить библиотеку «org.postgresql» (ТАКОЙ Рисунок ТАКОЙ – Подключение библиотеки «org.postgresql» Интерфейс бота будет состоять из 5 команд, в которых будет основные действия бота. На рисунке ТАКОЙ показан интерфейс бота, который встречает пользователя. Рисунок ТАКОЙ – Интерфейс телеграмм-бота Далее пользователь может увидеть список команд, которые можно использовать (ТАКОЙ). Рисунок ТАКОЙ – Список команд телеграмм-бота На рисунке ТАКОЙ показан интерфейс «Помощь». При нажатии, пользователя встречает интерфейс, который объясняет пользователю как пользоваться ботом, какие команды у него существуют и куда нужно жать. Рисунок ТАКОЙ – Интерфейс «Помощь» На рисунке ТАКОЙ показан интерфейс «О нас». При нажатии, пользователя встречает интерфейс, который дает краткую информацию о спортивном учреждении, что это за учреждение, где оно находится, социальные ссылки и горячий телефон. Рисунок ТАКОЙ – Интерфейс «О нас» На рисунке ТАКОЙ показан интерфейс команды «Бадминтон», команды «Волейбол», «Каратэ» имеют одинаковый функционал. При нажатии команды «Бадминтон», пользователя встречает интерфейс с 5 кнопками: «Тренерский состав», «Расписание тренировок», «Турниры», «Заявления», «Будущему спортсмену». Рисунок ТАКОЙ – Список кнопок При нажатии кнопки «Тренерский состав» команды «Бадминтон», пользователю выйдут данные о тренерском составе спортивной школы (ТАКОЙ, ТАКОЙ). Рисунок ТАКОЙ – Тренерский состав «Бадминтон» На рисунке ТАКОЙ показан интерфейс «Расписание тренировок». При нажатии, пользователя встречает интерфейс, который показывает кнопки с ФИО тренеров, при нажатии на необходимого тренера, высвечиваются группы под его руководством, при нажатии на группу, высвечивается расписание тренировок. Рисунок ТАКОЙ – Интерфейс «Расписание тренировок» На рисунке ТАКОЙ показан интерфейс «Турниры». При нажатии, пользователя высвечивают 3 кнопки: «Расписание турниров» (ТАКОЙ), «Текущие турниры» (ТАКОЙ), информацией о турнирах. «Результаты турниров» (ТАКОЙ), с Рисунок ТАКОЙ – Интерфейс «Расписание турниров» Рисунок ТАКОЙ – Интерфейс «Текущие турниры» Рисунок ТАКОЙ – Интерфейс «Результаты турниров» На рисунке ТАКОЙ показан интерфейс «Заявления». При нажатии, пользователя встречает интерфейс c 3 кнопками: «Заявления для несовершеннолетнего поступающего», «Заявление для совершеннолетнего поступающего» и «Разрешение для участия в турнирах» и при переходе по этим кнопкам, предоставляется PDF файлы с возможностью их скачивания. Рисунок ТАКОЙ – Интерфейс «Заявления» На рисунке ТАКОЙ показан интерфейс «Будущему спортсмену». При нажатии, пользователя встречает интерфейс, который пользователю краткую информацию о этом виде спорта. рассказывает Рисунок ТАКОЙ – Интерфейс кнопки «Будущему спортсмену» Для внесения данных в Телегамм-бот используется программное обеспечение, которое имеет 2 пользователя: «Администратор» и «Секретарь» (ТАКОЙ). Рисунок ТАКОЙ – Пользователи системы На (ТАКОЙ) представлено главное окно «Администратора», которое позволяет просматривать и изменять такие виды спорта как «Бадминтон», «Волейбол», «Каратэ», которые имеют действия для заполнения данных о «Тренерском составе», «Расписание тренировок», «Объявление турниров и «Результате турниров». Все данные сохраняются в базу данных, после чего отображаются в телеграмм-боте. Рисунок ТАКОЙ – Интерфейс «Администратора» На (ТАКОЙ) представлено главное окно заполнения и изменения «Тренерский состав» вида спорта «Бадминтон». Рисунок ТАКОЙ – Интерфейс «Тренерский состав» На (ТАКОЙ) представлено главное окно заполнения и изменения «Расписание тренировок» вида спорта «Бадминтон». Рисунок ТАКОЙ – Интерфейс «Расписание тренировок» На (ТАКОЙ) представлено главное окно заполнения и изменения «Объявление турниров» (ТАКОЙ) и «Результаты турниров» (ТАКОЙ) вида спорта «Бадминтон». Рисунок ТАКОЙ – Интерфейс «Объявление турниров» Рисунок ТАКОЙ – Интерфейс «Результаты турниров» На (ТАКОЙ) представлено главное окно «Секретарь», которое позволяет открывать необходимые виды спорта и заполнять данные о «Объявление турниров» «Текущие турниры» и «Результаты турниров». Рисунок ТАКОЙ – Интерфейс «Секретаря» На (ТАКОЙ) представлен интерфейс «Текущие турниры», заполнение которого доступно секретарю, данными непосредственно при проведении турнира. Рисунок ТАКОЙ – Интерфейс «Текущие турниры» 3 Прикладная часть В разработке Telegram-бота для спортивного комплекса «Юбилейный» принимало участие два человека: руководитель группы и инженер. Ом – месячный оклад. Ом для руководителя группы – 20250 рублей, Ом инженера ИС – 14120 рублей. Состав работников представлен в таблице 2. Таблица 2 – Состав работников Наименование Численность Месячный оклад Ом, Руб. Руководитель группы 1 20250 Инженер 1 14120 Время участия в создании ИС каждого специалиста определяется на основе перечня работ и трудоемкости их выполнения. Расчёт трудоёмкости выполнения работ приводится в таблице ТАКОЙ. Трудоёмкость выполнения работ рассчитывается по формуле 1. (1) где – расчетная трудоемкость выполнения работы; – минимальное время; – максимальное время, необходимое для выполнения работы. Таблица ТАКОЙ –Трудоёмкость выполнения работ Наименование Руководитель Инженер работ группы Анализ 5 9 6,7 0 4 Изучение задания 7 10 7,5 5,5 5 Подбор и 2 4 3,5 2 2,5 7 10 8,7 3,8 5 1,5 5 3,5 1 3 15 20 14,6 5 6,7 20 30 24 0 23 6 14 11 0 11 предметной области изучение литературы Обоснование проектных решений по видам обеспечения Обзор существующих аналогов Разработка структуры программного обеспечения Разработка пользовательского интерфейса Разработка входных и выходных форм Написание 40 70 60 0 50 10 13 10,5 0 12 8,5 10 9 0 10 122 195 159 17,3 132,2 программы Разработка документации Оформление пояснительной записки проекта ИС Всего В таблице ТАКОЙ показаны общие затраты на разработку ИС. Таблица 4 – Общие затраты на разработку ИС Т№ 1 Наименование статьи Буквенное Формула Сумма, затрат обозначение руб. Зарплата ЗПпр Тр* Oм /(21*8) 6 295,23 руководителя группы 2 Зарплата инженера ЗПдр Тр* Oм /(21*8) 1235,71 3 Итого зарплаты ЗПпо ∑ всех з/п 7530,94 4 Премия П ЗПпо*0,22 4164,28 5 Выплаты по Врк (ЗПпо+П)*0,15 1656,80 ФОТоб ЗПпо+П+Врк 13352,2 ЕСН ФОТоб*0,26 3471,52 9037,12 районному коэффициенту 6 Общий фонд оплаты труда работников 7 Единый социальный налог 8 Накладные расходы НР ЗПпо*1.2 9 Итого затрат Зпо ФОТоб+ЕСН+НР 25806,84 10 Затраты, связанные с Зком Тр*оклад/(8*21) 6838,70 Зпр Зпо*0,05 1290,34 Зрп Зпо+Зком+Зпр 33925,88 Нсп ФОТоб*0,1 1335,22 Зоф Зпр*0,05 64,51 Зсп Зрп+Нсп+Зоф 35325,61 работой компьютера при разработке ИС 11 Прочие затраты, связанные с разработкой ИС 12 Итого затрат на разработку ИС 13 Налоги, включаемые в затраты 14 Затраты на оформление программного обеспечения 15 Всего затрат на создание ИС Итого затраты информационной системы составляют 35325,61. В настоящее время услуги по созданию ИС стоят не менее 60 тысяч рублей. Следовательно, данная разработка является для МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ» выгодным вариантом. ЗАКЛЮЧЕНИЕ Объект исследования являлся МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ». Предмет исследования являлся процесс информирования родителей и обучающихся секций МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ». Цель дипломного проекта являлась разработка Telegram-бота для спортивного комплекса (на примере МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ»). Для достижения поставленной цели были решены следующие задачи: дана характеристика предметной области; проанализирована деятельность МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ»; построены модели предметной области «как есть» с целью выявления недостатков МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ»; построены модель предметной области «как должно быть»; выполнен обзор существующих программных продуктов; разработана информационную систему для предоставления информации; рассчитана трудоемкость выполнения работ и общие затраты на разработку ИС. СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 1. Telegram bot API [Электронный ресурс]. – Режим доступа: https://core.telegram.org/bots/api – Загл. с экрана. 2. МБУ СП «Спортивная школа «ЮБИЛЕЙНЫЙ» [Электронный ресурс]. – Режим доступа: http://юбилейныйсш.рф/ – Загл. с экрана. 3. [Электронный PostgreSQL ресурс]. – Режим доступа: Режим доступа: Режим доступа: https://blog.skillfactory.ru/glossary/postgresql/ – Загл. с экрана. 4. IntelliJ [Электронный IDEA ресурс]. – https://blog.skillfactory.ru/glossary/intellij-idea/ – Загл. с экрана. 5. SceneBuilder [Электронный ресурс]. – https://habr.com/ru/companies/first/articles/676290/ – Загл. с экрана. 6. Telegram [Электронный ресурс]. – Режим доступа: Режим доступа: https://web.telegram.org – Загл. с экрана. 7. Microsoft Visio [Электронный ресурс]. – https://junior3d.ru/article/microsoft-visio.html – Загл. с экрана. 8. Язык UML: что это такое и зачем он нужен [Электронный ресурс]. – Режим доступа: https://skillbox.ru/media/code/yazyk-uml-chto-eto-takoe-i-zachemon-nuzhen/ – Загл. с экрана. 9. Java 2 / П. Ноутон, Г. Шилдт. - СПб.: БХВ - Петербург, 2017. - 1072с., 67п.л. 10. Самоучитель Java 2 / И.Ш. Хабибуллин. - СПб.: БХВ - Петербург, 2021. - 720с., 45п.л. 11. Наир Виджей. Предметно-ориентированное проектирование в Enterprise Java с помощью Jakarta ЕЕ, Eclipse MicroProfile, Spring Boot и программной среды Axon Framework: Практическое пособие/ Н. Виджей. Москва: Издательство ДМК Пресс, 2020. – 306 с. 12. Зыков, С. В. Программирование. подход : учебник и для практикум вузов / Объектно-ориентированный С. В. Зыков. — Москва : Издательство Юрайт, 2023. — 155 с. 13. Гуськова Ольга Ивановна. Объектно ориентированное программирование в Java: Учебное пособие / О. И. Гуськова. - Москва: Издательство МПГУ, 2018. - 240 с.