Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Comunicacao HSL Wiki Comunicacao HSL Wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Comunicacao HSL
  • Comunicacao HSL WikiComunicacao HSL Wiki
  • Wiki
  • arquitetura

Last edited by José Alfredo Goulart Filho Nov 19, 2021
Page history

arquitetura

Home Escopo e Cronograma Processo Design/Mockups Configuração Arquitetura Código BD Qualidade Utilização Instruções AWS

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.

Arquitetura de software é como todos os componentes do software do sistema são organizados e montados. Como eles se comunicam e a restrição pela qual toda a UI é governada.

Sumário

  • Arquitetura do Sistema
    • Descrição
    • Sumário
    • Arquitetura Geral da Aplicação
    • Deploy
      • Recipes API
      • Diagrama de Deploy
    • Backend
      • Definições de Tecnologias
      • Módulos do Sistema
      • Diagrama de Fluxo
    • Frontend
      • Definições de Tecnologias
      • Módulos do Sistema
      • Diagramas de Componentes
      • Diagrama do Sistema

Arquitetura Geral da Aplicação

Service-Oriented Architecture (Arquitetura Orientada a Serviços).

Deploy

EC2/Docker

Recipes API

TBD

Diagrama de Deploy

TBD

Backend

Definições de Tecnologias

  • Java/Spring
  • PostgreSQL
  • Docker
  • AWS (S3, SES, SNS, EC2)

Módulos do Sistema

TBD

Diagrama de Fluxo

TBD

Frontend

Definições de Tecnologias

  • Dart/Flutter

Módulos do Sistema

TBD

Arquitetura Básica do Frontend

A arquitetura selecionada inicialmente para o front-end foi o MVC. MVC significa Model-View-Controller, onde o foco principal é separar a interface do projeto da funcionalidade e dos dados que são usados na aplicação. O MVC torna a base de código limpa e organizada e consegue isso com três de seus componentes.

  • Model: Comprometimentos do modelo da fonte de dados pode ser de qualquer banco de dados, API, JSON, etc. Em alguns casos, pode consistir em alguma lógica de negócios.

  • View: View tem tudo a ver com a interface do usuário, ou seja, exibir dados e obter entradas do usuário.

  • Controller: Contém a lógica de negócios, ou seja, controle de quais dados serão mostrados ao usuário, manipulação de entrada do usuário, etc.

 

Após reuniões realizadas pelo arquiteto do projeto e os gerentes, chegamos à uma escolha de arquitetura única: um "híbrido" da arquitetura MVC, onde teríamos a Model-View-Controller comum neste padrão de arquitetura mas também um Router, responsável pelas rotas da aplicação. De certa forma podemos dizer que a arquitetura do projeto é algo maior que um MVC mas menor que uma arquitetura VIPER (View, Interactor, Presenter, Entity e Routing).

 

Como pode se ver na imagem, o fluxo de informações começa na View, onde todas as informações são exibidas e todas interações do usuário são recebidas. A Router então é responsábel por exibir as novas telas, se houver necessidade. A Controller é encarregada de verificar os dados recebidos, e na Model é onde se recebe os pedidos da Controller para mandar ou receber dados do banco de dados.

Diagramas de Componentes

TBD

Diagrama do Sistema

Diagrama de Casos de Uso

Diagrama de Pacotes

Clone repository
  • Utilizando a wiki
    • adicionando imagens
    • escrevendo em markdown
    • wiki no editor de texto
  • arquitetura
  • banco_dados
  • codigo
  • configuracao
  • design_mockups
  • escopo
  • Home
  • instrucoes
  • instrucoesAws
  • processo
  • qualidade
  • utilizacao