This page is optimized for mobile devices, if you would prefer the desktop version just click here

0.7 Documentação da arquitetura  (Page 13/25)

[Decisão Arquitetural 010]Os serviços que implementam os módulos descritosna [Decisão Arquitetural 001] devemser replicados, evitando assim pontos únicos de falha. Para facilitara replicação, os módulos não devem manter estado, delegando esta responsabilidadeaos serviços de armazenamento.

Objetivo : Replicando instâncias de serviços,elimina-se os pontos únicos de falha, aumentando a confiabilidadedo sistema e a tolerância a faltas.

Motivação : Implementando serviços stateless , a replicação fica trivial, umavez que a requisição pode usar qualquer uma das réplicas ativas.Note que é sempre necessário o registro no balanceador de cargada uma nova réplica em execução. Serviços de armazenamento não podemutilizar esta técnica sem adaptações, uma vez que dados são fundamentalmente stateful .

Decisões executivas

A última classe de decisões arquiteturais que apresentamosé a executiva. Este tipo de decisão está mais relacionado ao processo dedesenvolvimento do que aos elementos de design. Entre as decisões executivas,podemos encontrar decisões que descrevem: a metodologia utilizada durante desenvolvimento,como o time está dividido durante a implementação do sistema, como o treinamentode novos membros deve ocorrer, ou quais tecnologias e ferramentas devem seradotadas para auxiliar o processo. Os exemplos a seguir mostram algumasdecisões executivas.

Neste exemplo, apresentamos uma decisãohipotética do software Vuze Vuze : (External Link) .

(Decisão Arquitetural 001) . O software será escrito usandoa linguagem de programação Java.

Objetivo : Permitir a portabilidade para váriossistemas operacionais.

Motivação : Como um dos objetivos do Vuze é alcançar o maior número de usuários possível, não queremos impor abarreira de instalação em um ou outro sistema operacional específico.Uma vez que programas escritos em Java podem executar em qualquersistema operacional que seja capaz de executar a Máquina Virtual Java(JVM) e que a maioria dos sistemas para usuários finais já dispõemda JVM, esta linguagem deve ser usada para poupar o trabalho deportar o Vuze para diferentes sistemas.

[Decisão Arquitetural 011]O time de desenvolvimentoserá dividido em equipes menores e cada equipe será responsávelpela implementação do serviço responsável pelas funcionalidades de módulodescrito na [Decisão Arquitetural 001].

Objetivo : Minimizar o tempo de desenvolvimento.

Motivação : A possibilidade de paralelizaro desenvolvimento pode diminuir o tempo total de construção dosoftware. No entanto, deve-se respeitar as decisões arquiteturais que definemas interfaces entre os módulos, para que sua integração seja facilitada.endexample

<< Chapter < Page Page > Chapter >>

Read also:

OpenStax, Arquitetura de software. OpenStax CNX. Jan 05, 2010 Download for free at http://cnx.org/content/col10722/1.9
Google Play and the Google Play logo are trademarks of Google Inc.
Jobilize.com uses cookies to ensure that you get the best experience. By continuing to use Jobilize.com web-site, you agree to the Terms of Use and Privacy Policy.