Форум Сообщества Аналитиков

Общий раздел => Примеры => Задачи студентов => Тема начата: framework от 27 Декабря 2012, 01:35:05

Название: use case(транзакции)
Отправлено: framework от 27 Декабря 2012, 01:35:05
Доброе время суток.
Есть логически связанные данные, размещенные в разных базах данных, они подвергаются изменению. Задача сводится к вставке новой записи о товаре и и вставке записи, определяющей логическое связывание новой записи о товаре с одной или несколькими записями поставщиков. Клиент и сервис совместно участвуют в изменении данных в рамках транзакции. Клиент выполняет вставку записи в базу Products с целью формирования информации о новом товаре. Для выполнения логического связывания с поставщиком клиент обращается к Web-сервису, которому передает значение идентификатора выбранного пользователем поставщика. Web-cервис осуществляет доступ к базе данных Vendors (таблицы ProductVendor) с целью выполнения вставки в таблицу ProductVendor. Даллее исполняется хранимая процедура на MySQL-server-e, и если операция изменения данных завершается успешно,  можно отследить изменения, если нет то MySQL-server делает откат в обоих БД.
Будут ли в данном подтектсе выступать actor-ами web-сервис и mysql-сервер?или только user c ВИ просмотреть данные, добавить запись о товаре.

Название: Re: use case(транзакции)
Отправлено: Galogen от 27 Декабря 2012, 12:25:51
Акторами будут системы, не являющимися частями проектируемой (рассматриваемой системы). Таким образом. Веб-сервис вполне может быть актором, так как нужно реализовать интерфейс взаимодействия с веб-сервисом. По этой логике и MySQL-сервер становится актором. Но разница есть.

MySQL-сервер - инструмент реализации и по сути является частью систему, проявляется на стадии проектирования и реализации.

Web-сервис - сторонний компонент и не является частью системы.

Однако я бы не использовать ни веб-сервис, ни сервер SQL в качестве актора на уровне описания ВИ, поскольку ВИ описывает порядок использования системы для достижения некой цели, но не описывает реализацию (конкретную) этого порядка, а также нужно понять на кого рассчитан данный ВИ.

Впрочем, если использовать ВИ как контекстную диаграмму, на которой показать все внешние (по отношении системы) компоненты с целью фиксации внимания на внешних интерфейсах, то можно. Но это скорее техническая задача, которую можно и нужно изображать совершенно иными способами, например диаграммой компонентов
Название: Re: use case(транзакции)
Отправлено: framework от 27 Декабря 2012, 21:51:12
Большое спасибо за столь обстоятельный ответ! Всё стало прозрачно. :)
Название: Re: use case(транзакции)
Отправлено: Galogen от 28 Декабря 2012, 08:01:35
Большое спасибо за столь обстоятельный ответ! Всё стало прозрачно. :)
Пожалуйста