QUALIDADE DE SOFTWARE Prof. Carlos Augusto da Costa Carvalho
Funcionalidade Avaliação feita no inicio Fase de Projeto de Arquitetura Feita muitas vezes sem perceber Revisão do projetista Métricas de Funcionalidade acrescentar a revisão de coleta de dados Durante o Projeto Lógico – Contagem de Itens Diagramas Protótipos Interfaces
Funcionalidade Interoperabilidade pode ser avaliada estaticamente (sem executar o produto) Verificação da arquitetura Implementação das funções necessárias Acurácia pode ser medida obtendo a contagem após o software pronto (Acurácia – 1 Mat Exatidão de uma tabela ou de uma operação. 2 Fís Propriedade de uma grandeza física que foi obtida por processos ou por instrumentos isentos de erros)
Manutenção/Manutenibilidade A Manutenção é classificada em: Corretiva Modificações realizadas com o objetivo de corrigir defeitos ou não conformidades, garantindo que siga as especificações Adaptativa Utilizada nas modificações dos requisitos após o projeto e a implementação do produto
Manutenção/Manutenibilidade A Manutenção é classificada em: Incremental Acrescenta informações às especificações dos produtos, como funções ou módulos não previstos Preventiva (Pressman 2002) Utilizada para modificar o produto facilitando a realização da das manutenções Corretivas, Adaptativas e Incrementais
Manutenção/Manutenibilidade As métricas são importantes para gerenciar essas atividades Podem ser aplicadas em 2 casos: Prever o esforço para modificar o software Criar base de dados histórica que acompanha o desenvolvimento Exemplo: Um projeto com muitas modificações pode indicar que o projeto foi pouco detalhado no início ou problemas de especificação de requisitos do cliente
Manutenção – Medidas de Tamanho Medidas de Tamanho Programas maiores demoram mais tempo para serem escritos e custam mais caro Produto maior, normalmente, envolve trabalho mais complexo Algumas medidas de tamanho não são aplicadas. Ex.: 1) “Duplicar força para transportar o dobro do peso” Para programar o dobro de linhas de código, em geral, é preciso mais que dobrar o tempo. 2) A Confiabilidade exigida do software não pode ser medida com a informação “500 linhas de Java”
Manutenção – Medidas de Tamanho Mesmo assim, as medidas de tamanho ainda são usadas porquê: Estão entre as métricas mais simples São de fácil interpretação quando não houver muita precisão em jogo Possuem baixo custo de aplicação
Manutenção – Medidas de Tamanho Medidas de linha de código É a medida mais simples para tamanho de programa LOC – Lines Of Code SLOC (Souce Line of Codes) – lógico e físico LOC Mais simples e impreciso Não distingue linhas em branco ou comentários Pode ter precisão quando compara grandes volumes de código 4 KLOC > 2 KLOC
Manutenção – Medidas de Tamanho SLOC Não considera linhas em branco ou comentários Lógico Contendo vários Comandos Ex.: //Comparação If (a>b) {a++; puts (“OK”); } Físico Linha de Código O Exemplo tem 3 LOCs, 2 SLOCs físicos e 3 SLOCs lógicos.
Manutenção – Medidas de Tamanho Pontos de Função Medir o software considerando funcionalidades Pode ser aplicada antes de o código ser escrito Independe da tecnologia utilizada Pode ser aplicada logo após a definição da arquitetura
Atividade 1) Elabore o seguinte formulário a) Formulário de avaliação de qualidade: Identificar o projeto, os objetivos de qualidade e maneira de aplicá-las. Escrever claramente o contexto de uso para cada item. Utilizar o formulário para avaliar o Word b) Formulário de resultados: deve novamente identificar todos os componentes do processo de avaliação e problemas encontrados durante a avaliação. Os resultados obtidos das métricas devem estar claramente identificados.