Как мы пришли к UML

Надо признать, что я люблю историю. Мое любимое легкое чтение -это хорошая историческая книга. Но я понимаю, что это нравится не всем. Я говорю здесь об истории, поскольку считаю, что во многих от­ношениях трудно оценить место, занимаемое UML, не зная истории его развития.

В 80-х годах объекты начали выходить из исследовательских лабора­торий и делать свои первые шаги в направлении «реального» мира. Язык Smalltalk был реализован на платформе, пригодной для практи­ческого использования; появился на свет и C++. В то же время разра­ботчики начали задумываться об объектно-ориентированных языках графического моделирования.

Основные книги по объектно-ориентированным языкам графического моделирования появились между 1988 и 1992 годами. Ведущими фи­гурами в этом деле были Гради Буч (Grady Booch) [5]; Питер Коуд (Pe­ter Goad) [7], [8]; Айвар Джекобсон (Ivar Jacobson) (Objectory) [24]; Джим Оделл (Jim Odell) [34]; Джим Рамбо (Jim Rumbaugh) (OMT) [38], [39]; Салли Шлаер (Sally Shlaer) и Стив Меллор (Steve Mellor) [41], [42]; Ребекка Вирфс-Брок (Rebecca Wirfs-Brock) (Responsibility Driven Design) [44].

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

В это горячее время о стандартизации говорили в той же степени, в ка­кой ее игнорировали. Команда из группы OMG пыталась разбираться со стандартизацией, но в результате получала только письма с протес­тами от всех ведущих методологов. (Есть такой старый анекдот. Во­прос: В чем разница между методологом и террористом? Ответ: С тер­рористом можно вести переговоры.)

Катастрофическим событием, инициировавшим появление UML, ста­ли уход Джима Рамбо из GE и его встреча с Гради Бучем в Rational (те­перь это подразделение IBM). С самого начала было ясно, что союз Буч/Рамбо может создать критическую массу1 этого бизнеса. Гради и Джим провозгласили, что «война методов завершена - мы победили»,

1 Критическая масса (в маркетинге) - обязательный набор новшеств, кото­рые должны быть присущи товару, чтобы он считался современным. -Примеч. Ред


по существу заявляя, что они собираются достигнуть стандартизации, пойдя по «пути Microsoft». Некоторые методологи проектирования предложили создать анти-Бучевскую коалицию.

К конференции OOPSLA '95 Гради и Джим подготовили свое первое публичное описание их совместного метода - версию 0.8 документации по Унифицированному методу (Unified Method). И что более сущест­венно, они объявили, что фирма Rational Software купила Objectory и что Айвар Джекобсон должен присоединиться к Унифицированной ко­манде. Rational устроила шикарный прием, празднуя выход версии 0.8. (Гвоздем программы стало первое публичное выступление поющего Джима Рамбо; мы все надеемся, что оно также было и последним.)

На следующий год процесс стал более открытым. Группа OMG, кото­рая раньше в основном стояла в стороне, теперь стала играть активную роль. Rational вынуждена была принять идеи Айвара, а также рабо­тать с другими партнерами. Более существенно то, что группа OMG ре­шила взять на себя ведущую роль.

Важно понять, почему вступила в дело группа OMG. Методологи про­ектирования, как и авторы книг, любят думать, что они важные пер­соны. Но я не думаю, что вопли авторов книг могут быть хотя бы услы­шаны группой OMG. Причиной участия группы OMG стали крики по­ставщиков программных средств. Поставщики испугались, что стан­дарт, контролируемый фирмой Rational, даст продуктам фирмы неоправданное конкурентное преимущество. В результате производи­тели побудили группу OMG к действиям под флагом необходимости взаимодействия CASE-систем. Это был очень важный аргумент, по­скольку для группы OMG взаимодействие значило очень много. По­явилась идея создать язык UML, который бы позволил CASE-средст-вам свободно обмениваться моделями.

Мэри Лумис (Mary Loomis) и Джим Оделл возглавили инициативную группу, созданную для решения поставленной задачи. Оделл дал ясно понять, что готов предоставить свой метод для стандарта, но не желает поддерживать стандарт, продиктованный фирмой Rational. В январе 1997 года различные организации представили на рассмотрение свои предложения по стандартизации методов, которые бы способствовали обмену моделями. Фирма Rational сотрудничала с несколькими орга­низациями и в соответствии со своим планом представила версию 1.0 документации по UML - первое создание, соответствующее имени Унифицированный язык моделирования (Unified Modeling Language).

Затем последовал короткий период выкручивания рук, когда объеди­нялись различные предложения. Группа OMG приняла окончатель­ную версию 1.1 в качестве официального стандарта OMG. Позднее бы­ли созданы другие версии. Версия 1.2 была целиком косметическая, версия 1.3 - более значимой. В версию 1.4 было введено множество де­тализированных понятий о компонентах и профилях, а в версию 1.5 добавили семантику действия.


Когда специалисты говорят о UML, они называют его создателями главным образом Гради Буча, Айвара Джекобсона и Джима Рамбо. Чаще всего их называют «Трое друзей» (Three Amigos), хотя шутники любят опускать первый слог второго слова. Несмотря на то что они за­работали свое доброе имя в основном в связи с UML, я думаю, что не совсем справедливо отдавать им всю славу. Нотация UML впервые бы­ла сформирована в Унифицированном методе Буча/Рамбо. С тех пор была проведена большая работа в комитетах группы OMG. На этой ста­дии Джим Рамбо был лишь одним из тройки, которая выполнила свои тяжелые обязательства. Я считаю, что основную благодарность за соз­дание UML заслужили именно члены комитета TJML.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: