Куда вдруг исчезли системы управления БД

Теперь мы больше повернуты к

Internet, потому что все важнее

становятся приложения класса

бизнес-бизнес, объединяющие

бизнес-процессы компаний-

партнеров.



Джозеф Элсоп,

основатель компании Progress Software

На состоявшейся в мае конференции Progress Software в Бостоне многое было неожиданно. Например, то, что компания, появившаяся 18 лет назад на рынке со своей реляционной СУБД, теперь ни о каких СУБД вообще почти не говорит, разве что напомнит лишний раз о том, что она — лидер в области встроенных баз данных. Никто не хвалится результатами тестов TPC, поддержкой рекордного числа одновременных пользователей — пришло другое время, другие ценности. Чем же сегодня гордится высший менеджмент компании помимо хороших финансовых показателей? Тем, что Progress Software готова не только к 2000 году, но и многим последующим. Что инструменты, необходимые для построения информационных систем начала третьего тысячелетия, или уже есть, или на подходе.

Культурный контекст

Если бы речи руководства Progress звучали не в Бостоне, а в Москве, публика, мне кажется, восприняла бы их с долей скепсиса, свойственного нашей технической интеллигенции. «Нам бы ваши заботы», — подумал бы про себя каждый второй. — Электронная коммерция, бизнес-бизнес, ASP теперь вот еще придумали».

В Бостоне разговоры о будущем звучали органично. Да, рассуждения о будущем, но не далеком и абстрактном, а о своем, домашнем, которое уже одной ногой здесь (то есть — там, у них).

На атмосферу конференции, скажем, не может не влиять ее информационное обеспечение. Для участников в холле была развернута локальная сеть из нескольких десятков машин (Dell, Pentium III, 256 Мбайт памяти), подключенных к Internet, которые все желающие могли использовать для личных почтовых целей. Совсем иначе слушаешь выступления, когда в перерыве можно соединиться со своим московским компьютером, чтоб поискать там телефон бостонского приятеля, не нарушая сон московских коллег. Теперь на крупных компьютерных сборищах в Соединенных Штатах это стало почти нормой, но всего пару лет назад такого не было и в помине.

Еще больше впечатляет проникновение информационных технологий на уровень быта. Негритянская мама, обвешанная сумками с продуктами, объясняя своим детишкам, что такое Y2K на рекламе, рисует на бумажке схемку разрядов. В кафе извиняются за задержку из-за неисправности компьютера: обычно официант не записывает заказ на бумажке, а вводит его на сенсорном мониторе, и данные передаются на другой этаж на кухню. На стенах соборов можно прочитать их Web-адреса — Internet-технологии проникают в самые высшие сферы.

Аренда приложений

Итак, технологии баз данных как-то оказались убраны с фасада конференции. Зато две инициативы были в центре внимания: ASPEN — Application Service Provider ENabler («продвижение технологий для сдаваемых в аренду приложений») и UAA — Universal Application Architecture («универсальная архитектура приложений»). Соответственно все новые технологии Progress рассматривались в основном с точки зрения удобства реализации этих инициатив. Что характерно, технологии не рассматривались сами по себе, но всячески подчеркивалось значение той или иной новой возможности для бизнеса. И какого бизнеса! Опять же — электронная торговля, приложения бизнес-бизнес и ASP. Нам бы их заботы! Дело даже не в заботах: и то, и другое, и третье требует прежде всего развитой Internet-инфраструктуры, а где ее взять? И все же к концу конференции мое настроение постепенно менялось на «а может, именно нам — их заботы?». Это не только маркетинговый гипноз, но и известный рецепт для развивающихся обществ: не догонять, а перепрыгивать. Нам же не впервой скакать через ступеньки, может, снова попробовать?

Универсальная архитектура приложений

В начале прошлого года Progress предложила архитектуру UAA, смысл которой в том, чтобы развязать платформу (операционную систему и СУБД) и приложения. Это, надо признать, революционное решение. Для достижения революционной цели Progress избрала эволюционный путь: постепенное объединение своих серверных продуктов в один.

Сейчас архитектура базируется на сервере приложений Apptivity 4.0, который пока называется Vader (какой-то персонаж «Звездных войн»). Он, в свою очередь, — шаг к Vader+, который завершит конвергенцию. Vader основывается на трех технологиях: компонентной архитектуре Enterprise JavaBeans (EJB) для разработки логики приложений; языке XML как универсальном средстве представления данных; средстве передачи сообщений JMS, которое войдет в Java 2 Enterprise Edition. JMS обеспечит кроссплатформенный механизм очередей сообщений, похожий на IBM MQSeries.

