Проектирование информационных систем и баз данных реального времени
План лекции
Диаграммы классов. Класс
Диаграммы классов. Операции
Диаграммы классов. Операции
Спасибо за внимание!
1.31M
Категория: ПрограммированиеПрограммирование

Лекция 8_Проект_ИСиБД РВ

1. Проектирование информационных систем и баз данных реального времени

Центр дистанционного обучения
Проектирование
информационных систем
и баз данных реального
времени
ФИО преподавателя: Володина Анна Михайловна
e-mail: volodina@mirea.ru
Online-edu.mirea.ru
online.mirea.ru

2. План лекции

Центр дистанционного обучения
План лекции
• Унифицированный язык моделирования UML
• Диаграммы классов
online.mirea.ru

3.

Центр дистанционного обучения
Диаграммы классов
Диаграмма классов для варианта использования «Снять деньги со счета»
Диаграмма классов UML - это граф,
узлами которого являются элементы
статической структуры проекта
(классы, интерфейсы), а дугами отношения между узлами
(ассоциации, наследование,
зависимости).
online.mirea.ru

4. Диаграммы классов. Класс

Центр дистанционного обучения
Диаграммы классов. Класс
Класс - это группа сущностей (объектов), обладающих сходными
свойствами, а именно, данными и поведением. Отдельный представитель
некоторого класса называется объектом класса или просто объектом.
Под поведением объекта в UML понимаются любые правила
взаимодействия объекта с внешним миром и с данными самого объекта.
online.mirea.ru

5.

Центр дистанционного обучения
Диаграммы классов.
Стереотипы классов
Диаграмма классов (class diagrams) определяет типы объектов системы и статические связи между ними.
Стереотипы классов
Граничные классы (boundary classes) - расположены на границе системы и окружающей среды. Они
включают все формы, отчеты, интерфейсы с аппаратурой и интерфейсы с другими системами.
Классы-сущности (entity classes) - отражают основные понятия (абстракции) предметной области и
содержат хранимую информацию.
Управляющие классы (control classes) отвечают за координацию действий других классов. Обычно у
каждого варианта использования имеется один управляющий класс, контролирующий последовательность
событий этого варианта использования.
online.mirea.ru

6.

Центр дистанционного обучения
Диаграммы классов. Стереотипы классов
Управляющий класс отвечает за
координацию, но сам не несет в
себе никакой функциональности,
так как остальные классы не
посылают ему большого
количества сообщений. Вместо
этого он сам посылает множество
сообщений.
Обычно для каждого
класса-сущности
создают таблицу в
базе данных.
Это экранные формы, отчеты,
интерфейсы с аппаратурой
(такой как принтеры или
сканеры) и интерфейсы с
другими системами.
online.mirea.ru

7.

Центр дистанционного обучения
Диаграммы классов. Атрибуты
Атрибуты
Атрибут - элемент информации, связанный с классом.
Employee
-Еmрlоуее ID : integer = 0
#SSN : String
#Salary : float
+Address : Stгing
+City : String
+State : String
+Zip Соdе : long
+Departament : String
+Hire()
+Fire()
+Promote()
+Demote()
+Transfer()
У атрибута можно определить параметры:
Public (общий, открытый) - атрибуту
предшествует знак « + ».
Private (закрытый, секретный) - атрибут
обозначается знаком « – ».
Protected (защищенный) - для защищенного
атрибута – это знак « # ».
Package or Implementation (пакетный) - не
обозначается никак.
online.mirea.ru

8.

Центр дистанционного обучения
Диаграммы классов. Атрибуты
Видимость атрибута (attribute visibility) – свойство, указывающее, какие классы имеют право читать и
изменять атрибуты.
Public (общий, открытый) - атрибут будет виден всеми остальными классами. Любой класс может
просмотреть или изменить значение атрибута. В соответствии с нотацией UML обозначается знаком «+».
Private (закрытый, секретный) - атрибут не виден никаким другим классам. В соответствии с нотацией
UML обозначается знаком «-».
Protected (защищенный) - атрибут доступен только самому классу и его потомкам. В соответствии с
нотацией UML обозначается знаком «#».
Package or Implemeпtation (пакетный) - атрибут является общим, но только в пределах его пакета. Этот тип
видимости не обозначается никаким специальным значком.
online.mirea.ru

9. Диаграммы классов. Операции

Центр дистанционного обучения
Диаграммы классов. Операции
Операция включает три части – имя, параметры и тип возвращаемого
значения.
Параметры – это аргументы, получаемые операцией «на входе». Тип
возвращаемого значения относится к результату действия операции.
В языке UML операции имеют следующую нотацию:
Имя Операции (аргумент: тип данных аргумента, аргумент2:тип данных
аргумента2,...): тип возвращаемого значения
online.mirea.ru

10. Диаграммы классов. Операции

