Загрузка данных


Вот четкие и полные ответы на вопросы к зачету по лабораторной работе «Диаграмма вариантов использования (Use Case Diagram)» в дисциплине «Проектирование информационных систем»:

### 1. В чем смысл варианта использования?
**Вариант использования (Use Case)** — это описание последовательности действий, которые система выполняет для достижения **конкретной цели** одного или нескольких действующих лиц (акторов).

Смысл варианта использования:
- Показать **функциональность** системы с точки зрения **внешнего пользователя** (что система делает, а не как она это делает).
- Описать **ценность**, которую система приносит пользователю или другой системе.
- Служить основой для дальнейшего проектирования (постановка требований, разработка сценариев, тестирование).

### 2. Каково назначение диаграмм вариантов использования?
**Назначение диаграммы вариантов использования**:
- Визуально представить **внешние требования** к системе (что система должна делать).
- Показать взаимодействие системы с внешней средой (пользователями и другими системами).
- Определить **границы** системы (что входит в систему, а что — нет).
- Служить средством коммуникации между заказчиком, аналитиком, разработчиками и тестировщиками.
- Быть отправной точкой для разработки остальных артефактов: спецификаций требований, сценариев использования, диаграмм деятельности, классов и т.д.

Диаграмма Use Case — одна из самых важных диаграмм на этапе **анализа требований**.

### 3. Назовите основные свойства вариантов использования
Основные свойства варианта использования:
- **Атомарность** — вариант использования должен описывать законченную, целостную задачу (с точки зрения актора).
- **Инициируется актором** — вариант использования всегда начинается по инициативе действующего лица (или внешнего события).
- **Приносит ощутимую ценность** актору.
- **Имеет четко определённую цель**.
- **Независим** от других вариантов использования (хотя может быть связан отношениями include/extend).
- **Может быть описан в виде сценария** (основной и альтернативные потоки).

### 4. Назовите основные компоненты диаграмм вариантов использования
Основные компоненты Use Case Diagram (UML):

1. **Действующее лицо (Actor)** — изображается как человечек.
2. **Вариант использования (Use Case)** — овал с названием.
3. **Система (Subject / Boundary)** — прямоугольник, внутри которого находятся варианты использования (граница системы).
4. **Отношения (Relationships)**:
   - **Ассоциация** (линия между Actor и Use Case) — показывает, что актор участвует в варианте использования.
   - **Include** (включение) — пунктирная линия со стрелкой <<include>>.
   - **Extend** (расширение) — пунктирная линия со стрелкой <<extend>>.
   - **Generalization** (обобщение/наследование) — сплошная линия со стрелкой (треугольник).

Дополнительно могут использоваться:
- Система-актор (внешняя система).
- Комментарии и ограничения.

### 5. Что такое «действующее лицо»?
**Действующее лицо (Actor)** — это роль, которую играет пользователь или внешняя сущность по отношению к системе.

Это **не конкретный человек**, а **роль** (например: «Клиент», «Администратор», «Бухгалтер», «Платёжная система»).

Актор может быть:
- Человеком (пользователь системы)
- Внешней системой или устройством
- Другой подсистемой

### 6. Какую роль могут играть действующие лица по отношению к варианту использования?
Действующие лица могут играть следующие роли:

- **Инициатор (Primary Actor)** — запускает вариант использования, получает от него основную ценность.
- **Участник (Secondary / Supporting Actor)** — участвует в выполнении варианта использования, но не является главным получателем ценности (например, предоставляет данные, выполняет вспомогательные действия).
- **Супер-актор / Суб-актор** (при использовании обобщения).

Чаще всего актор выступает в роли **инициатора**.

### 7. Каким образом анализ внешних событий позволяет определить варианты использования системы?
**Анализ внешних событий** — один из самых эффективных способов выявления вариантов использования.

**Методика**:
1. Определяем всех возможных **акторов** системы.
2. Для каждого актора выявляем **внешние события**, на которые система должна реагировать.
3. Каждое значимое внешнее событие, приводящее к выполнению системой полезной работы, становится **вариантом использования**.

Примеры внешних событий:
- Клиент нажимает «Оформить заказ» → «Оформление заказа»
- Администратор хочет добавить нового пользователя → «Добавление пользователя»
- Платёжная система уведомляет об успешной оплате → «Обработка подтверждения платежа»
- Система получает таймаут сессии → «Завершение неактивной сессии»

Правило:  
**Одно внешнее событие → один вариант использования** (если оно приводит к законченному полезному результату для актора).