UML Distilled
A Brief Guide to the Standard Object Modeling Language
Third Edition
Martin Fowler
AAddison-Wesley
UML Основы
Краткое руководство
по стандартному языку
объектного моделирования
Третье издание
Мартин Фаулер
Сант- Петербург
Мартин Фаулер
UML. Основы, 3-е издание
Перевод А. Петухова
Главный редактор А. Галунов
Зав. редакцией Н. Макарова
Научный редактор В. Шальнев
Редактор В. Овчинников
Корректура О. Макарова
Верстка Н. Гриценко
Фаулер М.
UML. Основы, 3-е издание. - Пер. с англ. - СПб: Символ-Плюс, 2006. - 192 с.,
ил.
ISBN 5-93286-060-Х
Третье издание бестселлера Фаулера «UML. Основы» охватывает UML 2 - версию, которая существенно отличается от всех предыдущих. Но основная формула успеха этой книги не претерпела изменений. До сих пор она, бесспорно, остается лучшим кратким и точным руководством по применению UML.
Главное достоинство книги заключается в кратком и сжатом изложении сути UML и особенностей применения этого языка в современном процессе разработки ПО. В книге описаны все главные типы диаграмм UML, рассказано, для чего они предназначены и какие нотации применяются при их создании и чтении. Это диаграммы классов, последовательности, объектов, пакетов, развертывания, прецедентов, состояний, деятельности, составных структур, компонентов, обзора взаимодействия, коммуникационные и временные.
Фаулер не только в ясной и доступной манере описывает ключевые аспекты языка UML, но и четко показывает ту роль, которую UML играет в процессе разработки. Замечательные примеры моделирования являются результатом многолетнего опыта работы автора в области проектирования и моделирования.
ISBN 5-93286-060-Х ISBN 0-321-19368-7 (англ)
© Издательство Символ-Плюс, 2004
Original English language title: UML Distilled: A Brief Guide to the Standard Object Modeling Language, Third Edition by Martin Fowler, Copyright © 2004 by Pearson Education, Inc. All Rights Reserved. Published by arrangement with the original publisher, Pearson Education, Inc., publishing as ADDISON WESLEY.
Все права на данное издание защищены Законодательством РФ, включая право на полное или частичное воспроизведение в любой форме. Все товарные знаки или зарегистрированные товарные знаки, упоминаемые в настоящем издании, являются собственностью соответствующих фирм.
Издательство «Символ-Плюс». 199034, Санкт-Петербург, 16 линия, 7, тел. (812) 324-5353, edit@symbol.ru. Лицензия ЛП N 000054 от 25.12.98.
Налоговая льгота - общероссийский классификатор продукции
ОК 005-93, том 2; 953000 - книги и брошюры. Подписано в печать 27.02.2006. Формат 70х100'Дб. Печать офсетная.
Объем 12 печ. л. Доп. тираж 2000 экз. Заказ N 105 Отпечатано с готовых диапозитивов в ГУП «Типография «Наука» 199034, Санкт-Петербург, 9 линия, 12.
Посвещается Синди
Оглавление
Отзывы
Предисловие к третьему изданию...................................................... ….16
Предисловие к первому изданию…................................................... ….18
От автора............................................................................................... ….20
1.Введение............................................................................................ ….27
Что такое UML?.................................................................................. ….27
Способы применения UML................................................................ ….28
Как мы пришли к UML....................................................................... ….34
Нотации и метамодели........................................................................ ….36
Диаграммы UML.................................................................................. ….38
Что такое допустимый UML?............................................................ ….39
Смысл UML.......................................................................................... ….41
UML не достаточно............................................................................. ….41
С чего начать........................................................................................ ….43
Где найти дополнительную информацию........................................ ….43
2.Процесс разработки.............................................................................. 45
Процессы итеративные и водопадные.................................................... 46
Прогнозирующее и адаптивное планирование...................................... 49
Гибкие процессы........................................................................................ 51
Унифицированный процесс от Rational.................................................. 52
Настройка процесса под проект............................................................... 53
Настройка UML под процесс................................................................... 56
Выбор процесса разработки...................................................................... 60
Где найти дополнительную информацию........................................ …..61
3.Диаграммы классов: основы.............................................................. 62
Свойства..................................................................................................... 62
Атрибуты.................................................................................................... 63
Кратность.................................................................................................... 65
Программная интерпретация свойств............................................... …..66
Двунаправленные ассоциации................................................................ 68
Операции.................................................................................................... 70
Обобщение................................................................................................... 72
Примечания и комментарии.................................................................... 73
Зависимость............................................................................................... 74
Правила ограничений............................................................................... 76
Когда применяются диаграммы классов................................................ 77
Где найти дополнительную информацию.............................................. 79
4. Диаграммы последовательности.................................................... 80
Создание и удаление участников............................................................ 84
Циклы, условия и тому подобное............................................................ 85
Синхронные и асинхронные вызовы...................................................... 88
Когда применяются диаграммы последовательности........................... 89
5. Диаграммы классов: дополнительные понятия.......................... 92
Ключевые слова......................................................................................... 92
Ответственности........................................................................................ 93
Статические операции и атрибуты.......................................................... 93
Агрегация и композиция.......................................................................... 94
Производные свойства.............................................................................. 95
Интерфейсы и абстрактные классы......................................................... 96
Read-Only и Frozen................................................................................... 100
Объекты-ссылки и объекты-значения.................................................... 100
Квалифицированные ассоциации.......................................................... 101
Классификация и обобщение.................................................................. 102
Множественная и динамическая классификация................................. 103
Класс-ассоциация..................................................................................... 105
Шаблон класса (параметризованный класс).......................................... 108
Перечисления............................................................................................ 109
Активный класс........................................................................................ 110
Видимость................................................................................................. 110
Сообщения................................................................................................ 111
6. Диаграммы объектов....................................................................... 112
Когда применяются диаграммы объектов............................................ 113
7. Диаграммы пакетов......................................................................... 114
Пакеты и зависимости............................................................................. 116
Аспекты пакетов...................................................................................... 118
Реализация пакетов.................................................................................. 119
Когда применяются диаграммы пакетов.............................................. 120
Где найти дополнительную информацию............................................ 120
8. Диаграммы развертывания........................................................... 121
Когда применяются диаграммы развертывания.................................. 122
9. Прецеденты........................................................................................ 123
Содержимое прецедентов....................................................................... 124
Диаграммы прецедентов........................................................................ 126
Уровни прецедентов............................................................................... 127
Прецеденты и возможности (или пожелания)..................................... 128
Когда применяются прецеденты............................................................ 128
Где найти дополнительную информацию............................................ 129