desktop vs web

Архитектура систем планирования горных работ

Одним из актуальных трендов в разработке ПО различных классов является создание систем в виде web-приложений. Не отстаёт в этом вопросе и горная отрасль, где помимо очевидных систем типа ERP или MES, всё чаще подобную архитектуру используют для создания инженерных решений: ГГИС и планирования горных работ. В открытом доступе нет публикаций (или они нам неизвестны) с анализом плюсов и минусов выбора данных технологий применительно к подобным программным продуктам. Остаётся открытым вопрос и реальной целесообразностьи применения web-технологий для создания ПО, пользователями которых будут являться десятки (редко когда больше, а чаще меньше) человек на предприятии. Не маловажным остаётся фактор рисков и стоимости разработки/стоимости владения решением.

Целью данной статьи является анализ и обоснование потенциальной архитектуры программного обеспечения для планирования горных работ, разработкой которого занимается компания АИОМ. При этом всё сказанное ниже во многом является актуальным и для систем геологического моделирования, маркшейдерии и проектирования, хотя и не может претендовать на всю полноту картины.

Современные тренды в области информационных технологий говорят о том, что, как заказчики, так и компании-разработчики программного обеспечения всё чаще смотрят в сторону web-приложений. С другой стороны, мировой опыт показывает, что все лидирующие системы такого класса реализованы в виде настольных приложений (Alastri, Deswik, MineSched, Whittle и т.д.) и только Deswik.OPS, решение для оперативного планирования, реализовано на web-технологиях. За пределами РФ нам неизвестны примеры созданных и занимающих существенное положение на рынке web-решений ГГИС (включая, планирование горных работ). Хотя надо отметить, что подобные попытки предпринимались, а некоторые проекты находятся в работе и сейчас.

Базовой задачей анализа является определение преимуществ и недостатков каждого из подходов к созданию новой системы планирования горных работ: разработка десктоп или web-приложения.

Преимущества web-архитектуры для создания системы планирования горных работ очевидны и изложены ниже. При этом, если бы такая система была создана, какие преимущества она могла бы дать по сравнению с классическими настольными приложениями?
Таблица 1
Преимущества web-решений относительно настольных приложений
Как мы видим из таблицы, большинство преимуществ от использования web-технологий могут быть получены при реализации системы оперативного планирования. Это связано со следующими факторами:
  1. Важно в короткие сроки обеспечить получение плана большим количеством действующих лиц из различных подразделений;
  2. Необходимость наличия единого источника правды (результатов планирования горных работ) у всех потребителей плана;
  3. Требуется интеграция с различными внешними системами, оперативное обновление справочников и НСИ.

Положительные стороны web-технологий, при этом, гораздо менее очевидны для систем стратегического и тактического планирования горных работ, что обуславливается рядом причин:
  1. Меньшим количеством специалистов, участвующих в процессе планирования;
  2. Работа над планом локализуется всего в нескольких отделах предприятия;
  3. Доступ к плану необходим меньшему количеству сотрудников;
  4. Цикл планирования значительно более трудоёмкий и длительный;
  5. Меньшая частота изменения исходных данных для расчета плана и необходимость обмена этими изменениями между системами.

Пожалуй, единственным неоспоримым преимуществом web-технологий для систем стратегического и тактического планирования – это независимость от платформы (Windows/Linux). Однако общее незначительное количество пользователей и трудоёмкость самого процесса несколько нивелирует эти положительные аспекты.
Таким образом можно сделать первые выводы:
  1. Решения по стратегическому планированию, имеет смысл реализовывать в качестве настольного приложения;
  2. Системы оперативного планирования, однозначно, имеет смысл реализовывать в качестве web-приложения;
  3. Для программных комплексов тактического планирования ситуация не так очевидна: имеются, как преимущества, так и различные технические риски реализации такого рода системы в виде web-приложения.

