Лекция UML.pptx
- Количество слайдов: 32
Проектирование сложных ИС
Модель кодирования и устранения ошибок Постановка задачи Выполнение Проверка результата При необходимости переход к первому пункту
Каскадная модель жизненного цикла ПО
Каскадная модель с промежуточным контролем
Итеративная модель
Разработка через тестирование
Спиральная модель жизненного цикла
UML – Unified Modeling Language Универсальный язык моделирования (Рамбо, Буч, Джексон)
Задачи которые поставили перед собой разработчики UML – моделировать системы целиком, от концепции до исполняемого артефакта, с помощью объектно-ориентированных методов; – решить проблему масштабируемости, которая присуща сложным системам, предназначенным для выполнения ответственных задач; – создать такой язык моделирования, который может использоваться не только людьми, но и компьютерами.
История развития 0. 8 октябрь 1995 1. 1 ноябрь 1997 1. 3 март 2000 1. 4 сентябрь 2001 1. 4. 2. июль 2004 1. 5 март 2003 2. 0 июль 2005 2. 1 формально не была принята 2. 1. 1 август 2007 2. 1. 2 ноябрь 2007 2. 2 февраль 2009 2. 3 май 2010 2. 4 beta 2 март 2011
Язык UML Unified Modeling Language — унифицированный язык моделирования для описания, визуализации и документирования объектно-ориентированных систем в процессе их анализа и проектирования Язык UML предоставляет стандартный способ написания проектной документации на системы, включая концептуальные аспекты, такие как бизнес процессы и функции системы, а также конкретные аспекты, такие как выражения языков программирования, схемы баз данных и повторно используемые компоненты ПО Язык UML не является методологией Язык UML не является процессом Язык UML не является языком программирования Язык UML не является формальным языком
Преимущества использования UML UML объектно-ориентирован, в результате чего методы описания результатов анализа и проектирования семантически близки к методам программирования на современных объектно-ориентированных языках; UML позволяет описать систему практически со всех возможных точек зрения и разные аспекты поведения системы; Диаграммы UML сравнительно просты для чтения после достаточно быстрого ознакомления с его синтаксисом; UML расширяет и позволяет вводить собственные текстовые и графические стереотипы, что способствует его применению не только в сфере программной инженерии; UML получил широкое распространение и динамично развивается.
Способы использования UML Создание схем Обмен информацией Спецификация систем Повторное использование архитектурных решений Генерация кода
Модель UML (UML model)— это совокупность конечного множества конструкций языка, главные из которых — это сущности и отношения между ними.
Сущности UML структурные; поведенческие; группирующие; аннотационные
Структурные сущности Объект (object) — сущность, обладающая уникальностью и инкапсулирующая в себе состояние и поведение. Класс (class) — описание множества объектов с общими атрибутами, определяющими состояние, и операциями, определяющими поведение. Интерфейс (interface) — именованное множество операций, определяющее набор услуг, которые могут быть запрошены потребителем и предоставлены поставщиком услуг. Кооперация (collaboration) — совокупность объектов, которые взаимодействуют для достижения некоторой цели. Действующее лицо (actor) — сущность, находящаяся вне моделируемой системы и непосредственно взаимодействующая с ней. Компонент (component) — модульная часть системы с четко определенным набором требуемых и предоставляемых интерфейсов. Артефакт (artifact) — элемент информации, который используется или порождается в процессе разработки программного обеспечения. Узел (node) — вычислительный ресурс, на котором размещаются и при необходимости выполняются артефакты.
Поведенческие сущности Состояние (state) — период в жизненном цикле объекта, находясь в котором объект удовлетворяет некоторому условию и осуществляет собственную деятельность или ожидает наступления некоторого события. Деятельность (activity) можно считать частным случаем состояния, который характеризуется продолжительными (по времени) не атомарными вычислениями. Действие (action) — примитивное атомарное вычисление. Вариант использования (use case) — множество сценариев, объединенных по некоторому критерию и описывающих последовательности производимых системой действий, доставляющих значимый для некоторого действующего лица результат.
Группирующие сущности Пакет (package) — группа элементов модели (в том числе пакетов). Аннотационные сущности Примечание
Отношения в UML зависимость (dependency); ассоциация (association); обобщение (generalization); реализация (realization).
зависимость обобщение ассоциация реализация
Диаграммы UML
Диаграммы Диаграммы Вариантов Использования Диаграммы Последовательности Кооперативные диаграммы Диаграммы Классов Диаграммы Состояний Диаграммы Компонентов Диаграммы Размещения назад
Диаграммы Вариантов Использования
Диаграммы Последовательности
Кооперативные диаграммы
Диаграмма классов
Диаграммы Состояний
Диаграммы Компонентов
Диаграммы Размещения
Выводы UML — это формальный графический объектноориентированный язык, который необходимо освоить Знание UML является необходимым, однако не является достаточным условием построения разумных моделей сложных программных систем. UML имеет синтаксис, семантику и прагматику, которые нужно знать и использовать с учетом особенностей реальной задачи и инструмента. Модель UML состоит из описания сущностей и отношений между ними. Элементы модели группируются в диаграммы и представления для наилучшего описания моделируемой системы с различных точек зрения.