Web технологии в программном обеспечении для геотехники. Проблемы, перспективы, пути развития
Эффективность выполнения инженерных изысканий и проведения геотехнических расчетов напрямую зависит от того, какое для этого применяется программное обеспечение. И, «как ни странно», тут в нашей отрасли немало проблем, которые и разбирает автор настоящей статьи.
Также в статье рассматриваются перспективы применения в инженерных изысканиях web версий программного обеспечения, то есть программ, установленных не на компьютерах конкретных пользователей в конкретной организации, а на удаленных серверах.
В завершении рассказывается об опыте реализации web интерфейса для desktop программных продуктов Permafrost 3D (теплотехнические расчеты на многолетнемерзлых грунтах) и Monitoring Information System (MIS) (база данных результатов геотехнического мониторинга), разработанных ООО «ПермафростИнжиниринг».
Чтобы оставаться на месте, нужно бежать, а чтобы
двигаться вперед, надо бежать в два раза быстрее.
Вариант перевода Льюиса Кэрролла (Алиса в Стране чудес)
Мир программного обеспечения весьма увлекателен, сегодня может быть популярно одно, а завтра – совершенно другое. И от «любви» до «ненависти», как говорится, один шаг, который заключается в появлении принципиально новых, прорывных технологий, становящихся доступными широкому кругу пользователь.
Программы в удаленном доступе
Ещё пять лет назад была популярна программа Google Earth, которую скачивали и устанавливали многие. Сейчас все используют web версию этой программы – Google Maps. Нет смысла что-то скачивать и устанавливать к себе на компьютер, если есть полноценный удалённый доступ к продукту. За эти пять лет произошёл тот самый технологический прорыв, существенно улучшивший инструментарий программистов, что позволило им создавать программные продукты в web интерфейсе, не уступающие аналогичным desk top программам. Причём вектор в сторону именно web разработок наблюдается сейчас повсеместно. Стали появляться легальные (и не очень) web версии практически всех популярных программ: фото и видео просмотрщиков, CAD-программ, бухгалтерских программ, различных калькуляторов, текстовых и графических редакторов, программ для общения и коммуникаций, игр и так далее. В целом, эти недавно появившиеся (и появляющиеся) ресурсы позиционируют себя как быстро доступные, удобные в использовании и не дорогие (или бесплатные) инструменты.
Существенным преимуществом web версий популярных desk top программ для пользователя является возможность познакомиться с возможностями продукта без длительной процедуры покупки ПО, скачивания и установки. Вторым существенным преимуществом является то, что продукты для пользователя, как правило, бесплатные, монетизация осуществляется за счет рекламы товаров и услуг в них.
А геотехнические программы отстают
Теперь поговорим о рынке web программ для решения прикладных геотехнических задач. Кроме достаточно простых (на уровне калькулятора) расчетных программ (определения, например, глубины сезонного промерзания-оттаивания по СНиП или мелких конструкторских расчётов) в рунете не представлено ровным счетом ничего!
Причин этому может быть несколько:
Первая причина – слабо развитый рынок и низкая конкуренция. Российский рынок геотехнического ПО не является насыщенным, а, следовательно, реальной конкуренции между производителями нет. Каждый продукт имеет своих пользователей. Какие-то программы популярны больше, какие-то меньше, но это существенно упрощает разработчикам (владельцам) жизнь. Нет смысла вкладываться в новые технологии, переделывать «успешный» продукт под web, расширять горизонты и идти в ногу со временем. И так все хорошо. Росту вверх (освоению передовых мировых технологий) большинство предпочитает рост в ширь (прикручивание очередного «бантика», не несущего принципиального новшества, но оправдывающего повышение стоимости программы). При таком подходе разработка ПО для нужд геотехники в России становится делом прибыльным, а при наличии еще своего «жирного» клиента – делом «не пыльным». Крайним в данном случае оказывается, как раз клиент, останавливающийся в собственном профессиональном развитии, так как «смотрит в мир» через используемый программный продукт.
Вторая причина – нет (как кажется) своего клиента. Действительно, несмотря на все сказанное выше, четкого представления о клиенте геотехнического web сервиса не сформировалось.
Крупные компании в целом настороженно относятся интернету и порой не готовы использовать web версию программы даже при очевидных плюсах (неограниченный доступ пользователей, скорость, удобство, объем решаемых задач и т.д.). Вопросы безопасности данных (иногда совершенно надуманные) выходят для них на первый план, а закостеневший бюрократический аппарат не позволяет сдвинуть ситуацию с мертвой точки.
Мелкие компании тоже буксуют в этом вопросе, но по другим причинам. Во-первых, у многих присутствует убеждение, что можно вообще ничего не считать (или посчитать абы как, для галочки или вообще сфальсифицировать результаты). Такие компании пытаются экономить на всем, а если во главе стоит еще и недалекое руководство, то и на качестве и надежности объектов. Предлагать таким web (да и desk top) программы – занятие неблагодарное и в целом бессмысленное.
Более разумные небольшие компании стараются выполнять расчеты качественно, но насколько хватает сил. По-простому говоря, если в штате есть проектировщик-ветеран, умеющий выполнять широкий спектр геотехнических расчетов «на бумаге», то обзаводиться программным обеспечением такие компании будут только в случае крайней необходимости, даже если доступ к web программе будет условно бесплатным. А зря. Ни в коем случае не хочу обидеть представителей профессии, но качественный программный продукт в руках настоящего, опытного профессионала способен создать синергетический эффект и расширить возможности компании.
А что же средние по объему компании? По идее, они и должны быть главными клиентами web разработок. В целом – это так. Но и здесь не все просто. Концепция движения на месте в полной мере характеризует такие компании. Уменьшаясь в объеме, становится «не до жиру», приходится урезать бюджеты и экономить (см. случай маленькой компании), а с выходом на новый более солидный (как они считают) уровень, увеличиваются и административно-бюрократические издержки. Компания становится менее эластичной и восприимчивой (см. случай большой компании).
Третья причина – техническая. Здесь стоит обратить внимание на три момента:
1) Стоимость оборудования
2) Скорость доступа в интернет
3) Внутренние и внешние блокировки доступа к ресурсам
Безусловно, вывод продукта в web среду – это затратный процесс, сопряженный как с финансовыми, так и с чисто техническими издержками. Нет смысла запускать общедоступный ресурс на слабых компьютерах, так как особое раздражение у пользователя вызывает долгая загрузка страниц. Для выполнения сложных геотехнических вычислений необходимы мощные расчетные станции, цена которых может варьироваться от 200 тыс. руб. до 2-3 млн руб. Ирония заключается в том, что даже за большие деньги в какой-то момент компоненты для серверов физически пропали с полок магазинов на волне биткойн лихорадки и начали появляться только сейчас, когда были изобретены более эффективные способы майнинга.
Еще одна сложность заключается в относительно низком покрытии сетью проводного интернета территории России. Действительно, такая проблема существует, но если рассматривать покрытия спутниковым интернетом или интернетом сотовых операторов, то картина выглядит более радужно.
Другой вопрос заключается в восприятии интернета самим пользователем. Многие до сих пор считают, что интернет – это что-то очень сложное, непонятное (а еще хуже – иностранное) и… ненадежное. Что-то, что можно отключить навсегда на всем Земном шаре, выключив рубильник. Стоит ли говорить, что это уже давно совершенно не так, но факт остается фактом.
Но я обману, если скажу, что проблем ограничения доступа не существует. Они есть. В первую очередь, это внутренние ограничения всевозможными антивирусами и файрволами. Такие программы работают по принципу «презумпции виновности». Если у вас используется как-либо новая технология, которую еще не осознал и «не переварил» антивирус, то она будет признаваться вредоносным кодом и блокироваться. На каком-то этапе подобная ситуация может стать препятствием для пользователя, но в целом серьезность проблемы не так велика. Куда более серьезным явлением становится внешняя блокировка ресурсов, пример которого мы с вами не так давно наблюдали по отношению к известному мессенджеру. Кроме шуток, из-за этой блокировки и ее последствий у нашего ПО появились значительные проблемы, так как выход в большой интернет у нас происходил через популярный, серьезный и совершенно не связанный с «проблемным» мессенджером иностранный хостинг. Пришлось срочно перераспаковываться на своих серверах.
Разработки ООО «ПермафростИнжиниринг»
Как видно из вышесказанного, проблем и сложностей достаточно много. Мы сами долго скептически относились к идее реализации web интерфейса для наших desktop программных продуктов Permafrost 3D (теплотехнические расчеты на многолетнемерзлых грунтах) и Monitoring Information System (MIS) (база данных результатов геотехнического мониторинга). Толчком для принятия решения по внедрению web технологии стало то, что сложность задач, которые мы решали, уже «не помещались» в обычные компьютеры, а покупать каждому работнику компьютер по стоимости автомобиля мы посчитали абсолютно не рациональным.
Несмотря на то, что к моменту начала web разработок у нас был опыт создания ПО, первоначальные прогнозы по срокам и стоимости реализации проекта Permafrost 3D Web не оправдались. Разработка велась существенно медленнее, чем desk top версия. Но тем не менее где-то через полгода мы получили более-менее вменяемый продукт. Он состоял из трех основных блоков:
- база данных для хранения объектов моделирования (рис. 3);
- редактор расчетной модели и визуализатора грунтов (рис. 4);
- визуализатор результатов теплотехнического моделирования (рис. 5).
Методом проб и ошибок в процессе разработки мы поняли, что наиболее удобным на данный момент является комбинированный вариант использования web и desktop программ. Сборка расчетной модели выполняется в более удобной desktop версии, а само моделирование и визуализация результатов в более быстрой web версии. Частично это позволило нам решить проблему с поддержкой двух программ и освободить сервер от мелких задач.
Что мы получили в итоге:
- неограниченный доступ сотрудников компании к расчетному серверу (нет привязки к рабочим местам);
- 70-кратное увеличение скорости выполнение расчетов;
- расширение функционала при решении сложных и нестандартных задач;
- возможности для масштабирования, которые дает использование передовых web технологий;
- возможность привлечения новых клиентов, заинтересованных в удаленном доступе к неограниченным расчетным ресурсам нашего дата центра.
Вторым нашим шагом стало создание web версии программы Monitoring Information System (MIS), предназначенной для сбора, обработки и хранения данных геотехнического мониторинга на многолетнемерзлых грунтах. Решение приступить к такой разработке было более очевидным, чем с программой Permafrost 3D, так как на сегодняшней день подобные информационные базы данных становятся глобальными и не имеют привязки к конкретным стационарным компьютерам. Это позволяет создавать и хранить данные, внесенные разными пользователями, находящимися в совершенно разных точках Земли, причем одновременно и с моментальным обновлением (рис. 6, 7).
При разработке web интерфейса программы мы уделяли особое внимание удобству внесения и обработки данных, а также формату экспорта/импорта, что в дальнейшем получило положительную характеристику у первых клиентов.
При всей сложности и неоднозначности web разработок сегмент для геотехники безусловно перспективен, о чем свидетельствует наш, хотя и не большой, опыт, который мы постепенно наращиваем.
Следующим шагом мы видим разработку принципиально нового web продукта для обработки и хранения данных инженерно-геологических изысканий. Мы считаем, что тот, кто первый создаст web программу для инженерной геологии совершит революцию. Это станет той самой прорывной технологией, которая позволит кардинально изменить рынок и расклад сил на нем.
Постепенное увеличение глобальных геологических данных и подключение все новых и новых пользователей позволит применять технологии больших данных (big data) и как следствие машинного обучения (machine learning) для повышения качества и достоверности информации. А это, как говорится, уже совсем другая история.
Журнал остается бесплатным и продолжает развиваться.
Нам очень нужна поддержка читателей.
Поддержите нас один раз за год
Поддерживайте нас каждый месяц