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 explicando os motivos das escolhas das tecnologias utilizadas junto ao funcionamento da aplicação.
Sumário
Tecnologias
O time realizou um debate para mapear os conhecimentos tecnológicos de todos os integrantes da equipe para facilitar e nortear as decisões sobre as tecnologirias a a serem usadas no desenvolvimento da aplicação levando em consideração o tempo de entrega, conhecimentos existentes de cada integrante da equipe e conhecimentos a serem adquiridos durante o desenvolvimento. Após realizar esse levantamento, optamos por trabalhar com as tecnologias citas abaixo:
Flutter
O Flutter é um kit de desenvolvimento de interface de usuário(front-end), de código aberto, criado pela empresa Google em 2015, baseado na linguagem de programação Dart, que possibilita a criação de aplicativos compilados nativamente, para os sistemas operacionais Android, iOS, Windows, Mac, Linux e Fuchsia e Web.
A escolha do flutter foi baseada em quatro pontos:
- Conhecimento prévio de alguns membros da equipe referente a tecnologia;
- Necessidade por parte dos stakeholders para aplicativos nativos para o plataforma IPad.
- Curva de aprendizagem mais baixa em relação a tecnologias semelhantes.
- Integração perfeita com o Firebase, pois ambas tecnologias são da Google.
Firebase
Firebase é uma plataforma desenvolvida pelo Google para a criação de aplicativos móveis e da web de uma forma efetiva, rápida e simples. Ele contém diversas funcionalidades já desenvolvidas, incluindo dois bancos de dados integrados, e possui um cota free para utilização, sendo perfeito para desenvolvimento back-end de MVPs, POCs e soluções em estágio inicial.
A escolha do Firebase foi baseada em cinco motivos:
- Perfeita integração com o Flutter;
- Cota free suficiente para a aplicação;
- Banco de dados integrado - FireStore;
- Autenticação de usuário já desenvolvido, sendo necessário apenas chamar no Flutter;
- Diversos recursos disponíveis já desenvolvidos;
Integração
Como mencionado anteriormente, ambas tecnologias escolhidas são mantidas pela Google e possui uma integração perfeita. Desse modo, conseguimos desenvolver todo o projeto com mais facilidade e velocidade. Abaixo segue um diagrama de como a integração acontece:
Recipes API
TBD
Diagrama de Deploy
TBD
Backend
Definições de Tecnologias
TBD
Módulos do Sistema
TBD
Diagrama de Fluxo
TBD
Frontend
Definições de Tecnologias
TBD
Módulos do Sistema
TBD
Diagramas de Componentes
TBD