2.
Буч Г. и др.
история языка UML
UML был создан в результате работы по объединению
и упрощению множества существующих методов объектно-
ориентированной разработки.
Методы разработки систем на таких языках, как Cobol
(Кобол) или Fortran (Фортран), появились в 70-х гг. и стали по-
пулярны спустя десятилетие. Наиболее выдающимися среди
них были методы структурного анализа (Structured Analysis) и
структурного проектирования (Structured Design) [Yourdon-79],
а также их варианты – например, структурное проектирование
для систем реального времени (Real-Time Structured Design)
[Ward-85]. Эти методы получили довольно широкое применение в
крупных отраслях промышленности, особенно государственных,
например в военно-промышленном комплексе и аэрокосмиче-
ских программах, так как в этих областях традиционно требуется
жёсткое планирование процесса разработки и подробное доку-
ментирование процесса проектирования и реализации системы.
Результаты далеко не всегда были настолько впечатляющими,
как ожидалось. Многие системы автоматизированной разработки
программного обеспечения (CASE) мало отличались от обычных
генераторов отчётов, которые могли извлекать проектную
структуру системы уже после её реализации. Впрочем, их методы
содержали хорошие идеи, которые иногда всё же удавалось
эффективно использовать при конструировании больших систем.
Коммерческие компании пользовались громоздкими CASE-
системами и методологиями куда менее охотно. Многие из них
273
сами создавали подобные программные продукты для своих нужд,
поэтому процесс разработки проходил без той враждебности,
которая, как правило, характеризует отношения разработчика и
заказчика в государственных проектах. Коммерческие системы
должны были быть проще, к тому же им не требовалось подробное
документирование.
Первым общепризнанным объектно-ориентированным
языком стал язык Simula-67 (Симула-67), разработанный Далом
и Найгардом в Норвегии в 1967 г. Этот язык так и не получил
широкого распространения, однако оказал сильное влияние на
несколько других объектно-ориентированных языков, кото-
рые появились вскоре после него. В начале 80-х массовому ин-
тересу к объектно-ориентированным языкам способствовало
распространение языка Smalltalk, за которым последовали и
другие: Objective C, C++, Eiffel b CLOSS. Поначалу этими язы-
ками пользовалось довольно ограниченное число разработчи-
ков, однако интерес к объектно-ориентированным технологи-
ям всё возрастал. Приблизительно через пять лет после того,
как обрёл популярность язык Smalltalk, были опубликованы
первые описания объектно-ориентированных методов Шлеера-
Меллора [Shlaer-88] и Коэда-Йордона [Coad-91]. Вслед за первы-
ми публикациями последовали книга Буча [Booch-94], Рамбо,
Блага, Премерлани, Эдди и Лоренсена [Rumbaugh-91] (обнов-
лённая версия – [Blaha-05]), а также Вирфс-Брок, Уилкерсона
и Винера [Wirfs-Brock-90]. Вместе с более ранними изданиями,
посвящёнными проектированию с помощью объектно-ориен-
тированных языков ([Goldberg-83], [Cox-86] и [Meyer-88]), эти
работы начали процесс формирования объектно-ориентиро-
ванной методологии. Первая фаза этого процесса завершилась
к концу 1990 г. Немногим позже появилась книга Якобсона
[Jacobson-90] о процессе, названном Objectory (можно перевести
как «мастерская объектов»). В ней используется несколько иной
подход, в котором основное внимание уделяется элементам Use
Case (вариантам использования) и процессу разработки.
В следующие пять лет вышло множество книг по объек-
тно-ориентированным методологиям, причём в каждой исполь-
зовались собственные понятия, определения, нотация, термино-
логия и процесс. В некоторых из них действительно встречались
274
новые интересные идеи, но в большинстве пересказывалось
то, что уже было сказано другими. Авторы новых книг оттал-
кивались от существовавших методов и просто вносили в них
небольшие дополнения и изменения. Но и те, кто издал свои
книги первыми, тоже не дремали – они создавали обновлённые
и дополненные версии ранних работ, нередко заимствуя идеи у
новых авторов. В конце концов образовалось множество общих
для всех базовых концепций и огромное количество концепций,
встречающихся у одного-двух авторов и не получивших широ-
кого распространения. Среди базовых концепций также наблю-
дались некоторые отклонения. Всё это очень затрудняло процесс
сравнения методов, особенно для обычного читателя.
Достарыңызбен бөлісу: |