Предметом курса является описание нотации языка UML версии 2 и его использование в процессе объектно-ориентированного анализа, проектирования и разработки программных приложений. Представлены определения всех базовых конструкций языка UML 2, нотация и семантика графических элементов, используемых при построении визуальных моделей программных и информационных систем. Последовательно рассматриваются все типы канонических диаграмм языка UML 2, приводятся примеры их построения. Даются рекомендации по применению рассматриваемых конструкций языка UML 2 для построения UML-моделей.
Курс ориентирован на начинающих и более опытных системных аналитиков и архитекторов программных систем, корпоративных программистов, бизнес-аналитиков и менеджеров проектов разработки программных и информационных систем, ставящих перед собою цели получения или повышения квалификации в области современных технологий разработки программных проектов и моделей бизнес-систем. Для иллюстрации материала используются диаграммы визуального моделирования и фрагменты реализации отдельных проектов разработки программных систем. Для спецификации и визуализации различных представлений моделей используются канонические диаграммы языка UML 2. Курс посвящен изучению основ нотации и семантики последней версии Унифицированного языка моделирования или, сокращенно, UML 2, который предназначен для описания, визуализации и документирования объектно-ориентированных систем и бизнес-процессов с ориентацией на их последующую реализацию в виде программного обеспечения. Изучение материала курса направлено на формирование и совершенствование знаний по методологии описания, визуализации и документирования объектно-ориентированных систем и бизнес-процессов с помощью языка UML 2. Полученные в ходе изучения курса знания могут быть успешно использованы в последующем при совершенствовании бизнес-процессов и управлении проектами в ходе разработки информационных моделей и программных приложений. Знание изучаемых в курсе базовых конструкций языка UML 2 позволит слушателям самостоятельно использовать CASE-средства с целью автоматизации выполнения всех этапов концептуального, логического и физического проектирования архитектуры корпоративных информационных систем и программных приложений.
Основы современной методологии объектно-ориентированного анализа и проектирования. Особенности визуального моделирования информационных систем. Базовые семантические конструкции языка UML 2 и их описание с помощью специальных обозначений. Основные элементы нотации языка UML 2 и их отличие от языка UML 1. Особенности моделей представления структуры и поведения в проектах разработки сложных программных систем и бизнес-процессов. Канонические диаграммы языка UML 2 и их общая характеристика. Механизмы расширения языка UML 2.
-
Диаграмма вариантов использования как концептуальное представление поведения разрабатываемой системы. Основные элементы и отношения в модели вариантов использования. Формализация функциональных требований к системе с помощью диаграммы вариантов использования. Анализ типичных ошибок при построении диаграмм. Примеры построения диаграмм вариантов использования.
-
Диаграмма классов как логическое представление структуры разрабатываемой системы. Понятие класса в контексте объектно-ориентированного анализа и проектирования. Синтаксис записи атрибутов и операций классов в нотации языка UML 2. Понятие интерфейса и его графическое изображение. Основные отношения на диаграмме классов и их графическая нотация. Ассоциация и ее специальные формы. Примеры построения диаграмм классов в проектах UML 2.
-
Диаграмма последовательности как логическое представление поведения разрабатываемой системы. Понятие линии жизни классов и сообщений, их графическая нотация. Представление времени на диаграмме последовательности. Комбинированные фрагменты, их нотация и семантика. Особенности использования логических условий в комбинированных фрагментах языка UML 2. Временные ограничения и их запись. Примеры построения диаграмм последовательности в проектах UML 2.
-
Особенности моделирования поведения объектов в форме диаграммы конечного автомата. Понятие состояния и перехода, их графическая нотация. Спецификация внутренних действий простого состояния. Последовательные и параллельные композитные состояния. Исторические состояния глубокой и неглубокой истории, их семантика. Описание реакции объекта на асинхронные внешние события в форме диаграммы конечного автомата. Примеры построения диаграмм конечного автомата.
-
Особенности графического представления диаграмм деятельности в нотации языка UML 2. Понятие узла деятельности и узла объекта. Потоки управления и объектов. Ветвление и распараллеливание потока управления с помощью специальных символов. Центральный буфер и хранилище данных. Особенности графического изображения диаграммы деятельности с дорожками. Использование диаграмм деятельности для моделирования бизнес-процессов. Примеры построения диаграмм деятельности.
-
Диаграмма компонентов как модель представления физической структуры разрабатываемой системы. Понятие компонента программной системы и его графическая нотация. Семантика компонента в контексте реализации классов логической модели. Порты, интерфейсы и соединители на диаграмме компонентов. Особенности построения диаграммы компонентов в качестве модели архитектуры разрабатываемой программной системы. Примеры построения диаграмм компонентов.
-
Диаграмма развертывания как модель представления физической архитектуры распределенной информационной системы. Понятия узла, устройства и среды выполнения, их графическая нотация. Основные отношения на диаграмме развертывания и их графическое представление. Различные способы представления отношения развертывания. Пути коммуникации и аннотирования манифестов. Представление физических аспектов материальных ресурсов, задействованных в реализации системы. Примеры построения диаграмм развертывания.
-
Особенности представления внутренней структуры классов в UML 2. Основные элементы диаграммы композитной структуры и их графическая нотация. Классы и интерфейсы на диаграмме композитной структуры. Порты и соединители. Интегрированное представление элементов структуры и поведения на диаграмме коммуникации. Нотация линий жизни и связей между ними. Графическое изображение сообщений, посылаемых и принимаемых линиями жизни. Особенности представления архитектуры сложной программной системы в форме диаграммы пакетов. Нотация пакетов и отношений между ними в языке UML 2.Примеры построения диаграмм композитной структуры, диаграмм и пакетов коммуникации.
-