Международное рабочее совещание «Состояние и перспективы развития Государственного геологического картографирования территории Российской Федерации и ее континентального шельфа масштаба 1:1 000 000 и 1:200 000» Методические принципы организации сетевого информационного ресурса геологического содержания с применением современных программно-технологических методов и средств Арсеньев Б.П., Горностаев С.С. (ФГУП «ВСЕГЕИ») 18 апреля 2013 г., Санкт-Петербург Всероссийский научно-исследовательский геологический институт им. А.П. Карпинского Некоторые примеры и оценки 1. Фактически безрезультатная деятельность в области разработки компонентов АСУ одного из первых отечественных компьютерных центров в институте кибернетики (Киев, академик Глушко, 25-30 лет), и последующие попытки создания целого семейства автоматизированных систем (АСУП, АСУТП, САПР и т.п.). 2. Концептуальные ошибки в отказе от перспективных отечественных разработок (например, от архитектуры системы БЭСМ, существенно опережающей западные аналоги IBM). В частности, принципы операционной системы были реализованы в системе БЭСМ на десятилетие раньше, чем в системах IBM-360, 370, 380. 3. Малообъяснимый развал мощных групп отечественных разработчиков (например, центра разработки методов и средств локальных вычислительных сетей под руководством академика Якубайтиса). 4. Отсутствие единой терминологически-понятийной основы в области информатики. Более того, на сегодняшний день еще не выработано академическое определение информатики. Характерно, что наиболее приемлемый вариант определения информатики не содержит упоминания о компьютерных технологиях, которые являются лишь инструментом информатики, и т.п. Типичные проблемы программно-технологических разработок Программно-технологические продукты не облегчают, а зачастую лишь усложняют жизнь пользователей. Вместо решения прикладных задач пользователи вынуждены изучать специализированные возможности программ и систем, которые, по оценкам специалистов, часто тратят гораздо больше времени на обслуживание «себя любимых» вместо помощи в решении прикладных задач. Уровень автоматизации решения задач практически не растет. Максимум, который сегодня более-менее достигнут – организация комплексов классов «каталог, библиотека», в которых, при наличии известного мастерства, можно что-то найти, и не более того. Геологические задачи анализа и исследования элементарно не охвачены автоматизацией вообще. Катастрофическая разнородность применяемых программ и систем, форматов данных и пр. уже привели к созданию «завалов» цифровых материалов, реанимация которых просто мало реальна. Такая ситуация характерна для очень многих отраслей государственного хозяйства. Можно приводить сотни и тысячи такого рода примеров из практики. Классификация программно-технологического обеспечения Каждый из представленных на схеме блоков технологически специализирован. Поэтому, попытки перемешивания этих блоков в единые программнотехнологические компоненты грозят множеством неприятностей, и именно пользователям. Создание цифровых материалов (векторные модели карт, массивы и наборы данных, компьютерные образы сопровождающих документов) Организация цифровых материалов (варианты ГИСпроектов карт, базы данных, галереи графических и растровых документов) Разработка интуитивно понятной пользователю программнотехнологической среды оперативной работы с цифровыми материалами Вывод результатов, документов, публикация Разработка доверительной среды интерактивной работы, взаимодействия с другими системами и ресурсами, поддержка задач управления, анализа и исследований 1. Создание цифровых материалов Здесь программно-технологическая унификация просто неуместна. Именно здесь должны работать отраслевые требования и рекомендации по составу и содержанию создаваемых цифровых материалов. На логическом уровне, но никак не в виде программнотехнологических формулировок. Создаваемые разработчиками автоматизированные средства – это помощь, но не условие. На этом уровне любое программно-технологическое «насилие» недопустимо. Авторов и создателей цифровых материалов надо убеждать, помогать им в переходе на более совершенные программно-технологические методы и средства. Типичный состав используемого сегодня программно-технологического обеспечения – ARCGIS, ARCVIEW, MS OFFICE (ACCESS, EXCEL), разнообразные текстовые и графические редакторы. Например, при создании векторных карт хорошей альтернативы «тяжелым» ГИС-ам типа ARCGIS пока просто нет. 2. Организация цифровых материалов Этот блок характеризуется профессиональными требованиями к его реализации. В первую очередь, такие требования касаются систем ГИС и СУБД (ГИС-серверы и SQL-серверы). Необходимо решать проблемы проектирования схем БД вместо концентрации прямых таблиц с атрибутивными описаниями объектов. Схемы БД предпочтительно проектировать в объектной модели (опыт разработок ВСЕГЕИ и его МФ). На этом этапе должны создаваться и использоваться профессиональные ГИСсерверы, базы данных в их классическом понимании (а не просто наборы таблиц), автоматизированные инструменты работы с графикой, растрами и документами. Все внутреннее устройство цифровых материалов должно быть скрыто от пользователя. С учетом специфики автоматизируемых задач, фактически речь идет о разработке полномасштабного сервера приложений, состоящего из базовых разделов. 1. Сервер приложений работы с лексическими и атрибутивными БД. Пример реализации такого сервера приложений был приведен в докладе Мазуркевича К.Н. по разработке интернет-представления ГИС – Атласа «Недра России» (сайт опубликован в локальном варианте во ВСЕГЕИ). 2. Картографический сервер приложений. Картографический сервер приложений Возможные варианты реализации: - с использованием языка программирования PHP (фреймворк Yii); - с использованием платформенно-независимого объектно- ориентированного языка программирования Java и среды разработки Google Web Toolkit; - С использованием многофункционального объектного фреймворка для разработки веб-приложений от Microsoft – .NET Framework (ASP.NET, Silverlight, XAML); - с использованием среды разработки Ruby on Rails, основанной на языке программирования Ruby и реализующей шаблоны MVC-архитектуры; - с использованием Node.js – свободно распространяемого программного каркаса для разработки веб-приложений, основанного на парадигме асинхронной обработки данных. ГИС - сервер Для публикации картографических (геопривязанных) данных в глобальных компьютерных сетях наиболее распространенным решением является использование возможностей т.н. ГИС-сервера. Этот компонент отвечает за обработку и внутреннее перераспределение поступающих от сервера приложений запросов на получение пространственных данных; используя параметры поступившего запроса, он формирует участок карты, подлежащий отображению и передаче через сеть, или выдает атрибутивную информацию, соответствующую пространственным координатам запрашиваемого участка. Примеры существующих решений: Проприетарное (платное) ПО - ArcGIS Server + Надежность - Цена Бесплатное ПО MapServer, GeoServer + Гибкость - Отсутствие типовых решений - Сложность в масштабировании - Одним из типовых и общепринятых механизмов работы с картографическими данными является использование протокола WMS (протокол передачи картографических данных в растровом формате). Основные его характеристики включают следующие ключевые позиции: Вся ресурсозатратная обработка картографических данных для представления в сети происходит на сервере, не создавая лишней нагрузки на компьютер пользователя Пользователь получает растр с требуемыми параметрами (экстент, проекция и т.п.) Хотя определенный функционал (такой как, например, динамическое выделение участка карты, определение пересекающихся областей и пр.), не может быть напрямую осуществлен через WMS, данный пробел может быть ликвидирован за счет реализации богатых возможностей ГИС-сервера MapServer, работающего под управлением сервера приложений. 3. Организация среды работы с цифровыми материалами На этом этапе создается программно-технологическая среда, удобная для работы с цифровыми материалами во всех режимах доступа – чтения, модификации, апробации и т.п. На наш взгляд и на основании опыта на этом уровне наиболее целесообразно использовать современные системы объектно-ориентированного программирования, такие, как VISUAL STUDIO 2010 с базовым языком C#. Пример построения такого продукта был продемонстрирован в докладе Карпузовой Н.У. по тематике серийных легенд. Основная причина такого выбора – точное следование современным тенденциям развития программнотехнологических методов и средств, в частности – базирование на технологии DOTNET 4. Пользовательская операционная среда. Никакой компьютерной специфики здесь не должно быть в принципе. Пользователю не должен быть интересен, например, SHAPE формат, или правила формирования SQL-запросов. Интуитивно понятный, предметный интерфейс и полный, необходимый пользователю-администратору, набор автоматизированных функций и операций. 4. Разработка доверительной среды интерактивной работы, взаимодействия с другими системами и ресурсами, поддержка задач управления, анализа и исследований Поддержка решения задач управления, анализа, исследований. Реализацию этого блока еще предстоит наработать. Безусловно, способности человека позволяют ему результативно ориентироваться даже в кипах разнородных бумажных материалов. Но нужны реальные автоматизированные средства оказания помощи пользователям всех рангов при решении собственно ключевых предметных задач. Построение доверительной среды осуществляется полностью методами и средствами WEB-технологий (трехзвенная архитектура, «тонкий» клиент). - Для работы необходим лишь любой из стандартных веб-браузеров (Opera, Chrome, Firefox, Safari, Internet Explorer) - Не требуется установка никакого дополнительного программного обеспечения Пример оформления сайта «ГИС-Атлас России» Пример представления карт в веб-форме (с элементами ЭБЗ) Пример представления карт в веб-форме (с элементами топоосновы) 5. Вывод результатов, документов, публикация По темам публикации материалов и издания картографических материалов было сделано несколько интересных и содержательных докладов. Этот уровень программнотехнологического обеспечения не рассматривается в данном докладе. Хочется отметить следующее. Наверно, уже давно прошло время представлять, например, данные об объекте в виде фрагмента атрибутивной таблицы. Пользователю привычно работать с отчетами, оформленными таблицами, графиками, диаграммами и пр. Вряд ли пользователю комфортно разбираться в системного вида таблице, пытаться реагировать на сложные системные сообщения, и т.п. Заключение 1. Точная классификация, ранжирование и адекватный выбор программно-технологических методов и средств – залог успеха построения систем, приложений и программ, реально обеспечивающих автоматизацию решения прикладных задач в интересах пользователей, а не ради обслуживающих программно-технологических компонентов. 2. Методически выверенные программно-технологические решения – наиболее эффективный путь перехода от ручных технологий (с элементами компьютерных вставок) к построения реально автоматизированных технологических участков и информационных технологий в целом. 3. Современный уровень отечественных разработок (ВСЕГЕИ, МФ ВСЕГЕИ, ГЕОСИСТЕМ и др.) уступает западным разработкам только в программно-технологической целостности и адекватности разработок решаемым задач, но зачастую превосходит западные образцы в аспектах проектно-инженерных решений и ориентации на реальных предметных пользователей. Спасибо за внимание.