Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • O Orientação Bucal no Envelhecimento Wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 14
    • Issues 14
    • 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
  • Orientação Bucal no Envelhecimento
  • Orientação Bucal no Envelhecimento Wiki
  • Wiki
  • arquitetura

Last edited by Lucas Souza da Silva Jun 18, 2022
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
    • 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

TBD

Deploy

Recipes API

TBD

Diagrama de Deploy

TBD

Backend

Definições de Tecnologias

Escolhas:

  • Linguagem: Java;
  • Frameworks: SpringBoot
  • Ferramentas: [Lombok][8], Junit, [Cucumber][10].

Justificativa:

A escolha pelo Java no backend foi feita pelo grande numero de pessoas que já tem um conhecimento intermediário na linguagem desta forma tendo uma curva de aprendizado menor. Também existe muito material sobre linguagem disponível gratuitamente na internet.

Hoje o SpringBoot é bastante popular no desenvolvimento de REST API e existe uma vasta documentação e material para estudo gratuito na internet.

Lombok faz o uso de annotations para minimizar a repetição de código.

Junit ferramente para execução de testes.

Cucumber é uma ferramente para integrar as historia de usuário aos testes utilizando do conceito de Behavior-Driven Development (BDD)

Módulos do Sistema

TBD

Diagrama de Fluxo

TBD

Frontend

Definições de Tecnologias

Escolhas:

  • Linguagem: JavaScript;
  • Frameworks: React e React Native;
  • Ferramentas: Prettier, ESLint, Expo e NGIX.

Justificativa:

React e React Native possuem sintaxe similiar, logo a curva de aprendizado não será grande. Deixar em repositórios separados faz com que cada responsabilidade esteja em um lugar específico sem causar impacto em ambos.

Expo é uma ferramenta utilizada no desenvolvimento, garantindo uma maneira simples de acessar API's nativas sem precisar instalar dependências. Muito utilizado no desenvolvimento mobile, apresentando mudanças em tempo real relizadas no código.

Prettier e ESLint são ferramentas voltadas para a padronização de código. A primeira aplica formatação e a segunda identifica padrões e garante o uso de boas práticas.

NGIX é um servidor leve de HTTP que será usado para disponibilizar nosso site estático.

Módulos do Sistema

  • Components: Onde estarão localizados os componentes visuais encontrados em diferentes páginas da aplicação. Os componentes em sua maioria são genéricos e podem ser utilizado em mais de uma parte do sistema.
  • Screen: Onde estarão localizadas as telas da aplicação. Cada tela é composta de diversos componentes que quando juntos apresentam funcionalidades da aplicação
  • Routes: A camada de rotas da aplicação, utilizando o padrão de arquitetura Coordinator, irá realizar a navegação entre as telas da aplicação, tendo conhecimento do fluxo e como devem se comportar. Possui a StackNavigator (navegação em telas empilhadas que seguem um determinado fluxo) e a TabNavigator (navegação por blocos com funcionalidades que diferem umas das outras, possui uma barra com suas opções na parte inferior da aplicação)
  • Constants: Classes que podem ser reaproveitadas na aplicação, com funcionalidades de formatação de texto, modelos de entrada, acesso a constantes, etc...
  • Assets: Pasta com as imagens que são utilizadas na aplicação uma ou mais vezes.

Diagramas de Componentes

TBD

Diagrama do Sistema

TBD

Clone repository
  • Gerência
  • Retro
  • Utilizando a wiki
    • adicionando imagens
    • escrevendo em markdown
    • wiki no editor de texto
  • arquitetura
  • banco_dados
  • codigo
  • configuracao
  • design_mockups
  • escopo
  • estudos
  • gerencia
  • Home
  • instrucoes
View All Pages