Стандартизация в геоинформатике

Стандартизация в геоинформатике

Введение

Open Geospatial Consortium, Inc.® (OGC) это непрофильная, международная, добровольная организация по разработке стандартов в области геоинформационных сервисов. До сентября 2004 года консорциум назывался Open GIS Consortium, а историю свою ведет со времен создания ГИС GRASS в начале 1980-х гг. 

Стандартизация в геоинформатике

В области ИТ все стандарты можно формально разделить, в зависимости от порядка разработки и процедуры принятия, на три категории: стандарты "de jure", стандарты "de facto", и стандарты, разрабатываемые консорциумами. Считается, что последние отличаются относительно большой скоростью разработки и эффективной процедурой принятия, являя собой удачную альтернативу двум предыдущим типам. Российское законодательство по стандартизации существование таких стандартов допускает (http://www.mgis2001.openpower.ru/Archive/Conf_1996/Doc/doc19.php).

Что касается стандартов "de jure", то вопросами их разработки в области пространственной информации занимается множество организаций в разных странах. В России это Государственный комитет РФ по стандартизации и метрологии (Госстандарт, www.gost.ru), Федеральная служба геодезии и картографии России (Роскартография, www.roskart.ru), Государственный научно-внедренческий центр геоинформационных систем и технологий (Госгисцентр), а также Центральный научно-исследовательский институт геодезии, аэросъемки и картографии им. Ф.Н. Красовского (ЦНИИГАиК) и 29-й Научно-исследовательский институт МО РФ (подробнее см. статью по адресу www.geosphera.ru/?ID=46). В структуре Госстандарта проблемами геоинформатики занимаются два тематических комитета: ТК-22 (информационные технологии) и ТК-394 (географическая информация/геоматика). Список стандартов РФ, имеющих отношение к ГИС-тематике, можно найти по адресу www.roskart.ru/Activity/gost.htm.

В мировых масштабах основное влияние в области стандартизации пространственной информации имеют International Standard Organization (www.iso.org), американские FGDC (Federal Geographic Data Committee, www.fgdc.gov), USGS (US Geological Service, mapping.usgs.gov), ANSI (American National Standards Institute, www.ansi.org) и NIMA (National Imagery and Mapping Agency, www.nima.mil), International Cartographic Association (ICA, www.geovista.psu.edu/sites/icavis), Open Information Interchange (OII, www.diffuse.org/oii/en/oii-home.html), разрабатывающая стандарты по заказу Еврокомиссии, и некоторые другие (подробнее см. www.diffuse.org/oii/en/gis.html, clio.mit.csu.edu.au/subjects/spa200/Topic5.htm или rockyweb.cr.usgs.gov/nmpstds/links.html). Среди этого списка особо выделяется ISO, в состав которой входит технический комитет 211 (www.isotc211.org), занимающийся вопросами геоматики и стандартизации географической информации. В России с ISO/TC 211 работает Техническим

комитет №394 Госстандарта.

Цели и задачи OGC

Open GIS Consortuim разрабатывает третий вид, существующих помимо "de jure" и "de facto", стандартов. Необходимость в таком типе стандартизации определяется проблемами, связанными с качеством "de jure" стандартов, а

также длительным сроком их принятия.


Целью OGC, по его утверждению, является мир, в котором каждый человек имеет возможность пользоваться преимуществами, которые дает доступ к пространственной информации и услугам на ее базе. Задачей соответственно является разработка спецификаций интерфейсов для работы с пространственными данными и предоставление их всем заинтересованным лицам. Продукты и услуги, разработанные с учетом спецификаций OGC, имеют возможность свободно обмениваться пространственной информацией независимо от типа используемой сети, характера приложений, или платформы. В настоящее время в состав OGC входит более 220 коммерческих организаций, имеющих отношения к разработке ГИС или использующих географическую информацию в своих приложениях.

OGC стремится сделать свою деятельность максимально открытой, используя практически любую возможность для того, чтобы все заинтересованные лица могли высказаться, внести свои предложения, и протестировать спецификацию до того, как она будет утверждена. Также Консорциум поддерживает тесные отношения с другими организациями - разработчиками стандартов, упомянутыми выше. В целом OGC действует по принципу "всех выслушать, все учесть и ни на кого не надавить". 

История OGC
Формально историю Open GIS Consortium можно проследить с начала 80х годов, когда US Army Corps of Engineers (www.usace.army.mil) разработал свободно распространяемую ГИС GRASS (Geographic Resource and Analysis Support System), которая работала под управлением ОС UNIX и быстро завоевала популярность во многих странах мира. Неудивительно, что вокруг системы начали концентрироваться специалисты, образовавшие как пользовательские группы, координировавшиеся организацией под названием "GRASS TURF" (GRASS: The User Forum), так и группы разработчиков, деятельность которой координировал Наблюдательный комитет (GIASC, The GRASS Interagency Steering Comittee). В 1992 году GRASS TURF и GIASC слились, образовав "Open GRASS Foundation", которая стала заниматься вопросами взаимодействия между продуктами различных поставщиков. Тогда-то и появился термин "Open GIS". Большую роль сыграли спонсоры новоявленной организации - сначала это была PCI Geomatics (www.pcigeomatics.com), а чуть позже большую поддержку оказала Sun Microsystems (www.sun.com). В том же 1992 году Open GRASS Foundation начала проект "Open GIS Application Environment", работа над которым и привела в конце концов к тому, что организация сначала сменила название на "OGIS, Ltd.", а потом, в 1994 г., стала называться "Open GIS Consortium, Inc.". В 1995 членом OGC стала компания Oracle, а в 1996 - Microsoft. В 1999 году International Standard Organization опубликовала соглашение между ISO/TC 211 и Open GIS Consortium, которое формализовало вопросы сотрудничества между двумя организациями. С тех пор взаимодействие между ISO и OGC продолжает расширяться и углубляться.

Спецификации OGC
Все спецификации, разработанные Open GIS Consortium, делятся на два типа - абстрактную спецификацию (Abstract Specification), которая всего одна и регламентирует общие принципы построения ГИС, и конкретные спецификации для разработки программного обеспечения (Implementation Specification), число которых постоянно растет. В настоящее время на сайте www.opengis.org доступны 11 спецификаций для разработки ПО.

OGC и Россия
Членство в OGC стоит от 300 (учебные заведения) до 50 тыс. (партнер) долларов в год. К сожалению, ни одна российская компания или организация членом Open GIS Consortium не является. Более того, мне неизвестен ни один российский продукт, реализованный с учетом спецификаций OGC. Результатом этого может стать тотальная неконкурентоспособность российских ГИС-продуктов на мировом рынке (в их число не входят узкоспециализированные продукты типа векторизаторов или фотограмметрических систем, которые опираются на мощную школу советской/российской математики и выигрывают в конкурентной борьбе по этому принципу). Геоинформационным же системам и приложениям общего назначения, похоже, делать в мире особенно нечего: "нестандарт-с". В то же время даже самые крупные российские разработчики ГИС считают, что переписывать все наработки согласно спецификациям OGC - слишком долго, дорого, трудоемко и неизвестно, окупятся ли затраты. Кроме того, на это банально не хватает денег, а российский рынок ГИС недостаточно обширен,

чтобы "накопить жирок" для рывка.

Технологический срез

Архитектура открытого программного обеспечения в целом и ПО ГИС в частности обычно представляет собой многоуровневую структуру и формирует программный стек — набор взаимосвязанных компонент представляющих различные уровни. Уровни в стеке представлены различными, потенциально взаимозаменяемыми продуктами. Для ПО ГИС в качестве базового (операционного) слоя могут выступать как открытые (например, ОС Linux), так и проприетарные операционные системы, такие как Microsoft Windows и Mac OS и соответствующие библиотеки времени исполнения. Разделение открытого ПО ГИС на множество уровней характерно для открытых систем и объясняется моделью разработки, интенсивно использующей другие готовые, чаще всего также открытые компоненты. Реализация многих уровней в одном комбинированном продукте более характерна для проприетарных решений, не имеющих возможности заимствования чужого кода (см. далее Преимущества).

Существующее ПО ГИС можно условно поделить на 3 класса: это веб ГИС, настольные ГИС и пространственные базы данных. В таблице 2 представлены типовые стеки открытого ПО для веб и настольных ГИС. Уровни системного ПО в обоих случаях содержат много общих инструментов. Такое тесное переплетение в перспективе дает возможность реализации различных ГИС функций как для веб, так и для настольных платформ. Можно предположить, что будущие настольные приложения будут использовать веб-сервисы, которые, в свою очередь, будут включать в себя функции, традиционно реализующийся в настольных ГИС (например функции анализа).

Тип ПО

Представители

Группа

Приложения

QGIS, GRASS, OSSIM, uDig, MapWindow GIS

Пользовательский интерфейс

Среда разработки

Eclipse, QT, OpenGL, SharpDevelop

Высокоуровневые утилиты

GeoTools, PostGIS, MapWindow GIS ActiveX

Хранение данных

Высокоуровневые скриптовые языки программирования

Python, Perl, R

Обработка данных

Низкоуровневые утилиты

Shapelib, JTS/GEOS, GDAL/OGR, GMT

Низкоуровневые языки программирования

C, C++, Java, Fortran, C#, VB.NET

Системное ПО

Операционная система

Linux, Microsoft Windows

Таблица 2.1 Инструментальные слои открытых настольных платформ

Тип ПО

Представители

Группа

Браузер

Firefox, Safari

Пользовательский интерфейс

Клиентский скриптинг

JavaScript, Java, Perl, Python

Серверный скриптинг

PHP, Perl, Python

Хранение данных

Высокоуровневые утилиты

UMN MapServer, GeoServer

Высокоуровневые скриптовые языки программирования

PHP, Perl, Python

Обработка данных

Низкоуровневые утилиты

Shapelib, JTS/GEOS, GDAL/OGR, GMT, PostGIS

Низкоуровневые языки программирования

C, C++, Java, Fortran

Системное ПО

Операционная система

Linux, Microsoft Windows

Таблица 2.2 Инструментальные слои открытых веб платформ. Список ПО примерный и не исключительный [9]


В то время как базы данных и картографические веб-сервера заняли достаточно устойчивую нишу в производстве, настольные ГИС находятся на стадии активного поиска своей ниши. В этой статье особое внимание будет уделено именно настольным ГИС. Настольная (пользовательская) ГИС — это картографическое ПО, устанавливаемое и запускаемое на персональном компьютере и позволяющее пользователям отображать, выбирать, обновлять и анализировать данные о географических объектах и связанную с ними атрибутивную информацию [10]. Рассмотрим краткие характеристики основных открытых пользовательских ГИС. Дополнительная информация также представлена в Таблице 3.

Geographic Resources Analysis Support System (GRASS)

Последняя версия GRASS 6.4 является модульной системой, предоставляющей доступ к более чем 300 модулей для работы с двухмерными и трехмерными растровыми и векторными данными и по функциональным возможностям сравнима с продуктом ESRI ArcGIS уровня ArcInfo. По причине отсутствия удобного пользовательского графического интерфейса распространенность GRASS ограничена и она используется преимущественно исследовательскими институтами и университетами. До недавнего времени второй причиной, сдерживающей рост числа пользователей, была невозможность запуска GRASS на платформах MS-Windows без использования эмуляторов Linux или Unix платформ (например, Cygwin). Однако, с выходом версии 6.3.0 эта проблема была решена.

Quantum GIS (QGIS)

Разработка QGIS началась в 2002 году группой энтузиастов. Целью разработки было создание простого в использовании и быстрого просмотрщика географических данных для операционных систем семейства Linux. Однако, с ростом проекта появилась идея использовать QGIS как простой графический интерфейс для GRASS, получая таким образом в свое распоряжение его аналитические и другие функции. На сегодняшний момент группа разработчиков QGIS решила первоначальные задачи и работает над расширением функциональных возможностей, давно вышедших за рамки простого просмотрщика. За счет использования кросс-платформенного тулкита QT, QGIS доступна для большинства современных платформ (Windows, Mac OS X, Linux) и совмещает в себе поддержку векторных и растровых данных, а также способна работать с данными, предоставляемые различными картографическими веб-серверами и многими распространенными пространственными базами данных. Функциональность QGIS может быть развита посредством создания модулей расширения на C++, или Python. QGIS имеет одно из наиболее развитых сообществ в среде открытых ГИС, при этом количество разработчиков постоянно увеличивается, чему способствует наличие хорошей документации по процессу разработки и удобная архитектура. Интерфейс пользователя Quantum GIS представлен наРисунке 2.



Рисунок 2. Пользовательский интерфейс Quantum GIS


User-friendly Desktop Internet GIS (uDig)

Основной целью создания uDig была разработка ПО, позволяющего просматривать и редактировать данные, хранящиеся в БД напрямую или через веб. Разработка uDig началась между 2004 и 2005 по инициативе канадской компании Refractions Research Inc. uDig написана на Java (с использованием платформы Eclipse) и изначально была сфокусирована на работе с векторными данными. Однако, в 2007 году команда разработчиков uDig присоединилась к команде разработчиков Jgrass, которая занялась работой по реализации в uDig возможности работы с растровыми данными. Очень часто uDig используется в качестве интерфейса доступа к базе данных PostGIS. Существует 2 основных недостатка, связанных с использованием Eclipse. Первый — это размер приложения и второй — это то, что графический интерфейс очень схож со средой разработки для программирования, поэтому может быть очень сложным для конечных пользователей.

Generalitat Valenciana, Sistema d'Informaci Geogrfica (gvSIG)

Вероятно, самый крупный проект, если измерять размерами финансовых вложений. Цель разработки - создание системы, способной заменить ESRI ArcView GIS 3.x в органах муниципальной власти. Инициатор создания – министерство транспорта Валенсии (Испания), начавшее разработку в связи с принятием решения о переводе всех органов региональной власти на компьютеры под управлением ОС Linux. Разработка gvSIG началась в конце 2003 года, основной разработчик — компания IVERA S.A. (Испания). В работу над проектом также включены несколько университетов и другие компании. gvSIG поддерживает работу с растровыми и векторными данными, а также способен работать с геоданными, хранящимися в различных БД. Функции по работе с растровыми данными построены на основе алгоритмов проекта SAGA. Язык программирования — Java. Цель создания ПО с функциональными возможностями, сравнимыми с ESRI ArcView (3.X), была полностью выполнена, причем местами gvSIG превзошел ArcView. Отметим, что для данной ГИС существует русскоязычная пользовательская документация. Однако, существует ряд минусов: нет документации для разработчиков и массивная зависимость от более чем 100 C++ и Java библиотек.

System for Automated Geoscientific Analyses (SAGA)

Как следует из названия, данная ГИС имеет научные корни. Первый модуль для SAGA был разработан в 2001 году в Департаменте Географии Геттингемского Университет (Германия) и был предназначен для работы с растровыми данными. Основным предназначением SAGA является анализ рельефа, почвенное картирование и решение задач по визуализации данных. SAGA написана на C++ и предоставляет сторонним разработчикам удобный API. Основной разработчик, а чуть позже и сам проект недавно переместились в Гамбургский Университет. Пользовательская документация очень хорошая, что способствует постоянному росту международного пользовательского сообщества. Так, количество скачиваний руководства пользователя за период 2005-2008 возросло с 700 до 1300 в месяц.

Integrated Land and Water Information System (ILWIS)

Разработка ILWIS начиналась в компании ITC, г. Энсхеде (Голландия) в 80-х годах. Сочетает в себе функциональность векторной и растровой ГИС предназначенной для решения широкого диапазона задач, от анализа изображений до моделирования эрозионных процессов. Версия 3.0 продукта очень хорошо документирована (релиз 2001 года). Однако новая версия отсылает к документации на версию 3.0. В 2007 году исходный код, написанный на языке (MS Visual) C был выпущен под открытой лицензией GPL. В настоящее время основным координатором проекта является немецкая компания 52° North GmbH и в противоположность gvSIG – репозиторий с исходными кодами свободно доступен. ILWIS работает только в ОС семейства MS-Windows.

MapWindow GIS

Данная ГИС была создана в 1998 году членами Водной Исследовательской Лаборатории в Университете штата Юта (США). Основной целью была разработка «ядра ГИС», которое бы предоставляло необходимую функциональность ГИС-разработчикам. MapWindow GIS ActiveX control написан на MS Visual C и реализовывал функции отображения, поиска и управления пространственными данными. Позже был разработан графический интерфейс, названный MapWindow GIS Desktop и реализована возможность расширения функциональности путем использования системы расширений. Проект возглавляет команда разработчиков Университета штата Айдахо. С недавнего времени разработка базируется на основе Microsoft .Net Framework, в связи с чем MapWindow доступна только для ОС семейства MS-Windows.



Таблица 3. Сравнение основных открытых пользовательских ГИС и некоторых проприетарных аналогов (более подробное сравнение см. [11])

Преимущества

Цена. Безусловно самым привлекательным параметром открытого программного обеспечения ГИС является цена лицензии, как правило отсутствующая. Однако, необходимо отметить, что открытость не обязательно синоним бесплатности и первый пункт определения открытого ПО явным образом гласит, что способ распространения ПО: платный или бесплатный — выбор его авторов (http://www.opensource.org/docs/osd). Тем не менее, на сегодняшний день подавляющее большинство открытого ПО ГИС распространяется полностью бесплатно. Редким примером исключения является например расширение ZigGIS, позволяющее работать с базами данных PostGIS в ArcGIS Desktop. Исходный код этого ПО распространяется свободно для персонального использования и обучения, ПО готовое к использованию и коммерческое использование требует покупки лицензии.

Рисунок 3. Концептуальное сравнение процесса формирование цены продукта для пользователя и производителя [12].


Несмотря на значительную разницу между ценой на лицензии на коммерческое и открытое ПО необходимо учитывать, что общая цена производства и владения открытого ПО тем не менее не является нулевой. Безотносительно типа ПО, в цену необходимо включать затраты на установку, техническую поддержку, обучение и другие связанные расходы. Преимущество открытого ПО заключается в отсутствие разницы между ценой производства и ценой использования. В то время как цена производства открытого ПО формируется по похожим законам с проприетарным, формирование цены для пользователя принципиально различно (Рисунок 3).

Хорошим примером ценовой разницы в конкретном случае является проект внедрения открытой ГИС QGIS в правительстве кантона Солотурн (Швейцария). По предварительным расчетам, экономия только на лицензиях составила порядка 150-200 тыс. долларов. Однако, реализаторам проекта пришлось потратить весьма значительные средства (порядка 30 тыс. долларов) на доработку программного продукта.

Большая свобода от разработчика. Открытые ГИС, как и открытое ПО в целом отражают современную тенденцию уменьшения зависимости пользователя программного обеспечения от разработчика (так называемый vendor lock-in). Очевидно, что данная проблема относительна, поскольку продолжительный опыт использования ПО, открытого или закрытого, так или иначе приводит к выстраиванию вокруг него технологической линейки, цена перехода с которой может оказаться большей, чем освоение нового ПО. Однако, в условии открытости, пользователю открытого ПО ГИС гарантирована возможность внесения необходимых ему изменений самостоятельно.

Прошлые и современные отказы ESRI от поддержки определенных языков программирования (VBA, VB6 для ArcGIS 9.4) и программных пакетов целиком (Arcview GIS 3.x) рациональны с точки зрения производителя, этот ход позволяет сконцентрировать усилия на более перспективных направлениях развития. Однако, данные шаги также могут вызвать недовольство пользователей продуктов, успевших к моменту прекращения их использования тесно интегрировать их в свои технологические линейки и отработать их поддержку в рамках своих организаций. Зачастую пользователи могут быть заинтересованы не в новом ПО, а в продолжение поддержки старого. Открытость ПО ГИС в данном случае даёт большие гарантии продолжения поддержки программного продукта, в том числе самим пользователем.

Модель разработки. Открытость делает разработку ГИС более эффективной, главным образом за счет высокой модульности. Разработка так же сильно облегчается за счет использованием готовых программных компонент, активно используемых в разработке открытых ГИС. Для интерфейса часто используется QT, возможность работы с многочисленными векторными и растровыми форматами - GDAL/OGR, геометрические операции, как правило, реализованы на базе библиотеки GEOS/GeoTools, последнее время выделяются в отдельные проекты другие, менее комплексные компоненты, необходимые в ГИС, такие как, например, расстановка подписей (PAL), проекционные преобразования (Proj.4), высококачественный рендеринг (AGG) и другие. Подобная модульность позволяет сфокусироваться на более эффективной реализации определенного подмножества функциональности и избежать неизбежного в случае закрытой модели разработки дублирования усилий. Благодаря тому, что разработка ведется «на виду», проектов дублирующих друг друга практически не возникает. Классическим доказательством эффективности такого подхода является библиотека абстракции GDAL/OGR, используемая для работы с более чем 100 растровыми и 30 векторными форматами, не только практически во всех открытых ГИС, а так же в проприетарных решениях, таких как, например, ArcGIS (модуль Interoperability) и Google Earth. Однако, сложность лицензионной ситуации, когда различные компоненты используют разные, часто конфликтующие между собой лицензии, может затруднить развитие и распространения программного продукта.

Одним из положительных эффектов использования тулкитов QT и Java является в целом лучшая кросс-платформенность открытых ГИС, способных, в отличие от многих проприетарных решений работать под Windows, Mac OS, Linux. Однако, это не обязательно верно для отдельных представителей открытых ГИС (см. Недостатки).

Инновации. Быстрый темп разработки, привлечение разработчиков со всего мира и высокая модульность стимулируют инновационный характер открытого ПО. Здесь, внедрение новых, часто еще полностью не отработанных технологий, не встречает противодействия, а скорее приветствуется. Так, например, поддержка весьма распространенных также открытых баз пространственных данных PostGIS появилась в коммерческом ПО ГИС Mapinfo и ArcGIS сравнительно недавно. Открытые же ГИС умеют работать с этими базами данных по меньшей мере 3-4 года. Быстрый рост функциональности может влиять на надежность и удобство пользования приложением, но это может быть скомпенсировано дополнительным тестированием широким сообществом пользователей.

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

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

Использованная литература

URL: http://gis-lab.info/wiki/%D0%A1%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D1%8B_OGC

URL: http://lvee.org/ru/reports/LVEE_2010_04

URL: http://giscenter.icc.ru/digest/ogc.html



Стандартизация в геоинформатике