UML 2 представляет наибольшие изменения, произошедшие в языке. В этой версии изменилось все, и многие изменения коснулись книги «UML. Основы».
Глубокие изменения произошли в метамодели языка UML. И хотя эти изменения не повлияли на книгу, они очень важны для определенных групп специалистов.
Одним из наиболее очевидных изменений стало введение новых типов диаграмм. Диаграммы объектов и диаграммы пакетов широко использовались и прежде, но не были официальными типами диаграмм; теперь это так. В UML 2 диаграммы кооперации теперь называются коммуникационными диаграммами. Кроме того, появились новые виды диаграмм: диаграммы обзора взаимодействия, временные диаграммы и диаграммы составных структур.
Значительное количество изменений не отражено в книге. Я не включил в обсуждение такие конструкции, как расширения конечных автоматов, шлюзы в диаграммах взаимодействия и типы мощности в диаграммах классов.
Поэтому в данном разделе рассказывается только об изменениях, вошедших в книгу «UML. Основы*. Это либо изменения, о которых я рассказывал в предыдущих изданиях, либо новые, которые рассматриваются в этой книге. Поскольку изменения столь обширные, я расположил их в соответствии с организацией глав данного издания.
|
|
Диаграммы классов: основы (глава 3)
Атрибуты и ненаправленные ассоциации теперь представляют просто различные обозначения одного и того же базового понятия свойства. Дискретные кратности, такие как [2, 4], были исключены. Свойство frozen (замороженный) также было исключено. Я добавил перечень ключевых слов для обозначения общей зависимости, некоторые из которых появились только в UML2. Ключевые слова «parameter» (параметр) и «local» (локальный) были выброшены.
Диаграммы последовательности (глава 4)
Значительно изменилась нотация фреймов взаимодействия, позволяя реализовывать различные сценарии управления поведением системы,
такие как итеративный, условный и другие. Теперь с помощью диаграммы последовательности можно довольно полно описать алгоритмы, хотя я не уверен, что программный код менее понятен. Применяемые ранее маркеры итерации и защиты в сообщениях были исключены из диаграммы последовательности. Заголовки линий жизни больше не представляют экземпляры классов; я называю их участниками (participants). Диаграммы, которые назывались в UML 1 диаграммами кооперации, в UML 2 называются коммуникационными диаграммами.