1
0
Fork 0
edu-dis-labs-bodnar/docs/use-cases/README.md

32 KiB
Raw Blame History

Модель прецедентів

Загальна схема

@startuml

:Гість: as Guest
:Зареєстрований користувач: as AuthorisedUser

(<b>ACCOUNT.CREATE</b>\nСтворити обліковий запис) as CreateAccount
(<b>ACCOUNT.DELETE</b>\nВидалити обліковий запис) as DeleteAccount
(<b>ACCOUNT.MODIFY</b>\nЗмінити властивості облікового запису) as ModifyAccount
(<b>SURVEY.LINK.CREATE</b>\nСтворити посилання на опитування) as CreateLink
(<b>SURVEY.LINK.DELETE</b>\nВидалити посилання на опитування) as DeleteLink
(<b>SURVEY.LINK.MODIFY</b>\nЗмінити властивості посилання на опитування) as ModifyLink
(<b>USER.CREATE_SURVEY</b>\nСтворити опитування) as CreateSurvey
(<b>USER.DELETE_SURVEY</b>\nВидалити опитування) as DeleteSurvey
(<b>USER.GET_SURVEY_RESULT</b>\nПереглянути відповіді на опитування) as GetSurveyResult
(<b>USER.LOGIN</b>\nПройти ідентифікацію в системі) as LogIn
(<b>USER.LOGOUT</b>\nСкинути дані про ідентифікацію в системі) as LogOut
(<b>USER.MODIFY_SURVEY</b>\nРедагувати опитування) as ModifySurvey
(<b>USER.STAT_SURVEY</b>\nПереглянути властивості опитування) as StatSurvey
(<b>USER.TAKE_ANON_SURVEY</b>\nПройти анонімне опитування) as TakeAnonSurvey
(<b>USER.TAKE_NAMED_SURVEY</b>\nПройти поіменне опитування) as TakeNamedSurvey

Guest -u-> CreateAccount
Guest --> LogIn
Guest -r-> TakeAnonSurvey

AuthorisedUser -r-> ModifyAccount
AuthorisedUser -u-> DeleteAccount
AuthorisedUser -r-> CreateLink
AuthorisedUser -l-> DeleteLink
AuthorisedUser -u-> ModifyLink
AuthorisedUser -u-> LogOut
AuthorisedUser --> CreateSurvey
AuthorisedUser -u-> DeleteSurvey
AuthorisedUser --> StatSurvey
AuthorisedUser --> ModifySurvey
AuthorisedUser --> GetSurveyResult
AuthorisedUser -l-> TakeAnonSurvey
AuthorisedUser -d-> TakeNamedSurvey

@enduml

Схеми використання для окремих діячів

Схема використання для гостя:

@startuml

:Гість: as Guest

(<b>ACCOUNT.CREATE</b>\nСтворити обліковий запис) as CreateAccount
(<b>USER.LOGIN</b>\nПройти ідентифікацію в системі) as LogIn
(<b>USER.TAKE_ANON_SURVEY</b>\nПройти анонімне опитування) as TakeAnonSurvey

Guest -u-> CreateAccount
Guest --> LogIn
Guest -r-> TakeAnonSurvey

@enduml

Схема використання для зареєстрованого користувача:

@startuml

:Зареєстрований користувач: as AuthorisedUser

(<b>ACCOUNT.DELETE</b>\nВидалити обліковий запис) as DeleteAccount
(<b>ACCOUNT.MODIFY</b>\nЗмінити властивості облікового запису) as ModifyAccount
(<b>USER.CREATE_SURVEY</b>\nСтворити опитування) as CreateSurvey
(<b>USER.DELETE_SURVEY</b>\nВидалити опитування) as DeleteSurvey
(<b>USER.GET_SURVEY_RESULT</b>\nПереглянути відповіді на опитування) as GetSurveyResult
(<b>USER.LOGOUT</b>\nСкинути дані про ідентифікацію в системі) as LogOut
(<b>USER.MODIFY_SURVEY</b>\nРедагувати опитування) as ModifySurvey
(<b>USER.STAT_SURVEY</b>\nПереглянути властивості опитування) as StatSurvey
(<b>USER.TAKE_ANON_SURVEY</b>\nПройти анонімне опитування) as TakeAnonSurvey
(<b>USER.TAKE_NAMED_SURVEY</b>\nПройти поіменне опитування) as TakeNamedSurvey
(<b>SURVEY.LINK.CREATE</b>\nСтворити посилання на опитування) as CreateLink
(<b>SURVEY.LINK.DELETE</b>\nВидалити посилання на опитування) as DeleteLink
(<b>SURVEY.LINK.MODIFY</b>\nЗмінити властивості посилання на опитування) as ModifyLink

