<< Chapter < Page Chapter >> Page >

Por fim, poderíamos ainda afirmar a partir do primeiroobjetivo: não importa o quanto “de acordo com as boas práticas” a arquiteturade um software está, se ela não atende aos requisitos que esperam que elaatenda. Ela, simplesmente, estaria acertando o alvo errado. Mas é claro que as boas práticas serão ferramentas para resolver os problemas propostos pelos stakeholders. Portanto, a medida de atendimento aos requisitos do sistema é a melhormedida de sucesso da arquitetura, desde que se conheçam os requisitos.

Conflitos entre requisitos e atributos de qualidade

Situações de conflito surgem quando requisitos de stakeholdersdivergem ou afetam atributos de qualidade comuns. Podemos observar que esse tipode situação está presente, inclusive, em alguns exemplos anteriores ( [link] e [link] ). Nesses exemplos são ilustrados conflitos entreatributos de segurança e usabilidade e entre segurança e desempenho. A seguir,citamos outros atributos de qualidade e relacionamos a alguns stakeholdersque têm requisitos que comumente divergem durante o ciclo de vida do software.

Desempenho versus custo

Usuários buscam por maior desempenho, enquantoclientes e gerentes costumam preferirmenor custo de desenvolvimento. Esses atributos divergem porqueé comum que maior desempenho resulte em uma solução que necessite demais recursos computacionais ou ainda desenvolvedores mais qualificadosna sua construção.

Desempenho versus escalabilidade

O cliente, que espera ganhar dinheiro a partirda popularização do software, impõe o requisito que ele seja capazde servir a demanda crescente de usuários. Já os usuários continuambuscando por desempenho do software, não se importando se há dez, milou um milhão de usuários usando-o ao mesmo tempo. Uma forma simplesde servir a demanda crescente de usuários, ou escalar, seria nãose preocupar com o tempo de resposta do serviço para cada usuário eaumentá-lo drasticamente. No entanto, o aumento do tempo de respostaé um indício de perda de desempenho, caracterizando o conflito.

Usabilidade versus segurança

Em um último exemplo, citamos o conflito entre usabilidadee segurança. Usuários esperam realizar suas tarefas rapidamente, sem dúvidase sem erros causados pela dificuldade de usar, ou seja, esperam usabilidadedo software. Por outro lado, auditores, clientes e os próprios usuáriosesperam que suas informações estejam a salvo, tanto para casos de ataques,quanto para manipulação indevida. Medidas de segurança devem serprojetadas e o software deve prover meios de autenticação, autorização,confidencialidade e auditabilidade. Ao tomar essas medidas, a usabilidadeé afetada negativamente, uma vez que mais passos serão necessáriospara se realizar as mesmas ações. Por exemplo, para começar a usaro software, agora será necessário inserir uma senha para que o usuárioseja autenticado. Portanto, a adoção de políticas de segurança costumaafetar negativamente a usabilidade 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