... | ... | @@ -6,18 +6,40 @@ |
|
|
> Nenhum dos diagramas ou padrões a seguir foi validado
|
|
|
|
|
|
### Diagrama de Deploy
|
|
|
|
|
|
![deployment_diagram](uploads/1665c5af7019c0cd98526ea6c4516adc/deployment_diagram.jpeg)
|
|
|
|
|
|
------
|
|
|
|
|
|
## Backend
|
|
|
|
|
|
### Módulos do Sistema:
|
|
|
|
|
|
- **Routes**: Arquivos possuem o nome do serviço que será disponibilizado, como por exemplo, serviços referentes ao tutorial ficam no arquivo "TutorialRoute". Nele ficam registrados os endpointes da aplicação, ou seja, os caminhos após o endereço do servidor como ```/user/login``` e qual o tipo de chamada o endereço irá receber ```GET```, ```POST```, ```PUT``` ou ```DELETE```
|
|
|
|
|
|
- **Controllers**: Aqui estão os arquivos que irão processar o que foi recebido pelos **routes** e chamar os métodos adequados dos **services** retornando uma resposta válida para o **routes**, normalmente em formato JSON
|
|
|
|
|
|
- **Services**: Nesta pasta ficam os arquivos que validam nossas regras de negócio, como a senha válida do usuário ou se ele é administrador, utilizando o **repository** para fornecer os dados do banco e realizar as validações
|
|
|
|
|
|
- **Repository**: Todos os arquivos aqui fazem as chamadas ao banco de dados através dos **models** passando os parâmetros adequados para as funções desejadas, como as colunas que se deseja dar ```SELECT```, por exemplo.
|
|
|
|
|
|
- **Models**: Aqui estão todas as representações das tabelas do nosso banco de dados, mas de uma forma com que possamos trabalhar facilmente no código: classes. Os dados são recuperados do banco e convertidos para as classes criadas
|
|
|
|
|
|
|
|
|
### Diagrama do Sistema:
|
|
|
|
|
|
Maneira que as camadas do sistema se comunicam. Um fluxo de dados que começa com a requisição do usuário na camada **Route**, segue para **Controller** onde são chamados os métodos de **Service**, que por sua vez validam os dados e encaminham para **Repository** que utilizam os **Model** para fazer ações no banco como ```SELECT```, ```INSERT```, ```UPDATE``` e ```DELETE```.
|
|
|
|
|
|
Seguindo um fluxo que percorre a estrutura: **Route > Controller > Service > Repository > Model**.
|
|
|
|
|
|
![estrutura geral](https://tools.ages.pucrs.br/appoio/appoio-wiki/raw/master/images/arquitetura/Estrutura_backend.png)
|
|
|
|
|
|
------
|
|
|
|
|
|
### Diagramas de Sequencia
|
|
|
|
|
|
#### Usuário
|
|
|
|
|
|
![diagrama usuario](https://tools.ages.pucrs.br/appoio/appoio-wiki/raw/master/images/arquitetura/Diagrama_Sequencia_Usuario.png)
|
|
|
|
|
|
|
... | ... | |