Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore Software Invictus

Software Invictus

Published by Aryadnne Zanatta, 2018-03-09 13:33:22

Description: Software Invictus

Search

Read the Text Version

O que é um software Software InvictusQualidade de software Vol IV

Você já pensou o que significa um “Software Invictus” ? É como se fosse um software perfeito, software que não temerros é invicto!O que podemos considerar para que um sistema, software ouapp seja perfeito? Vamos ao TOP Five para ser um software: Objetivo Rápido Zero erros Intuitivo DisponibilidadeÉ pode ser que esses pontos sejam relevantes para algumaspessoas, ou não.Mas o grande X da questão é: Como garantir que todos osrequisitos desenvolvidos separadamente, testadosseparadamente funcionem quando estão juntos?

Vamos entender esse fluxo: *DEV= Desenvolvedor / *QA = Analista de qualidade / *CT = Caso de Teste1 requisito 2 requisitosRequisito Requisito RequisitoAnálise AnáliseTécnica TécnicaDEV. QA DEV. QACT CT CT CT CT CT CT CT CT Tester Tester

Ok, o que significa isso? Isso significa que énecessário realizar o teste de integraçãoque basicamente é juntar tudo que foidesenvolvido e testa-los ao mesmo tempo.\"O teste de integração é importante, pois permite encontrarfalhas que talvez passassem sem serem percebidas durante ostestes anteriores, já que as unidades/módulos funcionaramcorretamente.\" Continue lendo, clique aquiTestes de Integração: Nesta fase as unidades do sistema sãotestadas de forma combinada, o objetivo é detectar falhas nainteração entre as unidades integradas. Não faz parte destafase os testes de integração com outros sistemas. Ex: Naintegração do cadastro de clientes com a função que validaCPF, as duas unidades já foram testadas individualmente nafase de testes de unidade, porém é neste momento que ainteração entre elas é validada. Continue lendo, clique aqui

Um teste de integração é aquele que testa a integração entre duas partes do seu sistema. Os testes que você escreve para a sua classe PedidoDao, por exemplo, onde seu teste vai até o banco de dados, é um teste de integração. Afinal, você está testando a integração do seu sistema com o sistema externo, que é o banco de dados. Testes que garantem que suas classes comunicam-se bem com serviços web, escrevem arquivos texto, ou mesmo mandam mensagens via socket são considerados testes de integração. Continue lendo, clique aquiAgora que já entendemos o que é teste integração, com base namédia de alteração que ocorrem, como você acha que ficaria ocomportamento de quem é responsável por este teste?Pode ser que fique mais ou menos assim: Teste Teste Teste Teste Teste Teste Teste Teste Teste Teste Teste Teste Teste de Integração

Ok, mas vamos dizer que existe várias pessoas para realizar o teste de integração: QA QA Sistema corporativo QA QA Bom, como você deve perceber é extremamente cansativo, como o próprio nome já diz: “Teste é uma palavra anglófona adaptada à língua portuguesa. Este conceito faz referência às provas destinadas a avaliar conhecimentos, aptidões ou competências. A palavra teste pode ser usada como sinónimo de exame.”Para nos ajudar nessa missão contamoscom o Teste automatizado. “A automação é o processo de escrita de um programa de computador para realizar o teste. Uma vez automatizado, um grande número de casos de teste podem ser validados rapidamente. As vantagens da automação tornam-se mais evidentes para os casos de softwares que possuem longa vida no mercado, devido ao fato de que até mesmo pequenas correções no código da aplicação podem causar a quebra de funcionalidades que antes funcionavam.”

- Ah! Então quer dizer que um software do computador vai gravar e executar os testes? - Não, não é isso que vai acontecer. Mas vai ajudar com o que sistema, software ou app caminhe para o “Software Invictus” Quando falamos em teste de integração, nós falamos de horas eternas testando um software. Recapitulando: Para um requisito existem no mínimo 3 casos de testes, então podemos imaginar que para alguma alteração que sejam necessárias 4 modificações, nós teremos 12 casos de testes.Um Case aplicado de automação de testeEm um projeto de média complexidade foram identificados 160casos de testes com duração média de 10min para a execuçãomanual, neste caso nós teremos 1.600 minutos que totalizamaprox. 27horas de teste, dividindo por 7horas de trabalho diárionós teremos quase 4 dias destinados apenas para essestestes.O que você vai ter ao final disso?

Nesse sentido a automação de testes é extremamentenecessária.Neste case aplicado a automação de teste levou 15min pararealizar os mesmos 160 casos de testes.Então.. Como evoluir em relação àgarantia da qualidade para a implantaçãoda automação de testes?O ciclo de desenvolvimento precisa estar no mesmo nível dematuridade desejado para o produto desenvolvido. Dentro dociclo de desenvolvimento todas as etapas são importantes paraque o produto final seja entregue com qualidade.Aperte o play Para exemplificar melhor essa maturidade, assista o vídeo abaixo, ele aborda alguns pontos do nível de maturidade 2 e 3Para quem não se lembra, no e-mail de segunda-feira falamossobre nível de maturidade 1, aperte o play e veja novamente!Aperte o play Nível de maturidade 1

Para alcançar um sistema Invictus,você acredita que seja incluirapenas uma fase de teste?Quando atingimos esse nível de maturidade conseguimos aplicaroutros testes que são extremamente importantes, vejamos quaissão eles:Teste de regressão: Toda vez que algo for mudado, deve sertestada toda a aplicação novamente.Teste Operacional: Garante que a aplicação pode rodar muitotempo sem falhar.Teste de Performance: Verifica seo tempo de resposta é o desejadopara o momento de utilização daaplicaçãoTestes de stress: Testar a aplicação sem situaçõesinesperadas. Testar caminhos, às vezes, antes não previstos nodesenvolvimento/documentação.

Teste de carga: Verifica ofuncionamento daaplicação com a utilizaçãode uma quantidade grandede usuários simultâneos. A garantia da qualidade além de ter a visão clara do que testar, como testar e quando testar, trabalha e dependente intrinsecamente  da Gestão da qualidade que atua com o processo, método e workflow do trabalho. Definir de papeis e responsabilidades, são pontos cruciais para que efetivamente exista um software de qualidade.

Sempre haverá algo a mais para testar, e na visão de quem é responsável por garantir que o software funcione, nunca será o suficiente. Hoje, contamos com vários Frameworks de Gerenciamento de Projetos ágeis que apoiam e contribuem ativamente para o processo e o sucesso dos sistemas desenvolvidos. Por exemplo temos: Lean IT, Scrum, XP, Kanban, SAFe e NexusMas esse assunto será tratado emoutra oportunidade!

Acesse: www.movingbrasil.com.br [email protected]


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook