Muita coisa mudou o processo de desenvolvimento de software desde a metodologia em cascata, em que os testes eram feitos na sua maioria no final desse processo. Hoje em dia, a maioria dos desenvolvimentos segue uma metodologia agile.
Segundo estas metodologias, os intervenientes no processo de QA são treinados para se concentrarem na qualidade e recebem as ferramentas necessárias para detetar erros o mais cedo possível. No fim de contas, todos estamos familiarizados com os estudos que relacionam o atraso em encontrar um bug com o custo –quanto mais tarde, maior - de o reparar, certo?
Custo relativo para corrigir bugs com base no tempo de detecção
É aqui que entram em jogo os QA Managers. Estes atuam principalmente como peritos na matéria que estabelecem diretrizes, normas, metodologias, procedimentos e métricas. São a referência e a autoridade final em todas as questões de qualidade, dos projetos e produtos de software de uma área ou de uma empresa.
Vejamos quais são as funções e responsabilidades de um gestor de qualidade em organizações ágeis.
Seleção da equipa de QA
Aqui, a tarefa do QA Manager consiste em compreender as diferentes naturezas presentes nas aplicações da organização. O objetivo é compor uma equipa de especialistas em QA nas diferentes tecnologias necessárias para poder cobrir a qualidade dos diferentes componentes das aplicações, determinadas pela sua natureza e pela arquitetura de desenho das mesmas.
Um especialista em testes exploratórios não é o mesmo que um especialista em automação de interfaces de utilizador web, ou móvel, e se estes são diferentes entre si, a diferença é ainda maior entre um especialista em testes backend com APIs Web, ou um especialista em testes de desempenho.
Por conseguinte, esta é a primeira tarefa crítica que requer uma análise cuidadosa para determinar as necessidades de composição da equipa e da sua dimensão a fim de, mais tarde, selecionar tais perfis no mercado de trabalho.
Posteriormente, será necessário determinar tarefas, responsabilidades, áreas de colaboração e sincronização, bem como o desenvolvimento e utilização de ferramentas para a gestão integral do processo de QA na empresa.
Definição de standards de qualidade
Esta tarefa, que deveria ser relativamente simples de acordo com a teoria, ou seja, verificar se as funcionalidades correspondem ao especificado nos requisitos, não é tão simples na prática, uma vez que na maioria dos casos (especialmente em agile), estes requisitos não são formalmente especificados, mas baseiam-se em pressupostos tácitos, comunicados verbalmente, que todos pensam em partilhar no momento de definir e implementar a funcionalidade.
O processo de QA parte muitas vezes da necessidade de realizar e captar essa análise funcional para a definição de casos de teste e a possibilidade de conhecer a cobertura. Este processo deve ser planeado e supervisionado. Portanto, a utilização de uma ferramenta de gestão de casos de teste com capacidade de integração com outras ferramentas do processo de QA e de geração de relatórios, histórico, etc., é necessária para efeitos de registo, rastreabilidade e visibilidade da evolução.
De acordo com a relação esforço/benefício, é importante considerar uma estrutura semelhante à proposta na pirâmide de testing para otimizar o esforço dedicado a garantir a qualidade.
No que diz respeito às métricas a selecionar para que atuem como indicadores de qualidade, as opções são amplas, algumas das mais comuns são:
Cobertura por aplicação (repartida por tipo de teste), mostra-nos como está a evoluir a cobertura de testes unitários, de serviços ou de funcionalidades na nossa aplicação. Naturalmente, se nos faltar cobertura, trabalharemos sempre em primeiro lugar nas funcionalidades críticas para os negócios.
Recursos por teste, tempo, pessoas, dinheiro, hardware utilizado no desenvolvimento de cada tipo de teste, é sempre bom conhecê-los para ter como referência e saber como otimizar.
Tempos de execução e tempos de espera. Quanto tempo leva a executar cada tipo de teste no total e individualmente? Quanto tempo tem de esperar a pessoa que precisa dos resultados até os obter? Pode ela própria executá-los? Depende de outras pessoas / procedimentos / automatismos?
Resultados dos testes. Não só que testes foram aprovados ou reprovados. Houve testes que não foram aprovados? Porquê? Houve falsos positivos/negativos? Os nossos testes são robustos? Quanto tempo dedicamos a rever as execuções? E a manter os testes?
Ciclo de vida dos defeitos. Quando cada um foi detetado? Quanto tempo demorou a reparar? É recorrente? Em que área funcional da aplicação surge a maioria dos erros? Qual é a distribuição da criticidade dos defeitos encontrados?
Relação com outras áreas
Os testes são apenas uma parte do processo de QA, entre as suas atribuições mais importantes está a supervisão da metodologia e dos processos. Portanto, é importante estabelecer uma comunicação fluida com as diferentes áreas de negócio e tecnologia dentro da empresa para garantir que todos estejam na mesma página quando se trata de construir um produto de software de qualidade.
É especialmente importante a integração do processo de QA com o processo de desenvolvimento, trabalhando lado a lado desde as fases iniciais. Estas incluem o "Definition of Ready", exemplificando um pedido de nova funcionalidade, para ser considerada pronta para implementação esta deve satisfazer critérios de qualidade, tais como: uma especificação clara, formal e inequívoca dos seus requisitos funcionais e de negócio, e critérios de teste definidos. Isto faz parte da metodologia de trabalho e compete às funções de QA saber transmitir e demonstrar na prática os benefícios desta forma de trabalhar em estreita cooperação e sincronia.
É igualmente importante colaborar com os responsáveis da arquitetura, já que as suas recomendações sobre tecnologias, ferramentas e desenho orientam e condicionam a estratégia ideal de testing. Por conseguinte, é geralmente aconselhável chegar a um consenso com este tipo de áreas, que também proporcionam visão, conhecimento e profundidade.
As áreas de negócio têm diferentes preocupações dependendo da sua proximidade com o produto desenvolvido: quanto mais próximas estão, mais preocupadas tendem a estar com os detalhes da metodologia de trabalho e com o dia-a-dia do processo de entrega de novas versões. Quanto mais distantes estão, mais se preocupam em ter uma visão baseada em informação fiável do controlo de qualidade e processos das aplicações. De qualquer forma, o que é exigido ao responsável de QA é esse controlo da metodologia, dos procedimentos, e ser capaz de demonstrar através de provas mensuráveis que o processo de QA tem a qualidade do desenvolvimento e a entrega dos produtos sob controlo rigoroso.
Os cookies deste site são usados para personalizar conteúdos e anúncios, fornecer funcionalidades de redes sociais e analisar o tráfego. Além disso, partilhamos informações sobre a sua utilização do website com os nossos parceiros de redes sociais, publicidade e análise web, que podem combiná-lo com outras informações que lhes forneceu ou que recolheu da sua utilização dos seus serviços. [+ info]
Selecione os cookies que pretende aceitar
Os cookies necessários ajudam a tornar um website utilizável ativando funções básicas como navegar na página e aceder a áreas seguras do site. O site não pode funcionar corretamente sem estes cookies.
[+info]
Nome
Descrição
Tipo
Fornecedor
com.cookies.table.life
COOKIE_SUPPORT
Este cookie determina se o seu navegador aceita cookies.
HTTP
izertis.com
INGRESSCOOKIE
Grava a piscina que serve o visitante. Isto é usado em relação ao equilíbrio de carga para otimizar a experiência do utilizador.
HTTP
izertis.com
JSESSIONID
Preserva os estados dos utilizadores em todos os pedidos da página.
HTTP
izertis.com
LFR_SESSION_STATE_20103
Cookie utilizado pelo portal web para controlo de tempo de sessão.
HTTP
izertis.com
Os cookies preferenciais permitem ao site lembrar informações que alteram a forma como a página se comporta ou como parece, como o seu idioma preferido ou a região em que está localizada.
[+info]
Nome
Descrição
Tipo
Fornecedor
com.cookies.table.life
GUEST_LANGUAGE_ID
Os cookies preferenciais permitem ao site lembrar informações que alteram a forma como a página se comporta ou como parece, como o seu idioma preferido ou a região em que está localizada. ...
HTTP
izertis.com
lang
Lembre-se do idioma selecionado por um utilizador para ver uma página web
HTTP
ads.linkedin.com
Os cookies estatísticos ajudam os proprietários do site a entender como os visitantes interagem com as páginas web, recolhendo e fornecendo informações de forma anónima.
[+info]
Nome
Descrição
Tipo
Fornecedor
com.cookies.table.life
_ga
Regista uma identificação única que é usada para gerar dados estatísticos sobre como a visita utiliza o website.
HTTP
izertis.com
_gat
Usado pelo Google Analytics para controlar a taxa de pedidos.
HTTP
izertis.com
_gid
Regista uma identificação única que é usada para gerar dados estatísticos sobre como o visitante utiliza o site.
HTTP
izertis.com
bounce
Determina se um visitante sai imediatamente do site - Esta informação é utilizada para estatísticas internas e análise pelo operador web.
Pixel
adnxs.com
cb
Recoge información de la dirección de IP del visitante, localización geográfica y navegación. Esta información se utiliza para la optimización interna y estadísticas para el operador de la web.
Pixel
pixel.prfct.co
cb
Recolher informações sobre o endereço IP do visitante, localização geográfica e navegação. Esta informação é utilizada para otimização interna e estatísticas para o operador web.
Pixel
pixel-geo.prfct.co
personalization_id
Definido pelo Twitter - O cookie permite ao visitante partilhar conteúdo sonoro no seu perfil de Twitter.
HTTP
twitter.com
seg
Regista dados estatísticos do comportamento dos visitantes na web. Isto é usado para análise interna pelo operador web.
Pixel
adnxs.com
seg
Regista dados estatísticos do comportamento dos visitantes na web. Isto é usado para análise interna pelo operador web.
Pixel
pixel-geo.prfct.co
Os cookies de marketing são usados para rastrear os visitantes em sites. A intenção é exibir anúncios relevantes e envolventes a cada utilizador e, portanto, mais valiosos para editores e anunciantes de terceiros.
[+info]
Nome
Descrição
Tipo
Fornecedor
com.cookies.table.life
__ss
Recoge información del comportamiento del visitante en múltiples webs - Esta información se utiliza dentro de la web para optimizar la relevancia de la publicidad. La cookie también ayuda a determinar cómo el visitante accede a la web
HTTP
izertis.com
__ss_referrer
Recolher informações sobre o comportamento do visitante em vários sites - Esta informação é usada dentro da web para otimizar a relevância da publicidade. O cookie também ajuda a determinar como o visitante acede ao site.
HTTP
izertis.com
__ss_tk
Recolher informações sobre o comportamento do visitante em vários sites - Esta informação é usada dentro da web para otimizar a relevância da publicidade. O cookie também ajuda a determinar como o visitante acede ao site
HTTP
izertis.com
_fbp
Usado pelo Facebook para fornecer uma série de produtos publicitários, como licitação em tempo real de anunciantes de terceiros.
HTTP
izertis.com
A3
Recoge información del comportamiento del visitante en múltiples webs - Esta información se utiliza dentro de la web para optimizar la relevancia de la publicidad.
HTTP
yahoo.com
ads/ga-audiences
Recolher informações sobre o comportamento do visitante em vários sites - Esta informação é usada dentro da web para otimizar a relevância da publicidade.
Pixel
google.com
anj
Registra una identificación única que identifica el dispositivo de un usuario que vuelve. La identificación se utiliza para los anuncios específicos.
HTTP
adnxs.com
bcookie
Regista um ID único que identifica o dispositivo de um utilizador de retorno. A identificação é usada para anúncios específicos.
HTTP
linkedin.com
bscookie
Utilizado pelo serviço de redes sociais LinkedIn para acompanhar a utilização de serviços embutidos
HTTP
linkedin.com
cs
Esta cookie se utiliza para mejorar la relevancia de anuncios por medio de recoger datos del visitante en múltiples sitios web. Este intercambio de datos de visitante lo ofrece habitualmente un in tercambio de anuncios o centro de datos de terceros.
Pixel
pixel-geo.prfct.co
d/px
Este cookie é usado para melhorar a relevância dos anúncios, recolhendo dados de visitantes em vários sites. Esta troca de dados de visitantes é geralmente oferecida por uma troca de anúncios ou por um centro de dados de terceiros.
Pixel
adsymptotic.com
fr
Usado pelo Facebook para fornecer uma série de produtos publicitários, como licitação em tempo real de anunciantes de terceiros.
HTTP
facebook.com
getuid
O gestor de audiências configura este cookie para determinar a hora e a frequência de nenhum tempo de dados do visitante. Sincronizar o cookie de dados é usado para sincronizar e recolher dados de visitantes de vários websites.
Pixel
adnxs.com
i
O gestor de audiências configura este cookie para determinar a hora e a frequência de nenhum tempo de dados do visitante. Sincronizar o cookie de dados é usado para sincronizar e recolher dados de visitantes de vários websites. ...
HTTP
openx.net
i/adsct
Regista dados anónimos de utilizadores, tais como o seu endereço IP, localização geográfica, websites visitados e quais anúncios o utilizador clicou, de forma a otimizar a exibição de anúncios com base no movimento do utilizador em websites que utilizam a mesma rede de anúncios. ...
Pixel
twitter.com
IDE
Utilizada por Google DoubleClick para registrar e informar sobre las acciones del usuario en el sitio web tras visualizar o hacer clic en uno de los anuncios del anunciante con el propósito de medir la eficacia de un anuncio y presentar anuncios específicos para el usuario.
HTTP
doubleclick.net
koitk
Utilizado pelo Google DoubleClick para gravar e reportar ações de utilizador no site após visualizar ou clicar num dos anúncios do anunciante com o propósito de medir a eficácia de um anúncio e apresentar anúncios específicos do utilizador.
HTTP
marketingautomation.services
lang
Definido pelo LinkedIn quando uma página web contém um painel incorporado Siga-nos.
HTTP
linkedin.com
lidc
Utilizado pelo serviço de redes sociais LinkedIn para acompanhar o uso de serviços incorporados.
HTTP
linkedin.com
lissc
Utilizado pelo serviço de redes sociais LinkedIn para acompanhar o uso de serviços incorporados.
HTTP
linkedin.com
na_id
Costumava reconhecer o visitante na sua reentrada. Isto permite que o site registem o comportamento do visitante e facilitem a funcionalidade de partilha de redes sociais fornecida por Addthis.com.
HTTP
addthis.com
ouid
Define uma cadeia de identificação para um visitante específico. Isto é usado para reconhecer o visitante na sua reentrada. Além disso, permite ao site registar o comportamento do visitante e facilita a função de partilha nas redes sociais fornecidas por Addthis.com.
HTTP
addthis.com
pa_#_ts
Usado em sites que usam a mesma rede de anúncios para mostrar anúncios a outros para nunciants de rede.
HTTP
prfct.co
pa_uid
Utilizada en sitios web que utilizan la misma red publicitaria para mostrar anuncios a los otros anunciantes de la red.
HTTP
prfct.co
test_cookie
Usado em sites que usam a mesma rede de anúncios para mostrar anúncios a outros anunciantes na rede.
HTTP
doubleclick.net
tr
Usado pelo Facebook para fornecer uma série de produtos publicitários, como licitação em tempo real de anunciantes de terceiros.
Pixel
facebook.com
uid
Cria um ID de utilizador único gerado por uma máquina. AddThis, que é um anúncio da Clearspring Technologies, utiliza a identificação do utilizador para permitir que o utilizador partilhe conteúdos em várias redes sociais, fornecendo estatísticas detalhadas a vários fornecedores.
HTTP
addthis.com
usermap
Utilizada para presentar al visitante contenido y publicidad relevante - El servicio está provisto por grupos de proveedores de publicidad externos, que facilitan ofertas en tiempo real a los anunciantes.
Pixel
pixel-geo.prfct.co
UserMatchHistory
Utilizado para apresentar ao visitante conteúdo e publicidade relevantes - O serviço é fornecido por grupos de fornecedores de publicidade de terceiros, que fornecem ofertas em tempo real aos anunciantes.
HTTP
linkedin.com
uuid2
Regista um ID único que identifica o dispositivo de um utilizador de retorno. A identificação é usada para anúncios específicos.
HTTP
adnxs.com
VISITOR_INFO1_LIVE
Tente calcular a largura de banda do utilizador em páginas com vídeos incorporados no YouTube.
HTTP
youtube.com
w/1.0/sd
Registem dados de visitantes como o seu endereço IP, localização geográfica e envolvimento publicitário. Esta informação é usada para otimizar a publicidade em sites que utilizam OpenX.net.
Pixel
openx.net
YSC
Grave um ID único para manter as estatísticas dos vídeos do YouTube que o utilizador viu.
HTTP
youtube.com
yt-remote-cast-installed
Grava as preferências dos jogadores de vídeo do utilizador ao ver vídeos incorporados no YouTube.
HTML
youtube.com
yt-remote-connected-devices
Grava as preferências dos jogadores de vídeo do utilizador ao ver vídeos incorporados no YouTube.
HTML
youtube.com
yt-remote-device-id
Grava as preferências dos jogadores de vídeo do utilizador ao ver vídeos incorporados no YouTube.
HTML
youtube.com
yt-remote-fast-check-period
Grava as preferências dos jogadores de vídeo do utilizador ao ver vídeos incorporados no YouTube.
HTML
youtube.com
yt-remote-session-app
Grava as preferências dos jogadores de vídeo do utilizador ao ver vídeos incorporados no YouTube.
HTML
youtube.com
yt-remote-session-name
Registra las preferencias del reproductor de vídeo del usuario al ver vídeos incrustados de YouTube.
HTML
youtube.com
li_sugr
Grava as preferências dos jogadores de vídeo do utilizador ao ver vídeos incorporados no YouTube.