Разработка Telegram-бота для автоматизации процесса ремонтно-строительных работ (часть 2)

Корпоративные информационные системы и учетная политика организации при применении автоматизированной формы ведения учета

Аннотация: статья посвящена разработке Telegram-бота для автоматизации бизнес-процесса заказа услуг ремонтно-строительных работ. Используя водопадную модель внедрения ПО, осуществляется проектирование процессов в графических нотациях IDEF0 и BPMN2.0 для состояний AS-IS и TO-BE, моделирование таблиц баз данных и построение ER-диаграмм, а также предлагается структура экранов реализуемого приложения. Чат-бот разрабатывается на языке программирования Python с использованием инструментов Aiogram, PyCharm, SQLite и DB Browser for SQLite, а также библиотеки SQLAlchemy. Функциональное тестирование полученного Telegram-бота продемонстрировало высокое качество реализованного приложения.
Ключевые слова: процесс строительных работ, чат бот в telegram, чат бот телеграм, ранжирование и приоритизация требований, создание карты бизнес процессов, карта бизнес процессов компании, определение узких мест процесса, диаграмма сущность связь, проектирование баз данных, проектирование моделей данных, бот в telegram разработка, создание бота для телеграма, разработка чат бота в телеграм, программа для сметы строительных работ.
СкачатьPDF (статья), PDF (выпуск №34)

4.  Проектирование решения

4.1.  Моделирование бизнес-процессов

Ссылка на 1-ю часть статьи. В текущей модели AS-IS процесс начинается с того, что клиент оставляет заказ по телефону, через электронную почту или при личном визите в офис. Менеджер вручную записывает информацию о заказе в учетную систему, что требует дополнительного времени и может привести к ошибкам при переносе данных. Затем менеджер связывается с потенциальными исполнителями по телефону, чтобы найти подходящего мастера и согласовать сроки выполнения работ. Учет использованных и оставшихся материалов ведется в Excel-таблицах или бумажных журналах, что усложняет оперативный контроль остатков. Обратная связь с клиентом осуществляется через телефонные звонки или электронную почту, что не всегда позволяет быстро информировать о статусе заказа.

На рис. 4.1-4.2. демонстрируется процесс обработки заказов на ремонтные работы, смоделированный в нотациях ARIS VACD и BPMN2.0 для модели AS-IS [5]. Как видно из графических схем, основные проблемы существующего бизнес-процесса состоят в длительном времени согласования работ между участниками, высокой вероятности ошибок при ручном вводе данных и отсутствии оповещений для менеджеров о поступлении новых заявок.

Верхнеуровневый процесс ремонтно-строительных работ в нотации ARIS VACD и модели AS-IS

Рис. 4.1. Верхнеуровневый процесс ремонтно-строительных работ в нотации ARIS VACD и модели AS-IS

Бизнес-процесс «Принять заказ» в нотации BPMN 2.0 на 2-м уровне декомпозиции модели AS-IS

Рис. 4.2. Бизнес-процесс «Принять заказ» в нотации BPMN 2.0 на 2-м уровне декомпозиции модели AS-IS

Модель TO-BE подразумевает, что клиент оформляет заказ напрямую через Telegram-бота, выбирая нужную услугу из интерактивного меню и заполняя необходимые данные в стандартизированной форме. Чат-бот автоматически регистрирует заявку в программной системе и мгновенно отправляет уведомление менеджеру через Telegram, исключая задержки в обработке. Назначение исполнителя происходит через интерфейс чат-бота, где программа автоматически предлагает подходящих мастеров с учетом их специализации и текущей загрузки. Встроенный модуль учета материалов обновляет данные о расходе и остатках, синхронизируя информацию в реальном времени. Клиент получает уведомления о каждом этапе выполнения заказа через Telegram-бота (рис. 4.3-4.4).

Верхнеуровневый процесс ремонтно-строительных работ в нотации ARIS VACD и модели TO-BE

