Post on 21-Jun-2015
description
Como planejar a equipe e criar casos de testes OO?
Marselha AltmannInstrutora e Consultora de Testes de Software
maltmann@targettrust.com.br
Conteúdo da palestra
1 – Como planejar a equipe de testes. Capacidade técnica ou perfil?2 – Processo orientado a Aspectos3 – Testes de Aplicações OO baseado em Estado4 – Testes de Componentes5 – Case “Empresa Testing”6 – Perguntas
Como planejar a equipe de testes. Capacidade técnica ou perfil?
• Os gestores além de cobrar resultados, é preciso criar um ambiente saudável e estimulante para que as pessoas possam produzir bons resultados;• Maior parte dos líderes das organizações são pessoas que foram formadas tecnicamente para agir em suas áreas de especialização;• Perda de controle emocional;• Falta de gestão de conhecimento;• Conflito de idéias: Antigo Gestor x Novo Gestor.
Como planejar a equipe de testes. Capacidade técnica ou perfil?
No gerenciamento de pessoas é importante: • O líder é o espelho da equipe. Portanto o líder deve ser o primeiro a perceber suas atitudes positivas ou negativas. Faça uma auto-análise;• Ter autocontrole das emoções é uma obrigação de liderança;• Busque o aprimoramento pessoal através de cursos, livros e também contato com outros profissionais.
Como planejar a equipe de testes. Capacidade técnica ou perfil?
• Atualmente, não basta apenas possuir capacidade técnica. Qualquer gestor deve ter o perfil adequado para gerenciamento de equipe, e possuir algumas características e aprimoramento como: autocrítica, resiliência, altruísmo, carisma e promove o debate de idéias.
Lembre-se ...
“Gerir pessoas é uma arte e o artista não
nasce pronto. É preciso muita técnica, prática e atualização”.
Processo orientado a aspectos (Aspecting - POA)
O que é Processo orientado a Aspectos?
• O intuito é realizar uma reengenharia do sistema, mais conhecida como uma “limpeza de código” ou conhecida como REFACTORING;• É separado os requisitos funcionais e não funcionais por interesses e depois são unidos novamente;• O objetivo principal é a reutilização do código, com fácil manutenção.
• O desenvolvimento de software orientado a aspecto (DSOA) é realizado em três fases: a decomposição, a implementação e a recomposição de requisitos.
Processo orientado a aspectos (Aspecting - POA)
• A decomposição consiste na identificação de requisitos funcionais e não funcionais e sua devida separação conforme interesses;
• A implementação codifica esses requisitos separadamente;
• A recomposição é a junção dos códigos dos requisitos funcionais e não funcionais formando o sistema através de uma união.
Processo orientado a aspectos (Aspecting - POA)
• A modelagem orientada a aspecto pode ser realizada com o apoio do UML. A primeira etapa é o levantamento de requisitos. A representação dos aspectos se dá através de um losango.
Processo orientado a aspectos (Aspecting - POA)
• A migração ocorre da seguinte maneira: entender as funcionalidades, tratar os interesses e comparar os sistemas.
Processo orientado a aspectos (Aspecting - POA)
• O resultado esperado é a limpeza do código original.
Processo orientado a aspectos (Aspecting - POA)
Testes de Aplicações OO baseado em Estado
• Um estado é definido como sendo um subconjunto do conjunto de todas as combinações possíveis dos valores de atributos da classe;• O objetivo do teste de estado é testar o sistema OO sem testar todas as combinações possíveis, fornecendo confiança de que o comportamento correto será produzido para todas as combinações.
Testes de Aplicações OO baseado em Estado
Classe CONTA
• Operações: saldo (fornece o saldo atual da conta)• Crédito: adiciona um valor ao saldo• Débito: subtrai um valor do saldo• Abre: cria uma nova conta • Fecha: finaliza todas as atividades da conta• Atributos: saldo (saldo atual da conta)• Número: número da conta
Testes de Aplicações OO baseado em Estado
Testes de Aplicações OO baseado em Estado
“Com o diagrama, a visualização dos
estados, das pré-condições e pós-condições ficam claros desde que sejam bem
definidos”.
Testes de ComponentesO que é um componente?
• São partes que compõem um conjunto ou solução completas para um serviço específico (DLLs, JavaBeans – Componentes Java). Empacotam e encapsulam a implementação.
• Os componentes são compostos por regras de negócios, funcionalidades e recursos que permitem aos componentes serem reutilizados por outros softwares.
Testes de Componentes
Testes de ComponentesQuestões para a realização de testes de componentes
• Um componente isolado: saber se um componente é adequado para determinado propósito e se é possível testar características separadamente (desempenho);
• Sistema baseado em componentes: garantir se as interações desejadas entre componentes são as que irão ocorrer.
Testes de ComponentesQuestões para a realização de testes de componentes
• Substituição de componente: garantir se a substituição de um componente não implicará na necessidade de refazer os testes no sistema inteiro.
• Usuários: se o funcionamento do componente está correto. Confiabilidade e portabilidade.
Testes de Componentes
Componente de Entrada (Input)
Testes de Componentes
Componente de Saída (Output)
Testes de Componentes
Componente de Ação e Vinculação (Action and Link)
Testes de Componentes
Componente de Layout
Case “Empresa Testing”
Um breve histórico ...
• Produto e tecnologia nova;• Falta de especialista no negócio;• Desenvolvimento terceiro (clientes com particularidades diferentes);• Falta de um processo;• Informalidade;• Descentralização de informações.
Case “Empresa Testing”
Para solucionar o problema ...
• Documentação da arquitetura de software;• Gestão do conhecimento;• Criação de uma equipe de testes especialista; Processo ágil e eficaz para atendimento de demandas;• Treinamento para a equipe de testes.
Case “Empresa Testing”
O processo em si ...
• Inicialmente é vantagem contratar uma empresa terceira especialista no produto a ser lançado no mercado, mas futuramente, conforme o aumento de implementações, o RISCO cresce paralelamente.
Case “Empresa Testing”
Portanto ...
• Foi necessário otimizar a fase de testes e maximizar a fase de homologação, tratando o grau de gravidade (GUT) dos RISCOS.
Case “Empresa Testing”Sendo assim...
• Na fase de testes, trata-se as funcionalidades da seguinte forma:
Se cenários tem o mesmo resultado de saída, então é tratado como um mesmo cenário;
Se cenários tem diferente resultado de saída, então é tratado como cenários separados.
Case “Empresa Testing”
x y z
xyz
xx yy zz
Case “Empresa Testing” “PODER DA VISÃO: As empresas querem e precisam de pessoas com perfil diferente, que não se conformem com algo mal feito, que não se intimidam diante das crises e
dificuldades, que se utilizem da criatividade, da cooperação, da motivação, da
humildade, do espírito de liderança, para que não sejamos simples expectadores e
sim o ator principal”.
Perguntas ?
Muito obrigada!
Marselha Altmannmaltmann@targettrust.com.br
Contato: (51) 9685-8164