Skip to content

Commit da931d9

Browse files
authored
Merge pull request #107 from fga-eps-mds/doc/arq
[DOC] Adiciona doc de visão de dados e update arquitetura
2 parents 5524256 + 9ef5bdd commit da931d9

File tree

3 files changed

+84
-7
lines changed

3 files changed

+84
-7
lines changed

docs/projeto/arquitetura.md

Lines changed: 63 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
| :-: | :-: | :-: | :-: |
77
| 0.1 | 09/12/24 | Criação do documento | Gabriel Mariano |
88
| 1.0 | 09/12/24 | atualização do documento | André Corrêa |
9+
| 2.0 | 20/12/24 | atualização do documento | André Corrêa |
910

1011
*Tabela 1: Versionamento*
1112

@@ -29,16 +30,73 @@ Foram definidas as seguintes tecnologias para o projeto:
2930

3031
*Tabela 2: Stack do Sistema*
3132

33+
## Representação Arquitetural
34+
35+
### Diagrama de Relações
36+
37+
<iframe frameborder="0" style="width:100%;height:308px;" src="https://viewer.diagrams.net/?tags=%7B%7D&lightbox=1&highlight=0000ff&edit=_blank&layers=1&nav=1&title=calculus-diagram.drawio&page-id=I-6fpici55m38HMQ_MQw#Uhttps%3A%2F%2Fdrive.google.com%2Fuc%3Fid%3D1a0Ob_2W3N1eerm0drMZDin9y0jveMfpN%26export%3Ddownload"></iframe>
38+
**Autor:** Calculus Team 2024.1
39+
40+
A arquitetura de microsserviços adotada no *Arandu* segue uma abordagem onde a aplicação é composta por serviços menores, implementados de forma independente e com baixo acoplamento. Esses serviços, organizados por domínios de negócios, comunicam-se entre si, principalmente por meio de APIs. Essa arquitetura promove um desenvolvimento mais ágil e facilita a escalabilidade da aplicação. Cada microsserviço possui sua própria base de dados independente, assegurando isolamento e robustez.
41+
42+
### Serviços
43+
44+
#### User Service
45+
46+
O *User Service* é responsável pela gestão completa dos usuários da aplicação. Suas funcionalidades incluem registro, autenticação, atualização de informações, gerenciamento de permissões e controle de acesso, garantindo uma experiência segura e personalizada para cada usuário.
47+
48+
#### Studio Maker Service
49+
50+
O *Studio Maker Service* é responsável pela criação e gestão de conteúdo na plataforma. Esse serviço lida com todas as funcionalidades necessárias para que os usuários autenticados possam criar, editar e organizar conteúdos de forma eficiente, permitindo uma gestão eficaz do material disponibilizado na plataforma.
51+
52+
#### Front-end
53+
54+
O *Front-end* é responsável pela interface visual do usuário com o sistema de forma WEB, permitindo toda a interação necessária, como visualização e edição de dados.
55+
56+
#### APP
57+
58+
O *APP* é responsável pela interface visual do usuário com o sistema de forma mobile, permitindo toda a interação necessária, como visualização e edição de dados.
59+
60+
## Visão Lógica
61+
62+
### Diagrama de Pacotes
63+
64+
#### Introdução
65+
66+
O Diagrama de Pacotes organiza as classes do projeto em grupos lógicos chamados pacotes, oferecendo uma visão de alto nível especialmente útil em sistemas complexos. No *Arandu*, seguimos uma arquitetura de microsserviços, onde o pacote principal representa o sistema. Dentro dele, a camada de front-end realiza requisições que são processadas pela camada de back-end, composta pelos microsserviços principais: *User Service*, *Studio Maker Service* e *Gamification Service*, que interagem com os bancos de dados para armazenamento e recuperação de dados.
67+
68+
<iframe frameborder="0" style="width:100%;height:553px;" src="https://viewer.diagrams.net/?tags=%7B%7D&lightbox=1&highlight=0000ff&edit=_blank&layers=1&nav=1&title=calculus-diagram.drawio#Uhttps%3A%2F%2Fdrive.google.com%2Fuc%3Fid%3D1a0Ob_2W3N1eerm0drMZDin9y0jveMfpN%26export%3Ddownload"></iframe>
69+
70+
71+
**Autor:** *Calculus* Team 2024.1
72+
73+
### Diagrama de Implantação
74+
75+
O Diagrama de Implantação oferece uma visão detalhada de como os componentes do sistema *Arandu* estão distribuídos em diferentes máquinas ou servidores dentro da infraestrutura de TI. Ele demonstra como os serviços são implantados em contêineres, como a comunicação ocorre entre eles e como os dados são armazenados e acessados.
76+
77+
No *Arandu*, a implantação é realizada com o auxílio de contêineres Docker, orquestrados pelo Kubernetes. Esta abordagem garante que cada serviço, como o *User Service* e o *Studio Maker Service*, possa ser escalado de forma independente, mantendo a alta disponibilidade e eficiência operacional. Além disso, o Kubernetes gerencia a distribuição de cargas de trabalho e proporciona resiliência, assegurando que os serviços permaneçam acessíveis mesmo em caso de falhas.
78+
79+
<iframe frameborder="0" style="width:100%;height:513px;" src="https://viewer.diagrams.net/?tags=%7B%7D&lightbox=1&highlight=0000ff&edit=_blank&layers=1&nav=1&title=calculus-diagram.drawio&page-id=nR3126rXf9x62OpuHPoS#Uhttps%3A%2F%2Fdrive.google.com%2Fuc%3Fid%3D1a0Ob_2W3N1eerm0drMZDin9y0jveMfpN%26export%3Ddownload"></iframe>
80+
81+
82+
**Autor:** *Calculus* Team 2024.1
83+
84+
### Diagrama de Arquitetura
85+
O Diagrama de Arquitetura mostra a estrutura planejada do projeto Arandu, enfatizando a arquitetura de microsserviços. Ele destaca a individualização dos bancos de dados NoSQL para cada serviço, o que garante maior robustez e organização. Cada microsserviço opera de forma independente, permitindo escalabilidade e flexibilidade no desenvolvimento e na manutenção do sistema. A comunicação entre os microsserviços ocorre diretamente, sem a necessidade de um ponto de entrada centralizado.
86+
87+
<iframe style="border:none" width="1600" height="900" src="https://whimsical.com/embed/Ltup7BCojXTtkku7Hzi4V2"></iframe>
88+
89+
**Autor:** *Calculus* Team 2024.1
90+
3291
## Deploy
3392