Рис. 4.3. Верхнеуровневый процесс ремонтно-строительных работ в нотации ARIS VACD и модели TO-BE

Бизнес-процесс «Принять заказ» в нотации BPMN 2.0 на 2-м уровне декомпозиции модели TO-BE

Рис. 4.4. Бизнес-процесс «Принять заказ» в нотации BPMN 2.0 на 2-м уровне декомпозиции модели TO-BE

Преимущества модели TO-BE заключаются в значительном сокращении времени обработки заказов за счет цифровизации операций и минимизации ошибок ручного ввода данных. Приложение обеспечивает мгновенное оповещение всех участников бизнес-процесса, точный учет материалов и прозрачность взаимодействия с клиентами, что повышает эффективность работы компании и уровень удовлетворенности клиентов.

4.2. Проектирование таблиц баз данных

Данные для разрабатываемого приложения по обработке заказов на монтажные работы представлены пятью основными сущностями, нормализованными до 3-НФ [6]. Пользователи системы хранятся в таблице Users, содержащей контактную информацию. Заказы сохраняются в Orders, где каждый заказ имеет свой номер, ссылку на пользователя и данные, характеризующие оказываемые услуги. Исполнители работ регистрируются в таблице Executors с указанием их имени, специализации и графика работы. Обращения клиентов фиксируются в таблице Appeals и привязываются к конкретным заказам. Для учета строительных материалов доступна таблица Materials.

На рис. 4.5 представлена ER-диаграмма заявленных объектов данных. Предлагаемая архитектура данных обеспечивает целостность информации через внешние ключевые полня и уникальные идентификаторы для всех сущностей. В таблицах используются автоинкрементные идентификаторы в качестве первичных ключей, что гарантирует уникальность записей. Связи между таблицами организованы таким образом, чтобы избежать дублирование данных. 

ER-диаграмма для обработки заказов на ремонтные работы

Рис. 4.5. ER-диаграмма для обработки заказов на ремонтные работы

4.3. Подготовка схемы реализуемого приложения

Схема приложения позволяет отобразить ожидаемый пользовательский интерфейс разрабатываемой программы, а также порядок перехода между ее экранами [7]. Планируются два сценария работы приложения, один из которых релевантен клиенту, второй – исполнителю. Сценарий взаимодействия клиента с ПО интуитивно понятен. При начальном обращении пользователь может ознакомиться с перечнем услуг и контактными данными компании.  Для последующего создания заказа на ремонт требуется авторизация. После ее успешного прохождения клиенту доступен полный функционал приложения для работы с заявками/заказами, включая его отправку. На рис. 4.6 представлена карта приложения с точки зрения его использования заказчиком.

Карта переходов реализуемого программного решения для клиента

Рис. 4.6. Карта переходов реализуемого программного решения для клиента

Использование программы менеджером строительной компании представляется следующим порядком взаимодействия. После успешной авторизации в системе ему присваивается специальный идентификатор, открывающий доступ к расширенным процедурам управления: учет стройматериалов и контроль ответственных исполнителей. Первая функция обеспечивает точный контроль доступных и затраченных строительных запасов, вторая – ведение базы мастеров, их контактной информации и графика работы, а также назначение конкретным заказам. Рис. 4.7 демонстрирует схему приложения, относящуюся к исполнителю.

Карта реализуемого приложения для менеджера

Рис. 4.7. Карта реализуемого приложения для менеджера

5. Разработка программной системы

Разработка Telegram-бота для обработки заказов на ремонтно-строительные работы осуществлялась с применением современных софтверных инструментов и технологий. Основой приложения являлся язык программирования Python, который обеспечил гибкость программирования, простую интеграцию с внешними сервисами и эффективную обработку бизнес-логики.

Активно применялся фреймворк Aiogram [8], предоставляющий удобный API для работы с Telegram Bot API и асинхронной обработки сообщений. Это позволило создать интуитивно понятный интерфейс для пользователей, включая меню, кнопки и многоэтапные формы ввода данных.