Центр дистанционного обучения
Диаграммы классов. Операции
Типа операций:
Операции реализации - реализуют некоторые бизнес-функции. ;
Операции управления - управляют созданием и уничтожением
объектов;
Операции доступа - осуществляет контролируемый доступ к атрибутам;
Вспомогательные операции - операции класса, которые необходимы
ему для выполнения его ответственностей, но о которых другие классы
не должны ничего знать. Это закрытые и защищенные операции класса.
online.mirea.ru

11.

Центр дистанционного обучения
Диаграммы классов. Операции
Операции
Операция включает - имя, параметры и тип возвращаемого значения.
Параметры - аргументы, получаемые операцией «на входе».
Тип возвращаемого значения относится к результату действия операции.
В языке UML операции имеют нотацию:
Имя Операции (аргумент1: тип данных аргумента1, аргумент2: тип данных аргумента2, ...): тип
возвращаемого значения
Типы операций
Операции реализации (implementor operations) реализуют некоторые бизнес-функции.
Операции управления (manager operations) управляют созданием и уничтожением объектов.
Операции Доступа (access operations) - для просмотра или изменения значения атрибутов других классов
Вспомогательные операции (helper operations) - закрытые и защищенные операции класса, необходимые
ему для выполнения его ответственностей, но о которых другие классы не должны ничего знать.
online.mirea.ru

12.

Центр дистанционного обучения
Диаграммы классов. Связь
Связь - семантическая взаимосвязь между классами; дает классу
возможность узнавать об атрибутах, операциях и связях другого класса.
Связь представляет собой семантическую взаимосвязь между классами.
Она дает классу возможность узнавать об атрибутах, операциях и связях
другого класса.
Существуют четыре типа связей, которые могут быть установлены между
классами:
Ассоциации
Зависимости
Агрегации
Обобщения
online.mirea.ru

13.

Центр дистанционного обучения
Диаграммы классов. Связь Ассоциации
Ассоциация (association) – это семантическая связь между классами. Их рисуют на
диаграмме классов в виде обыкновенной линии.
Однонаправленные - если все сообщения отправляются только одним классом и
принимаются только другим классом.
Двунаправленные – если хотя бы одно сообщение отправляется в обратную сторону.
Рефлексивные - предполагается, что один экземпляр класса взаимодействует с
другими экземплярами этого же класса.
NewClass
NewClass2
online.mirea.ru

14.

Центр дистанционного обучения
Диаграммы классов. Связь Зависимости
Отражают однонаправленную связь между классами, всегда показывают, что один
класс зависит от определений, сделанных в другом. Изображаются (в нотации UML) в
виде пунктирной стрелки.
NewClass
NewClass2
online.mirea.ru

15.

Центр дистанционного обучения
Диаграммы классов. Связь Агрегации
Отражают связь между целым и его частью (более тесная форма ассоциации).
Визуализируют в виде линии с ромбиком у класса, являющегося целым.
online.mirea.ru

16.

Центр дистанционного обучения
Диаграммы классов. Связь Обобщения
(Наследование)
Отношение типа общее-частное между элементами модели. С помощью обобщений
(generalization) показывают связи наследования между двумя классами.
online.mirea.ru

17.

Центр дистанционного обучения
Диаграммы классов. Множественность
Множественность (multiplicity) показывает, сколько экземпляров одного класса
взаимодействуют с помощью этой связи с одним экземпляром другого класса в данный
момент времени.
Нотации для обозначения множественности
Множественность
Значение
0..4
*
Много
0
Нуль
1
Один
0..*
Нуль или больше
1..*
Один или больше
0..1
Нуль или один
online.mirea.ru
1..1
Ровно
один

18.

Центр дистанционного обучения
Диаграммы классов
Имена связей
Имя связи
Company
Рисунок 9.14.
Роли
Реrsоn
Employs
Имя связи
Ролевые имена
Соmрanу
+Еmрloуег
+Еmрlоуее
Person
online.mirea.ru

19.

Центр дистанционного обучения
Диаграммы классов
Механизм пакетов - пакет - это вместилище для некоторого набора классов и других
пакетов.
Подходы к группировке:
По стереотипу - получается один пакет с классами-сущностями, один с граничными классами, один с
управляющими классами и т.д. Подход полезен с т.з. размещения готовой системы, поскольку все
находящиеся на клиентских машинах компоненты с граничными классами оказываются в одном пакете.
По функциональности - например, пакет Security (безопасность) содержит все классы, отвечающие за
безопасность приложения. Другие пакеты: Еmрlоуее Maintenance (Работа с сотрудниками), Reporting
(Подготовка отчетов) и Error Handling (Обработка ошибок).
online.mirea.ru

20. Спасибо за внимание!

Центр дистанционного обучения
Спасибо за внимание!
online.mirea.ru
English     Русский Правила