Слайд 2
![Стереотипы классов При моделировании программного обеспечения могут использоваться различные стереотипы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-1.jpg)
Стереотипы классов
При моделировании программного обеспечения могут использоваться различные стереотипы классов.
Использование стереотипов
позволяет расширить элементы модели UML, в данном случае классы.
Существуют три стереотипа классов:
entity - класс, используемый для моделирования объектов реального мира;
boundary - класс, используемый в качестве посредника между актерами, взаимодействующими с системой, и самой системой;
control - класс, реализующий поведение некоторого варианта использования.
Слайд 3
![Классы-сущности Класс-сущность (entity class) используется для моделирования данных и поведения](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-2.jpg)
Классы-сущности
Класс-сущность (entity class) используется для моделирования данных и поведения с длинным
жизненным циклом.
Данный тип классов может представлять сущности реального мира или внутренние элементы системы.
Такие классы обычно не зависят от окружения, то есть они не чувствительны к взаимодействию окружающей среды с системой.
Они не зависят от приложения и могут использоваться в различных приложениях.
Их часто называют классами предметной области, потому что они представляют собой абстракции предметов реального мира.
Слайд 4
![Классы-сущности В университете по каждому из предметов может читаться несколько](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-3.jpg)
Классы-сущности
В университете по каждому из предметов может читаться несколько курсов лекций.
Курс
лекций – это учебный курс.
Например, по предмету Математика могут читаться несколько курсов: (Математика, раздел 1), (Математика, раздел 2).
Между этими классами существует отношение агрегации.
Слайд 5
![Классы-сущности Учебные курсы читают преподаватели. Преподаватель связан с учебным курсом отношением ассоциации. Преподаватель играет роль учителя.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-4.jpg)
Классы-сущности
Учебные курсы читают преподаватели.
Преподаватель связан с учебным курсом отношением ассоциации.
Преподаватель играет
роль учителя.
Слайд 6
![Рефлексивные отношения Ассоциация или агрегация называется рефлексивной или возвратной (reflexive),](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-5.jpg)
Рефлексивные отношения
Ассоциация или агрегация называется рефлексивной или возвратной (reflexive), если она
связывает класс с самим собой.
Прежде чем прослушать некоторый курс студент должен прослушать один или несколько вводных курсов по другим предметам.
Например, курсу по предмету “Технологии программирования” предшествуют курсы по предметам “Информатика” и “Программирование”.
Слайд 7
![Граничные классы Граничные классы (boundary class) обеспечивают взаимодействие между окружающей](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-6.jpg)
Граничные классы
Граничные классы (boundary class) обеспечивают взаимодействие между окружающей средой и
внутренними элементами системы.
Такие классы предоставляют интерфейс для пользователя или другой системы (то есть для актера). Они составляют внешне зависимую часть системы и используются для моделирования интерфейсов системы.
Для обнаружения граничных классов изучают пары актер/сценарий. Такие классы, определенные на начальном этапе моделирования, обычно являются классами верхнего уровня. Например, можно смоделировать окно, но не моделировать его диалоговые элементы и кнопки.
На этапе проектирования такие классы совершенствуются и выносятся на обсуждение вопросов реализации пользовательского интерфейса.
Слайд 8
![Граничные классы для преподавателя Реализация варианта использования «Выбор курсов для](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-7.jpg)
Граничные классы для преподавателя
Реализация варианта использования «Выбор курсов для преподавания»
представляет собой несколько интерфейсов (диалоговых окон на экране).
Преподаватель вводит пароль для входа в систему в специальном окне.
На экране появляется окно Параметры курса преподавателя.
В окне имеется ряд кнопок, используя которые можно выполнить ряд операций:
Проверить пароль,
Добавить курс,
Удалить курс,
Просмотр расписания,
Печать расписания.
Для реализации каждой из операций предусмотрено свое диалоговое окно, которое реализуется с помощью граничного класса.
Слайд 9
![Граничные классы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-8.jpg)
Слайд 10
![Добавить курс Операция Добавить курс подразумевает добавление преподавателя к учебному](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-9.jpg)
Добавить курс
Операция Добавить курс подразумевает добавление преподавателя к учебному курсу в
качестве учителя.
Данный сценарий требует отдельного окна для ввода преподавателем необходимой информации.
Окно содержит следующие элементы:
поле ввода Название предмета;
поле ввода Номер предмета;
список Учебные курсы;
кнопку ОК;
кнопку Отмена;
кнопку Выход.
После того как преподаватель ввел название и номер предмета, система получит и отобразит список учебных курсов. Затем преподаватель может выбрать учебный курс. По кнопке ОК учебный курс закрепляется за преподавателем.
Слайд 11
![Добавить курс](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-10.jpg)
Слайд 12
![Управляющие классы Управляющие классы (control class) служат для моделирования последовательного](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-11.jpg)
Управляющие классы
Управляющие классы (control class) служат для моделирования последовательного поведения одного
или нескольких вариантов использования и координации событий, реализующих заложенное в них поведение.
Управляющие классы можно представить как классы, «исполняющие» вариант использования и определяющие его динамику. Они обычно зависят от приложения.
На ранней стадии проработки управляющие классы добавляются для каждой пары актер/вариант использования.
Управляющие классы определяют поток событий в вариантах использования.
Вопрос использования управляющих классов очень субъективный. Многие авторы утверждают, что их применение приводит к отделению данных от поведения. Это может случиться, если управляющие классы выбраны неаккуратно. Если управляющий класс реализует что-то большее, чем последовательное действие, то он делает слишком много.
Управляющий класс для каждой пары актер/вариант использования создается на начальном этапе. При дальнейшем анализе и проектировании управляющие классы могут исключаться, разделяться или объединяться.
Слайд 13
![Управляющий класс Управляющий класс «Менеджер курсов преподавателя» служит для обработки](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-12.jpg)
Управляющий класс
Управляющий класс «Менеджер курсов преподавателя» служит для обработки потока событий
варианта использования «Выбор курсов для преподавания».
Слайд 14
![Добавить курс](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-13.jpg)
Слайд 15
![Главная диаграмма Главная диаграмма классов обычно представляет собой диаграмму пакетов.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-14.jpg)
Главная диаграмма
Главная диаграмма классов обычно представляет собой диаграмму пакетов.
В UML Designer
- это диаграмма Package Hierarchy.
Каждый пакет со своими классами рисуется на диаграмме классов.
Слайд 16
![Пакет "Интерфейсы"](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-15.jpg)
Слайд 17
![Пакет "Объекты университета"](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-16.jpg)
Пакет "Объекты университета"
Слайд 18
![Пакет "Сведения о людях"](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-17.jpg)
Слайд 19
![Атрибуты классов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-18.jpg)
Слайд 20
![Операции и атрибуты классов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-19.jpg)
Операции и атрибуты классов
Слайд 21
![Пример ассоциативного класса Студент посещает курсы лекций (в количестве от](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/323073/slide-20.jpg)
Пример ассоциативного класса
Студент посещает курсы лекций (в количестве от 0 до
4).
Каждый курс посещают студенты (в количестве от 3 до 10).
По итогам курса студенту выставляется оценка.
Студенту выдается отчет о прослушанных курсах с указанием полученных оценок.
Ассоциативный класс может иметь отношения с другими классам, как обычный класс.