TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Estilos Arquiteturais

Por:   •  22/10/2015  •  Resenha  •  702 Palavras (3 Páginas)  •  233 Visualizações

Página 1 de 3

Estilos Arquiteturais

Acadêmicos: Iury Veloso, Loreane Candia, Victor de Freitas        

Turma: 4º Período – Sistemas e Informação                

Disciplina: Engenharia de Software II                            Professora: Christine Martins

Pipes e Filtros

Vantagens: Manutenabilidade, reorganização, útil para aplicações de processamento de informações que interagem pouco com o usuário, vários filtros em paralelo, e eficiência no processamento.

Desvantagens: Mudanças frequentes em componentes podem impactar outros componentes; suporte a manutenibilidade limitado;

Camadas

Vantagens: Suporte, padronização, desenvolvimento independente, facilidade de compreensão, facilidade de manutenção, reuso das camadas e suporte à evolução dos sistemas, oferecendo flexibilidade e boa manutenabilidade; dependências tentem a ser locais (dentro da camada) - restrição da comunicação entre camadas adjacentes, mudanças afetam no máximo duas camadas. Se interface bem definida, permite o uso de diferentes implementações da mesma camada.

Desvantagens: Às vezes é difícil estruturar sistemas em camadas, comum instrução ser violada, camadas relaxadas são necessárias, mudanças de serviço de camada inferior pode precisar de duplicação de funcionalidade. Overhead (problemas) de implementação, comunicação e desempenho; complexidade na implementação e teste do sistema.

Objetos

Vantagens: Objetos são fracamente acoplados devido ao uso de interfaces, linguagem de implementação orientada à objeto são amplamente usadas.

Desvantagens: Mudança de interface tem alto impacto, não envolve restrições topológicas, o que pode dificultar a manutenção; Dependências entre objetos não são limitados.

Invocação Implícita

Vantagens: Fornece forte suporte para reuso; qualquer componente pode ser introduzido no sistema simplesmente por registrá-lo a eventos daquele sistema; facilita evolução do sistema; componentes podem ser substituídos por outros componentes sem afetar as interfaces de outros componentes no sistema.

Desvantagens: Os componentes abrem mão do controle sobre a computação desempenhada pelo sistema; quando um componente anuncia um evento, ele não pode assumir que outros componentes responderão a esse evento; mesmo que ele conheça quais outros componentes estão interessados nos eventos que ele anunciou, ele não pode interferir na ordem em que eles são invocados; os componentes não podem fazer qualquer suposição sobre o tipo de computação a ser realizada ou ordem de processamento.

Quadro Negro

Vantagens: Ajuda a resolver problemas de experimentação; suporte a mudanças e manutenção. Escalabilidade em aplicações independentes; reuso de conhecimentos. Para o suporte, possui tolerância a falhas e robustez.

Desvantagens: Dificuldade para testar por não usar algoritmos determinísticos; nenhuma solução é garantida; não suporta paralelismo; baixa eficiência e alto esforço de desenvolvimento; dificuldade de estabelecer boa estratégia de controle.

Repositórios

Vantagens: É uma maneira eficiente de compartilhar grandes quantidades de dados porque estão interligados/centralizados; dados aderem uma representação comum; simplifica o projeto de aplicações fortemente baseados em dados.

Desvantagens: Subsistemas devem estar de acordo com um modelo de dados padronizado; a evolução de dados é difícil e dispendiosa; dificuldade para distribuir de forma eficiente.

...

Baixar como (para membros premium)  txt (5.1 Kb)   pdf (55.5 Kb)   docx (12 Kb)  
Continuar por mais 2 páginas »
Disponível apenas no TrabalhosGratuitos.com