Поскольку в части систем тактического планирования история не совсем ясна, необходимо понять, стоят ли получаемые преимущества того, чтобы идти по пути web-приложения. Давайте рассмотрим риски такого подхода, см. таблицу ниже.
Таблица 2
Оценка рисков разработки тактического планирования на web-архитектуре
Таким образом, основные риски разработки системы тактического планирования на web-технологиях связаны с возможностью оперировать большими 3D-моделями с удовлетворительной производительностью.

Можно ли реализовать подобный функционал в web-среде? Да, несомненно, можно.

Принципиально, реализация функционала тактического планирования в web-среде, несомненно, возможна. Хотя в области решений для тактического планирования горных работ в мире нет и таких примеров, можно посмотреть в сторону ПО, которые технически в чём-то сопоставимы: на инженерные системы класса CAD/САПР. Среди них подавляющее большинство также реализовано в виде настольных приложений: AutoCad, SolidWorks, CATIA и др. Однако, есть и один успешный пример web-приложения – onShape. Но даже в этом случае, это скорее исключение из правила, значительно уступающее в популярности и производительности обозначенным выше решениям.

Создание в web-среде решений по тактическому планированию/ГГИС будет требовать:
  1. Наличия достаточно большого рынка компаний, которые готовы были бы платить за облачное, не кастомизируемое решение. Про российский рынок скорее можно сказать, что пользователей такого рода систем не очень много.
  2. Реализация такого рода систем на серверах заказчика будет требовать очень существенных инвестиций и трудозатрат как со стороны заказчика, так и со стороны разработчика ПО. При этом, велика вероятность, что качество программного обеспечения все равно не будет выше, чем у аналогичных продуктов, предлагаемых на открытом рынке, так как наличие массового спроса, при прочих равных, позволяет системе развиваться более интенсивно.
  3. Существенно большего количества времени на реализацию, так как будет необходимо найти способы справиться с техническими рисками, которые мы описали выше;
  4. Реализации установки ПО в виде SaaS-решения, система будет разворачиваться на серверах вендора, установка в инфраструктуре заказчика не предусматривается. Такой подход может быть актуальным для небольших организаций, но явно не сработает для крупных компаний. Подобные организации, конечно, будут требовать, чтобы система была под их полным контролем, а данные хранились на их серверах.

Другим важным фактором, на который мы указывали выше, является количество пользователей системы на предприятии. По нашему опыту, активно пользоваться такой системой будут 3-8 специалистов-планировщиков (в зависимости от размеров рудника/компании). Как правило, они являются экспертами в своей области и привыкли пользоваться сложным узкоспециализированным программным обеспечением. Кроме того, объем совместной работы над сценариями планирования невелик и обмен информацией преимущественно происходит в виде консультаций и обсуждений между инженерами. Иными словами, основная ценность такого рода ПО – в его возможности производить сложные расчёты с наименьшими трудозатратами, предоставлять планировщику все необходимые инструменты для получения достоверного и качественного результата. Другой важный момент: поддержка десктопной системы с ограниченным числом потребителей, также не должна представлять сложностей для IT-подразделений компаний.

Безусловно, ценность наличия серверного компонента в решениях для тактического планирования есть. Поэтому после реализации функционала ядра системы в виде настольного приложения, компания АИОМ планирует разработать и серверную часть, которая возьмёт на себя возможность управления данными тех предприятий, которым это будет необходимо. Это позволит:
  • Обеспечивать совместную работу над планом горных работ;
  • Управлять правами и полномочиями пользователей при доступе к плану;
  • Публиковать результаты планирования для более широкого круга сотрудников организации;
  • Иметь хранилище НСИ, используемой при планировании;
  • Потенциально – ускорять выполнение сложных оптимизационных задач, расчет которых может занимать существенное время на локальных рабочих станциях пользователей.

В итоге, система тактического планирования АИОМ должна быть реализована в клиент-серверной архитектуре, с толстым клиентом, отвечающим за процесс планирования (первый приоритет разработки) и сервером, на котором будут храниться и версионироваться данные (второй приоритет разработки). Разработка системы оперативного планирования горных работ уже запланирована на базе web-архитектуры, с использованием общей с тактическим планированием модели данных и НСИ, что позволит обеспечить единый бесшовный контур работы решений.

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