«Открытые системы»

Первыми коммерческими продуктами, выпускавшимися независимыми производителями программного обеспечения, стали базы данных

Изначально системы хранения данных называли «внешней памятью». Магнитные барабаны, а позже и диски использовались для виртуального расширения оперативной памяти с использованием процедуры, которую называли «свопингом». Первым попытку расширить возможности работы с дисками путем создания системы управления базами данных предпринял в 1961 году Чарльз Бахман. Тогда он работал в General Electric, а потому разработка велась на ЭВМ именно этой компании, а созданная им «интегрированная система хранения» IDS (Integrated Data Store) могла работать только на мэйнфреймах GE. Система была совсем простой: вся СУБД упаковывалась в один файл, а таблицы, содержащие сведения о размещении данных, создавались вручную. Незамысловатая работа оказала столь колоссальное влияние на развитие программного обеспечения, что через 15 лет Бахман получил за свою работу от Британского компьютерного общества Тьюринговскую премию. (Этот случай по-своему беспрецедентен, ведь этой премией удостаивают обычно выдающихся исследователей с академическим прошлым, Бахман же в отличие от других лауреатов был инженером-практиком.)

В конце 60-х появилось еще несколько СУБД, среди них были системы, созданные в IBM. Одна из них — IMS

Несколько позже Бахман совместно с Вейхаузером Ламбером переделал IDS для работы в мультипрограммной среде; в версии dataBasic она была доступна пользователям, программировавшим на языке Basic. В последующем Бахман продолжил теоретические работы в области баз данных, вел активную полемику с «отцом» реляционных СУБД Эдгаром Коддом, доказывая преимущество навигационных баз данных, но был вынужден уступить перед математической строгостью реляционного подхода и возможностями языка запросов SQL. Дискуссия происходила в конце 70-х — начале 80-х годов, в период наивысшего подъема структурного программирования и транзакционных систем, поэтому тогда ее исход был предрешен. Сегодня правота Кодда уже не кажется столь безусловной; с появлением объектного программирования и языка XML началась своего рода реставрация навигационного подхода.

СУБД, которые строились с использованием сетевых или иерархических моделей, были названы Бахманом навигационными, поскольку для перемещения между записями в них используются «указатели», или «пути», что отличает их от реляционных СУБД, где используются принципы логического программирования. Для сравнения двух подходов используют классический пример. При использовании навигационного подхода путь до объекта можно указать так: «Едете по шоссе 25 километров, поворачиваете направо и продолжаете движение до третьего населенного пункта, вам нужен третий дом с левой стороны». Декларативный подход позволяет просто указать: «Зеленый дом с координатами x:y». Критики навигационного подхода уподобляли его использованию оператора goto в противовес структурному программированию.

В дальнейшем система IDS вела автономную от автора жизнь. Группа специалистов из компании Goodrich переписала ее на языке ISL (Intermediate System Language), который был одним из первых универсальных языков системного программирования, что позволило сделать огромный шаг вперед. Модернизированную СУБД, пусть путем перекомпиляции, оказалось возможным устанавливать на разные модели компьютеров. В новой редакции она получила название IDMS (Integrated Database Management System).

Именно тогда права на IDMS приобрел Джон Кулинан, предприниматель, которому одним из первых удалось сделать бизнес на программном обеспечении. В 1968 году Кулинану пришла в голову оригинальная для того времени идея: он решил делать бизнес, продавая программное обеспечение для мэйнфреймов. Так появилась компания Cullinane. В отличие от современников Кулинан не стремился разрабатывать свои программы «с нуля»; наряду с разработками он покупал компании и оказался чрезвычайной успешен на этом поприще. Вскоре компания, переименованная в Cullinane Database Systems, столкнулась с тем, что для интеграции приобретенных и разработанных продуктов нужна единая СУБД. На основании анализа альтернативных решений выбор пал на IDMS, и это было исключительно точным решением, СУБД отлично работала на мэйнфреймах IBM и совместимых с ними. Деятельность компании сосредоточилась на СУБД, были созданы дополнительные продукты, в итоге IDMS оказалась эффективнее собственной СУБД корпорации, которая называлась IDMS. Компания Cullinane Database Systems первой из софтверных компаний вышла на Нью-Йоркскую фондовую биржу и первой преодолела миллиардный рубеж. В начале 80-х она процветала, в осознании роли компьютерных сетей ее переименовали в Cullinet, но допущенные затем просчеты в менеджменте привели к тому, что в 1989 году первая успешная софтверная компания была продана корпорации Computer Associates. Компания не угадала тенденций рынка. В сегменте мини-ЭВМ ее обошла Oracle, которая первой в 1979 году предложила свою коммерческую реляционную СУБД, а СУБД DB2, созданная в 1983 году в IBM, к тому же вытеснила Cullinet из рынка мэйнфреймов. Правда, IDMS вместе с ней не умерла: еще в 1976 году английская компания ICL перенесла ее на свои мэйнфреймы, на ней были построены многие финансовые системы, которые работают до сих пор.

