- •3. Вопрос. Цели и история создания унифицированного языка uml
- •4 Вопрос. Средства языка uml
- •5 Вопрос. Структура языка uml
- •6 Вопрос. Краткий обзор диаграмм uml
- •7 Вопрос. Обзор принципов разработки
- •8 Вопрос Пакеты uml. Обзор, отличия
- •9 Вопрос. Диаграмма прецедентов
- •Отношения между прецедентами
- •11 Вопрос. Уровни прецедентов
- •12 Вопрос. Диаграммы классов
- •10 Вопрос. Содержимое прецедентов.
- •13 Вопрос. Отношения между классами
- •15 Вопрос. Внутренние активности. Состояния активности
- •16 Вопрос Параллельные состояния
- •17 Вопрос. Агрегация, композитные объекты, интерфейсы и реализации.
- •18 Вопрос. Диаграммы деятельности
- •19. Декомпозиции операции
- •21 Вопрос. Потоки и рёбра
- •24Вопрос. Диаграммы взаимодействия
- •25 Вопрос Диаграммы объектов
13 Вопрос. Отношения между классами
Теория ООП выделяет три основных отношения между классами:
Ассоциация
Агрегация и композиция
Обобщение/Расширение (наследование)
Ассоциация означает, что объекты двух классов могут ссылаться один на другой, иметь некоторую связь между друг другом.
Агрегация и композиция на самом деле являются частными случаями ассоциации. Это более конкретизированные отношения между объектами. Агрегация — отношение когда один объект является частью другого. Например Студент входит в Группу любителей физики. Композиция — еще более «жесткое отношение, когда объект не только является частью другого объекта, но и вообще не может принадлежат еще кому-то.
14 вопрос. Диаграммы состояний
Диаграмма состояний — это, по существу, диаграмма состояний из теории автоматов со стандартизированными условными обозначениями[1] [2], которая может определять множество систем от компьютерных программ до бизнес-процессов.
Используются следующие условные обозначения:
Круг, обозначающий начальное состояние.
Окружность с маленьким кругом внутри, обозначающая конечное состояние (если есть).
Скруглённый прямоугольник, обозначающий состояние. Верхушка прямоугольника содержит название состояния. В середине может быть горизонтальная линия, под которой записываются активности, происходящие в данном состоянии.
Стрелка, обозначающая переход. Название события (если есть), вызывающего переход, отмечается рядом со стрелкой. Охраняющее выражение может быть добавлено перед «/» и заключено в квадратные скобки (название_события[охраняющее_выражение]), что значит, что это выражение должно быть истинным, чтобы переход имел место. Если при переходе производится какое-то действие, то оно добавляется после «/» (название_события[охраняющее_выражение]/действие).
Толстая горизонтальная линия с либо множеством входящих линий и одной выходящей, либо одной входящей линией и множеством выходящих. Это обозначает объединение и разветвление соответственно.
15 Вопрос. Внутренние активности. Состояния активности
Состояния могут реагировать на события без совершения перехода, используя внутренние активности (internal activities), и в этом случае событие, защита и активность размещаются внутри прямоугольника состояния. Внутренняя активность подобна самопереходу (self-transition) – переходу, который возвращает в то же самое состояние. Синтаксис внутренних активностей построен по той же логической схеме события, защиты и процедуры.
В состояниях, которые мы описывали до сих пор, объект молчит и ожидает следующего события, прежде чем что-нибудь сделать. Однако возможны состояния, в которых объект проявляет некоторую активность. Состояние Searching (Поиск) является таким состоянием активности (activity state): ведущаяся активность обозначается символом do; отсюда термин do-activity (проявлять активность). После того как поиск завершен, выполняются переходы без активности, например показ нового оборудования (Display New Hardware). Если в процессе активности происходит событие отмены (cancel), то do-активность просто прерывается и мы возвращаемся в состояние Update Hardware Window (Обновление окна оборудования).