Еще универсальнее

Путь к универсальности бесконечен — слишком разнороден компьютерный мир. Независимость от ОС/СУБД — гигантский шаг, но это отнюдь не все. Когда в маркетинговых пресс-релизах прекратят писать «платформенно-независимый» из-за того, что этим свойством будут обладать все развитые продукты, под платформой, возможно, станут понимать промежуточное ПО: объектные модели и платформенно-независимые (в старом значении) серверы приложений. Когда процесс конвергенции завершится, универсальный сервер приложений будет абсолютно симметрично поддерживать и CORBA, и COM. Пока что Apptivity 3.0 построен на CORBA и протоколе IIOP, а COM поддерживается при помощи моста COM/CORBA или с помощью модулей SmartAdapter. Поддержка CORBA организована таким образом, что Apptivity не зависит и от брокера объектных запросов: можно, например, использовать OrbixWeb от Iona, а можно — Visibroker от Inprise.

Progress 4GL — по распространенному среди разработчиков мнению — удобная среда разработки приложений, чем многие и пользовались. Появление Apptivity связано, конечно, прежде всего, с кроссплатформенностью Java, на которой Apptivity базируется. Пока приложения, разработанные на Progress 4GL и на средствах Apptivity, — это два разных мира: разные приложения, разные сообщества разработчиков. По замыслу инженеров Progress, в Vader+ можно будет прозрачно использовать в одном приложении и код Progress 4GL, и код Java, можно будет легко интегрировать куски приложений, написанные в разное время и разными средствами. Среди стратегических целей — полная независимость от языка и инструмента разработки.

Но и этого мало архитекторам Progress. Новые приложения не должны зависеть от интерфейса: можно будет легко перестраивать приложение с архитектуры клиент-сервер с Windows-клиентом на архитектуру с доступом через браузер. Если посмотреть на это с другой стороны, то можно сказать, что это не только технологическая независимость от интерфейса, но и попытка развязать логику представления данных интерфейсом с бизнес-логикой приложения.

И наконец, приложение в концепции сотрудников Progress не должно зависеть от того, откуда берутся данные: из базы данных или из другого приложения — скажем, из системы планирования ресурсов предприятия. В Apptivity такую возможность обеспечивает технология SmartConnect, если данные совместимы с ODBC/JDBC, и модули SmartAdapter — если несовместимы.

Что в этом хорошего?

Стремление к универсальности было заметно у Progress Software всегда. С самого начала архитектура СУБД с шлюзом DataServer была построена так, чтобы доступ к данным сторонних баз был возможно прозрачней. Как видно, приверженность к универсальности теперь допустимо даже назвать фанатической. Возникают два вопроса: зачем тратит компания такие силы на достижение универсальности и что нам, российским жителям, с этой универсальности, когда платформа Wintel почти заслонила весь остальной компьютерный мир от взгляда пользователей? Универсальность нужна сейчас Progress Software как воздух, потому, например, что одним из самых перспективных рынков для себя компания считает рынок приложений бизнес-бизнес, а это означает ту или иную степень интеграции информационных систем. Одно дело — объединить разнородные элементы системы внутри одной компании, и другое — двух (или более) компаний совершенно разных.

Для нас эта проблема пока не так актуальна, ее даже проблемой рано называть. Но, во-первых, все может быстро измениться, а во-вторых, тут может сработать побочный эффект. Стремление к универсальности стимулирует развитие компонентного программного обеспечения, но этим достоинства компонентов отнюдь не исчерпываются. В конце концов, компоненты просто удобны, и средства разработки Progress Software могут успешно конкурировать именно благодаря простоте и гибкости, чем они всегда славились.


Слишком стремительно для прогнозов

