From 941c5be8f3c0b1b6cb05b92e77c4cd6a8383fb89 Mon Sep 17 00:00:00 2001 From: hasslesstech Date: Sun, 19 May 2024 12:39:09 +0300 Subject: [PATCH 1/2] =?UTF-8?q?=D0=BB=D0=B0=D0=B14:=20=D0=B4=D0=BE=D0=B4?= =?UTF-8?q?=D0=B0=D0=B2=20ER-=D0=BC=D0=BE=D0=B4=D0=B5=D0=BB=D1=8C=20=D1=82?= =?UTF-8?q?=D0=B0=20=D0=BE=D0=BD=D0=BE=D0=B2=D0=B8=D0=B2=20=D0=BF=D0=BE?= =?UTF-8?q?=D0=BF=D0=B5=D1=80=D0=B5=D0=B4=D0=BD=D1=96=20=D0=BB=D0=B0=D0=B1?= =?UTF-8?q?=D0=BE=D1=80=D0=B0=D1=82=D0=BE=D1=80=D0=BD=D1=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/design/README.md | 61 ++++++++++++++++-- docs/requirements/stakeholders-needs.md | 30 +++++++++ docs/use-cases/README.md | 86 +++++++++++++++++++++++++ 3 files changed, 172 insertions(+), 5 deletions(-) diff --git a/docs/design/README.md b/docs/design/README.md index b4036de..63d72c7 100644 --- a/docs/design/README.md +++ b/docs/design/README.md @@ -11,23 +11,23 @@ @startuml -entity Account +entity Account <> entity Account.username <> entity Account.password <> -entity Survey +entity Survey <> entity Survey.name <> entity Survey.duration <> entity Survey.isPaused <> entity Survey.isNamed <> -entity Question +entity Question <> entity Question.text <> -entity Responce +entity Responce <> entity Responce.value <> -entity Link +entity Link <> entity Link.usageLimit entity Link.responceLimit entity Link.uses @@ -62,5 +62,56 @@ Link "0,*" -- "1,1" Survey +## ER-модель +
+@startuml + +entity Account <> { + id:INT + username:CHAR(64) + password:CHAR(256) +} + +entity Responce <> { + id:INT + value:CHAR(16384) +} + +entity Question <> { + id:INT + text:CHAR(256) +} + +entity Survey <> { + id:INT + name:CHAR(256) + duration:CHAR(256) + isPaused:BOOLEAN + isNamed:BOOLEAN +} + +entity Link <> { + id:INT + uses:INT + responces:INT + usageLimit:INT + responceLimit:INT + path:CHAR(32) +} + +Responce "0,*" --> "1,1" Question +Question "0,*" --> "1,1" Survey +Survey "0,*" --> "1,1" Account +Link "0,*" --> "1,1" Survey +Responce "0,*" --> "0,1" Account + +@enduml + +
diff --git a/docs/requirements/stakeholders-needs.md b/docs/requirements/stakeholders-needs.md index f0d293b..f021124 100644 --- a/docs/requirements/stakeholders-needs.md +++ b/docs/requirements/stakeholders-needs.md @@ -93,6 +93,33 @@ | Виключні ситуації | 001.005 Користувач не ідентифікований | | Основний сценарій | 1. Користувач натискає на кнопку редагування облікового запису
2. Система виводить інтерфейс для редагування облікового запису (можлива 001.005)
3. Користувач вказує бажані зміни властивостей облікового запису
4. Користувач натискає на кнопку внесення змін до властивостей облікового запису
5. Система змінює властивості облікового запису | +| ID | SURVEY.LINK.CREATE | +|:-----------------:|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| +| Назва | Додати посилання на опитування | +| Учасники | Користувач, система | +| Передумови | Користувач авторизований у системі | +| Результат | Нове посилання на опитування | +| Виключні ситуації | 001.005 Користувач не ідентифікований
001.006 Запитане опитування не існує
001.008 Користувач не є власником опитування | +| Основний сценарій | 1. Користувач натискає кнопку створення посилання на опитування
2. Система виводить налаштування для нового посилання (можливі 001.005, 001.006, 001.008)
3. Користувач вводить налаштування для нового посилання
4. Користувач натискає на кнопку створення посилання
5. Система створює нове посилання | + +| ID | SURVEY.LINK.DELETE | +|:-----------------:|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| +| Назва | Видалити посилання на опитування | +| Учасники | Користувач, система | +| Передумови | Користувач авторизований у системі | +| Результат | Видалення посилання на опитування | +| Виключні ситуації | 001.005 Користувач не ідентифікований
001.006 Запитане опитування не існує
001.008 Користувач не є власником опитування
001.009 Запитане посилання на існує | +| Основний сценарій | 1. Користувач натискає кнопку видалення посилання
2. Система виводить кнопку підтвердження видалення посилання
3. Користувач натискає на кнопку підтвердження видалення посилання
4. Система видаляє посилання (можливі 001.005, 001.006, 001.008, 001.009) | + +| ID | SURVEY.LINK.MODIFY | +|:-----------------:|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| +| Назва | Змінити властивості посилання на опитування | +| Учасники | Користувач, система | +| Передумови | Користувач авторизований у системі | +| Результат | Зміна властивостей посилання на опитування | +| Виключні ситуації | 001.005 Користувач не ідентифікований
001.006 Запитане опитування не існує
001.008 Користувач не є власником опитування
001.009 Запитане посилання на існує | +| Основний сценарій | 1. Користувач натискає кнопку редагування властивостей посилання
2. Система виводить налаштування для обраного посилання (можливі 001.005, 001.006, 001.008, 001.009)
3. Користувач вводить юажані зміни властивостей посилання
4. Користувач натискає на кнопку збереження властиностей посилання
5. Система змінює властивості посилання | + | ID | USER.CREATE_SURVEY | |:-----------------:|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| | Назва | Створити опитування | @@ -210,6 +237,9 @@ Cистема розділяє користувачів на дві катего - створити опитування - відредагувати своє опитування - видалити своє опитування +- створити посилання на своє опитування +- редагувати властивості посилання на своє опитування +- видалити посилання на своє опитування - призупинити своє опитування - продовжити своє опитування - переглянути властивості свого опитування diff --git a/docs/use-cases/README.md b/docs/use-cases/README.md index bf5dc48..0c47f64 100644 --- a/docs/use-cases/README.md +++ b/docs/use-cases/README.md @@ -17,6 +17,9 @@ (ACCOUNT.CREATE\nСтворити обліковий запис) as CreateAccount (ACCOUNT.DELETE\nВидалити обліковий запис) as DeleteAccount (ACCOUNT.MODIFY\nЗмінити властивості облікового запису) as ModifyAccount + (SURVEY.LINK.CREATE\nСтворити посилання на опитування) as CreateLink + (SURVEY.LINK.DELETE\nВидалити посилання на опитування) as DeleteLink + (SURVEY.LINK.MODIFY\nЗмінити властивості посилання на опитування) as ModifyLink (USER.CREATE_SURVEY\nСтворити опитування) as CreateSurvey (USER.DELETE_SURVEY\nВидалити опитування) as DeleteSurvey (USER.GET_SURVEY_RESULT\nПереглянути відповіді на опитування) as GetSurveyResult @@ -33,6 +36,9 @@ AuthorisedUser -r-> ModifyAccount AuthorisedUser -u-> DeleteAccount + AuthorisedUser -r-> CreateLink + AuthorisedUser -l-> DeleteLink + AuthorisedUser -u-> ModifyLink AuthorisedUser -u-> LogOut AuthorisedUser --> CreateSurvey AuthorisedUser -u-> DeleteSurvey @@ -80,9 +86,15 @@ (USER.STAT_SURVEY\nПереглянути властивості опитування) as StatSurvey (USER.TAKE_ANON_SURVEY\nПройти анонімне опитування) as TakeAnonSurvey (USER.TAKE_NAMED_SURVEY\nПройти поіменне опитування) as TakeNamedSurvey + (SURVEY.LINK.CREATE\nСтворити посилання на опитування) as CreateLink + (SURVEY.LINK.DELETE\nВидалити посилання на опитування) as DeleteLink + (SURVEY.LINK.MODIFY\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 @@ -221,6 +233,80 @@ 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 | |:-----------------:|:--------------------------------------------------------------------------------------------------------:| | Назва | Створити опитування | -- 2.40.1 From 9feddb6bacab5bf9f41bf61092be4d19d3ea5572 Mon Sep 17 00:00:00 2001 From: hasslesstech Date: Sun, 19 May 2024 12:43:34 +0300 Subject: [PATCH 2/2] =?UTF-8?q?=D0=BB=D0=B0=D0=B14:=20=D0=B4=D0=BE=D0=B4?= =?UTF-8?q?=D0=B0=D0=B2=20=D1=82=D0=B8=D0=BF=D0=B8=20=D0=B4=D0=B0=D0=BD?= =?UTF-8?q?=D0=B8=D1=85=20=D0=BF=D0=BE=D0=BB=D1=96=D0=B2=20=D0=BF=D0=BE?= =?UTF-8?q?=D1=81=D0=B8=D0=BB=D0=B0=D0=BD=D0=BD=D1=8F=20=D0=BD=D0=B0=20BE-?= =?UTF-8?q?=D0=BC=D0=BE=D0=B4=D0=B5=D0=BB=D1=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/design/README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/design/README.md b/docs/design/README.md index 63d72c7..ab53e23 100644 --- a/docs/design/README.md +++ b/docs/design/README.md @@ -28,11 +28,11 @@ entity Responce <> entity Responce.value <> entity Link <> -entity Link.usageLimit -entity Link.responceLimit -entity Link.uses -entity Link.responces -entity Link.path +entity Link.usageLimit <> +entity Link.responceLimit <> +entity Link.uses <> +entity Link.responces <> +entity Link.path <> Account.username --* Account Account.password --* Account -- 2.40.1