вторник, 1 июля 2008 г.

Шаблон варианта использования

Название варианта использования. Указывается на фоне цвета уровня.

Роль: [роль пользователя]
Триггер: [причина запуска сценария]
Предусловия: [априори выполненные условия]
Основной сценарий: [нумерованная последовательность шагов, приводящая пользователя к Цели]
Результат: [результат выполнения основного сценария, если он требует пояснений]
Расширения:[список проблем, которые могут возникнуть при прохождении основного сценария, и их решения]




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

В основном сценарии, "условные конструкции" должны быть сформулированы так, что б по состоянию "истина", выполнение переходило к следующему шагу.
Расширения нумеруются следующим образом: шаг основного сценария, где возникла "ошибка", буква по порядку "номер ошибки". Дальше идет тот же номер и шаги, принятые по исправлению ошибки.


Весь контент сайта отображается в виде заполненного "макета" страницы (если не оговорено обратное).
Т.е. сверху заголовок, справа дерево, по центру - контент страницы.
Таким образом, когда я пишу: SuD отображает список новостей, это значит, что сформирован шаблон страницы, и в качестве наполнения идет список новостей.



Пример сценария.




Вход пользователя в систему

Роль: Гость
Триггер: Пользователь ввел в браузере адрес страницы "логина" или любую другую страницу, с которой имеется возможность осуществить "вход".
Предусловия: нет.
Основной сценарий:
1. Гость вводит логин и пароль.
2. Система проверяет корректность логина и пароля.
3. Система выдает "cookie".
Пользователь имеет cookie и считается "вошедшим" в систему.
Расширения:
2а. Логин и пароль не верны:
2а1. SuD предлагает Гостю повторно ввести логин и пароль.
2a2. Пользователь вводит логин и пароль. И повторяет попытку входа в систему.
2а3. SuD переходит к шагу 2 основного сценария.
2б. Логин и пароль не верны:
2б1. SuD предлагает пользователю зарегистрироваться.
2б2. Пользователь соглашается.
2б3. SuD переходит на страницу регистрации.
2в. Логин и пароль не верны:
2в1. SuD предлагает восстановить пароль.
2в2. SuD задает контрольный вопрос и запрашивает почту пользователя.
2в3. Пользователь вводит ответ на контрольный вопрос и вводит свой email.
2в4. SuD проверяет введенные данные пользователя.
2в5. SuD высылает пароль на почту пользователя.
2в4а. Введенные данные пользователя не верны:
2в4а1. Система ругается и выводит "главную страницу".
3а. SuD не смог выдать cookie (отключены у пользователя и т.д.):
3а1. SuD выдает ошибку.
***3а1. (как вариант на очень далекое будующее) SuD переходит на альтернативный вариант. Например, ведение session_id в строке адреса.

Комментариев нет: