Please enable JavaScript.
Coggle requires JavaScript to display documents.
Унифицированный язык моделирования UML - Coggle Diagram
Унифицированный язык моделирования UML
Модель — упрощенное представление реальности. С точки зрения программирования модель — это чертеж системы.
Моделирование необходимо для решения следующих задач:
документирования принимаемых решений, используя полученные модели
получения шаблона, позволяющего затем сконструировать систему
определения ее структуры и поведения
визуализации системы
Спецификация разрабатываемого программного обеспечения при использовании UML объединяет несколько моделей:
Модель использования представляет собой описание функциональности программного обеспечения с точки зрения пользователя.
Модель реализации определяет реальную организацию программных модулей в среде разработки.
Логическая модель описывает ключевые абстракции программного обеспечения (классы, интерфейсы и т. п.), т. е. средства, обеспечивающие требуемую функциональность.
Модель процессов отображает организацию вычислений и оперирует понятиями «процессы» и «нити».
Модель развертывания показывает особенности размещения программных компонентов на конкретном оборудовании.
Всего UML предлагает девять дополняющих друг друга диаграмм, входящих в различные модели:
диаграммы последовательностей действий
диаграммы кооперации
диаграммы пакетов
диаграммы деятельностей
диаграммы классов
диаграммы состояний объектов
диаграммы вариантов использования
диаграммы компонентов
диаграммы размещения
Структура языка:
Сущности
Структурные сущности – это имена существительные в моделях на языке UML.
Кооперация (Collaboration) определяет взаимодействие; она представляет собой совокупность ролей и других элементов, которые, работая совместно, производят некоторый кооперативный эффект, не сводящийся к простой сумме слагаемых.
Прецедент (Use case) – это описание последовательности выполняемых системой действий, которая производит наблюдаемый результат, значимый для какого-то определенного актера (Actor).
Интерфейс (Interface) – это совокупность операций, которые определяют сервис (набор услуг), предоставляемый классом или компонентом.
Компонент (Component) – это физическая заменяемая часть системы, которая соответствует некоторому набору интерфейсов и обеспечивает его реализацию.
Класс (Class) – это описание совокупности объектов с общими атрибутами, операциями, отношениями и семантикой.
Группирующие сущности являются организующими частями модели UML. Это блоки, на которые можно разложить модель.
Пакеты (Packages) представляют собой универсальный механизм организации элементов в группы. В пакет можно поместить структурные, поведенческие и даже другие группирующие сущности.
Аннотационные сущности – пояснительные части модели UML. Это комментарии для дополнительного описания, разъяснения или замечания к любому элементу модели.
Поведенческие сущности (Behavioral things) являются динамическими составляющими модели UML.
Автомат (State machine) – это алгоритм поведения, определяющий последовательность состояний, через которые объект или взаимодействие проходят на протяжении своего жизненного цикла в ответ на различные события, а также реакции на эти события.
Взаимодействие (Interaction) – это поведение, суть которого заключается в обмене сообщениями(Messages) между объектами в рамках конкретного контекста для достижения определенной цели.
Отношения
Ассоциация (Association) – структурное отношение, описывающее совокупность связей; связь – это соединение между объектами.
Обобщение (Generalization) – это отношение «специализация/обобщение», при котором объект специализированного элемента (потомок) может быть подставлен вместо объекта обобщенного элемента (родителя или предка).
Зависимость (Dependency) – это семантическое отношение между двумя сущностями, при котором изменение одной из них, независимой, может повлиять на семантику другой, зависимой.
Реализация (Realization) – это семантическое отношение между классификаторами, при
котором один классификатор определяет «контракт», а другой гарантирует его выполнение.