Хранение информации о заказах, клиентах и исполнителях было организовано с помощью SQLite [9] в сочетании с библиотекой SQLAlchemy [10], предоставивших удобное объектно-реляционное отображение данных и надёжное управление ими. Для визуализации и отладки структуры базы данных широко применялся инструмент DB Browser for SQLite [11].

Реализация программного приложения велась в интегрированной среде PyCharm [12], что позволило эффективно организовывать код, проводить отладку и тестирование функционала. Для автоматизации развертывания и управления зависимостями использовалось виртуальное окружение Python, что повысило стабильность работы системы в различных средах.

Примеры пользовательских экранов разработанного Telegram-бота даны на рисунках ниже как для клиентской части, так и сотрудников подрядчика (рис. 5.1-5.4 и рис.5.5-5.6).

Результаты нажатия кнопки услуги

Рис. 5.1. Результаты нажатия кнопки услуги

Авторизация пользователя

Рис. 5.2. Авторизация пользователя

Создание заказа

Рис. 5.3. Создание заказа

Нажатие кнопки обращение

Рис. 5.4. Нажатие кнопки обращение

Уведомление о поступившем заказе

Рис. 5.5. Уведомление о поступившем заказе

Уведомление о поступившем обращении

Рис. 5.6. Уведомление о поступившем обращении

6. Функциональное тестирование

После реализации Telegram-бот было произведено его функциональное тестирование [13]. Итоги испытаний даны в табл. 6.1, выявленные недочеты и ошибки в работе приложения, были успешно устранены.

Табл. 6.1. Результаты функционального тестирования разработанного ПО
Сценарий Тестируемый функционал Ожидаемый результат Фактический результат
1 Услуги Нажатие на кнопку «Услуги» Выводится перечень всех выполняемых компанией услуг

Нажатие на кнопку «Услуги»

    Редактирование информации об услугах Вся измененная информация сохраняется

Редактирование информации об услугах

2  Контакты Нажатие на кнопку «Контакты» Отображается вся контактная информация компании

Нажатие на кнопку «Контакты»

 Авторизация Нажатие на кнопку «Авторизация» Производится авторизация пользователя

Нажатие на кнопку «Авторизация»

    Хранение данных заказчиков Все данные авторизации записываются в базу данных

Хранение данных заказчиков

Создание заказа Нажатие на кнопку «Создание заказа» Заказчик заполняет форму для создания заказа

Нажатие на кнопку «Создание заказа»

    Отправка заказа менеджеру Менеджеру приходит уведомление о созданном заказе

Отправка заказа менеджеру

Обращение Нажатие на кнопку «Обращение» Заказчик заполняет форму отправки обращения

Нажатие на кнопку «Обращение»

    Отправка обращения менеджеру Менеджеру приходит уведомление о поступившем обращении

Отправка обращения менеджеру

Управление исполнителями Нажатие кнопки «Добавить исполнителя» Менеджер заполняет информацию об исполнителях

Нажатие кнопки «Добавить исполнителя»

Учет стройматериалов Нажатие кнопки «Добавить материалы» Менеджер заполняет информацию об имеющихся материалах

Нажатие кнопки «Добавить материалы»

Заключение

В ходе выполнения исследований был проведен анализ предметной области, позволивший выявить ключевые проблемы в организации процессов управления заказами строительных услуг и сформулировать требования к программной системе. Была предложена комплексная архитектура решения, обеспечивающая автоматизацию ключевых бизнес-процессов.

Реализованный программный продукт включает модули управления услугами, клиентами, исполнителями и заказами, что автоматизирует рабочие процессы строительной компании. Разработанный Telegram-бот предоставляет удобный интерфейс для взаимодействия с клиентами, значительно упрощая процесс оформления заказов. В ходе тестирования подтверждена корректность работы всех компонентов приложения, а подробная документация обеспечивает быстрое внедрение и сопровождение.

