ЭКЗАМЕН 2012 материалы для составления ответов (не все) (ИТ ФКН ВГУ)


ПРАВиЛЬНЫЕ ОТВЕТЫ ЗДЕСь

Вопросы к экзамену по информационным технологиям.

1. Назначение языка UML. Пакеты в языке UML
2. Механизмы расширения языка UML
3. Диаграммы языка UML. Особенности изображения диаграмм языка UML.
4. Диаграмма вариантов использования (use case diagram). Вариант использования. Актеры. Интерфейсы. Примечания.
5. Диаграмма вариантов использования. Отношения на диаграмме вариантов использования. Кратность отношения.
6. Диаграмма классов (class diagram). Имя класса. Атрибуты класса. Операция.
7. Диаграмма классов (class diagram). Отношения между классами. Шаблоны или параметризованные классы. Интерфейсы.
8. Диаграмма классов (class diagram). Отношения между классами. Отношения обобщения и реализации.
9. Диаграмма классов (class diagram). Отношения между классами. Ограничения отношений. ({complete}, {disjoint}, {incomplete}, {overlapping})
10. Объекты. Шаблоны.
11. Диаграмма состояний (statechart diagram) Автоматы. Состояние.
12. Диаграмма состояний. Переход: Событие, Сторожевое условие, Выражение действия.
13. Диаграмма состояний. Составное состояние и подсостояние. Историческое состояние. Сложные переходы.
14. Диаграмма деятельности (activity diagram). Состояние действия. Переходы. Дорожки. Объекты.
15. Диаграмма последовательности (sequence diagram). Линия жизни объекта. Сообщения.
16. Диаграмма последовательности. Временные ограничения на диаграммах последовательности.
17. Диаграмма кооперации (collaboration diagram). Связи. Сообщения.
18. Диаграмма кооперации (collaboration diagram). Объекты: Мультиобъект, Активный объект, Составной объект.
19. Диаграмма компонентов (component diagram). Компоненты. Интерфейсы. Зависимости.
20. Диаграмма развертывания (deployment diagram). Узел. Соединения.
21. Рациональный унифицированный процесс. Фазы РУП. Процессы.
22. Рациональный унифицированный процесс. Понятие об итерации.
ДИАГРАММА КЛАССОВ
Взаимосвязи
Взаимосвязь — это особый тип логических отношений между сущностями, показанных на диаграммах классов и объектов. В UML’е представлены следующие виды отношений:
Ассоциации
Ассоциация показывает, что объекты одной сущности (класса) связаны с объектами другой сущности.
Существует пять различных типов ассоциации. Наиболее распространёнными являются двунаправленная и однонаправленная. Например, классы «рейс» и «самолёт» связаны двунаправленной ассоциацией, а классы «человек» и «кофейный автомат» связаны однонаправленной.
Двойные ассоциации (с двумя концами) представляются линией, соединяющей два классовых блока. Ассоциации более высокой степени имеют более двух концов и представляются линиями, один конец которых идет к классовому блоку, а другой к общему ромбику. В представлении однонаправленной ассоциации добавляется стрелка, указывающая на направление ассоциации.
Ассоциация может быть именованной, и тогда на концах представляющей её линии будут подписаны роли, принадлежности, индикаторы, мультипликаторы, видимости или другие свойства.
Агрегация

Диаграмма классов, показывающая Агрегацию между двумя классами
Агрегация — это разновидность ассоциации при отношении между целым и его частями. Как тип ассоциации агрегация может быть именованной. Одно отношение агрегации не может включать более двух классов (контейнер и содержимое).
Агрегация встречается, когда один класс является коллекцией или контейнером других. Причём по умолчанию, агрегацией называют агрегацию по ссылке, то есть когда время существования содержащихся классов не зависит от времени существования содержащего их класса. Если контейнер будет уничтожен, то его содержимое — нет.
Графически агрегация представляется пустым ромбиком на блоке класса и линией, идущей от этого ромбика к содержащемуся классу.
Композиция
Композиция — более строгий вариант агрегации. Известна также как агрегация по значению.
Композиция имеет жёсткую зависимость времени существования экземпляров класса контейнера и экземпляров содержащихся классов. Если контейнер будет уничтожен, то всё его содержимое будет также уничтожено.
Графически представляется как и агрегация, но с закрашенным ромбиком.
Различия между композицией и агрегацией
Целое композиции должно иметь мультипликатор 0..1 или 1, что показывает, что часть является частью только одного целого. В агрегации же может быть любой мультипликатор.
Приведём наглядный пример. Комната является частью квартиры, следовательно здесь подходит композиция, потому что комната без квартиры существовать не может. А, например, мебель не является неотъемлемой частью квартиры, но в то же время, квартира содержит мебель, поэтому следует использовать агрегацию.
Обобщение (наследование)

