Visões em arquitetura de software - Varoto, Ane Cristina (2002)
Muitos fatores podem causar o insucesso de sistemas de software e não são percebidos pelas pessoas envolvidas durante o desenvolvimento. Identificar tais fatores não é trivial. Especificações e implementações calcadas apenas em requisitos funcionais não garantem o bom andamento do projeto e nem a robustez do sistema, principalmente quando consideramos a vulnerabilidade do contexto e o dinamismo das definições. A preocupação em corresponder todos os requisitos necessários - tanto os requisitos funcionais quanto os atributos de qualidade (ou requisitos não funcionais) - com os subsistemas e componentes que compõem este sistema deve ser constante. E fornecerá subsídios para antecipar tomadas de decisões importantes, minimizando riscos. A esta definição chamamos arquitetura de software. A arquitetura de um software pode ser observada sob diversas perspectivas ou visões, cada qual ressaltando aspectos específicos. As visões podem ser utilizadas como base para se definir a arquitetura de um software, considerando sua abrangência no processo de desenvolvimento de sistemas, seu foco de atuação e seu impacto nos fatores de qualidade requeridos para a solução do problema. Este documento traz a formalização de alguns esquemas de visões em arquitetura, especificando a competência, a abrangência e os detalhes de cada visão. Também faz uma comparação entre as visões de cada esquema segundo os fatores de qualidade de McCall, podendo ser utilizada como um checklist para garantir os níveis de qualidade desejados para a solução