Предисловие
Предисловие автора

Глава 1. Введение
Что такое UML?
Как мы к этому пришли
Нотации и метамодели
Для чего нужно заниматься анализом и проектированием
Изучение объектно-ориентированных методов
Общение с экспертами в предметной области
Получение общего представления о системе
Где найти дополнительную информацию

Глава 2. Основы процесса разработки
Общее представление о процессе
Начальная фаза проекта
Уточнение
Риски, связанные с требованиями
Технологические риски
Риски, связанные с квалификацией персонала
Политические риски
Базовая архитектура
Когда уточнение заканчивается?
Планирование
Конструирование
Реорганизация
Когда использовать реорганизацию
Где найти дополнительную информацию
Итеративная разработка и планирование
Использование UML на стадии конструирования
Образцы
Когда использовать образцы
Где найти дополнительную информацию
Приемка
Когда использовать итеративную разработку
Где найти дополнительную информацию

Глава 3. Варианты использования
Задачи пользователей и системные взаимодействия
Диаграммы вариантов использования
Действующие лица
Использование и расширение
Когда применять варианты использования
Где найти дополнительную информацию

Глава 4. Диаграммы классов: основы
Точки зрения
Ассоциации
Атрибуты
Операции
CRC-карты
Когда использовать CRC-карты
Где найти дополнительную информацию
Обобщение
Ограничения
Контрактное проектирование
Когда использовать контрактное проектирование
Где найти дополнительную информацию
Когда использовать диаграммы классов
Где найти дополнительную информацию

Глава 5. Диаграммы классов: более сложные понятия
Стереотипы
Множественная и динамическая классификация
Агрегация и композиция
Производные ассоциации и атрибуты
Интерфейсы и абстрактные классы
Ссылочные объекты и объекты-значения
Разновидности многозначных ролей
Постоянство
Классификация и обобщение
Квалифицированные ассоциации
Класс ассоциаций
Параметризованный класс
Видимость

Глава 6. Диаграммы взаимодействия
Диаграммы последовательности
Параллельные процессы и активизации
Кооперативные диаграммы
Сравнение диаграмм последовательности и кооперативных диаграмм
Условное поведение
Когда использовать диаграммы взаимодействия
Где найти дополнительную информацию

Глава 7. Диаграммы пакетов
Когда использовать диаграммы пакетов
Где найти дополнительную информацию

Глава 8. Диаграммы состояний
Диаграммы параллельных состояний
Когда использовать диаграммы состояний
Где найти дополнительную информацию

Глава 9. Диаграммы деятельностей
Диаграммы деятельностей для вариантов использования
«Плавательные дорожки»
Декомпозиция деятельностей
Когда использовать диаграммы деятельностей
Где найти дополнительную информацию

Глава 10. Диаграммы размещения
Когда использовать диаграммы размещения

Глава 11. UML и программирование
Наблюдение пациента: модель предметной области
Наблюдение пациента: модель спецификации
Переход к кодированию

Приложение А

Приложение Б

Библиографический список

Предметно-именной указатель