UC1: Произвести моделирование

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску

Аннотированное описание

Основной сценарий успешного выполнения

Моделирующий пользователь запускает клиент доступа к системе моделирования. Моделирующий пользователь устанавливает соединение с серверной подсистемой CAMaaS. Моделирующий пользователь проходит процедуры аутентификации и авторизации. Моделирующий пользователь задает геометрическую и физическую модель среды распределения поля, загружает ее с локального хранилища или получает эту модель путем обращения к системе. Моделирующий пользователь задает параметры вывода результатов моделирования, либо загружает их с локального хранилища или путем обращения к системе. На основе физико-геометрической модели и параметров вывода результатов система выполняет моделирование поля. Система отображает результаты моделирования в виде таблиц или графически на основе этих таблиц.

Альтернативные сценарии

Если моделирующий пользователь не зарегистрирован в системе, и политикой безопасности разрешена удаленная регистрация, моделирующий пользователь имеет возможность зарегистрироваться удаленно либо отказаться от доступа к системе.

Если моделирующий пользователь не проходит процедуру аутентификации, и политикой безопасности разрешена удаленная регистрация, моделирующему пользователю предлагается возможность зарегистрироваться либо отказаться от использования системы.

Если моделирующий пользователь не проходит процедуру аутентификации, соединение с ним автоматически разрывается.

При отказе моделирующего пользователя от использования системы соединение с ним разрывается.

Информация о проектах хранится на стороне моделирующих пользователей, которые, в свою очередь, самостоятельно реализуют хранение проектов моделирования. На стороне сервера данные о проекте хранятся лишь временно, пока над ними ведется работа,

Если моделирующий пользователь, успешно вошедший систему и единолично работающий над своим проектом, разрывает соединение (аварийно или нет), данные о проекте на стороне сервера удаляются.

Если более одного моделирующего пользователя работают над проектом, данные о нем остаются на серверной стороне пока все моделирующие пользователи не завершат работу.

Если хотя бы один моделирующий пользователь ведет работу в системе над модельным проектом, новые моделирующие пользователи имеют возможность подключиться к работе, загрузив проект с сервера.

Ошибки пользовательского ввода, если это возможно, идентифицируются до выполнения собственно моделирования поля, то есть во время самого ввода. При этом моделирующему пользователю позволяется их быстрое исправление.

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

Любые системные ошибки рассматриваются как исключительные. При их возникновении удаляются результаты моделирования, полученные на момент возникновения ошибочной ситуации, а сведения об ошибке заносятся в системный журнал.

Полное описание

Имя сценария

Произвести моделирование.

Масштабность[1]

Вся система моделирования в целом.

Уровень[2]

Пользовательский

Основное действующее лицо

Моделирующий пользователь

Заинтересованные стороны

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

Поставщик предметно-независимых сервисов: Заинтересован в том, что пользователь получит в свое распоряжение лишь те информационные и вычислительные ресурсы, на которые он имеет права в соответствии с политиками безопасности и предоставления ресурсов сервера. Также заинтересован в подлинности моделирующей подсистемы.

Поставщик подсистемы предметной области: Заинтересован в том, что политика предоставления вычислительного ресурса предметно-независимой подсистеме и пользователю не будет нарушена. Заинтересован в подтверждении своей подлинности сервером.

Предусловия

Моделирующий пользователь имеет информацию, идентифицирующую сервер (напр. адрес).

Серверная подсистема запущена и слушает канал связи.

Постусловия

Моделирующий пользователь имеет картину распределения характеристик интересующего его поля в заданных им точках геометрической модели среды. Пользователь имеет графическое отображение этой геометрической модели и наложенное на него графическое представление картины распределения поля.

Главный сценарий успешного выполнения

1. Моделирущий пользователь запускает клиент доступа к системе моделирования.

2. Моделирущий пользователь вводит адрес серверной подсистемы.

3. Клиентский доступа к системе моделирования устанавливает соединение с серверной подсистемой.

4. Моделируюий пользователь и система выполняют UC_n:Аутентифицировать пользователя.

5.

Расширения[3]

2.A. Моделирущий пользователь желает выбрать сервер из списка недавно использовавшихся. 1. Моделирущий пользователь выбирает адрес из списка недавно использовавшихся. 2.B. Синтаксис введенного адреса неверен. 1. Предложить ввести адрес еще раз

3.A. Сервер не найден по заданному адресу. 1. Перейти на шаг 2.

4.A. Моделируюий пользователь желает зарегистрироваться удаленно.

4.B. Подлинность моделирующего пользователя не подтверждена.

Нефункциональные требования

Технология реализации и форматы данных

Частота выполнения

Широкий диапазон - от крайне редкого (раз в несколько месяцев) до практически непрерывного (см. масштабируемость).

Открытые вопросы

Необходимо решить как будет реализовываться политика предоставления вычислительного ресурса пользователю или группе пользователей. В настоящий момент видится следующее. Поставщик подсистемы предметной области предоставляет ресурс, выполняющий моделирование в предметной области, как это реализовано программистом предметной области и экспертом предметной области, под управлением предметно-независимых сервисов. Имеющийся сейчас [[[Протокол балансировки нагрузки | протокол балансировки нагрузки]] не предполагает поддержки выделения лишь части ресурса для пользователя, но использует весь ресурс. Кроме того, поскольку разные пользователи, работающие над одним проектом, скорее всего хотят получать разные результаты остается вопрос о том, можно ли использовать один ресурс для разных пользователей, хотя бы частично. Последнее, очевидно, должно зависит от алгоритма, предоставленного экспертом предметной области. Для наших текущих задач данные вопросы не являются важными, поэтому приоритет их разрешения - низкий.

  1. Попытка перевести scope.
  2. Пользовательский или подфункция
  3. Альтернативные сценарии успешного выполнения и обработки ошибок