Сейчас в Progress Software много внимания и ресурсов уделяют ключевому продукту — Apptivity, в котором сошлись многие позднейшие технологии. В Progress Software за технологические вопросы Apptivity отвечает вице-президент Грег О?Коннор. Как бы ни был интересен сам продукт, интересней люди, от которых во многом зависит направление развития компании, а поскольку в Apptivity много принципиальных нововведений, то, может быть — кто знает? — и на развитие отрасли в целом. Поэтому, встретившись на конференции Progress Software с Грегом О`Коннором, редактор Computerworld Россия Игорь Левшин старался получить ответы на некоторые вопросы, связанные с будущим перспективных технологий.

Какие задачи вы считаете для себя самыми важными сейчас?

Я отвечаю за Apptivity. Моя главная забота — интеграция. Все функциональные возможности и службы в Apptivity должны быть доступны через язык четвертого поколения (4GL). Для этого, в свою очередь, очень важно соблюдать стандарты во всем семействе продуктов Apptivity. И наоборот — пользователи, привыкшие к 4GL, увидят, что в новых инструментах семейства Apptivity приложения можно конструировать в привычном им стиле. Vader+ позволит пользователям и независимым производителям программ быстро интегрировать написанные ими приложения в корпоративную информационную среду.

Есть уровень интерфейсов, промежуточного ПО и есть уровень базовых технологий, ядра базы данных. Любопытно, что слово СУБД даже ни разу не прозвучало на конференции. Этому уделяется теперь меньше внимания?

Apptivity 4 или Vader будет использовать Progress как хранилище для объектов и хранимых сообщений, поскольку эта СУБД хорошо масштабируется и легко администрируется. Apptivity, вся построенная на стандартах, будет стимулировать к большей стандартизации и СУБД. Все больше будут соответствовать стандартам SQL, Java и другие языки. Стандартам в самой Apptivity, в интерфейсах к базам данных будет и дальше уделяться много внимания. Механизмы передачи и хранения сообщений, механизмы транзакций и хранения объектов в базах данных очень важны, и в ближайшую пару лет ими плотно займутся.

Ваша деятельность ограничивается Apptivity? Непосредственно с технологиями СУБД вам приходится иметь дело не часто?

Я сам ядром базы данных не занимаюсь, но имею с этими технологиями дело постольку, поскольку мне важно, как именно ядро поддерживает различные новые функции: как оно хранит объекты типа BLOB, XML-сообщения, как пользователи смогут извлечь заданные в XML-поля и т. д. Интерфейс, основанный на XML, становится очень популярным, и я думаю, что индустрия пойдет именно в этом направлении. Это означает, что от СУБД потребуется хранить, быстро находить и извлекать сложные объекты. Одно из решений — гибридные объектно-реляционные СУБД.

Если XML — интерфейс для обмена данными и это настолько важный технологический элемент, то не пора ли компании Progress — как некоторым другим производителям СУБД — сделать поддержку XML на уровне ядра? Может быть, даже потребуется переписывать куски кода ядра СУБД в соответствии с новыми реалиями?

Я думаю, так и произойдет. Гибридная СУБД, о которой я говорил, способна хранить BLOB, сложные объекты, например такие, которые позволили бы удобно и быстро найти дату заказа или имя заказчика — все это будет. XML позволяет данным все время меняться, мое определение типа данных может быть отличным от пользовательского, поэтому надо все время хранить версии данных, что является очень сложной и интересной задачей. Эти вопросы обсуждаются у нас в компании постоянно.

Что вы думаете об объектных технологиях в целом?

Объектные технологии, объектные базы данных, распределенные объекты — все это верхний эшелон программирования, экстремальные, я бы сказал, приложения. Здесь нужны хорошие программисты, в общем, это своего рода базы данных для гуру. Объектные базы данных будут с успехом применяться там, где нужно хранить специфическую информацию, например географические данные, чертежи. Они могут очень пригодиться в мире телекоммуникаций для управления сложными сетями — там, требуется хранить сведения о сложным образом связанных между собой маршрутизаторах и коммутаторах. Если хранить такую информацию в реляционных базах данных, для нормальной работы придется определять очень сложные соединения, если же сохраняются объекты, к ним возможен прямой доступ. Думаю, что со всеми этими проблемами, с пересылкой объектов в распределенной системе вполне может справиться XML вместе с CORBA. Это и станет в ближайшем будущем основным направлением разработок. Объекты у двух взаимодействующих сторон могут быть разных типов, однако все необходимые преобразования возьмут на себя XML- и объектные адаптеры.

Ситуация во многом напоминает ситуацию с HTML и Java-апплетами. Два года назад все твердили, что HTML недостаточно надежен, что в нем отсутствует объектная модель, что с его помощью нельзя определить сложные распределенные объекты, что для программирования клиентской стороны необходимы Java-апплеты. Однако потом стало ясно, что все же передавать данные по сети удобнее, чем загружать объекты.

Некоторые специалисты заявляют, что строить объектную СУБД надо заново, а не приспосабливать для этих целей реляционную. Что вы об этом думаете?

Объектным СУБД уже много лет. И кто лидер? Компания Object Design, может быть, еще Versant. Но кто использует такие СУБД? Это — нишевый рынок. Они нужны для необычных приложений, о которых мы говорили. Возможно, мы станем свидетелями радикальных изменений, и для бизнеса потребуется передавать по сети именно объекты. Но я не думаю, что этот рынок станет действительно таким уж большим.

Нравится ли Java как язык программирования вам лично?

Ну, в общем, неплохой язык. Это все-таки язык для технологических разработчиков, в противоположность 4GL — языку для бизнес-разработчиков. Вопрос в том, какое количество программистов этот язык привлечет. Похоже, Java привлекает очень многих, потому что он проще, чем С++, но для бизнес-разработчиков он все же подходит меньше, чем 4GL.

Java появился как язык кроссплатформенной разработки, но имел ли он шанс просто как новый удобный язык программирования?

Для настольных систем?

Ну не для ядра базы данных, наверное…

А почему бы и нет? Компания Cloudscape предлагает СУБД, ядро которой написано на Java. В настоящее время популярность Java быстро растет. Возможно, Java хорошо пойдет для карманных устройств на платформе PicoJava. Для них он может стать чем-то наподобие комбинации DBScript и COM для настольных ПК. Но компьютерная индустрия может пойти и по какому-то иному пути. Все развивается слишком стремительно, для того чтобы можно было делать абсолютно точные прогнозы.


В конференции Progress Software Россию представляли две компании: CSBI EE и БИС.

Компания «Компьютерные системы для бизнеса CSBI EE» была основана в 1993 году.

Важные направления деятельности компании, являющейся мастер-дистрибьютором Progress, - поставка законченных решений для кредитно-финансовых учреждений на основе ИБС «Банкир» (разработана полностью на 4GL Progress) и деятельность, связанная с дистрибуцией ПО Progress на территории СНГ и Латвии, в рамках которой организована сеть партнеров, занимающихся разработкой прикладных систем на основе Progress и их продажами. Как правило, это компании, занимающиеся разработкой ПО. Сегодня число таких партнеров достигло тридцати. К числу крупнейших партнеров следует отнести IBS с продуктами по автоматизации торговых предприятий IBS Trade, «Никос-Софт» с интегрированной бухгалтерской системой NS-2000 и «Сокап» с полностью локализованной ERP-системой управления производством SyteLine.

Кроме мастер-дистрибьтора, в России разработкой и продажей своей интегрированной банковской системы занимается компания БИС со статусом прямого партнера Progress Software.

На наши вопросы ответил директор департамента Progress компании CSBI EE Юрий Гусев.

Кто традиционные конечные пользователи Progress в России?

Типичный потребитель Progress в России — это магазины, дистрибьюторские и торговые компании, промышленные предприятия, банки с развитой региональной сетью филиалов, приобретающие в первую очередь решение для бизнеса, и лишь затем технологию. Особые преимущества использование Progress дает тем организациям, которые не имеют в силу различного рода ограничений или не желают иметь штат ИТ-специалистов. На этого клиента ориентируются и компании-разработчики ПО. Преимущества платформы Progress наряду с эффективностью языка Progress 4GL заставляют все большее число компаний использовать продукты Progress для построения коммерческих промышленных систем. Другим фактором, влияющим на выбор Progress в качестве платформы для построения приложений, является Internet-ориентированная стратегия компании.

Проникает ли Apptivity на наш рынок?

Пока говорить о практическом опыте построения распределенных Java-приложений в России рано. Причин несколько — неразвитая телекоммуникационная инфраструктура, опасения, связанные с обеспечением безопасности, и ряд других факторов. Это привело к отставанию российских компаний-разработчиков от западных в том, что касается использования Internet как среды для ведения бизнеса. В большинстве случаев российские компании используют Internet как среду для предоставления потенциальным клиентам статической информации, реализации простейших запросов к базам данных или расширения части функциональности существующего приложения на Internet.

На мой взгляд, Apptivity будет в полной мере востребован в 2000-2001 годах, когда потребность в быстрой разработке сложных распределенных приложений для электронной коммерции наряду с наличием мощного сервера приложений обеспечит данному продукту преимущество. Сегодня в России ряд крупных компаний получили временные лицензии на использование Apptivity, однако чтобы добиться коммерческого успеха, надо немного подождать.


Заниматься многими вещами очень интересно

Никто, конечно, не расскажет о стратегии компании лучше, чем ее президент, особенно если он ее президент со дня основания. Более того, Джозеф Элсоп — основатель компании.

Путь, который прошла компания, вам виден лучше, чем другим. Каков же он? Прямая линия, причудливая кривая?

Нечто среднее, видимо. Мы начинали как производители СУБД, но всегда очень много внимания уделяли средам разработки, языкам четвертого поколения, поскольку именно они определяют реальную эффективность приложений. Мы и сейчас в этом уверены. Однако сегодня ситуация несколько изменилась. В 80-е самым важным было написать приложение. В 1990-е и 2000-е главная задача — разворачивать и поддерживать его. Требования изменились. Через Internet приложение должно быть доступно отовсюду и всегда. Серверы, на которых работают приложения, должны теперь работать 24 часа в сутки. И все это время приложения должны быть доступны для администрирования, настройки, внесения изменений, причем без остановки приложения. Это требует гораздо большей работы, чем десять лет назад. Очень высокой должна быть надежность приложений.

И как реагирует на эти изменения ваша компания?

Теперь мы больше повернуты к Internet, потому что если раньше главной задачей была автоматизация деятельности одного предприятия, то теперь все важнее становятся приложения класса «бизнес-бизнес». Однако в целом философия компании осталась примерно той же. Мы по-прежнему продаем наши программные продукты разработчикам, а не конечным пользователям.

Вы объединили 1990-е и начало следующего тысячелетия. Почему? Вы считаете, что за это время радикальных изменений в компьютерной индустрии не ожидается?

Напротив, изменений будет очень много. Думаю, компьютерная индустрия все стремительнее будет двигаться к всемирной инфраструктуре. С приложениями станет возможной работа из любой точки планеты. Большую популярность приобретут беспроводные устройства. Это сделает куда серьезнее требования к масштабируемости. Раз приложение доступно отовсюду, оно должно быть в состоянии работать одновременно с тысячами и десятками тысяч пользователей 24 часа в сутки семь дней в неделю. Такое приложение должно быть совместимо с любыми коммуникационными инфраструктурами, включая беспроводные сети. Для производителей инструментов задача усложнится ровно настолько, насколько сами средства разработки должны упроститься: нужны такие инструменты, чтобы бизнес-приложения можно было так же быстро изменять, как изменяется сам бизнес.

Современные приложения по-прежнему трудно писать, сложно развертывать, настраивать и сопровождать. Слишком мало действий выполняется автоматически. Я имею в виду вот что: посмотрите на страницы объявлений в газетах. Программисты — требуются, системные администраторы — требуются... Вы видели где-нибудь, чтобы требовалась телефонистка? В этой отрасли уже почти все автоматизировано. Пользователь сам в состоянии набрать номер, а станция автоматически соединяет с абонентом. В начале века требовались шоферы. Не потому что богатые люди хотели, чтобы их везли, а они бы дремали в кресле, а просто потому, что водить машину мог только специалист. Теперь хозяин автомобиля сам в состоянии вести собственную машину. То же самое в конце концов произойдет и с компьютерами. Программы упростятся настолько, что любой пользователь сможет не только работать на компьютере, но и перепрограммировать его. Когда-нибудь это обязательно произойдет.

Но вы же не можете превратиться в «стопроцентного» производителя средств разработки? Как вы распределяете свои усилия по разным направлениям?

Заниматься многими вещами очень интересно. На любом рынке всегда есть узкие специалисты, и есть те, кто занимается сразу очень многим. Progress Software — где-то посередине. Мы стараемся сосредоточить усилия на том, что для данного времени наиболее актуально и требует особого напряжения от независимых разработчиков программного обеспечения, да и вообще для людей, связанных с информационными технологиями. Сейчас становится все проще разрабатывать приложения, поскольку инструментальные средства стали очень мощными и удобными. Однако разворачивать их и поддерживать пока очень сложно, поэтому мы сейчас так много уделяем внимания именно этим вопросам. Мы стараемся поддерживать какое-то равновесие в том, что делаем для совершенствования СУБД, для сервера приложений, для средств разработки и для средств администрирования.

Мы с вами говорили о следующем тысячелетии. Но до него еще надо дожить. Что вы предпримете 31 декабря 1999 года?

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

И вы лично?

Э-э, нет. Я буду сидеть дома. Впрочем, вряд ли. Скорее всего, буду заправлять машину бензином и активно снимать наличные со счетов — дел найдется много. А вот теперь я вас спрошу: какой день недели будет 1 января 2000 года?

Не знаю (присутствовавшие менеджеры Progress подсказывают: суббота! суббота! — И. Л.).

Ну вот видите. Вы не знаете, но кроме вас знают все. А полгода назад никто не знал. Это о многом говорит.