Предисловие | 9 |
|
От автора | 11 |
|
1. Введение | 17 |
Что такое UML? | 17 |
Как мы к этому пришли | 18 |
Нотации и метамодели | 21 |
Для чего нужно заниматься анализом и проектированием | 23 |
Где найти дополнительную информацию | 27 |
|
2. Основы процесса разработки | 29 |
Общее представление о процессе | 30 |
Начало | 32 |
Исследование | 32 |
Планирование фазы построения | 41 |
Построение | 44 |
Внедрение | 53 |
Когда использовать итеративную разработку | 54 |
Где найти дополнительную информацию | 54 |
|
3. Варианты использования | 55 |
Диаграммы вариантов использования | 57 |
Варианты использования бизнес-процессов и систем | 62 |
Когда следует применять варианты использования | 63 |
Где найти дополнительную информацию | 63 |
|
4. Диаграммы классов: основы | 65 |
Особенности представления | 66 |
Ассоциации | 68 |
Атрибуты | 72 |
Операции | 73 |
Обобщение | 75 |
Правила ограничения | 76 |
Когда использовать диаграммы классов | 80 |
Где найти дополнительную информацию | 80 |
|
5. Диаграммы взаимодействия | 81 |
Диаграммы последовательности | 82 |
Диаграммы кооперации | 86 |
Сравнение диаграмм последовательности и диаграмм кооперации | 88 |
Когда использовать диаграммы взаимодействия | 90 |
|
6. Диаграммы классов: дополнительные понятия | 91 |
Стереотипы | 91 |
Диаграмма объектов | 92 |
Операции и атрибуты в контексте класса | 93 |
Множественная и динамическая классификация | 94 |
Агрегация и композиция | 97 |
Производные ассоциации и атрибуты | 98 |
Интерфейсы и абстрактные классы | 100 |
Ссылочные объекты и объекты-значения | 103 |
Совокупности многозначных концов ассоциаций | 105 |
Постоянство | 105 |
Классификация и обобщение | 106 |
Квалифицированные ассоциации | 107 |
Класс-ассоциация | 108 |
Параметризованный класс | 111 |
Видимость | 113 |
|
7. Пакеты и кооперации | 117 |
Пакеты | 118 |
Кооперации | 123 |
Когда использовать диаграммы пакетов и кооперации | 126 |
Где найти дополнительную информацию | 126 |
|
8. Диаграммы состояний | 127 |
Диаграммы параллельных состояний | 132 |
Когда использовать диаграммы состояний | 134 |
Где найти дополнительную инфомацию | 134 |
|
9. Диаграммы деятельности | 135 |
Декомпозиция деятельности | 139 |
Динамическая параллельность | 141 |
Дорожки | 141 |
Когда использовать диаграммы деятельности | 143 |
Где найти дополнительную информацию | 145 |
|
10. Физические диаграммы | 147 |
Диаграммы развёртывания | 147 |
Диаграммы компонентов | 147 |
Объединение диаграмм компонентов и развёртывания | 149 |
Когда следует использовать физические диаграммы | 150 |
|
11. Язык UML и программирование | 151 |
Наблюдение пациента: модель предметной области | 152 |
Наблюдение пациента: модель спецификации | 156 |
Переход к кодированию | 158 |
|
А. Средства и их использование | 168 |
B. Отличия версий языка UML | 170 |
Библиография | 177 |
Алфавитный указатель | 180 |