O documento discute a importância da arquitetura de software e realização de testes antes e depois da implementação de um sistema. Ele define arquitetura de software e lista propriedades arquiteturais como desempenho, usabilidade e segurança. Também descreve técnicas de verificação e validação como revisões, walkthroughs e testes de segurança que podem ser realizadas antes ou depois da implementação para melhorar a qualidade do software.
2. Segundo o padrão ISO/IEEE 1471-2000,
“Arquitetura é a organização fundamental de um
sistema incorporada em seus componentes, seus
relacionamentos com o ambiente, e os princípios
que conduzem seu design e evolução.”
O que é arquitetura de software?
5. Propriedade Métrica
Desempenho Transações por segundo
Tempo de resposta por requisição
Tempo de carregamento da tela
Usabilidade Tempo de treinamento necessário
Tempo de execução de uma rotina
Confiabilidade Tempo médio para falhas
Probabilidade de falhas
Disponibilidade
Segurança Número de vulnerabilidades conhecidas
Número de ameaças conhecidas
Probabilidade de ataques
6. ● Verificação
○ Estamos construindo “certo” o produto?
● Validação
○ Estamos construindo o produto “certo”?
V & V
10. ● Visa descobrir defeitos o mais cedo possível;
● Visa a melhoria da qualidade dos artefatos;
● Evitar retrabalho;
Revisões técnicas
11. Segundo McGraw Hill (1998)
● Cada seção de inspeção remove de 60 a 65% dos
defeitos
● Quando combinados com práticas de testes esse
número pode subir para 90%
Revisões técnicas
12. ● Reuniões informais para avaliação de artefatos
● Não existem restrições quanto à discussão sobre
validação dos defeitos e/ou solução
● Apresentação dos artefatos e avaliação prática
Walkthroughs
13. ● Checklist de avaliação preparados por pessoas com
conhecimento técnico
● Reuniões são realizadas para identificar os artefatos
Checklists
14. ● Um especialista na área valida o artefato
● O processo de desenvolvimento deve considerar a
validação
● Especialista interno ou externo
Parecer do especialista
23. Segundo Martin & McClure (1984):
● Manutenção contabiliza quase 67% dos custos totais;
● 20% do orçamento de manutenção é para corrigir
defeitos;
● 25% é gasto para adaptar a um novo ambiente;
● 6% é gasto para corrigir documentação;
● 4% é gasto com problemas de performance; e
● 42% é gasto com solicitação de usuário.
Custo de manutenção de software