<< Chapter < Page Chapter >> Page >

Relacionando atributos de qualidade

Além de serem difíceis de medir, atributos de qualidadese relacionam entre si de forma que um pode permitir, ajudar oumesmo dificultar o atendimento de outros. Essas relações entreatributos acontecem mesmo que eles sejam de tipos diferentes.

No [link] , notamos que o atributo de qualidade desempenhoestá afetando os níveis de testabilidade e entendimento do sistema.

Uma forma de aumentar o desempenho do sistemaé diminuir os níveis de indireção usados na comunicação entredois elementos quaisquer no SASF. Um caso simples seriafazer com que algumas chamadas presentes na camada de apresentaçãousassem diretamente a camada de persistência, sem usar alógica de negócio. Essa medida tornaria as chamadas da apresentaçãomais rápidas, uma vez que menos chamadas remotas seriam executadas.No entanto, quando diminuímos as camadas de abstração entredois elementos inicialmente distintos, aumentamos o acoplamentoentre eles e, portanto, dificultamos seu entendimento ou mesmo suatestabilidade.

Já no exemplo a seguir, o atributo de segurançaafeta dois atributos distintos: o desempenho e a usabilidade dosistema.

Uma forma de aumentar a segurança de umsistema operacional é requerer autorização do usuário paraa realização de certas operações. No entanto, o processo de verificaçãodo usuário (além de todos os elementos e abstrações do sistemarelacionados à segurança: unidade certificadora, unidade verificadora,listas de controle de acesso, entre outros.) deterioraráo desempenho da aplicação, dado que consumirá recursosque poderiam ser destinados à operação em si - não a umaspecto dito não-funcional dela. Além disso, o sistemavai ficar menos usável, uma vez que pedirá uma verificação,seja senha, impressão digital, ou certificado, para cada operaçãosensível a ser executada.

O principal motivo que faz com que atributos de qualidadeconflitem é por eles serem impostos por mais de um interessado no software.Assim, como preocupações de diferentes interessados podem conflitar, osatributos de qualidade também conflitarão. Assim, cabe à arquitetura resolver,ponderar, ou ao menos mediar esses conflitos, considerando assim osdiversos trade-offs envolvidos para se alcançar os objetivos do software. O exemploseguinte mostra atributos de desempenho e portabilidade conflitando.

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