3493
O *deploy* da aplicação foi realizado na plataforma **Render** e pode ser encontrado [NESSE LINK](https://arandu.onrender.com/).
3594

3695
## Documentação Anterior
3796

38-
Por se tratar de um sistema legado de outra equipe de desenvolvimento, uma documentação prévia da arquitetura do sistema pode ser encontrada na [Documentação de Arquitetura do Projeto Calculus 2024-1](https://fga-eps-mds.github.io/2024.1-CALCULUS-DOC/organizacoes/documento_arquitetura/).
39-
40-
## Atualização dos documentos de arquitetura
97+
Por se tratar de um sistema legado de outra equipe de desenvolvimento, grande parte da documentação de arquitetura foi reaproveitada do semestre anterior e pode ser encontrada em sua originalidade na [Documentação de Arquitetura do Projeto Calculus 2024-1](https://fga-eps-mds.github.io/2024.1-CALCULUS-DOC/organizacoes/documento_arquitetura/).
4198

42-
Para as pŕoximas etapas, serão realizadas verificações dos atuais documentos e sera atualizado o que for necessário, por exemplo, é necessário a atualização que mostra a ligação do app mobile com os backends.
99+
## Referências Bibliográficas
43100

44-
Além disso, com essa validação, os documentos serão adicionados nesse repositório, retirando a necessidade da ligação com o do semestre anterior
101+
> [1] EQUIPE ALECTRION 2022-2. Documento de Arquitetura. Disponível em: https://fga-eps-mds.github.io/2022-2-Alectrion-DOC/#/./Documentos/arquitetura.
102+
> [2] SOARES, João Pedro; ESTANISLAU, Matheus. Documento de Arquitetura. Disponível em: https://fga-eps-mds.github.io/2022-1-Alectrion-DOC/documentation/Documentos/documento-arquitetura.html.

docs/projeto/vis_dados.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Documentação da Visão de Dados
2+
3+
## Versionamento
4+
5+
| **Versão** | **Data** | **Modificação** | **Responsável** |
6+
| :-: | :-: | :-: | :-: |
7+
| 1.0 | 09/12/24 | Criação do documento | André Corrêa |
8+
9+
*Tabela 1: Versionamento*
10+
11+
---
12+
13+
## Objetivo
14+
15+
A documentação da Visão de dados visa apresentar uma visão técnica da estutura organizacional do produto de software a ser desenvolvido, apresentando elementos como o Modelagem de dados e arquitetura de Dados.
16+
17+
## documentação
18+
19+
A documentação pode ser encontrada na documentação do semestre passado: [Visão de Dados 2024.1](https://fga-eps-mds.github.io/2024.1-CALCULUS-DOC/organizacoes/visao-de-dados/)

mkdocs.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,8 @@ nav:
8484
- Documentação Técnica:
8585
- Documento de Arquitetura: 'projeto/arquitetura.md'
8686
# - Termo de Abertura do Projeto: 'organizacoes/tap.md'
87-
# - Visão de Dados: 'organizacoes/visao-de-dados.md'
88-
# - Visão de Endpoints: 'organizacoes/visao-de-endpoints.md'
87+
- Visão de Dados: 'projeto/vis_dados.md'
88+
# - Visão de Endpoints: 'organizacoes/visao-de-endpoints.md'
8989
# - Manual de Instruções: 'organizacoes/manual_de_instruções.md'
9090
- Gestão do Projeto:
9191
- Estrutura Analítica do Projeto: 'projeto/estrutura_analitica.md'

0 commit comments

Comments
 (0)