О проекте
Наш клиент столкнулся с проблемой, типичной для технологических компаний с долгой историей: их флагманское ПО для конфигурирования приборов устарело. Старое приложение имело ключевое ограничение: оно позволяло работать только с одним прибором одновременно, что делало настройку десятков устройств долгой и рутинной процедурой. Кроме того, оно было доступно только под Windows и имело устаревший интерфейс.
Задача стояла не в косметическом обновлении, а в создании принципиально нового решения. После анализа требований и возможностей старой архитектуры пришли к выводу: старый технологический стек не подходил для новых задач. Поэтому мы приняли решение о выборе новых инструментов, сохранив при этом совместимость с данными и процессами текущих пользователей.
Бизнес-цели клиента
- Обеспечить кроссплатформенность: Дать пользователям свободу выбора ОС — Windows или Linux — чтобы охватить новых клиентов и удержать старых.
- Повысить стабильность и скорость: Ликвидировать «зависания» и обеспечить надежную одновременную работу с десятками COM-портов.
- Заложить основу для масштабирования: Создать архитектуру, способную работать с сотнями приборов и тысячами конфигурационных объектов.
- Создать современный пользовательский опыт: Разработать интуитивный интерфейс, который сократит время обучения новых инженеров.
Начало работы
Мы начали с детального анализа старого приложения, чтобы понять его архитектуру и слабые места. Стало очевидно, что его ядро не было рассчитано на современные задачи: работу с множеством приборов одновременно и поддержку двух операционных систем. Поэтому мы приняли решение не модернизировать старое решение, а создать новое ядро с нуля — под требования параллельной работы и кроссплатформенности.
Мы выбрали фреймворк Qt как оптимальный баланс между производительностью, кроссплатформенностью и возможностью создания сложного десктопного интерфейса. Для хранения конфигураций использовали SQLite — надежное встраиваемое решение, гарантирующее целостность данных даже при аварийном отключении.
Ключевые решения
- Массовое параллельное конфигурирование
Мы реализовали возможность групповой работы: теперь инженер может добавить в список десяток устройств и запустить для них общую операцию — например, массовое обновление конфигураций. Система автоматически обработает каждое устройство по очереди, освобождая пользователя от ручного переключения между приборами. - Единая кроссплатформенная кодовая база на Qt
Использование Qt позволило создать единую логику приложения для Windows и Linux. Мы тщательно разделили код, который работает с «железом» (портами, файлами), от общей логики приложения. Это позволило обеспечить одинаково стабильную работу на Windows и Linux и в разы упростило будущее обновление и поддержку системы. - Проектирование для масштаба
С самого начала мы закладывали в архитектуру возможность работы не с десятками, а с сотнями приборов. Это отразилось в структуре базы данных SQLite, механизмах кэширования и принципах работы GUI, который остается отзывчивым даже при обработке тысяч объектов. - Интуитивный интерфейс для сложных операций
Мы полностью переработали интерфейс в соответствии с современными принципами UX/UI дизайна, разработали и согласовали дизайн. Взамен устаревшего и запутанного управления мы создали логичную и интуитивную структуру, где все элементы — от проектов до отдельных приборов — организованы для быстрого доступа. Это позволило сократить время на массовые операции с конфигурациями и упростило ежедневную работу инженеров.
Результат
Новая версия конфигуратора уже передана заказчику. Продукт демонстрирует повышенную в 3-5 раз скорость настройки групп приборов и стабильную работу при одновременном доступе к оборудованию.
Мы создали не замену, а продукт следующего поколения. Он формирует для клиента новое ценностное предложение: единая, отказоустойчивая платформа для конфигурации, которая работает в любой инфраструктуре заказчика (Windows/Linux) и масштабируется под любые объемы оборудования.
Нужна разработка кроссплатформенного приложения для Windows и Linux?Напишите нам в чат-бот или на почту info@omcode.ru.
Проведем аудит вашего ПО, спроектируем надежную архитектуру и создадим современный конфигуратор, который будет расти вместе с вашим бизнесом.