Диаграмма классов, показывающая наследование двух подклассов от одного суперкласса
Обобщение (Generalization) показывает, что один из двух связанных классов (подтип) является частной формой другого (надтипа), который называется обобщением первого. На практике это означает, что любой экземпляр подтипа является также экземпляром надтипа. Например: животные — супертип млекопитающих, которые, в свою очередь, — супертип приматов, и так далее. Эта взаимосвязь легче всего описывается фразой «А — это Б» (приматы — это млекопитающие, млекопитающие — это животные).
Графически обобщение представляется линией с пустым треугольником у супертипа.
Обобщение также известно как наследование или «is a» взаимосвязь.
Реализация
Реализация — отношение между двумя элементами модели, в котором один элемент (клиент) реализует поведение, заданное другим (поставщиком).
Реализация — отношение целое-часть.
Графически реализация представляется также как и наследование, но с пунктирной линией.
Зависимость
Зависимость — это слабая форма отношения использования, при котором изменение в спецификации одного влечёт за собой изменение другого, причем обратное не обязательно. Возникает когда объект выступает например в форме параметра или локальной переменной.
Графически представляется пунктирной стрелкой, идущей от зависимого элемента к тому, от которого он зависит.
Существует несколько именованных вариантов.
Зависимость может быть между экземплярами, классами или экземпляром и классом.
Уточнения отношений
Уточнение имеет отношение к уровню детализации. Один пакет уточняет другой, если в нем содержатся те же самые элементы, но в более подробном представлении. Например, при написании книги вы наверняка начнете с формулировки предложения, в котором кратко будет представлено содержание каждой главы. Предположим, что резюме к каждой главе в качестве отдельного элемента входит в пакет «Предложение». Допустим также, что «Завершённая книга» — это пакет, элементами которого являются законченные главы. В этом контексте пакет «Завершённая книга» является уточнением пакета «Предложение».
Мощность отношений (Кратность)
Мощность отношения (мультипликатор) означает число связей между каждым экземпляром класса (объектом) в начале линии с экземпляром класса в ее конце. Различают следующие типичные случаи:
0..1 Ноль или один экземпляр кошка имеет или не имеет хозяина 1 Обязательно один экземпляр у кошки одна мать 0..* или * Ноль или более экземпляров у кошки может быть, а может и не быть котят 1..* Один или более экземпляров у кошки есть хотя бы одно место, где она спит

ДИАГРАММА ВАРИАНТОВ ИСПОЛЬЗОВАНИЯ
Диаграмма прецедентов (англ. use case diagram, диаграмма вариантов использования) в UML — диаграмма, на которой отражены отношения, существующие между акторами и прецедентами.
Основная задача — представлять собой единое средство, дающее возможность заказчику, конечному пользователю и разработчику совместно обсуждать функциональность и поведение системы.
При работе с вариантами использования важно помнить несколько простых правил:
• каждый прецедент относится как минимум к одному действующему лицу;
• каждый прецедент имеет инициатора;
• каждый прецедент приводит к соответствующему результату (результату с «бизнес-значением»).
• Прецеде?нт (англ. Use Case), также: вариант использования, сценарий использования — спецификация последовательностей действий (варианты последовательностей и ошибочные последовательности) в Унифицированном языке моделирования (UML), которые может осуществлять система, подсистема или класс, взаимодействуя с внешними акторами (англ. Actors).
• Прецеденты были предложены Иваром Якобсоном и значительно популяризированы Алистером Коберном.
Нотация
На диаграммах прецедентов в UML прецедент отображается в виде эллипса. Внутри эллипса или под ним указывается имя элемента.
К прецедентам в UML применимы следующие виды отношений:
• Ассоциация (англ. Association) — может указывать на то, что актор инициирует соответствующий вариант использования.
В том числе между прецедентами:
• Расширение (англ. Extend) — разновидность отношения зависимости между базовым вариантом использования и его специальным случаем.
• Включение (англ. Include) — определяет взаимосвязь базового варианта использования с другим вариантом использования, функциональное поведение которого всегда задействуется базовым вариантом использования.
• Обобщение (англ. Generalization, наследование) — моделирует соответствующую общность ролей.

ДИАГРАММА СОСТОЯНИЙ
Диагра?мма состоя?ний — ориентированный граф для конечного автомата, в котором
• вершины обозначают состояния
• дуги показывают переходы между двумя состояниями
На практике вершины обычно изображаются в виде окружностей и, если нужно, двойных окружностей. В нотации UML состояния изображаются прямоугольниками с закругленными углами[1].
Конечный автомат — абстрактный автомат без выходного потока, число возможных состояний которого конечно. Результат работы автомата определяется по его конечному состоянию.
Абстра?ктный автома?т (в теории алгоритмов) — математическая абстракция, модель дискретного устройства, имеющего один вход, один выход и в каждый момент времени находящегося в одном состоянии из множества возможных.