Файл: Практикум по промышленному.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 16.03.2024

Просмотров: 102

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Теоретические сведения

Способы применения UML

Диаграммы UML

Диаграмма классов (Class diagram) Диаграмма классов описывает типы объектов системы и различного рода статические отношения, которые существуют между ними. На диаграммах классов отображаются также свойства классов, операции классов и ограничения, которые накладываются на связи между объектами.Описаниеклассаможет включать множество различных элементов, и чтобы они не путались, в языке предусмотрено группирование элементов описания класса по секциям. Стандартных секций три: секция имени — наряду с обязательным именем может содержать также стереотип, кратность и список именованных значений; секция свойств — содержит список описаний свойств класса; секция операций — содержит список описаний операций класса. Как и все основные сущности UML, класс обязательно имеет имя, а стало быть, секция имени не может быть опущена. Прочие секции могут быть пустыми или отсутствовать вовсе.Класс изображается прямоугольником. Если секций более одной, то внутренность прямоугольника делится горизонтальными линиями на части, соответствующие секциям.На рис. 2 изображена упрощенная диаграмма классов системы, занимающейся обработкой заказов клиентов. Прямоугольники на диаграмме представляют классы и разделены на три части: имя класса (жирный шрифт), его атрибуты и его операции. На рис. 2 также показаны два вида связей между классами: ассоциации и обобщения.Свойства Свойства представляют структурную функциональность класса. В первом приближении можно рассматривать свойства как поля класса. Свойства представляют единое понятие, воплощающееся в двух совершенно различных сущностях: в атрибутах и в ассоциациях. Хотя на диаграмме они выглядят совершенно по­разному, в действительности это одно и то же.Атрибуты Атрибут описывает свойство в виде строки текста внутри прямоугольника класса. Полная форма атрибута:видимость имя: тип кратность = значение по умолчанию {строка свойств} Например: имя: String [1] = "Без имени" {readOnly} Обязательно только имя. Метка видимости обозначает, относится ли атрибут к открытым (обозначается значком +) (public), закрытым (­) (private), защищенным (#) (protected), пакетным () (package);

Диаграмма последовательности (Sequence diagram)

Практическая часть

Инструментарий

Начало работы

Создание первого проекта

Пример создания UML-диаграмм архитектуры проекта с помощью PlantUML

Задания для самостоятельной работы

Вариант №1, 16

Вариант №2, 17

Вариант №3, 18

Вариант №4, 19

Вариант №5, 20

Вариант №6, 21

Вариант №7, 22

Вариант №8, 23

Вариант №9, 24

Вариант №10, 25

Вариант №11, 26

Вариант №12, 27

Вариант №13, 28

Вариант №14, 29

Вариант №15, 30

Литература, ссылки

не было найдено никакого подходящего элемента, то никакого элемента не было удалено, и клиенту возвращается значение false.

@startuml

LibraryClient ­> Library : deleteEntity(id : long) loop all elements in list

Library ­> LibraryEntityList : getEntity LibraryEntityList ­> Library : anEntity alt anEntity.id == id

Library ­> LibraryEntityList : deleteFromList(entity : LibraryEntity) Library ­> LibraryClient : true

end

end

Library ­> LibraryClient : false @enduml



Коррекция диаграммы классов


После создания диаграмм последовательностей, стало ясно, что диаграмма классов нуждается в доработке: появился класс LibraryClient, который связан отношением зависимости с классом Library.

Изменились возвращаемые значения в операциях поиска в классе Library.

@startuml

skinparam classAttributeIconSize 0
interface LibraryEntity {

+getID() : long

+getName() : String

}
abstract class AbstractBook {

­ID : long

­name : String

}
class Book {

­ISBN : String

­author : String [1..*]

­year : int

}
class Magazine {

­datePublication: LocalDate

­publisher : String

}

note right: LocalDate is from DateTime API in Java 8
class Library {

­numberOfEntities : long

­name : String

+findEntityByName(name : String) : ResultEntityList

+findEntityByID(id : long) : ResultEntityList

+addNewEntity(entity : LibraryEntity) : boolean

+deleteEntity(id : long) : boolean

}
class LibraryClient
LibraryEntity "0..*" <­­> "1" Library
LibraryEntity <|.. AbstractBook AbstractBook <|­­ Book AbstractBook <|­­ Magazine
LibraryClient ..> Library @enduml



Задания для самостоятельной работы


В каждом варианте необходимо разработать начальную архитектуру проекта. Архитектура должна быть представлена в виде диаграммы классов и двух диаграмм последовательности, представляющих наиболее сложные к пониманию взаимодействия составляющих проект сущностей.

Вариант №1, 16


Проект “Управление магазином сладостей”.

Вариант №2, 17


Проект “Расписание железнодорожной станции”.

Вариант №3, 18


Проект “Рисование геометрических фигур”.

Вариант №4, 19


Проект “Редактирование видеофайлов”.

Вариант №5, 20


Проект “Электронная зачетная книжка”.

Вариант №6, 21


Проект “Хранитель паролей”.

Вариант №7, 22


Проект “Расчет скидок” для магазина электронной техники.

Вариант №8, 23


Проект “Управление установленными приложениями”.

Вариант №9, 24


Проект “Модель Солнечной системы”.

Вариант №10, 25


Проект “Магазин электронных книг”.

Вариант №11, 26


Проект “Расписание школьных уроков”.

Вариант №12, 27


Проект “Электронный школьный дневник”.

Вариант №13, 28


Проект “Текстовый редактор”.

Вариант №14, 29


Проект “Справочник болезней”.

Вариант №15, 30


Проект “Управление закладками”.

Литература, ссылки


  1. Фаулер M. UML. Основы, издание. Пер. с англ. СПб: СимволПлюс, 2004. 192 с., ил.

  2. Иванов Д. Ю., Новиков Ф. А. Основы моделирования на UML: Учеб. пособие. СПб.: Изд­во Политехн. ун­та, 2010. 249с.

  3. https://ru.wikipedia.org/wiki/UML

  4. https://ru.wikipedia.org/wiki/%C4%E8%E0%E3%F0%E0%EC%EC%E0_%EA%EB%E0%F1%F1% EE%E2

  5. https://ru.wikipedia.org/wiki/IntelliJ_IDEA

  6. http://blog.gelin.ru/2014/02/plantuml.html

  7. http://plantuml.sourceforge.net/PlantUML_Language_Reference_Guide.pdf



­­