forked from hasslesstech/edu-dis-labs
		
	Merge pull request 'лаб4: BE-модель' (#39) from shmuliar into master
Reviewed-on: hasslesstech/edu-dis-labs#39
This commit is contained in:
		
						commit
						577e565552
					
				@ -1,11 +1,6 @@
 | 
			
		||||
# Проєктування системи
 | 
			
		||||
# Проєктування бази даних
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Вбудовування зображень діаграм здійснюється з використанням сервісу [plantuml.com](https://plantuml.com/). 
 | 
			
		||||
 | 
			
		||||
В markdown-файлі використовується опис діаграми
 | 
			
		||||
 | 
			
		||||
```md
 | 
			
		||||
## BE модель
 | 
			
		||||
 | 
			
		||||
<center style="
 | 
			
		||||
    border-radius:4px;
 | 
			
		||||
@ -16,67 +11,52 @@
 | 
			
		||||
 | 
			
		||||
@startuml
 | 
			
		||||
 | 
			
		||||
participant Client
 | 
			
		||||
entity Account
 | 
			
		||||
entity Account.username <<TEXT>>
 | 
			
		||||
entity Account.password <<TEXT>>
 | 
			
		||||
 | 
			
		||||
participant SR as "Service Registry"
 | 
			
		||||
entity Survey
 | 
			
		||||
entity Survey.name <<TEXT>>
 | 
			
		||||
entity Survey.duration <<TEXT>>
 | 
			
		||||
entity Survey.isPaused <<BOOLEAN>>
 | 
			
		||||
entity Survey.isNamed <<BOOLEAN>>
 | 
			
		||||
 | 
			
		||||
participant Service
 | 
			
		||||
entity Question
 | 
			
		||||
entity Question.text <<TEXT>>
 | 
			
		||||
 | 
			
		||||
Service -> SR : register
 | 
			
		||||
SR -> SR
 | 
			
		||||
SR --> Service
 | 
			
		||||
...
 | 
			
		||||
entity Responce
 | 
			
		||||
entity Responce.value <<TEXT>>
 | 
			
		||||
 | 
			
		||||
SR -> Service: heartbeat
 | 
			
		||||
SR <-- Service: health
 | 
			
		||||
...
 | 
			
		||||
entity Link
 | 
			
		||||
entity Link.usageLimit
 | 
			
		||||
entity Link.responceLimit
 | 
			
		||||
entity Link.uses
 | 
			
		||||
entity Link.responces
 | 
			
		||||
entity Link.path
 | 
			
		||||
 | 
			
		||||
Client -> SR: find
 | 
			
		||||
Client <-- SR: service endpoint
 | 
			
		||||
Client -> Service: request
 | 
			
		||||
Client <-- Service: response
 | 
			
		||||
Account.username --* Account
 | 
			
		||||
Account.password --* Account
 | 
			
		||||
 | 
			
		||||
Survey.name --* Survey
 | 
			
		||||
Survey.duration --* Survey
 | 
			
		||||
Survey.isPaused --* Survey
 | 
			
		||||
Survey.isNamed --* Survey
 | 
			
		||||
 | 
			
		||||
Link.usageLimit -u-* Link
 | 
			
		||||
Link.responceLimit -u-* Link
 | 
			
		||||
Link.uses --* Link
 | 
			
		||||
Link.responces --* Link
 | 
			
		||||
Link.path -u-* Link
 | 
			
		||||
 | 
			
		||||
@enduml
 | 
			
		||||
 | 
			
		||||
</center>
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
яка буде відображена наступним чином
 | 
			
		||||
 | 
			
		||||
<center style="
 | 
			
		||||
    border-radius:4px;
 | 
			
		||||
    border: 1px solid #cfd7e6;
 | 
			
		||||
    box-shadow: 0 1px 3px 0 rgba(89,105,129,.05), 0 1px 1px 0 rgba(0,0,0,.025);
 | 
			
		||||
    padding: 1em;"
 | 
			
		||||
>
 | 
			
		||||
 | 
			
		||||
@startuml
 | 
			
		||||
 | 
			
		||||
    @startuml
 | 
			
		||||
 | 
			
		||||
participant Client
 | 
			
		||||
 | 
			
		||||
participant SR as "Service Registry"
 | 
			
		||||
 | 
			
		||||
participant Service
 | 
			
		||||
 | 
			
		||||
Service -> SR : register
 | 
			
		||||
SR -> SR
 | 
			
		||||
SR --> Service
 | 
			
		||||
...
 | 
			
		||||
 | 
			
		||||
SR -> Service: heartbeat
 | 
			
		||||
SR <-- Service: health
 | 
			
		||||
...
 | 
			
		||||
 | 
			
		||||
Client -> SR: find
 | 
			
		||||
Client <-- SR: service endpoint
 | 
			
		||||
Client -> Service: request
 | 
			
		||||
Client <-- Service: response
 | 
			
		||||
Responce.value -u-* Responce
 | 
			
		||||
 | 
			
		||||
Question.text -u-* Question
 | 
			
		||||
 | 
			
		||||
Account "1,1" -- "0,*" Survey
 | 
			
		||||
Survey "1,1" -- "0,*" Question
 | 
			
		||||
Question "1,1" -r- "0,*" Responce
 | 
			
		||||
Account "0,1" -r- "0,*" Responce
 | 
			
		||||
Link "0,*" -- "1,1" Survey
 | 
			
		||||
 | 
			
		||||
@enduml
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										12
									
								
								utils/table-generator/use-cases/survey.link.create.uc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								utils/table-generator/use-cases/survey.link.create.uc
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,12 @@
 | 
			
		||||
Назва | Додати посилання на опитування
 | 
			
		||||
Учасники | Користувач, система
 | 
			
		||||
Передумови | Користувач авторизований у системі
 | 
			
		||||
Результат | Нове посилання на опитування
 | 
			
		||||
Виключні ситуації | 001.005 Користувач не ідентифікований
 | 
			
		||||
                  | 001.006 Запитане опитування не існує
 | 
			
		||||
                  | 001.008 Користувач не є власником опитування
 | 
			
		||||
Основний сценарій | 1. Користувач натискає кнопку створення посилання на опитування
 | 
			
		||||
                  | 2. Система виводить налаштування для нового посилання (можливі 001.005, 001.006, 001.008)
 | 
			
		||||
                  | 3. Користувач вводить налаштування для нового посилання
 | 
			
		||||
                  | 4. Користувач натискає на кнопку створення посилання
 | 
			
		||||
                  | 5. Система створює нове посилання
 | 
			
		||||
							
								
								
									
										12
									
								
								utils/table-generator/use-cases/survey.link.delete.uc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								utils/table-generator/use-cases/survey.link.delete.uc
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,12 @@
 | 
			
		||||
Назва | Видалити посилання на опитування
 | 
			
		||||
Учасники | Користувач, система
 | 
			
		||||
Передумови | Користувач авторизований у системі
 | 
			
		||||
Результат | Видалення посилання на опитування
 | 
			
		||||
Виключні ситуації | 001.005 Користувач не ідентифікований
 | 
			
		||||
                  | 001.006 Запитане опитування не існує
 | 
			
		||||
                  | 001.008 Користувач не є власником опитування
 | 
			
		||||
                  | 001.009 Запитане посилання на існує
 | 
			
		||||
Основний сценарій | 1. Користувач натискає кнопку видалення посилання
 | 
			
		||||
                  | 2. Система виводить кнопку підтвердження видалення посилання
 | 
			
		||||
                  | 3. Користувач натискає на кнопку підтвердження видалення посилання
 | 
			
		||||
                  | 4. Система видаляє посилання (можливі 001.005, 001.006, 001.008, 001.009)
 | 
			
		||||
							
								
								
									
										13
									
								
								utils/table-generator/use-cases/survey.link.modify.uc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								utils/table-generator/use-cases/survey.link.modify.uc
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,13 @@
 | 
			
		||||
Назва | Змінити властивості посилання на опитування
 | 
			
		||||
Учасники | Користувач, система
 | 
			
		||||
Передумови | Користувач авторизований у системі
 | 
			
		||||
Результат | Зміна властивостей посилання на опитування
 | 
			
		||||
Виключні ситуації | 001.005 Користувач не ідентифікований
 | 
			
		||||
                  | 001.006 Запитане опитування не існує
 | 
			
		||||
                  | 001.008 Користувач не є власником опитування
 | 
			
		||||
                  | 001.009 Запитане посилання на існує
 | 
			
		||||
Основний сценарій | 1. Користувач натискає кнопку редагування властивостей посилання
 | 
			
		||||
                  | 2. Система виводить налаштування для обраного посилання (можливі 001.005, 001.006, 001.008, 001.009)
 | 
			
		||||
                  | 3. Користувач вводить юажані зміни властивостей посилання
 | 
			
		||||
                  | 4. Користувач натискає на кнопку збереження властиностей посилання
 | 
			
		||||
                  | 5. Система змінює властивості посилання
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user