ПРОДУКТЫ

Компания ESRI провела перестройку

У всех нас периодически появляется настойчивое желание что-то изменить. Поломать старое, построить новое, вымести мусор из-под дивана, сделать из стенной ниши кладовку, повесить вышитые шелковые шторы вместо двух старых тряпочек невнятного цвета, а также начать кормить домочадцев биточками по-краковски в винном соусе вместо яичницы с колбасой.

То же самое иногда происходит и в мире ИТ. Так, компания - производитель геоинформационных систем ESRI (www.esri.com) некоторое время назад затеяла грандиозную модернизацию почти всех своих многочисленных продуктов. Зачем она это делала и что получилось в результате - в следующих главах этой маленькой занимательной истории.

Кто в лес, кто по дрова

Вначале у компании ESRI был только один продукт, предназначенный для продажи. Эта ГИС называлась ARC/INFO, и создана она в 1981 г. Первая версия ArcView была вьюером покрытий ARC/INFO. Во второй версии ArcView появился собственный формат данных, так называемый шейп-файл. В третью были добавлены инструменты редактирования карт и атрибутивной информации, после чего продукт стал самостоятельной ГИС, что и было отражено в названии словом “GIS”. Вскоре ArcView GIS 3.0, изначально разработанная в среде UNIX и функционирующая в Windows благодаря межплатформному интерфейсу компании Neuron Data, стала весьма популярным пакетом (подробнее см. www.dataplus.ru/WIN/ARCREV/Number_19/2_andr.html). Таким образом, программных продуктов у ESRI стало два.

Активное распространение Windows 95 и развитие объектно­ориентированных сред разработки приложений привело к появлению MapObjects - набора картографических программных компонентов для встраивания в приложения пользователя. Его отличало существенно более высокое быстродействие по сравнению с ArcView GIS для Windows. Объясняется это тем, что MapObjects изначально разрабатывался в среде Windows на основе MFC. MapObjects быстро развивался, и некоторое время спустя сотрудники ESRI создали с его помощью еще один продукт, весьма напоминающий ArcView GIS по функциональности и интерфейсу. Новое детище получило название ArcExplorer, и ESRI начала распространять его бесплатно. Тем временем бурное развитие Интернета породило спрос на средства для создания приложений Web-картографии. Отвечая на потребности рынка, компания выпустила два продукта - MapObjects IMS и ArcView IMS.

Некоторое время спустя появилась мода на хранение пространственных данных в промышленных СУБД. ESRI выпустила SDE (Spatial Database Engine) - приложение, предназначенное для хранения, управления и получения пространственных данных из Oracle, Microsoft SQL Server, IBM DB2 и Informix. Причем ESRI не стала ограничиваться географическими данными, но предусмотрела и возможность хранения под SDE данных для САПР, памятуя, что существует широкий спектр задач, где требуется совместное использование инженерной и картографической информации. Для решения этой же задачи ESRI немного ранее создала ArcCAD.

Для управления сетевой инфраструктурой (имеются в виду инженерные сети и коммуникации) ESRI совместно с Miner & Miner выпустила отдельный продукт ArcFM, созданный в среде ARC/INFO с помощью специализированного языка AML.

В результате многолетней активной деятельности ESRI заимела целый Вавилон продуктов, каждый из которых решал свою задачу. Трепетной дружбы между представителями этого пестрого коллектива не наблюдалось (хотя до откровенных стычек дело тоже не доходило). Например, ARC/INFO не поддерживал шейп-файлы ARC/INFO, а ArcView в свою очередь не понимал библиотеки символов ARC/INFO и т. п. В целом получилось то, что обычно получается в результате экстенсивного развития: старые концепции программирования не позволяли эффективно развивать продукты, которые чем дальше, тем более активно требовали коренной перестройки и приведения к общему знаменателю - общей программной архитектуре и единой среде разработки.

Чудеса стандартизации

Подходящей технологией оказалась технология COM/DCOM. Использование в разных продуктах общих компонентов устранило необходимость дублировать работу. Кроме того, те же самые компоненты можно предоставить в распоряжение пользователя - вот вам и готовое средство разработки прикладных систем. ESRI так и поступила, дав доступ к программным компонентам ArcObjects, из которых состоят продукты нового поколения. Часть продуктов, подвергшихся переработке, была объединена под единым названием “ArcGIS”: ArcView, ArcEditor (ГИС, обладающая функциональностью, промежуточной между ArcView и ArcInfo), ArcInfo, расширения ArcGIS (куда входят Spatial Analyst, 3D Analyst, Geostatistical Analyst, StreetMap, ArcPress, MrSID Encoder и TIFF/LZW Compression), а также ArcSDE и ArcPad. Общность перечисленных продуктов выражается не только в возможности обмена данными, но и в использовании общей основы их построения - программных компонентов семейства ArcGIS.

Тени прошлого

Появление ArcGIS не означает моментального отказа от всего того, что развивали ESRI и ее пользователи многие годы. В состав ArcInfo 8 входит ArcInfo Workstation - старый вариант ARC/

INFO, соответственно продолжается поддержка AML-приложений пользователей. Кстати, можно заметить, что несколько изменилось написание названия системы ARC/INFO: если раньше гибрид из графической подсистемы ARC и атрибутивной СУБД INFO разделяла косая черта, то теперь название пишется слитно. И если раньше оно писалось прописными буквами, как это было принято в языке ФОРТРАН, с которого система начиналась 30 лет назад, то сейчас - строчными. ESRI продолжает поддержку ArcView GIS 3.2 - значит, можно и дальше использовать наработки на Avenue, хотя новые уже имеет смысл делать средствами VBA.