Please enable JavaScript.
Coggle requires JavaScript to display documents.
Arquitetura de Aplicação Móvel: cap 3 (Princípios de Bons Projetos de…
Arquitetura de Aplicação Móvel: cap 3
Conceitos:
1- Cliente-Servidor: Arquiteturas de Aplicação onde um ou mais dispositivos possibilitar uma comunicação entre cliente e servidor
Comunicação:
Em camadas: Módulos de código colocados em pastas diferentes ou diretórios no cliente ou no servidor
Cliente sem camada de código: sem código de aplicação personalizado (cliente magro)
Cliente com uma a três canadas de códigos: código personalizado da aplicação (cliente gordo)
Organização das camadas de códigos de aplicação
2- Negócios: tratar da lógica comercial
3- Acesso a Dados: Comunicação com o banco/origem de dados
1- Apresentação: mais próxima do usuário
OBSERVAÇÃO: Tanto o Cliente quanto o servidor, podem ter mais de 3 camadas, porem é difícil de gerenciar.
Filas: descrevem a divisão de trabalho de código da aplicação em diversas máquinas, envolvendo a colocação de módulos de código em maquinas diferentes num ambiente de servidor distribuídos
Organização da arquitetura do código da aplicação
2- Aplicação: Armazenar a logica de negócios e a logica de acesso de dados
3- Banco de Dados: Abriga o próprio banco de dados
1- Apresentação: Código de interação com o usuario
Composição das fias nos servidores de acordo com numero e capacidade
Escalonamento Vertical:(Scaling Up) capacidade de adicionar ou remover um único nó do sistema. Ex: mais memoria ou um HD mais rapidos
Escalonamento Horizontal (Scaling Out) Capacidade de adicionar mais nós a um sistema. Ex: Novo computador com uma aplicação para clusterizar o software.
Características:
2- Descrevem a arquiteturas de servidor
3- Os dispositivos de cliente como uma fila não é uma convenção comum
1- Estão organizadas em firewalls (DMZ), promovendo a segurança dos sistema internos
2- Clientes:
1- Clientes Magros: Não possuem código da aplicação personalizado e dependem de um servidor. Utilizam os navegadores WEB e WAP
Vantagem: A manutenção e o suporte ficam mais fáceis, caso não haja código de aplicação ou dados.
Desvantagem: Manter constante comunicação com o servidor
2- Clientes Gordos: Possuem de uma a três camadas de código de aplicação e pra de forma independente de um servidor
Vantagem: São úteis em situações de falta de comunicação entre cliente e servidor. Utilizam o armazenamento de dados
Desvantagem: Dependem muito do sistema operacional e do dispositivo móvel
OBS: Servidor HTTP: Os dispositivos moveis servem como servidor WEB.
3- Servidor: As arquiteturas são compostas de uma a três camadas de código implementada em uma a três filas
1- One -Tier: três camadas de código coexistam em um único servidor
Vantagem: desenvolve o código em uma única maquina facilitando a implantação do sistema
Desvantagem : Difícil o escalonamento da aplicação e pouca segurança
2- Two - Tier: Desenvolvida a partir da separação do servidor de banco de dados do servidor de aplicação
Vantagem: Permite que os dados de diferentes fontes sejam acessados
Desvantagem: Possui difícil escalonamento da aplicação e pouca segurança
3- Tree - Tier: Deenvolvida para que servidores de apresentação, aplicação e banco de dados fiquem separados
Vantagens: Escalonável, protegido por firewalls e zonas de segurança, e permite a especialização do servidor do banco de dados
Desvantagens: Difícil desenvolvimento e gerenciamento. Alto custo
Bibliografia:
Aplicações Móveis: Arquitetura, Projeto e Desenvolvimento
capitulo 3
Disciplina: Computação para Dispositivos Móveis
Tipos de conexão
Sempre Conectados: Através de uma rede sem fio e conjunto de aplicações e servidores cria-se a possibilidade de conexão dos dispositivos móveis
Parcialmente Conectados: De acordo com a necessidade os dispositivos moveis podem ser desconectados do desenvolvedor em quanto realizam algumas atividades, e depois são ressincronizados ao servidor
Nunca Conectado: Dispositivos moveis que não se conectam a sistemas back-end
Sicronização
Contínua: A conectividade é ininterrupta entre cliente e servidor
Síncrona: Os dados são completamente armazenados antes que o servidor confirme o recebimento deles e libere a interface com o cliente
Assíncrona: Os dados não precisam ser armazenados antes que o servidor confirme ao cliente
Método Armazenar e Encaminha: Usado quando o dispositivo móvel não esta conectado a um servidor, através de uma aplicação, os dados serão armazenados em um banco de dados local e ao estabelecer a conexão, os dados local serão encaminhado para os banco de dados do servidor
Padrões de Arquitetura Móveis:
1- Matriz Padrão: A conectividade nem sempre pode ser garantida, porem são os padrões mais dominantes
2- Arquitetura sem Nenhuma Camada de Três Filas, Sempre Conectada: Simples, o código de aplicação em fila é capaz de renderizar paginas
3- Arquitetura Parcialmente Conectada de Três Filas e Três Camadas: Mais complexa, o cliente móvel tem três camadas de código de aplicação, é um cliente gordo
Princípios de Bons Projetos de Arquiteturas
3- Alto Desempenho e Disponibilidade: A Arquitetura deve apresentar recursos para atender os períodos de picos de demanda
4- Escalabilidade: Permitir escalonamento tanto na vertical quanto na horizontal sem afetar as demais aplicações
1- Requisitos: Os projetos abrangem os requisitos funcionais (negócios e usuários)
5- Requisitos de Sistema de Usuário: A arquitetura deve atender um maior espectros números de usuários possível
2- Independência de Tecnologia: As aplicações atualmente atendem a diversas plataformas e dispositivos
OBS: Na pratica, pode não ser possível implementar todos os principios