Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • W 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
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Comunidade Universitaria
  • wiki
  • Wiki
  • arquitetura

Last edited by Filipe Oliveira Nov 26, 2023
Page history
This is an old version of this page. You can view the most recent version or browse the history.

arquitetura

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 do Sistema
    • Descrição
    • Sumário
    • Arquitetura Geral da Aplicação
    • Diagramas
      • Diagrama de Deploy
      • Diagrama de Componentes
      • Diagrama de Implantação
    • Backend
      • Definições de Tecnologias
      • Diagrama de Fluxo
    • Frontend
      • Definições de Tecnologias
      • Módulos do Sistema
      • Diagramas de Componentes
      • Diagrama do Sistema

Arquitetura Geral da Aplicação

TBD

Diagramas

Diagrama de Deploy

Diagrama de Componentes

Diagrama de Implantação

Backend

Definições de Tecnologias

  • Linguagem de Programação: TypeScript
  • Runtime: Node v19
  • Framework: Nest.js V10

Neste projeto, utilizamos 'Clean Architecture', pois tem como objetivo fornecer um sistema modular, escalável, independente de frameworks e tecnologias e fácil de testar e manter. Ao separar as responsabilidades em camadas com propósitos específicos, é possível garantir que cada camada possa ser alterada sem afetar as outras camadas do sistema, facilitando a evolução e manutenção do software ao longo do tempo.

Diagrama de Fluxo

Diagrama de Fluxo

A estrutura do projeto é modularizada, onde há um injetor de dependência específico para cada rota, assim como a criação de toda estrutura, como criação de um novo repositório, novos usecases, domínios(entity), dtos, services, etc.

Responsabilidade das camadas:

Application: Aqui é o local onde é realizado a injeção de dependências, imports e declaração do Controller. É o entrypoint da nossa aplicação.

Core: É onde é realizado a regra de negócio(Como por exemplo: estudante pode participar de um evento se for de faculdade fulana) é nesta camada que vai está regra, transformação de dados, etc.

Infrastructure: É a camada responsável pela persistência de dados, ou seja de fazer a conexão com o banco de dados.

Resources: Local onde é salvo recursos que utilizaremos no projeto, podendo ser imagem, documentos, etc.

Diagrama de Fluxo

Para mais informações

Clone repository
  • arquitetura
  • banco_dados
  • codigo
  • configuracao
  • design_mockups
  • dividas_tecnicas
  • escopo
  • Home
  • processo