AuthorisedUser -r-> ModifyAccount
AuthorisedUser -u-> DeleteAccount
AuthorisedUser -r-> CreateLink
AuthorisedUser -l-> DeleteLink
AuthorisedUser -u-> ModifyLink
AuthorisedUser -u-> LogOut
AuthorisedUser -d-> CreateSurvey
AuthorisedUser -u-> DeleteSurvey
AuthorisedUser --> StatSurvey
AuthorisedUser -d-> ModifySurvey
AuthorisedUser --> GetSurveyResult
AuthorisedUser -l-> TakeAnonSurvey
AuthorisedUser -d-> TakeNamedSurvey

@enduml

Сценарії використання

Для гостя

ID ACCOUNT.CREATE
Назва Створити обліковий запис
Учасники Користувач, система
Передумови Відсутні
Результат Обліковий запис користувача
Виключні ситуації 001.001 Користувач ввів заборонені символи в поле псевдоніму
001.002 Ідентичний псевдонім вже існує
@startuml
Користувач
start
: Вводить бажаний псевдонім у поле вводу псевдоніму;
: Вводить пароль у поле вводу паролю;
: Натискає на кнопку створення облікового запису;
Система
: Створює обліковий запис користувача;
note right #lightpink
Можливі 001.001, 001.002
end note
Користувач
stop
@enduml
ID USER.LOGIN
Назва Пройти ідентифікацію в системі
Учасники Користувач, система
Передумови Користувач має обліковий запис
Результат Користувач ідентифікований в системі
Виключні ситуації 001.001 Користувач ввів заборонені символи в поле псевдоніму
001.003 Користувач ввів псевдонім, якого не існує в системі
001.004 Користувач ввів неправильний пароль до облікового запису
@startuml
Користувач
start
: Вводить псевдонім у поле вводу псевдоніму;
: Вводить пароль у поле вводу паролю;
: Натискає кнопку ідентифікації;
Система
: Ідентифікує користувача;
note right #lightpink
Можливі 001.001, 001.003, 001.004
end note
Користувач
stop
@enduml
ID USER.TAKE_ANON_SURVEY
Назва Пройти анонімне опитування
Учасники Користувач, система
Передумови Відсутні
Результат Запис відповідей на опитування
Виключні ситуації 001.006 Запитане опитування не існує
@startuml
Користувач
start
: Переходить на сторінку проходження опитування;
Система
: Виводить перелік запитань опитування;
note right #lightpink
Можлива 001.006
end note
Користувач
: Вводить відповіді на запитання;
: Натискає кнопку надсилання відповідей;
Система
: Записує відповіді на опитування;
note right #lightpink
Можлива 001.006
end note
: Виводить прощальне повідомлення;
Користувач
stop
@enduml

Для зареєстрованого користувача

