Home | Escopo e Cronograma | Processo | Design/Mockups | Configuração | Arquitetura | Código | BD | Qualidade | Utilização |
---|
Arquitetura do Sistema
Descrição
Esta seção irá abordar a arquitetura selecionada para o Backend e Frontend, além dos dados relativos ao deploy.
Sumário
Arquitetura Geral da Aplicação O dispositivo do usuário (Mobile) através de uma interface gráfica feita em React (PWA), faz requisições (através do Axios) ao nosso backend feito com Node + Express. Se necessário, o backend salva ou lê dados do nosso banco de dados não relacional, utilizando o serviço do Firebase.
Deploy
Recipes API
TBD
Diagrama de Deploy
TBD
Backend
Definições de Tecnologias
O backend utilizará Node + Express para construir uma API que rodará em um servidor na AWS. Utilizaremos Typescript por acreditar deixar o código mais legível e ESLint para ajudar no monitoramento dos padrões determinados pelo time. Para o banco de dados e validação de login, utilizaremos os serviços do Firebase.
Módulos do Sistema
Routes: Rotas onde o servidor estará esperando receber solicitações HTTP para devolver uma resposta em JSON.
Controller: Fazer o controle do que foi solicitado pela rota, validando o pedido e repassando a tarefa para ser executada pelo service.
Service: Responsável por conseguir e organizar a resposta (de acordo com as regras de negócio) que a controller está esperando.
Model: Modelo que representa as entidades do banco de dados, será preenchido com os dados do firebase pela service.
Diagrama de Fluxo
TBD
Frontend
Definições de Tecnologias
Utilizaremos o Framework React para fazer as views da aplicação, que receberão dados do backend através do Axios. Por ser uma aplicação Mobile, faremos o React gerar uma PWA.
Módulos do Sistema
Component: Componentes visuais genéricos e reutilizáveis em toda a aplicação. Não devem possuir lógica ou dependências.
Container: Utilizará os componentes para apresentar o que for necessário na sua tela, o container é responsável por preencher as informações necessárias do componente (dados, ações de botões e etc) e implementar a lógica.
Screen: Apresentar os containers necessários para formar a tela específica de acordo com os mockups.
Diagramas de Componentes
TBD
Diagrama do Sistema
TBD