Baixe o app para aproveitar ainda mais
Prévia do material em texto
Projeto, Implementação e Teste de Software Aula de Hoje Prof.ª Esp. Janaína Freitas Aula de Hoje Plano de Estudo: • Implementação de Software • Teste de Software Pré-requisitos: • Unidade: III e IV Projeto, Implementação e Teste de Software Implementação de Software Prof.ª Esp. Janaína Freitas Imagem: Shutterstock Projeto, Implementação e Teste de Software Implementação de Software Na Implementação de Software ocorre a: • Codificação (programação dos requisitos do sistema); • Detalhamento dos componentes previstos no projeto; • Descrição do código fonte e do código binário; • Escolha da Linguagem de programação. Imagem: Shutterstock Projeto, Implementação e Teste de Software Implementação de Software Envolve as seguintes atividades: • Codificação • Depuração • Compilação • Integração • Testes Projeto, Implementação e Teste de Software Implementação de Software Na Implementação de Software, o programador procura mapear as representações ou modelos obtidos no projeto para uma dada linguagem de programação. Lembrem-se: a escolha da linguagem de programação exerce um impacto no desenvolvimento da codificação. Por quê? • Considerada uma atividade trabalhosa; • Demanda tempo; • Exige profissionais com habilidade e experiência na área. Implementação de Software Estilo de Programação e Codificação é um fator que é essencial para a obtenção de um código: • Limpo e claro; • Facilidade de manutenção; • Boa utilização dos mecanismos da linguagem adotada; • Melhoram o trabalho em equipe. Projeto, Implementação e Teste de Software Imagem: Shutterstock Projeto, Implementação e Teste de Software Implementação de Software Questões que afetam o estilo das codificações: • Atribuição de nomes: refere-se a escolha de nomes de variáveis, classes, métodos e outros elementos. Use: • Nomes significativos, pronunciáveis e buscáveis. • O método deve fazer uma coisa única e bem. • Se estiver fazendo mais, extraia. Bons nomes facilitam a PESQUISA e a MANUTENÇÃO Projeto, Implementação e Teste de Software Implementação de Software Os comentários são muito importantes. • Podem ajudar ou prejudicar significativamente a legibilidade e a mantenabilidade. Podem surgir alguns problemas ao usar os comentários: • Desviar a atenção do código; • Tornar o código mais difícil de ler; • Podem estar errados, podendo levar a mais erros; • Podem ficar desatualizados; • Códigos evoluem. Apesar dos problemas, os comentários podem ajudar a esclarecer o código e a entendê-lo. Projeto, Implementação e Teste de Software Implementação de Software Analise os comentários no código abaixo. O que você acha deles? Dizem alguma coisa? Fonte: Autora Projeto, Implementação e Teste de Software Implementação de Software Analise os comentários no código abaixo. O que você acha deles? Dizem alguma coisa? Fonte: Autora Projeto, Implementação e Teste de Software Depuração É o ato de localizar e corrigir erros no código. • A depuração de código é uma ferramenta essencial em qualquer projeto de software. • Com ela é possível encontrar defeitos no código que podem prejudicar todo o andamento da aplicação. • Evita tempo desperdiçado para encontrar erros que não são tão triviais. • Depuradores são responsáveis por permitir ao programador monitorar a execução de um programa, além de outras tarefas pertinentes. Projeto, Implementação e Teste de Software Depuração • Em qualquer depuração, o lema de dividir para conquistar é o padrão. Essa divisão é feita como uma forma de simplificar o problema. Um exemplo clássico: • Um programa que lê diversos registros e o problema está associado a apenas um deles. • Lendo apenas uma dessas entradas, é possível ver o erro. • Após o isolamento do problema, ele precisa ser identificado, aqui passamos a usar os depuradores. Projeto, Implementação e Teste de Software Depuração Algumas Dicas - bugs fáceis: • O programa fez algo que não devia ou imprimiu algo absurdo? • Pare para pensar o que pode ter ocorrido. • Olhe para a saída do programa: - comece do lugar onde a coisa inesperada aconteceu; - volte passo a passo; - examine cada mensagem e tente descobrir onde o erro se originou. Projeto, Implementação e Teste de Software Depuração Algumas Dicas - bugs fáceis: examine a mudança mais recente no código. • Qual foi a última mudança? • Se você roda os testes a cada mudança e um teste falha, o que provocou o erro foi a última mudança: – ou o bug está no código novo; – ou o código novo expôs o bug de outro lugar. • Se você não roda testes a cada mudança, veja se o bug aparece nas versões anteriores do código. Projeto, Implementação e Teste de Software Depuração Algumas Dicas - bugs difíceis: torne o erro reproduzível. • O pior bug é aquele que só aparece de vez em quando. • Faça com que o erro apareça: – Construa uma entrada de dados e uma lista de argumentos que leve ao erro. • Se você não consegue repetir o erro quando você quer, pense no porquê disto. Teste de Software Prof.ª Esp. Janaína Freitas Teste de Software • Teste de software é o processo que visa executar o sistema de forma controlada, com o objetivo de avaliar o seu comportamento, baseado no que foi especificado. • Teste de software é destinado a mostrar que um programa faz o que é proposto a fazer e para descobrir os defeitos do programa antes do uso. Projeto, Implementação e Teste de Software Teste de Software Por que testar? • Quando um código defeituoso é executado, falhas ocorrem. • Um sistema com falhas gera insatisfação, ferimentos ou até mesmo a morte dos clientes e usuários. Testamos para: • Verificar se o sistema está fazendo o que foi solicitado que ele fizesse no requisito. • Garantir que o negócio não vai correr riscos provocados por defeitos em produção. • Assegurar a Qualidade do sistema. Projeto, Implementação e Teste de Software Projeto, Implementação e Teste de Software Teste de Software Será que o Teste prova que tudo está bem e funcionando adequadamente? • Os Desenvolvedores querem provar que “algo funciona”. • Os Testadores querem provar que “algo não funciona”. Analisando o esforço dos testes, podemos perceber que é mais fácil provar que “algo funciona” do que provar que “algo não funciona”. Projeto, Implementação e Teste de Software Teste de Software Visão do Desenvolvedor: • Objetivo de provar que as coisas estão funcionando. • Testa os cenários positivos. Visão do Testador: • Objetivo de provar a não adequação de algo. • Testa os cenários positivos e negativos e de stress. Projeto, Implementação e Teste de Software Teste de Software Erro – Engano cometido por seres humanos. Falha – Resultado ou manifestação de um ou mais defeitos. Defeito – Resultado de um erro encontrado num código ou num documento (bug). ERRO DEFEITO FALHA O ser humano está sujeito a cometer um erro (engano) Que produz um defeito (bug) no código ou documento Se um defeito no código for executado, o sistema irá falhar Fonte: Autora Projeto, Implementação e Teste de Software Teste de Software – Por que ocorrem falhas? Significa que o sistema não está de acordo com o esperado pelo usuário. Por Exemplo: • Quando um usuário do almoxarifado consegue efetuar consultas no sistema em relatórios que só a gerência deveria ter acesso, isto é uma falha. Uma falha é o resultado de um ou mais defeitos em algum aspecto do sistema. Teste de Software – Por que ocorrem falhas? Motivos que podem ter originado este tipo de falha:• A especificação pode estar errada ou incompleta. • A especificação pode conter requisitos impossíveis de serem implementados. • Talvez a base de dados esteja organizada de forma que não seja permitido distinguir os tipos de usuário. • Pode ser que haja um erro no algoritmo de controle dos usuários. • Pode ser que haja erros no código, o algoritmo pode estar implementado de forma errada ou incompleta. Projeto, Implementação e Teste de Software Teste de Software – Exemplo • Empresa não consegue vender porque o sistema não deixa: Consumidor tenta comprar um produto na loja Tok & Stok, mas o sistema utilizado pela empresa, não deixa. • Natureza do problema: Consumidor queria comprar dois presentes para dois casamentos que iriam ocorrer, por coincidência, no mesmo dia. Como seriam comprados dois presentes de duas listas de casamento, o sistema não deixava usar o mesmo CPF. Projeto, Implementação e Teste de Software Imagem: Shutterstock Próxima aula: Unidade IV e V • Teste de Software Projeto, Implementação e Teste de Software
Compartilhar