В дальнейшем предполагается расширение функциональности за счет интеграции с платежными системами и CRM-платформой, что позволит создать единое цифровое пространство для управления клиентскими отношениями. Перспективным направлением является доработка мобильного приложения для функций геолокации и Push-уведомлений, что повысит оперативность реагирования на новые заказы.

Выполненная работа демонстрирует высокую практическую значимость и готовность решения к имплементации в реальные бизнес-процессы. Разработанное ПО способно существенно повысить эффективность работы строительных организаций за счет цифровизации ключевых операционных процессов и улучшения качества взаимодействия с клиентами.

Литература

  1. Демьянов Н.А. Требования к программному обеспечению: от подготовки до управления изменениями (часть 1) // Корпоративные информационные системы. – 2024. – №1 (25) – c. 16-22. – URL: https://corpinfosys.ru/archive/2024/issue-25/271-2024-25-requirements.
  2. Яндекс.Услуги [Электронный ресурс]. – Режим доступа: https://uslugi.yandex.ru/ (Дата обращения 31.03.2026).
  3. Первый БИТ [Электронный ресурс] // Битрикс 24 для строительных компаний. – Режим доступа: https://bit-24.ru/otraslevaja-jekspertiza/stroitelstvo/ (Дата обращения 31.03.2026).
  4. PlanRadar [Электронный ресурс]. – Режим доступа: https://www.planradar.com/ru/ (Дата обращения 31.03.2026).
  5. Свод знаний по управлению бизнес-процессами: BPM CBoK 4.0 / Бенедикт Т., Кирхмер М., Шарсиг М., Франц П., Саксена Р., Моррис Д., Хилти Д. – М.: Альпина Паблишер, 2024. – 504 с.
  6. DAMA-DMBoK: Свод знаний по управлению данными. Второе издание / DAMA International [пер. с англ. Агафонова Г.]. – М.: Олимп-бизнес, 2024. – 828 с.
  7. Harrison R. TOGAF certified study guide. Van Haren Publishing, Zaltbommel, 2013. – 324 p.
  8. Aiogram [Электронный ресурс]. – Режим доступа: https://aiogram.dev/ (Дата обращения 31.03.2026).
  9. SQLite [Электронный ресурс]. – Режим доступа: https://www.sqlite.org/ (Дата обращения 31.03.2026).
  10. SQLAlchemy [Электронный ресурс]. – Режим доступа: https://www.sqlalchemy.org/ (Дата обращения 31.03.2026).
  11. DB browser for SQLite [Электронный ресурс]. – Режим доступа: https://sqlitebrowser.org/ (Дата обращения 31.03.2026).
  12. Jetbrains [Электронный ресурс] // PyCharm. – Режим доступа: https://www.jetbrains.com/pycharm/ (Дата обращения 31.03.2026).
  13. Терентьев И.М. Стратегия тестирования в проектах имплементации ERP-систем. – 2018. – №3 – с. 39-45. – URL: https://corpinfosys.ru/archive/issue-3/141-2018-3-testingstrategy.

Выходные данные статьи

Ариков Н.Ф. Разработка Telegram-бота для автоматизации процесса ремонтно-строительных работ (часть 2) // Корпоративные информационные системы. – 2026. – №1 (33) – c. 28-35. – URL: https://corpinfosys.ru/archive/2026/issue-34/331-2026-34-telegramchatbot.

Разработка Telegram-бота для автоматизации процесса ремонтно-строительных работ (часть 2)

Об авторе

Ариков Никита Федорович Ариков Никита Федорович– выпускник кафедры корпоративных информационных систем института информационных технологий РТУ МИРЭА. Тема выпускной квалификационной работы магистра «Программное решение обработки заказов на ремонтные работы». Электронная почта для связи с автором: Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра..

Статьи выпуска №34

  1. Разработка Telegram-бота для цифровизации ремонтных работ (часть 2).