Similar presentations:
TourProkat_Kolesnikov_checked
1.
Министерство науки и высшего образования Российской ФедерацииФедеральное государственное бюджетное образовательное учреждение высшего образования
«Воронежский государственный лесотехнический университет имени Г.Ф. Морозова»
РАЗДАТОЧНЫЙ МАТЕРИАЛ
ВЫПУСКНОЙ КВАЛИФИКАЦИОННОЙ РАБОТЫ
На тему:
«Проектирование и разработка десктопного приложения для автоматизации проката
туристического снаряжения на примере ООО «ТурПрокат»»
Выполнил: студент группы ИС2-221-ОБ
Колесников Д.С.
Руководитель: к.ф.-м.н., доцент
Ягодкин А.С.
Воронеж 2026
2.
Актуальность темыПлакат 2
Актуальность работы обусловлена ростом внутреннего туризма и
высокой операционной нагрузкой пунктов проката. В сезон сотрудники
обрабатывают десятки заявок, контролируют выдачу и возврат множества
единиц снаряжения, оформляют залоги и организуют техническое
обслуживание.
При использовании Excel, Word-шаблонов и бумажных журналов
возникают двойные бронирования, ошибки в учёте залогов, сложности
поиска информации и отсутствие единой истории обслуживания
инвентаря.
Разработка
специализированного
десктопного
приложения
«ТурПрокат» позволяет централизовать данные, автоматизировать
документы и отчёты, разграничить доступ по ролям и повысить
управляемость прокатного бизнеса.
3.
Цель и задачи работыПлакат 3
Цель выпускной квалификационной работы — спроектировать и разработать
десктопное приложение для автоматизации полного цикла управления прокатом
туристического снаряжения в ООО «ТурПрокат».
Задачи:
• провести анализ предметной области, нормативной базы и AS-IS процессов;
• исследовать существующие программные решения и выявить ограничения;
• спроектировать реляционную базу данных, архитектуру и UML-модели;
• реализовать приложение на Python, PyQt6 и SQLite с ролевым доступом;
• создать генерацию PDF-документов, экспорт отчётов и провести тестирование.
4.
Характеристика предметной областиШесть пунктов выдачи: Москва,
Сочи/Роза Хутор, Шерегеш, Домбай,
Байкал, Подмосковье.
ООО «ТурПрокат»
Плакат 4
Данные системы
Бизнес-процессы
14 таблиц, 8 пользователей, 10
категорий, 30 моделей, 95
экземпляров, 50 клиентов.
Каталог снаряжения, клиенты,
договоры, брони, выдача/возврат,
ТО, платежи и отчёты.
До внедрения система учёта строилась на разрозненных
Excel-таблицах, Word-шаблонах договоров и отдельных
журналах залогов. Это затрудняло контроль статуса
снаряжения, историю обслуживания и управленческую
отчётность.
5.
Контекстная IDEF0-диаграммаПлакат 5
Нормативные требования
Клиенты
Договоры и акты
↓
Снаряжение и заявки
Статусы и история
→
А-0
Автоматизация проката
туристического снаряжения
→
PDF и отчёты
Управленческие KPI
Данные сотрудников
↑
Python / PyQt6 / SQLite
6.
Декомпозиция блока А-0 «Автоматизация проката»A1
Учёт
снаряжения
A2
Работа
с клиентами
A3
Договоры
и платежи
A4
Брони
и выдачи
Плакат 6
A5
ТО и
ремонт
A6
Отчёты
и аудит
Система последовательно поддерживает полный цикл проката: от ведения
каталога и клиента до договора, выдачи, возврата, технического
обслуживания и формирования отчётности.
Финансовый контур
Складской контур
Документальный контур
Залоги, предоплата, доплата,
штрафы, возврат залога.
Статусы: доступен, забронирован,
выдан, на ТО, списан.
PDF-договор, бронь, акт
ТО/возврата, квитанция.
7.
Модели бизнес-процессов и потоков данныхПлакат 7
Клиент
Бронирование
Договор проката
Выдача
Отчёты
Платежи и залоги
ТО / ремонт
Возврат
бронирование предотвращает наложение заказов на один экземпляр;
выдача и возврат автоматически меняют статус снаряжения;
ТО фиксирует работы, материалы и ответственного техника;
руководитель получает отчёты по загрузке, выручке и аудиту.
8.
Архитектура системы и программный стекPresentation Layer
PyQt6, QTabWidget, QDialog,
QTableWidget, QSS
Business Logic Layer
валидация, статусы, ROLE_TABS,
расчёты и документы
Плакат 8
Data Layer
SQLite, database.py,
foreign keys, audit_log
приложение работает автономно на Windows 10/11 и Ubuntu 20.04/22.04;
используются Python 3.10+, PyQt6, SQLite, ReportLab, openpyxl и matplotlib;
пароли хранятся в виде SHA-256 хешей, действия фиксируются в audit_log;
отчёты экспортируются в CSV, XLSX и PDF, PDF-документы создаются через
ReportLab.
9.
Реляционная модель данныхcategories
10 записей
users
8 ролей
Плакат 9
machines
30 моделей
machine_units
95 экз.
service_calls
280 броней
clients
50 клиентов
contracts
130 дог.
payments
340 платежей
technicians
6 техников
parts / movements
40 / 260
work_orders
250 актов
locations
6 пунктов
База данных нормализована до 3НФ, содержит ограничения FOREIGN KEY, CHECK, UNIQUE и NOT NULL. В демобазе — более 1 400 связанных записей для проверки сценариев работы.
10.
Главное окно программыПлакат 10
Главное окно содержит шесть функциональных вкладок, KPI-плитки, фильтры, таблицы, цветовую индикацию статусов и панель управления операциями.
11.
Основные формы системыПлакат 11
Реализованы диалоги создания и редактирования моделей, экземпляров, клиентов, договоров, броней и расходных материалов.
12.
Отчёты и PDF-документыПлакат 12
Система формирует PDF-договор, бланк брони, акт ТО/возврата и квитанцию; отчёты доступны по категориям, брендам, загрузке, техникам, моделям
и аудиту.
13.
Результаты тестированияПлакат 13
Smoke-тест
Итог
Производительность
5 групп проверок: БД, авторизация,
PDF, GUI и экспорт данных.
OK = 19, FAIL = 0; тестовый прогон
выполняется не более 45 секунд.
Требования: запуск до 5 секунд,
запросы к БД до 1 секунды при 50 000
записей.
• проверено создание всех 14 таблиц и корректность демо-данных;
• подтверждены 4 роли пользователей: Директор, Менеджер,
Приёмщик, Техник;
• сгенерированы все 4 вида PDF-документов;
• созданы окна для всех ролей и проверено число доступных вкладок;
• выполнен экспорт клиентов в CSV и снаряжения в XLSX.
14.
Экономическая эффективностьПлакат 14
Трудозатраты
Стоимость
Эффект
260 чел.-ч, включая анализ,
проектирование, разработку,
тестирование и документацию.
650 000 руб. разработка; с
накладными расходами — около
850 000 руб.
Годовая экономия — около 285 000
руб.; срок окупаемости — примерно
3 года.
• учёт выдачи и возврата сокращается за счёт
автоматизации статусов экземпляров;
• формирование отчётности больше не требует ручной
сводки из разных таблиц;
• снижаются потери от двойных бронирований и ошибок при
возврате залогов;
• приложение не требует серверной инфраструктуры и
абонентской платы.
15.
ЗаключениеПлакат 15
В ходе выполнения выпускной квалификационной работы было разработано
десктопное приложение «ТурПрокат» для автоматизации проката туристического
снаряжения.
• реализованы шесть вкладок: снаряжение, клиенты, договоры, брони и
выдачи, ТО и ремонт, отчёты;
• создана база данных из 14 таблиц с демонстрационным набором данных;
• внедрены ролевая модель доступа, журнал аудита и SHA-256 хеширование
паролей;
• поддерживаются PDF-документы и экспорт отчётов в CSV, XLSX и PDF;
• тестирование подтвердило корректность работы компонентов: OK=19,
FAIL=0.
Разработанное решение готово к внедрению в малых и средних пунктах проката, работает
автономно и снижает трудозатраты персонала.
16.
Спасибоза внимание!