В конце 60-х появилось еще несколько СУБД. Среди них несколько систем, созданных в IBM, — это BOMP, D-BOMP, а также их наследники DL/1 и IMS. Независимый производитель программного обеспечения, Cincom, был вполне успешен со своим продуктом Total; Applied Data Research поставляла Datacom/DB, а Computer Corporation of America — DBMS Model 204. Но наибольший успех выпал на долю Software AG. В 1969 году шестеро немецких специалистов во главе с Петером Шнелем создали компанию, а в 1971 году вывели на рынок свой первый и основной на всю последующую жизнь программный продукт Adabas (adaptable database system), сразу получивший признание крупных банков и госструктур.

Отдельная и ни на что не похожая история связывает современный программный продукт Cache компании Intersystems с Нейлом Паппалардо, который еще в 1967 году создал MUMPS (Massachusetts General Hospital Utility Multi-Programming System). Первоначально эта СУБД работала на DEC PDP-7. Позже Паппалардо создал Medical Information Technology, одну из крупных софтверных фирм Новой Англии. При поддержке DEC была разработана версия MUMPS-11 для популярной тогда мини-ЭВМ PDP-11. Позже была создана «стандартная» версия — Digital Standard MUMPS (DSM), а компания Intersystems вышла на рынок с собственными продуктами ISM (InterSystems M) для платформ VMS и Unix и M/11+ — для PDP-11. Технологиями, поучившими название М, занимался еще ряд компаний, было создано несколько стандартов ISO. С уходом из жизни компании DEC руководящую роль в «M-сообществе» на себя приняла Intersystems.

Появление СУБД в СССР совпало с активным клонированием техники IBM и DEC, а потому деятельность нескольких академических и отраслевых институтов в этой области сводилась к локализации и замене названий IMS на OKА, Adabas — на ТРИАДА или ДИСОД т. д.


Джон Кулинан окончил университет Northeastern University. В 1968 году он основал компанию по разработке программного обеспечения Cullinane, позднее переименованную в Cullinet Software. Это было время, когда признанные умы отрасли утверждали: «У компьютерного программного обеспечения нет будущего». Вопреки пессимистическим прогнозам, Cullinet стала одной из самых успешных для своего времени компаний мира, первой среди программных компаний провела выпуск акций, первой была внесена в списки NYSE и первой добилась миллиардной капитализации. Кулинан активно работает с представителями Ирландской отрасли программного обеспечения. Этим он помогает экономическому развитию страны, созданию рабочих мест и вносит, таким образом, свой вклад в дело мира в этой сложной стране. Он является организатором некоммерческой группы Friends of Belfast, которая действует в США и Канаде и привлекает тех людей, чей «социальный капитал» может помочь стимулировать экономическое и социальное развитие Ирландии. В настоящее время Кулинан занимает пост председателя совета директоров компании LiveData, которая предоставляет услуги интеграции для информационных систем больниц, а также предлагает специализированные дисплеи.


Нейл Паппалардо окончил Массачусетский технологический институт в 1964 году по специальности «электротехника и информатика» и поступил на работу в бостонскую клинику Massachusetts General Hospital, специализирующуюся в области биомедицинских исследований. Здесь он разработал язык MUMPS (Massachusetts General Hospital Utility Multi-Programming System), предназначенный для создания баз данных. Язык был ориентирован на разработку баз данных для медицинского применения и используется достаточно широко, хотя и не получил повсеместного распространения. В 1969 году Паппалардо оставил клинику и основал собственную компанию Meditech, став ее генеральным директором и председателем совета директоров. Meditech быстро стала лидирующим поставщиком информационных систем для больниц в США и Европе. Сейчас основной специализацией компании является разработка передовых систем управления, помогающих больницам предоставлять высококачественные и недорогие медицинские услуги. Паппалардо активно участвует в общественной и культурной жизни и занимается филантропией. В 2000 году Международный астрономический союз назвал его именем один из астероидов.


Чарльз Бахман начал свою карьеру компьютерного специалиста еще в армии в 1943-1946 годах. Он служил в противовоздушных войсках армии США. Здесь использовались специализированные компьютеры для наведения 90-миллиметровых орудий. После войны, в 1946-1950 годах, он учился в высшей школе штата Мичиган, в 1948 году получил звание бакалавра в области мехиники, в 1950-м — магистра. В этом же году он поступил в компанию Dow Chemical, где вначале работал проектировщиком, позже перешел в финансовый отдел, а затем в 1957 возглавил подразделение обработки информации. В 1960 году он перешел в General Electric. Работая здесь, он предложил первую систему управления базами данных IDS (Integrated Data Store). Затем он перешел на работу в небольшую компанию Cullinane Information Systems (названную позже Cullinet), где создал IDMS — версию СУБД IDS, поддерживающую мэйнфреймы IBM. В 1983 году он основал компанию Bachman Information Systems, создающую продукты для автоматизированной разработки программного обеспечения Computer Aided Software Engineering (CASE). Ключевым продуктом этого семейства стала система Bachman/Data Analyst, обеспечивавшая графическое представление структур данных.