Диаграммы
Диаграмма (Diagram) - это графическое представление множества элементов. Чаще всего она изображается в виде связного графа с вершинами (сущностями) и ребрами (отношениями). Диаграмма являет собой некоторую проекцию системы. В UML определено девять видов диаграмм:
1) диаграмма классов (Class diagram) - структурная диаграмма, на которой показано множество классов, интерфейсов, коопераций и отношения между ними. Класс — это категория или группа вещей, которая имеет сходные атрибуты и общие свойства. В UML класс представляется прямоугольником, разделенным на три области. Самая верхняя область содержит имя, в средней располагаются атрибуты, а в самой нижней — операции. Диаграмма классов состоит из определенного количества таких прямоугольников, соединенных линиями, которые показывают, как классы связаны между собой;
2) диаграмма объектов (Object diagram) - структурная диаграмма, на которой показано множество объектов и отношения между ними. Объект представляет собой экземпляр класса – особую сущность, которая имеет заданные значения атрибутов и операций. Объект изображается прямоугольником, как в случае представления класса, но его имя подчеркнуто. Наименование экземпляра размещено слева от двоеточия, а наименование класса — с правой стороны;
3) диаграмма прецедентов (Use case diagram) - диаграмма поведения, на которой показано множество прецедентов и актеров, а также отношения между ними. Прецедент – это описание поведения системы с точки зрения пользователя. Для разработчиков системы это полезный инструмент, предоставляющий надежную методику формирования требований к системе с точки зрения пользователя. Это важно, если целью работы является создание системы, которую смогут использовать обычные люди, а не только компьютерные фанаты. Небольшая простая фигурка называется исполнителем (actor). Эллипс представляет прецедент. Отметим, что исполнитель, инициирующий прецедент, может быть как человеком, так и другой системой;
4) диаграмма последовательностей (Sequence diagram) - диаграмма поведения, на которой показано взаимодействие и подчеркнута временная последовательность событий. Диаграммы классов и диаграммы объектов дают статическую информацию. Однако во время работы системы объекты взаимодействуют друг с другом, и это взаимодействие происходит во времени. Диаграмма последовательностей UML показывает временную динамику взаимодействия;
5) диаграмма кооперации (Collaboration diagram) - диаграмма поведения, на которой показано взаимодействие и подчеркнута структурная организация объектов, посылающих и принимающих сообщения (элементы системы работают совместно для достижения общих целей системы, и язык моделирования должен иметь возможность показать это);
6) диаграмма состояний (Statechart diagram) - диаграмма поведения, на которой показан автомат и подчеркнуто поведение объектов с точки зрения порядка получения событий. В каждый момент времени объект находится в каком-либо определенном состоянии. Диаграмма состояний UML отображает эту сторону реальности. Диаграмма показывает, как объект переходит из одного состояния в другое. Символ вверху диаграммы представляет начальное состояние, а символ внизу соответствует конечному;
7) диаграмма деятельности (Activity diagram) - диаграмма поведения, на которой показан автомат и подчеркнуты переходы потока управления от одной деятельности к другой. Действия, которые совершаются при выполнении прецедента или во время функционирования объекта, обычно происходят последовательно;
8) диаграмма компонентов (Component diagram) - диаграмма поведения, на которой показан автомат и подчеркнуто поведение объектов с точки зрения порядка получения событий. Эта и следующая за ней диаграммы предназначены только для компьютерных систем. Проектирование современного программного обеспечения происходит путем разработки компонентов, что очень важно при организации совместных работ коллектива программистов;
9) диаграмма развертывания (Deployment diagram) - структурная диаграмма, на которой показаны узлы и отношения между ними. Диаграмма развертывания UML показывает физическую архитектуру компьютерной системы. Она представляет компьютеры и устройства, их соединения между собой, а также программное обеспечение, размешенное на каждой машине. Компьютеры изображаются в виде куба, а соединения между ними — в виде линий.
Рис. 28.Представление класса в UML
Рис. 29.Представление объекта в UML
Рис. 30.Пример диаграммы прецедентов
Рис. 31.Пример диаграммы кооперации
Рис. 32.Пример диаграммы состояний
Рис. 33.Пример диаграммы деятельности
Рис. 34.Представление компонента в UML
Рис. 35.Пример диаграммы развёртывания