<< Chapter < Page Chapter >> Page >

Visões da arquitetura

Como consequência da existência dos diversos interessados nos objetivosalcançados pelo software, a arquitetura também possuirá diversos interessados.No entanto, uma vez que os interessados no sistema têm diferentes preocupaçõese níveis de conhecimento, a arquitetura não deve ser exposta da mesma maneira parainteressados diferentes. Para resolver esse problema, surge o conceito de visões arquiteturais .

Considerando a arquitetura do SASF, vejamos as preocupações dedois interessados diferentes: o implementador e o responsável pela disponibilidadedo sistema em produção. O implementador está preocupado com módulos, classese algoritmos que ele e seu time terão que construir, como e com quais subsistemasesses módulos irão se comunicar ou ainda quais restrições de comunicaçãoforam impostas em seu design. Já o responsável pela disponibilidade estápreocupado em como o SASF está distribuído entre as máquinas, que funcionalidadesserão afetadas caso um conjunto específico de máquinas deixe de funcionar, oucomo será possível realizar a troca de um servidor sem afetar o tempo deinício de uma transmissão de vídeo.

Podemos observar que há preocupações bem diferentes entre os doisinteressados e assim perceber que dimensões bem diferentes da arquitetura são necessáriaspara satisfazê-los. Para o primeiro, a arquitetura deve mostrar que módulos lógicos(pacotes, classes, bibliotecas) compõem o sistema, além das relações de comunicaçãoe restrição entre eles. Já para o segundo, a arquitetura deve mostrar como o sistemaestá dividido fisicamente, quais partes do sistema estão executando em quais computadores,quais os links físicos entre esses computadores, etc.

Uma visão arquitetural é uma representação da informação (ou partedela) contida na arquitetura de forma que se adéque às necessidades de um ou maisinteressados. Ela facilita o entendimento da arquitetura por parte do interessado,uma vez que vai filtrar e formatar a informação de acordo com as necessidades e preocupaçõesdo interessado em questão.

visão arquitetural
É a representação do sistema ou de parte dele da perspectiva deum conjunto de interesses relacionados.

Não podemos esquecer que o próprio arquiteto também pode tirar proveitodesse conceito durante o processo de design da arquitetura. Quando um arquiteto fazdesign, ele usa o conceito de visões arquiteturais para assim endereçar as diferentes preocupaçõesdo sistema por vez. Dessa maneira, ele divide o problema de design em problemasmenores e, consequentemente, menos complexos: ele endereça cada atributo de qualidade– cada aspecto do sistema – que serão alcançados por essa arquitetura. Atacando uma visãopor vez, o arquiteto pode, por exemplo: primeiro definir as partições lógicas,ou seja, os módulos funcionais que comporão o sistema – e assim considerar uma visãológica do sistema; definir as partições dinâmicas do sistema, ou seja, quais processos, threads e protocolos estarão presentes no sistema – considerar uma visão de dinâmica; definiras partições do ponto de vista de implementação, ou seja, que classes, pacotes e bibliotecascomporão o sistema – considerar uma visão de desenvolvimento; e, por fim, definironde as partes dinâmicas executarão, ou seja, onde e em quais máquinas os diversos“executáveis” do software estarão implantados, além de como eles vão se comunicar – consideraruma visão de implantação do sistema.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  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.

Notification Switch

Would you like to follow the 'Arquitetura de software' conversation and receive update notifications?

Ask