ID ACCOUNT.DELETE
Назва Видалити обліковий запис
Учасники Користувач, система
Передумови Користувач ідентифікований в системі
Результат Відсутність облікового запису користувача
Виключні ситуації 001.005 Користувач не ідентифікований
@startuml
Користувач
start
: Натискає на кнопку видалення облікового запису;
Система
: Виводить кнопку-запит на підтвердження видалення облікового запису;
Користувач
: Натискає на кнопку підтвердження видалення облікового запису;
Система
: Видаляє обліковий запис;
note right #lightpink
Можлива 001.005
end note
Користувач
stop
@enduml
ID ACCOUNT.MODIFY
Назва Змінити властивості облікового запису
Учасники Користувач, система
Передумови Користувач ідентифікований в системі
Результат Зміна властивостей облікового запису
Виключні ситуації 001.005 Користувач не ідентифікований
@startuml
Користувач
start
: Натискає на кнопку редагування облікового запису;
Система
: Виводить інтерфейс для редагування облікового запису;
note right #lightpink
Можлива 001.005
end note
Користувач
: Вказує бажані зміни властивостей облікового запису;
: Натискає на кнопку внесення змін до властивостей облікового запису;
Система
: Змінює властивості облікового запису;
Користувач
stop
@enduml
ID SURVEY.LINK.CREATE
Назва Додати посилання на опитування
Учасники Користувач, система
Передумови Користувач авторизований у системі
Результат Нове посилання на опитування
Виключні ситуації 001.005 Користувач не ідентифікований
001.006 Запитане опитування не існує
001.008 Користувач не є власником опитування
@startuml
Користувач
start
: Натискає кнопку створення посилання на опитування;
Система
: Виводить налаштування для нового посилання;
note right #lightpink
Можливі 001.005, 001.006, 001.008
end note
Користувач
: Вводить налаштування для нового посилання;
: Натискає на кнопку створення посилання;
Система
: Створює нове посилання;
Користувач
stop
@enduml
ID SURVEY.LINK.DELETE
Назва Видалити посилання на опитування
Учасники Користувач, система
Передумови Користувач авторизований у системі
Результат Видалення посилання на опитування
Виключні ситуації 001.005 Користувач не ідентифікований
001.006 Запитане опитування не існує
001.008 Користувач не є власником опитування
001.009 Запитане посилання на існує
@startuml
Користувач
start
: Натискає кнопку видалення посилання;
Система
: Виводить кнопку підтвердження видалення посилання;
Користувач
: Натискає на кнопку підтвердження видалення посилання;
Система
: Видаляє посилання;
note right #lightpink
Можливі 001.005, 001.006, 001.008, 001.009
end note
Користувач
stop
@enduml
ID SURVEY.LINK.MODIFY
Назва Змінити властивості посилання на опитування
Учасники Користувач, система
Передумови Користувач авторизований у системі
Результат Зміна властивостей посилання на опитування
Виключні ситуації 001.005 Користувач не ідентифікований
001.006 Запитане опитування не існує
001.008 Користувач не є власником опитування
001.009 Запитане посилання на існує
@startuml
Користувач
start
: Натискає кнопку редагування властивостей посилання;
Система
: Виводить налаштування для обраного посилання;
note right #lightpink
Можливі 001.005, 001.006, 001.008, 001.009
end note
Користувач
: Вводить юажані зміни властивостей посилання;
: Натискає на кнопку збереження властиностей посилання;
Система
: Змінює властивості посилання;
Користувач
stop
@enduml
ID USER.CREATE_SURVEY
Назва Створити опитування
Учасники Користувач, система
Передумови Користувач ідентифікований в системі
Результат Створене опитування
Виключні ситуації 001.005 Користувач не ідентифікований
001.007 Користувач ввів неприпустимі символи в назві опитування
@startuml
Користувач
start
: Переходить на сторінку створення опитування;
note right #lightpink
Можлива 001.005
end note
Система
: Виводить інтерфейс створення опитування;
Користувач
: Задає інформацію про запитання та тип опитування;
: Натискає кнопку збереження опитування;
Система
: Створює опитування;
note right #lightpink
Можлива 001.007
end note
: Виводить посилання на проходження опитування;
Користувач
stop
@enduml
ID USER.DELETE_SURVEY
Назва Видалити опитування
Учасники Користувач, система
Передумови Користувач ідентифікований в системі, користувач є власником опитування
Результат Відсутність опитування
Виключні ситуації 001.005 Користувач не ідентифікований
001.006 Запитане опитування не існує
001.008 Користувач не є власником опитування
@startuml
Користувач
start
: Натискає на кнопку видалення опитування;
Система
: Виводить запит на підтвердження видалення опитування;
Користувач
: Натискає на кнопку підтвердження видалення опитування;
Система
: Видаляє опитування;
note right #lightpink
Можливі 001.005, 001.006, 001.008
end note
Користувач
stop
@enduml
ID USER.GET_SURVEY_RESULT
Назва Переглянути відповіді на опитування
Учасники Користувач, система
Передумови Користувач ідентифікований в системі, користувач є власником опитування
Результат Інформація про відповіді на опитування
Виключні ситуації 001.005 Користувач не ідентифікований
001.006 Запитане опитування не існує
001.008 Користувач не є власником опитування
@startuml
Користувач
start
: Натискає на кнопку перегляду відповідей на опитування;
Система
: Виводить інформацію про відповіді на опитування;
note right #lightpink
Можливі 001.005, 001.006, 001.008
end note
Користувач
stop
@enduml
ID USER.LOGOUT
Назва Скинути дані про ідентифікацію в системі
Учасники Користувач, система
Передумови Користувач ідентифікований в системі
Результат Користувач не ідентифікований в системі
Виключні ситуації 001.005 Користувач не ідентифікований
@startuml
Користувач
start
: Натискає на кнопку виходу з облікового запису;
Система
: Скидає інформацію про ідентифікацію користувача;
note right #lightpink
Можлива 001.005
end note
Користувач
stop
@enduml
ID USER.MODIFY_SURVEY
Назва Редагувати опитування
Учасники Користувач, система
Передумови Користувач ідентифікований в системі, користувач є власником опитування
Результат Змінене опитування
Виключні ситуації 001.005 Користувач не ідентифікований
001.006 Запитане опитування не існує
001.008 Користувач не є власником опитування
@startuml
Користувач
start
: Переходить на сторінку редагування опитування;
Система
: Виводить інтерфейс редагування опитування;
note right #lightpink
Можливі 001.005, 001.006, 001.008
end note
Користувач
: Задає інформацію про зміни в опитуванні;
: Натискає кнопку збереження змін в опитуванні;
Система
: Змінює опитування;
Користувач
stop
@enduml
ID USER.STAT_SURVEY
Назва Переглянути властивості опитування
Учасники Користувач, система
Передумови Користувач ідентифікований в системі, користувач є власником опитування
Результат Інформація про властивості опитування
Виключні ситуації 001.005 Користувач не ідентифікований
001.006 Запитане опитування не існує
001.008 Користувач не є власником опитування
@startuml
Користувач
start
: Натискає на кнопку перегляду інформації про опитування;
Система
: Виводить інформацію про опитування;
note right #lightpink
Можливі 001.005, 001.006, 001.008
end note
Користувач
stop
@enduml
ID USER.TAKE_ANON_SURVEY
Назва Пройти анонімне опитування
Учасники Користувач, система
Передумови Відсутні
Результат Запис відповідей на опитування
Виключні ситуації 001.006 Запитане опитування не існує
@startuml
Користувач
start
: Переходить на сторінку проходження опитування;
Система
: Виводить перелік запитань опитування;
note right #lightpink
Можлива 001.006
end note
Користувач
: Вводить відповіді на запитання;
: Натискає кнопку надсилання відповідей;
Система
: Записує відповіді на опитування;
note right #lightpink
Можлива 001.006
end note
: Виводить прощальне повідомлення;
Користувач
stop
@enduml
ID USER.TAKE_NAMED_SURVEY
Назва Пройти поіменне опитування
Учасники Користувач, система
Передумови Користувач ідентифікований в системі
Результат Запис відповідей на опитування та відомості про користувача
Виключні ситуації 001.005 Користувач не ідентифікований
001.006 Запитане опитування не існує
@startuml
Користувач
start
: Переходить на сторінку проходження опитування;
Система
: Виводить перелік запитань опитування;
note right #lightpink
Можливі 001.005, 001.006
end note
Користувач
: Вводить відповіді на запитання;
: Натискає кнопку надсилання відповідей;
Система
: Записує відповіді на опитування та відомості про користувача;
note right #lightpink
Можлива 001.006
end note
: Виводить прощальне повідомлення;
Користувач
stop
@enduml