Компонентная диаграмма описывает логические отношения между компонентами.
Диаграмма развертывания идет еще дальше, описывая физическую топологию оборудования системы и программное обеспечение, выполняемое на этой структуре.
Чертеж компонента также известен как чертеж конструкции, это модельная диаграмма, используемая для отображения отношений между компонентами и интерфейсами в системе. Чертеж компонента очень важен в моделировании систем, основанных на компонентах, и может помочь пользователям понять структуру системы.
Роль чертежа компонента:
1, позволяет тестировщикам и разработчикам системы получить общее представление обо всех физических частях системы;
2, описывает основные функции системы с точки зрения программной архитектуры;
3, облегчает членам проектной группы понимание структуры и функций системы;
4, способствует повторному использованию программного обеспечения.
Совместная работа в реальном времени с доступом по ссылке для мгновенной передачи данных
Автоматическое создание графики из текста с улучшением стиля
Встроенные темы с полной настройкой
Поддерживает иконки, изображения, метки, формулы LaTeX, блоки кода, ссылки, вложения
Экспорт: PNG, VISIO, PDF, SVG | Импорт: VISIO, Mermaid
Облачное хранение в реальном времени, синхронизация устройств, история версий и защита данных
Компонентная диаграмма описывает логические отношения между компонентами.
Диаграмма развертывания идет еще дальше, описывая физическую топологию оборудования системы и программное обеспечение, выполняемое на этой структуре.
Компонент: Компонент — это заменяемая физическая единица реализации с четко определенным интерфейсом, обычно представляющая собой реально существующий физический объект, обозначается прямоугольником с двумя маленькими прямоугольниками, выступающими слева.
Интерфейс: Предоставляемый интерфейс также называется экспортным интерфейсом, это совокупность услуг, предоставляемых компонентом, может быть представлен отношением реализации между интерфейсом и компонентом; Требуемый интерфейс также называется импортным интерфейсом, это интерфейс, которому следует компонент при запросе соответствующих услуг у других компонентов, представляется зависимостью.
Отношения: Между компонентами --> зависимость, если между классами двух компонентов существует обобщение или использование, можно добавить зависимость; Между компонентом и интерфейсом --> зависимость или реализация.
Простая компонентная диаграмма: Организует классы, работающие вместе, в компонент.
Вложенная компонентная диаграмма: Использует вложенные компонентные диаграммы для представления внутренней структуры компонента.
Компоненты соединяются через порты, а порты соединяются через соединители, но это обычно редко используется.
Существует три типа соединителей: прямой соединитель, интерфейсный соединитель, делегирующий соединитель.
1, Совместная разработка несколькими командами
2, Микросервисная или модульная архитектура
3, Система с четкими интерфейсными ограничениями
4, Компоненты, требующие отдельного развертывания (например, фронтенд, бэкенд, база данных)
1, Уделяйте внимание модульности и разобщенности, поскольку основная ценность компонентной диаграммы заключается в четком отображении слоев и зависимостей системы;
2, Используйте стандартные символы и обозначения интерфейсов, чтобы улучшить читаемость и согласованность диаграммы;
3, Используйте вместе с диаграммами классов/развертывания, чтобы предоставить полное представление о структуре, поведении и развертывании;
4, Избегайте превращения компонентной диаграммы в диаграмму классов, компонентная диаграмма выражает «структуру» системы, а не «детали реализации».
Диаграмма компонентов отвечает на вопрос 'кто делает, кто от кого зависит', а диаграмма классов отвечает на вопрос 'как делать'.
1. Класс представляет собой абстракцию сущности, а компонент - это абстракция физического элемента, существующего в компьютере.
2. Компоненты относятся к программным модулям, а не к логическим модулям, и по сравнению с классами они находятся на разных уровнях абстракции.
3. Класс может иметь операции и атрибуты напрямую, тогда как компонент имеет только операции, доступные через его интерфейс.
Компоненты классифицируются по ролям в системе на 3 типа:
1. Компоненты развертывания: необходимые компоненты для создания исполняемой системы.
Например, виртуальная машина Java, система управления базами данных, файлы EXE, файлы DLL.
2. Компоненты рабочих продуктов: промежуточные продукты процесса разработки, которые не участвуют напрямую в исполняемой системе.
Например, файлы исходного кода, файлы данных.
3. Исполняемые компоненты: компоненты, создаваемые во время выполнения.
Например, инстанцированные Servlets, объекты COM+, XML-документы.
Компонент и компонент: отношение зависимости
Компонент и интерфейс: отношение зависимости или реализации
Чтобы контролировать умеренную гранулярность компонентов, обычно можно установить функциональный модуль как компонент, не следует проектировать отдельный класс как компонент.
Перетащите 'интерфейс' из левой области символов в правую область работы, затем нажмите и удерживайте левую кнопку мыши на одном конце компонента, переместите к соответствующему интерфейсу и отпустите кнопку мыши, чтобы назначить интерфейс, который компонент должен реализовать.
Нет, простые компоненты могут не иметь явного интерфейса.
Предоставляемый интерфейс обозначается кругом и указывает на функции, которые компонент предоставляет внешним пользователям (может быть вызван).
Требуемый интерфейс обозначается полукругом и указывает на услуги, которые компонент требует от других компонентов.
Да. Между компонентами могут существовать отношения зависимости один ко многим, двусторонние зависимости или декуплирование через промежуточные компоненты, используя несколько пунктирных линий для обозначения нескольких зависимостей.