Como planejar a equipe e criar casos de testes OO

Post on 21-Jun-2015

1.542 views 1 download

description

Os slides apresentam como planejar a equipe de testes. Capacidade técnica ou perfil? Apresenta o modelo POA, Testes de Aplicações OO baseado em Estado, Testes de Componentes e um "Case" aplicando a otimização de cenários.

Transcript of Como planejar a equipe e criar casos de testes OO

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