- •Лекция 1 Современные технологии объектно-ориентированного анализа и проектирования информационных систем
- •1.1 Методология объектно-ориентированного программирования
- •1.2 Методология объектно-ориентированного анализа и проектирования
- •1.3 Основные этапы развития языка uml
- •Лекция 2 Основные элементы языка uml
- •2.1 Общая характеристика моделей объектно-ориентированного анализа и проектирования
- •2.2 Пакеты в языке uml
- •2.3 Канонические диаграммы языка uml
- •2.4 Особенности графического изображения диаграмм языка uml
- •2.5 Рекомендации по графическому изображению диаграмм языка uml
- •Лекция 3 Элементы графической нотации диаграммы вариантов использования
- •3.1 Диаграмма вариантов использования как концептуальное представление бизнес-системы в процессе ее разработки.
- •3.2 Отношения на диаграмме вариантов использования
- •3.3 Дополнительные обозначения языка uml для бизнес-моделирования
- •Лекция 4 Спецификация требований и рекомендации по написанию эффективных вариантов использования
- •4.1 Формализация функциональных требований к системе с помощью диаграммы вариантов использования
- •4.2 Особенности спецификации функциональных требований на диаграмме вариантов использования
- •4.3 Рекомендации по разработке диаграмм вариантов использования
- •Лекция 5 Элементы графической нотации диаграммы классов
- •5.1 Класс
- •5.2 Имя класса
- •5.3 Атрибуты класса
- •5.4 Операции класса
- •5.5 Расширение языка uml для построения моделей программного обеспечения и бизнес-систем
- •5.6 Интерфейс
- •Лекция 6 Отношения и их графическое изображение на диаграмме классов
- •6.1 Отношение ассоциации
- •6.2 Отношение обобщения
- •6.3 Отношение агрегации
- •6.4 Отношение композиции
- •6.5 Рекомендации по построению диаграмм классов
- •Лекция 7 Элементы графической нотации диаграммы кооперации
- •7.1 Кооперация
- •7.2 Объекты и их графическое изображение
- •7.3 Связи на диаграмме кооперации
- •7.4 Сообщения и их графическое изображение
- •7.5 Рекомендации по построению диаграмм кооперации
- •Лекция 8 Элементы графической нотации диаграммы последовательности
- •8.1 Объекты и их изображение на диаграмме последовательности
- •8.2 Сообщения на диаграмме последовательности
- •8.3 Ветвление потока управления
- •8.4 Рекомендации по построению диаграмм последовательности
- •Лекция 9 Элементы графической нотации диаграммы состояний
- •9.1 Диаграмма состояний в контексте конечного автомата
- •9.2 Состояние и его графическое изображение
- •9.3 Переход и событие
- •Лекция 10 Моделирование параллельного поведения с помощью диаграмм состояний
- •10.1 Составное состояние и подсостояние
- •10.2 Исторические состояния
- •10.3 Сложные переходы и псевдосостояния
- •10.4 Рекомендации по построению диаграмм состояний
- •Лекция 11 Элементы графической нотации диаграммы деятельности
- •11.1 Диаграмма деятельности и особенности ее построения
- •11.2 Состояния деятельности и действия
- •11.3 Переходы на диаграмме деятельности
- •11.4 Дорожки
- •11.5 Объекты на диаграмме деятельности
- •Лекция 12 Элементы графической нотации диаграммы компонентов
- •12.1 Диаграмма компонентов и особенности ее построения
- •12.2 Компоненты
- •12.3 Интерфейсы
- •12.4 Зависимости между компонентами
- •12.5 Рекомендации по построению диаграммы компонентов
- •Лекция 13 Элементы графической нотации диаграммы развертывания
- •13.1 Диаграмма развертывания, особенности ее построения
- •13.2 Узел
- •13.3 Соединения и зависимости на диаграмме развертывания
- •13.4 Рекомендации по построению диаграммы развертывания
- •Лекция 14 Паттерны проектирования и их представление в нотации uml
- •14.1 Паттерны, их классификация
- •14.2 Паттерны проектирования в нотации языка uml
- •14.3 Паттерн Фасад и его обозначение в нотации языка uml
- •14.4 Паттерн Наблюдатель и его обозначение в нотации языка uml
- •Лекция 15 Обзор case-средств для построения диаграмм uml
- •15.10 Другие программы
- •Лекция 16 Учебный проект: "Разработка ис предприятия оптовой торговли лекарственными препаратами"
- •16.1 Порядок выполнения практического задания
- •16.2 Краткая информация о компании "мед"
- •16.3 Видение выполнения проекта и границы проекта
- •16.4 Отчет об обследовании
- •16.5 Существующий уровень автоматизации
- •16.6 Общие требования к информационной системе
- •16.7 Описание системы учета
- •16.8 Описание справочников
- •16.9 Организационная диаграмма
- •16.10 Описание состава автоматизируемых бизнес-процессов
- •16.11 Диаграмма прецедентов компании "мед"
- •16.12 Разработка моделей бизнес-процессов предприятия оптовой торговли лекарственными препаратами
- •Рекомендуемая литература
2.2 Пакеты в языке uml
Пакет (package) — общецелевой механизм для организации различных элементов модели в множество, реализующий системный принцип декомпозиции модели сложной системы и допускающий вложенность пакетов друг в друга.
Пакет – основной способ организации элементов модели в языке UML. Каждый пакет владеет всеми своими элементами, т.е. теми элементами, которые включены в него. Про соответствующие элементы пакета говорят, что они принадлежат пакету или входят в него. При этом каждый элемент может принадлежать только одному пакету. В свою очередь, однипакеты могут быть вложены в другие.
Подпакет (subpackage) — пакет, который является составной частью другого пакета.
По определению все элементы подпакета принадлежат и более общему пакету. Тем самым для элементов модели задается отношение вложенности пакетов, которое представляет собой иерархию.
Для графического изображения пакетов на диаграммах применяется специальный графический символ – большой прямоугольник с небольшим прямоугольником, присоединенным к левой части верхней стороны первого (рис. 2.2 а, б). Можно сказать, что визуально символ пакета напоминает пиктограмму папки в популярном графическом интерфейсе. Внутри большого прямоугольника может записываться информация, относящаяся к данному пакету. Если такой информации нет, то внутри большого прямоугольника записывается имя пакета, которое должно быть уникальным в пределах рассматриваемой модели (рис. 2.2, а). Если же такая информация имеется, то имя пакета записывается в верхнем маленьком прямоугольнике (рис. 2.2, б).
Рис. 2.2. Графическое изображение пакетов в языке UML
Перед именем пакета может помещаться строка текста, содержащая ключевое слово, заранее определенное в языке UML, и называемое стереотипом, например facade, framework, stub иtopLevel. В качестве содержимого пакета могут выступать имена его отдельных элементов и их свойства, такие как видимость элементов за пределами пакета. Более подробностереотипы и видимость элементов будут рассмотрены в последующих лекциях.
Одним из типов отношений между пакетами является отношение вложенности или включения пакетов друг в друга. В языке UML это отношение может быть изображено без использования линий простым размещением одного пакета -прямоугольника внутри другого пакета -прямоугольника (рис. 2.3). Так, в данном случае пакет с именем Пакет_1 содержит в себе дваподпакета: Пакет_2 и Пакет_3.
Рис. 2.3. Графическое изображение вложенности пакетов друг в друга
Кроме того, в языке UML это же отношение
может быть изображено с помощью отрезков
линий аналогично графическому
представлению дерева. В этом случае
наиболее общий
пакет
или контейнер изображается
в верхней части рисунка, а его
подпакеты
– уровнем ниже. Контейнер
соединяется с
подпакетами
сплошной линией, на конце
которой, примыкающей к контейнеру,
изображается специальный символ –
.
Он означает, что подпакеты "собственность"
или часть контейнера, и, кроме этих
подпакетов, контейнер не содержит
никаких других. Рассмотренный выше
пример (рис.2.3) может быть представлен
с помощью явной визуализации отношения
включения (рис. 2.4).
Рис. 2.4. Графическое изображение языка UML для вложенности пакетов друг в друга с помощью явной визуализации отношения включения
Модель является подклассом пакета и представляет собой абстракцию физической системы, которая предназначена для вполне определенной цели. Именно эта цель предопределяет те компоненты, которые должны быть включены в модель и те, рассмотрение которых не является обязательным. Другими словами, модель отражает релевантные аспекты физической системы, оказывающие непосредственное влияние на достижение поставленной цели. В прикладных задачах цель обычно задается в форме исходных требований к системе, которые, в свою очередь, в языке UML записываются в виде вариантов использования системы.
В языке UML для одной и той же физической системы могут быть определены различные модели, каждая из которых специфицирует систему с различных точек зрения. Примерами такихмоделей являются логическая модель, модель проектирования, модель вариантов использования и другие. При этом каждая такая модель имеет собственную точку зрения на физическую систему и свой уровень абстракции. Модели, как и пакеты, могут быть вложены друг в друга. Пакет может включать в себя несколько различных моделей одной и той же системы, и в этом состоит один из важнейших механизмов разработки моделей на языке UML. Общая модель системы в контексте языка UML содержит в себе модель анализа и модель проектирования, что явно отражает связь с ООАП (рис. 2.5).
Рис. 2.5. Изображение модели системы в виде пакетов моделей анализа и проектирования
Подсистема есть просто группировка элементов модели, которые специфицируют простейшее поведение физической системы. При этом элементы подсистемы делятся на две части – спецификацию поведения и его реализацию. Для графического представления подсистемы применяется специальное обозначение – прямоугольник, как в случае пакета, но дополнительно разделенный на три секции (рис.2.6). При этом в верхнем маленьком прямоугольнике изображается символ, по своей форме напоминающий "вилку" и указывающий на подсистему. Имя подсистемы вместе с необязательным ключевым словом или стереотипом записывается внутри большого прямоугольника. Однако при наличии строк текста внутри большого прямоугольника имя подсистемы может быть записано рядом с обозначением "вилки".
Рис. 2.6. Графическое изображение подсистемы в языке UML
Операции подсистемы записываются в левой верхней секции, ниже указываются элементы спецификации, а справа от вертикальной линии – элементы реализации. При этом два последних раздела помечаются соответствующими метками: "Элементы спецификации" и "Элементы реализации". Секция операций никак не помечается. Если в подсистеме отсутствуют те или иные секции, то они не отображаются на схеме.
