Treinamentoring Testes Ágeis


O que é?

Um conjunto de serviços de implantação de automação de testes, formatado como produto de consultoria e mentorização. É direcionado a organizações que desenvolvem software mas não possuem uma estrutura madura em teste de software com ferramentas de automação.

A montagem da infraestrutura para os testes de um projeto piloto e um conjunto inicial de casos de teste automatizados é implantado, poupando energia na busca de soluções de teste através da orientação de um profissional especializado.

Como funciona?

Durante um prazo pré-estabelecido, um consultor interage com a equipe de desenvolvimento, realizando tarefas em conjunto com cada profissional, no papel de mentor de práticas e ferramentas de teste com uma abordagem ágil. Programando em par com o desenvolvedor, o consultor implanta um conjunto inicial de testes unitários. Junto com o cliente ou analista de negócios, escreve testes de aceitação automatizados. Colaborando com um líder técnico ou arquiteto, adapta a organização dos arquivos com código-fonte e bibliotecas para implantar builds automatizadas e integração contínua.

Transferência de conhecimento on-the-job

Para diversos papéis envolvidos no desenvolvimento, haverá o trabalho em conjunto com o consultor para transferir o conhecimento das técnicas relacionadas aos testes:

  • Junto ao responsável pelo suporte da serão feitas as adaptações necessárias ao funcionamento do servidor "test-in-a-box" dentro da rede da organização, transferindo os detalhes técnicos necessários a sua posterior operação e manutenção.
  • Com uma pessoa responsável pela organização física do projeto de software, que pode ser um líder técnico, um arquiteto ou um desenvolvedor Sr., será feita a reorganização física dos módulos do projeto para adequá-lo ao ambiente de build automatizada e integração contínua.
  • Para um número limitado de desenvolvedores, haverá sessões de programação em pares para a escrita de testes unitários no ambiente normalmente utilizado para desenvolvimento, provendo um conjunto inicial de testes integrados no processo de build automatizada.
  • Em parceria com um cliente ou seu representante (por exemplo, um analista de requisitos ou analista de negócios), será feita a escrita de testes de aceitação automatizados, expressos em planilhas ou em linguagem próxima da linguagem natural.
  • O trabalho conjunto com profissionais de teste consistirá em escrever testes automatizados nas ferramentas que fazem parte do pacote de serviços oferecido, incorporando-as também ao processo de build.
  • Para o gestor, serão apresentadas as ferramentas de análise e monitoramento disponíveis nos softwares utilizados e fornecidos os conceitos necessários para a análise crítica dos seus dados.

O que será entregue?

Ao término dos serviços, o cliente terá uma infraestrutura de integração contínua com um conjunto inicial de testes automatizados, executando em seu próprio ambiente de desenvolvimento ou homologação. Membros da equipe atuando em diferentes papéis terão adquirido também o conhecimento mão-na-massa de um conjunto de práticas ágeis relacionadas a testes.

Veja as partes deste serviço:

Diagnóstico inicial

  • Documento que descreve a situação atual da organização de desenvolvimento, com destaque para metodologias, processos e alinhamento com os objetivos de negócio. O nível de maturidade na adoção de práticas ágeis e a abordagem da organização para qualidade e testes serão analisadas neste texto.
  • Este entregável será desenvolvido após reuniões de análise dos processos atuais da organização, e a compilação de questionários respondidos pela equipe e os interessados diretos (stakeholders).

Workshop de Agile Testing

Misto de treinamento e dinâmica de grupo, com duração de 1 dia, em que se discutem com a equipe os principais conceitos de teste de software sob a perspectiva da agilidade, no contexto próprio da organização contratante.

Servidor pré-configurado "test-in-a-box"

  • Consiste num servidor implementado como uma imagem de PC virtual, com os serviços necessários para o controle de versões, agendamento de builds, gerenciamento de dependências e execução de testes automatizados. Este PC virtual será implantado em um equipamento fornecido pela contratante, com uma configuração mínima previamente especificada. Os ajustes à infraestrutura de rede da organização serão feitos em conjunto com os profissionais de suporte do contratante, que darão posterior manutenção ao sistema.

Documentação apropriada do conjunto de procedimentos necessários para esta adaptação será entregue ao contratante.

Em princípio, todo o software deste servidor será de licença de código aberto (open source), exceto nos casos em que a contratante dependa da instalação de produtos de software sob outro tipo de licença para a execução dos serviços necessários. Nestes casos, a contratante fica responsável pela instalação daqueles produtos.

Treinamentos específicos de técnicas e ferramentas de teste

  • Consiste num treinamento dos conceitos e tecnologias envolvidas na implantação de testes ágeis, com énfase na automação.

Estes treinamentos serão escolhidos entre os que constam do catálogo da Globalcode, e serão oferecidos de acordo com as necessidades previamente levantadas de complementação dos conhecimentos da equipe.

Tutoriais baseados no trabalho feito

As tarefas da fase on-the-job serão documentadas em mini-tutoriais, com os exemplos feitos junto aos profissionais da equipe. Estes exemplos próximos ao dia-a-dia da equipe permitem uma aplicação mais direta e clara dos conceitos repassados aos profissionais durante a execução do serviço.

Mentoring pós-treinamento

Consiste num mentoring com tempo bem definido realizado por um especialista para a equipe do cliente sanar dúvidas sobre as práticas de teste suportadas pelo ambiente implantado durante o serviço, detalhes de infraestrutura, e práticas ágeis relativas a testes. O consultor proverá orientação sobre situações específicas no uso das ferramentas e técnicas, dentro do comprometimento de tempo acordado para esta etapa.


voltar

Siga-nos