Слайд 2Уровни представления модели
Существует два уровня представления модели:
Логический уровень
Физический уровень
Элементы логического представления, такие
как классы, ассоциации, состояния, сообщения, не существуют материально или физически. Они лишь отражают наше понимание структуры физической системы и ее поведения.
Все рассмотренные ранее диаграммы отражали концептуальные аспекты построения модели системы и относились к логическому уровню представления.
Для создания конкретной физической системы необходимо некоторым образом реализовать все элементы логического представления в конкретные материальные сущности. Для описания таких реальных сущностей предназначен другой аспект модельного представления, а именно физическое представление модели.
Например, алгоритм программы – это ее логическое представление, а запись программы на языке программирования и исполняемый файл (exe-файл) программы – это физическое представление программы
Слайд 3Физический уровень
В языке UML для физического представления моделей систем используются диаграммы реализации
(implementation diagrams)
Существует два вида диаграмм реализации:
диаграмма компонентов (component diagram)
диаграмма развертывания (deployment diagram)
Слайд 4Диаграмма компонентов
Диаграмма компонентов (component diagram) описывает особенности физического представления системы.
Диаграмма компонентов
позволяет определить архитектуру разрабатываемой системы, установив зависимости между программными компонентами, в роли которых может выступать исходный, бинарный и исполняемый код.
Диаграмма компонентов разрабатывается для следующих целей:
Визуализации общей структуры исходного кода программной системы.
Спецификации исполнимого варианта программной системы.
Обеспечения многократного использования отдельных фрагментов программного кода.
Представления концептуальной и физической схем баз данных.
В разработке диаграмм компонентов участвуют как системные аналитики и архитекторы, так и программисты.
Диаграмма компонентов обеспечивает согласованный переход от логического представления к конкретной реализации проекта в форме программного кода.
Одни компоненты могут существовать только на этапе компиляции программного кода, другие - на этапе его исполнения.
Слайд 5Компонент
Компонент(component) служит для общего обозначения элементов физического представления модели.
Компонент реализует некоторый
набор интерфейсов.
Во многих средах разработки модуль или компонент соответствует файлу.
Графическое изображение
Слайд 6Стереотипы компонентов
В Microsoft Visio определены следующие стереотипы компонентов:
Document – текстовый документ
Executable -
исполняемый модуль (например, файл с расширением ехе)
File - файл с исходным текстом программы или с данными
Library - подключаемая библиотека (например, динамическая библиотека – файл с расширением dll)
Table – таблица базы данных
Слайд 7Интерфейсы
На диаграмме компонентов могут изображаться интерфейсы (interface).
Наличие интерфейсов у компонента означает, что
данный компонент реализует соответствующий набор интерфейсов
Слайд 8Зависимости
Между компонентами могут существовать отношения зависимости (dependency)
Зависимость указывает, что изменение одного компонента
оказывает влияние или приводит к изменению другого компонента.
Зависимости могут отражать:
связи модулей программы на этапе компиляции и генерации объектного кода
наличие в независимом компоненте описаний классов, которые используются в зависимом компоненте для создания соответствующих объектов.
зависимости могут связывать компоненты и импортируемые этим компонентом интерфейсы
использование одних компонентов другими компонентами
Слайд 9Интерфейсы и компоненты
Различают два способа связи интерфейса и компонента.
Если компонент реализует
некоторый интерфейс, то такой интерфейс называют экспортируемым, поскольку этот компонент предоставляет его в качестве сервиса другим компонентам.
Если компонент использует некоторый интерфейс, который реализуется другим компонентом, то такой интерфейс для первого компонента называется импортируемым.
Отношение между компонентом и импортируемым интерфейсом на диаграмме компонентов изображается с помощью зависимости
Слайд 10Пакеты
Компоненты могут быть объединены в пакеты
Главная диаграмма компонентов, как правило, является диаграммой
пакетов
Между пакетами существуют отношения зависимости
Пакет A зависит от пакета B, если некоторый компонент пакета A зависит от некоторого компонента пакета B
Слайд 11Система регистрации учебных курсов
Слайд 14Исполняемый модуль Преподаватель
Слайд 15Диаграмма развертывания
Диаграмма развертывания (deployment diagram) применяется для представления размещения программных компонентов по
узлам распределенной вычислительной системы.
Диаграмма развертывания содержит графические изображения физических узлов (процессоров, устройств, процессов)
Диаграмма развертывания показывает физические связи между всеми узлами реализации системы на этапе ее исполнения.
Диаграмма развертывания показывает распределение компонентов системы по ее физическим узлам.
Слайд 16Узел
Узел (node) представляет собой некоторый физический элемент системы, обладающий некоторым вычислительным ресурсом.
Узел - это отдельный компьютер, процессор или устройство, на котором могут быть развернуты компоненты.
В последней версии языка UML понятие узла расширено и может включать в себя не только вычислительные устройства (процессоры), но и другие механические или электронные устройства, такие как датчики, принтеры, модемы, цифровые камеры, сканеры и манипуляторы
При описании бизнес-процессов предприятия можно в качестве узлов системы рассматривать организационные подразделения, состоящие из персонала, или отдельных служащих предприятия.
Графическое изображение узла
Слайд 17Атрибуты узла
Атрибуты (attributes) используются для описания характеристик узла
Слайд 18Компоненты узла
Это компоненты, которые выполняются на данном узле.
Слайд 19Связи между узлами и компонентами
Связь между узлом и компонентами, которые выполняются на
узле, может быть показана с помощью зависимости
Слайд 20Изображение компонентов узла
Узлы можно изображать с вложенными в них компонентами
Слайд 21Связи между узлами
Связи между узлами показываются с помощью отношения ассоциации (communicates в
Visio)
Связь означает передачу информации между узлами по некоторому физическому каналу