Automatização de Processo de Teste: Qual o melhor momento?

 

Consideramos a área de automação de teste bastante interessante, e não nos surpreende que seja a menina dos olhos de muitas companhias quando se fala em implantação de processo de teste de software. Assim como em todo este nosso imenso país, estamos ainda engatinhando em relação à disciplina de Teste de Software e o mercado goiano não é diferente, o qual, em meu ponto de vista, está aquém do restante do país. Algo precisa ser feito rápido, caso os empresários queiram realmente fazer frente às demais empresas de software do país e principalmente do exterior.

Histórica e culturalmente no Brasil, temos a idéia de que vamos encontrar uma ferramenta que resolverá todos os nossos problemas, e de um dia para o outro tudo estará solucionado sem grandes esforços ou investimentos. Mas a realidade é bem diferente disso.

A automação é algo extraordinário e realmente faz com que a empresa tenha ganhos substanciais também no que tange ao processo de teste de software. Entretanto, se, e somente se, a empresa estiver preparada para tal.

Certa vez assisti a uma palestra do consultor de empresas Waldez Ludwig, na qual afirmara que se um processo não é bem executado, a automatização somente faria com que esse mesmo processo continuasse sendo mal executado, só que de forma bem mais rápida. Acredito que não é exatamente esse o objetivo que almejamos para nossas empresas.

Em algumas das empresas nas quais prestei consultorias, existia a crença de que a aquisição pura e simples de uma ferramenta para automatização do teste trará agilidade à empresa. Vejo isso com receios, pois se na organização não existir processo bem fundamentado, pessoas engajadas e conhecedoras desse processo, e não existir principalmente uma cultura voltada ao funcionamento e melhora contínua do processo, como vão conseguir agilidade simplesmente na aquisição de uma ferramenta de automação? Como vão conseguir agilidade em algo que ainda não sabem realmente como fazer?

É preciso investir? É preciso ser ágil? A resposta é sim, entretanto investir de forma correta, com planejamento, cuidado e principalmente sabendo em que terreno estamos pisando. Quantificar o risco é fundamental quando falamos em implantar algo novo em uma empresa. Acreditamos firmemente que avançar sem sustentabilidade não seja o melhor caminho para se alcançar o objetivo almejado e atingir a tão sonhada agilidade.

Recentemente li o livro "The Mythical Man-Month" sob autoria de Frederick P. Brooks Jr, onde faz ensaios sobre o processo de desenvolvimento e gerenciamento de projetos de software. Uma das analogias que chama a atenção foi a transcrição de um trecho do “menu” de um restaurante de “New Orleans” (EUA): "Cozinhar bem leva tempo. Se fazemos você esperar é para servi-lo melhor e deixá-lo satisfeito." Essa frase faz todo sentido em um processo de software e podemos perfeitamente transcrevê-la para projetos de implantação de processos. Precisamos seguir com cuidado, analisando cada passo, cada resultado e avançar até atingirmos um produto realmente consistente, "saboroso".

Vejam que não estamos falando de qual fogão, panela ou colher escolher para se fazer um belo e saboroso prato. Estamos falando primeiro de processo. Sem saber o como preparar e cozinhar o alimento, de que adianta termos um belo fogão e um belo aparelho de jantar? A necessidade em se ter excelência é antes de tudo conhecer bem o processo pelo qual usaremos para chegar ao nosso objetivo. À medida que aprimoramos esse processo, sentimos a necessidade de evolução, e é essa necessidade que nos remete à busca da agilidade, automatização.

Precisamos compreender que as empresas são feitas e conduzidas por pessoas e sem elas o negócio não existe. E todos nós, como seres humanos, nascemos e crescemos em diferentes ambientes e isto, por si só nos faz adquirir hábitos e culturas diferentes. Assim também são as empresas, cada qual com seu ambiente e sua cultura. Ao adotarmos um processo, afetamos diretamente a cultura organizacional que deve ser trabalhada de forma contínua, sem atropelos e com todos engajados pela mudança. Somente assim conseguiremos atingir a maturidade na execução do processo e saberemos com maior assertividade escolher qual(is) ferramenta(s) de automatização processual mais se adequa(m) à organização, eliminando equívocos e principalmente gastos desnecessários.

Atingimos então, a tão sonhada agilidade e porque não, a uma redução de custo. Mas o melhor de tudo isso é que chegamos a qualquer custo. Chegamos de forma consistente, sustentável, de forma sistemática e principalmente criteriosa. Diz o ditado, “Se não sabemos onde queremos chegar, qualquer caminho é um caminho válido.” O problema disso, é que às vezes o caminho pode ser longo e tortuoso. A escolha, no entanto, fica a critério de cada um.

Edwagney Luz

Uma vírgula, muda tudo!

virgula Caros amigos.

Ao contrário do que muitos pensam, Qualidade de Software vai além da investigação e busca por defeitos em um software. Ela começa na fase de levantamento de requisitos.

De forma análoga, imagine quando você vai comprar um carro. Quais requisitos você pede? o que o carro precisa ter para que você se sinta bem ao comprá-lo? Em software é a mesma coisa… Requisito é aquilo que o cliente deseja receber quando o software ficar pronto. E a qualidade desse software será avaliada pelo cliente, ou seja, estou feliz com o que recebi?

Tá, mas o que isso tem a ver com o título desse post?

Tudo que fazemos surge de um desejo. Depois materializamos esse desejo. Em um projeto de software essa materialização começa na transposição do desejo para o papel e é nesse ponto que os defeitos começam a ser introduzidos nele. Portanto, qualidade de software está intimamente ligado à qualidade do texto que escrevemos para tornar nosso desejo em realidade.

Hoje recebi um e-mail de uma amiga sobre o uso da vírgula. E isso me deu a idéia de levantar uma questão importantíssima e que, sob meu ponto de vista, vejo cada vez mais sendo colocado de lado por muitos profissionais. O Português!

Não existe mais, ou não pode mais existir aquele pensamento de que pessoas ligadas às áreas de exatas não ligarem muito para o Português. Aquele pensamento de que, “isso pra mim não é importante, preciso apenas escrever códigos e fazer o software funcionar.” Esse é um pensamento retrógrado e arcaico. Ou você acha que para escrever um e-mail não precisa conhecer regras de português? Acha que todos os e-mails que escreve pode usar “vc” ao invés de “você”. Pode usar “naum” ao invés de “não”? Pior ainda e é aí que quero chegar, uso da vírgula e concordância.

Não é raro pegar documentos de requisitos onde o uso incorreto da vírgula muda completamente o sentido do texto. E isso para a materialização do desejo, é um tremendo erro que certamente se tornará um defeito grave no futuro, caso não seja identificado nas fases iniciais de um projeto de software.

Portanto, profissionais de qualidade, antes de estudarem técnicas e mais técnicas, irem atrás de certificações, etc, pensem em como está o nível do Português. Pensem na forma como estão escrevendo. Ao contrário do que muitos pensam, muita gente escreve textos gigantescos sem nenhuma, isso mesmo, nenhuma pontuação. Não precisa muito esforço. E-mails é o meio mais comum de disseminação dessa prática. Será preguiça de quem escreve? Talvez seja, mas que é ruim e doído de ler, isso é.

Certa vez, em um dos fóruns que participo, tivemos uma discussão acerca desse assunto. Para minha surpresa, um dos integrantes justificou que grande parte dos participantes eram estagiários e que erros desse nível era normal ocorrer, pois estavam aprendendo. Achei engraçado e ao mesmo tempo entrei em pânico, pois se eram estagiários, obviamente estavam em alguma faculdade. Ora, pelo que eu sei, a disciplina que mais pesa em um vestibular é o? PORTUGUÊS!!! Aeee!!! (mas pelo visto não era o caso deles).

Outro ponto levantado foi a justificativa de que existe muita literatura em Inglês e isso faz com que o Português fique de lado. Mais um motivo para entrar em total desespero. Quer dizer que se eu aprender o Inglês, devo esquecer meu idioma nativo? E se eu aprender outro idioma, devo esquecer o Inglês? Uma lógica um tanto quanto estranha…

Para aprendermos um outro idioma, necessariamente espera-se que pelo menos o SEU idioma seja dominado. Você fala e estuda ele desde que nasceu e TEM a OBRIGAÇÃO de saber ler, falar e escrever muito bem.

Peço por gentileza em nome de todos os profissionais, que como eu, gostam de ler bons textos. NÃO DETURPEM A LÍNGUA PORTUGUESA. Mesmo conhecendo “n” outros idiomas, moramos no Brasil, trabalhamos no Brasil, fazemos projetos no Brasil, isso por si só nos dá subsídio mais do que o suficiente para saber que, PRECISAMOS e DEVEMOS saber falar e escrever BEM o nosso rico e belo Português Brasileiro.

E para discontrair um pouco e refletirmos um pouco mais sobre o poder que tem uma vírgula. Dêem uma olhada abaixo:

1. Vírgula pode ser uma pausa… ou não.
– Não, espere.
– Não espere.

2. Ela pode sumir com seu dinheiro.
– 23,4.
– 2,34.

3. Pode criar heróis..
– Isso só, ele resolve.
– Isso só ele resolve.

4. Ela pode ser a solução.
– Vamos perder, nada foi resolvido.
– Vamos perder nada, foi resolvido.

5. A vírgula muda uma opinião.
– Não queremos saber.
– Não, queremos saber.

6. A vírgula pode condenar ou salvar.
– Não tenha clemência!
– Não, tenha clemência!

E por fim, como prêmio aos que conseguiram chegar ao final desse texto… Onde você colocaria a vírgula no texto abaixo?

SE O HOMEM SOUBESSE O VALOR QUE TEM A MULHER ANDARIA DE QUATRO À SUA PROCURA.

 

Aguardo o resultado nos comentários.

Abraços e até a próxima!!!

Falando sobre CUSTO…

Estava aguardando o início de uma de minhas aulas sobre Teste de Software, quando chega um de meus alunos questionando sobre a aula do dia anterior. Na ocasião, havia comentado sobre o custo da qualidade de software. Achei interessante o questionamento, pois vem ao encontro do conceito que a maioria das pessoas tem. Quando falamos em qualidade, logo pensamos, é algo caro, vou ter que gastar mais, e etc.

Será mesmo? Alguém já mediu a qualidade de alguma coisa? Ou melhor, alguém já mediu o TAMANHO do efeito colateral de alguma coisa? Quem já fez isso, por favor, compartilhe… 😀

Mas o questionamento dele foi o seguinte.

Atualmente construo software dentro de um processo onde não existe teste formal e sem uma área de qualidade de software. Quando faço a inclusão desses processos no processo de desenvolvimento, obviamente haverá um custo. Quem paga esse custo? Minha empresa ou o cliente? “O custo ficará mais alto”, afirmou.

Primeira coisa que TODOS pensam quando olhamos a palavra custo é em dinheiro. Natural. É isso que move a economia mundial. Porém quando se trata da QUALIDADE de alguma coisa, dinheiro deveria ficar em último lugar. Nessa minha humilde opinião, visão e vivência em TI, quando CUSTO = DINHEIRO quem presta o serviço ou desenvolve o produto, de alguma forma repassa o custo ao cliente. O cliente PAGA o valor. Isso é fato. Ou alguém já viu algo diferente? Se já, novamente… Compartilhe. 🙂

Vamos analisar o questionamento. Ele afirma que constroi software dentro de um processo onde não existe teste formal e sem uma área de qualidade de software. E eu pergunto, porquê?

Desde que estudo a Engenharia de Software ela sempre pregou o uso de processos de teste e garantia da qualidade. Sempre apresentou metodos para se fazer esses controles. Pergunto novamente: Porque ATUALMENTE as empresas desevolvedoras de software não usam esse arsenal? Negligência? Acho difícil. Não tenho tempo para desenvolver? Perfeitamente possível. O cliente quer antes do prazo normal. Até concordo, mas quero induzí-los no seguinte raciocínio: Tudo bem que o cliente quer rápido, não tenho o tempo necessário para desenvolver, se não o fizer outro vem e faz no meu lugar. Concordo e vejo razão por ser assim atualmente… Mas isso ATUALMENTE, HOJE. E ontem??? Já pararam para pensar que estamos TODOS pagando por um erro cometido no passado? Digo erro porque quero acreditar que o não uso desses processos, NÃO tenha sido uma decisão consciente de alguém ou de uma empresa.

Todos aqui conhecem o ditado “Errar é humano, mas persistir no erro é insano.” (Mudei a última palavra por conta própria… hehehe)

Sabendo disso pergunto: “Se GOSTAMOS e EXIGIMOS qualidade em tudo o que queremos e fazemos, PORQUE é que até HOJE estamos insistindo em não usar processos formais de qualidade e teste?”

Uma família acabou de ganhar uma quantia em dinheiro como herança e com ela decidiram fazer uma reforma em casa. Após análise de um engenheiro a reforma levaria o prazo de 60 dias para sua conclusão. O casal decidiu pedir uma redução de 30% no prazo e orçamento. Após nova revisão foram informados de que era possível, porém teriam que alterar o escopo do projeto. O casal não aceitou alegando que necessitavam urgentemente da casa reformada.

Qualquer semelhança com nossa vida na TI é mera coincidência não é verdade? Querem mais semelhanças?

  1. Algo para ser URGENTE precisa estar funcionando e ter parado abruptamente de funcionar. Não era o caso da casa. Ela estava lá e eles íam reformá-la, então, porque a urgência?
  2. Considerando que ganharam uma herança, sabemos que isso não é planejado e portanto a decisão de reformar a casa também não teve um tempo para o planejamento. Porque a urgência se isso NÃO estava momentaneamente nos planos?
  3. Se sempre viveram na casa e agora vão MELHORÁ-LA para terem mais conforto, então qual o motivo de quererem isso de forma tão rápida? Porque não podem aguardar o prazo correto?

Simples, é que sempre, meus amigos, exigimos de nós mesmos prazos para determinadas coisas e não confiamos nos profissionais e jogamos a responsabilidade para cima deles. Queremos porque queremos. Não vamos conhecer primeiro para depois decidir. “Quero minha casa pronta antes da Copa do Mundo. Vou convidar meus amigos para assistir aos jogos lá. Mas a Copa não começa em junho? Porque a decisão de construir a casa só veio em Maio? Ahhh, eu decido, eu tenho o dinheiro, eu estpou pagando… Quem aceitou em fazer que se vire e me entregue a casa pronta.” SEN-SA-CIO-NAL, acabo de assinar meu atestado de INSANIDADE. Terei minha casa antes da Copa. (sabe-se lá como… rs)

Ahh… O custo da qualidade? É verdade, ia me esquecendo. Então, pergunte ao casal lá de cima quanto mesmo que eles gastaram no projeto e PRINCIPALMENTE DEPOIS da reforma, com intúito de eliminar os (D)EFEITOS COLATERAIS da decisão de se executar um projeto dessa forma.

Lembrando sempre que DEFEITO é algo que ocorre devido à má implementação de um requisito. É o que NÃO está em CONFORMIDADE com o requisito. E a MUDANÇA na implementação de um requisito que foi mal elaborado NÃO É um DEFEITO do produto, portando o custo deve ser contabilizado de forma diferente. A análise que faço aqui é referente ao defeito encontrado NO produto considerando a CORRETA elaboração do requisito.

Nosso exercício ou DESAFIO de agora em diante, é explicar aos nossos clientes que a diferença entre o custo de um projeto realizado no passado e um realizado hoje, está na inclusão de processos que foram por algum motivo excluídos no passado e continuaram esquecido até hoje. E NÃO considero aumento de custo, pois não estamos aumentando nada. Estamos apenas fazendo tudo como SEMPRE deveria ter sido feito. Antes o cliente pagava e levava a falsa impressão de que ia receber algo com qualidade. Depois acabava pagando muito mais para corrigir problemas que deveriam ter sido eliminados em fase de projeto, mas aí já era tarde demais. Mas não façam isso apenas copiando e colando informações aleatórias. Pesquise, coletem dados, analisem e criem informações que sustentem a explicação. O cliente precisa conhecer, tomar ciência do projeto para que possa se sentir convencido de que REALMENTE essa é a forma correta de se executar um projeto de software. Somente com o apoio dele conseguiremos mudar os rumos dessa história.

Ahh… Faltou a resposta ao meu aluno.

Ninguém PAGA, TODOS ganham. PROVE isso mostrando para seu cliente o valor que um defeito provoca se for encontrado após o início do uso do software e o mesmo paralizar o negócio por alguns minutos que seja; PROVE isso mostrando a ele que a espera de 30% dos dias, pode fazê-lo deixar de perder(tempo e dinheiro) com a movimentação de dezenas de pessoas na solução do problema; PROVE isso mostrando que a espera de 30% dos dias, pode se tornar ainda maior caso o software seja entregue antes do prazo e com defeitos. Além do custo de correção, incidirá custos de correção da reação provocada pelo defeito nos dados e no negócio; PROVE isso mostrando para ele o valor do impacto de um defeito na imagem da organização perante seus clientes. Com todos esses números em mãos, particularmente duvido que alguém em sã consciência tomará uma decisão contrária a executar um projeto de forma correta. Mas se ocorrer de tomarem outra decisão, que me desculpem os puristas de plantão, mas estarão tomando em prol de interesses próprios ou em conjunto com outrem, alheios os interesses da organização na qual representa(m).

Abraços e até a próxima!!!

Uma real percepção da qualidade no nosso cotidiano

 

Qualidade é um termo rico e não falta assunto em nosso cotidiano. Estou tendo a oportunidade de comprovar isso de diversas formas.

Em meu post anterior comentei sobre padrão de qualidade. O assunto de hoje tem algo a ver com o anterior, porém farei um relato verídico do que ocorreu com uma amiga minha em uma cidade da província de Québec, Canadá, e que presenciei.

Alguns dias atrás, essa amiga me pediu para ajudá-la a comprar uma esteira elétrica para corrida. Fomos então a uma das lojas de departamento aqui existente comprá-la. Entramos, escolhemos, pagamos e fomos embora. Tudo muito fácil, prático e rápido.

Detalhe #1: Loja aqui não entrega o produto na sua casa sem cobrar por isso. Se quiser comodidade, pague por ela e em geral o valor gira em torno de CAN$60,00.

Escolhemos a segunda opção, claro, nós mesmos levarmos o produto, já que o modelo cabia perfeitamente no carro.

Produto dentro de casa, abrimos a caixa e começamos a montá-la. Seguindo rigorosamente o manual de instruções.

Detalhe #2: Aqui você compra e você monta o produto. Se quiser comodidade de alguém montar pra você, pague por isso, mas infelizmente esse valor eu não tenho, mas garanto que não deve ser barato.

Enfim, voltando à montagem. Estudamos o manual, fixamos as primeiras peças. Já em fase avançada da montagem, onde as barras de sustentação estavam fixadas, iniciamos a fixação do painel de controle. Nessas horas a Lei de Murphy é implacável, não falha. Faltavam três parafusos para finalizarmos a fixação do painel e estariam faltando apenas as barras de proteção laterais, quando… Os tais três parafusos não encaixavam. Em outras palavras o encaixe das duas peças – painel de controle e barras de sustentação – não tinham o mesmo padrão de furos, o que fazia com que o parafuso não encaixasse.

Minha amiga, ficou furiosa e começou a investigar na internet sobre esses problemas e descobriu que grande parte da reclamação dos clientes era a respeito disso. Ela ligou na empresa, falou do problema e foi prontamente atendida. Atendimento nota 10. Em aproximadamente 5 dias úteis as peças para reposição chegaram. Retomamos a montagem e os encaixes ficaram perfeitos. Mas…

Lei de Murphy em evidência novamente. O que pode dar errado, vai dar errado. Sabe aquela história de que a solução de um defeito, pode e vai provocar outros defeitos? Então, é mais ou menos por aí.

Quando começamos a fixar as barras de proteção laterais, elas não davam enxaixe nas novas barras de sustentação. Existia uma diferença de uns 5 milímetros que não deixava com que o parafuso de fixação chegasse ao buraco para fixarem as duas barras, fazendo com que todo o trabalho fosse perdido novamente.

A paciência nesse momento não foi grande o suficiente. Desmontamos o produto e devolvemos com todo o material na loja onde ela havia comprado.

Detalhe #3: Em geral, as lojas aqui dão um prazo de 30 dias para devolução do produto. E é uma devolução real, ou seja, você chega, diz o motivo e devolve. Simples assim. E na mesma hora creditam o dinheiro pago no cartão usado pela compra ou em conta corrente, caso o pagamento tenha sido feito em débito em conta. Sem aquela burocracia que encontramos no Brasil de ficar horas tentando explicar que não ficamos satisfeitos com o produto e não o queremos mais.

Observem o que uma falta de padrão, qualidade e comprometimento pode causar a algo que deveria ser um exercício de prazer e acabou se tornando um exercício de tortura (mental e físico). Mental pelo fato de termos uma necessidade, alimentarmos essa necessidade de expectativas e repentinamente essa expectativa se tornar um tormento. Soma-se o nervosismo diante da frustração, espera, negociações, etc. Físico pelo fato de que perdemos tempo carregando o produto, montando, desmontando, levando de volta. Isso sem contar na questão financeira, pois não contabilizamos quanto($$$) gastamos em todo esse processo. E também quanto a empresa gastou com o envio nova peça, recepção da peça antiga, nova triagem, estocagem, etc.

Me levou às seguintes reflexões: Como fica a imagem da empresa depois de uma situação assim? Como fica a visão do cliente em relação a essa e às outras empresas do ramo? Houve qualidade inserida nesse contexto?

Bem, na minha visão a imagem da empresa ficou manchada, o cliente não confia mais nela e ficará com o pé atrás em relação às outras marcas, com receio de que ocorra a mesma coisa, o que é perfeitamente aceitável e houve qualidade, porém uma qualidade que não resolveu o problema do cliente. Para mim, isso e nada, são a mesma coisa. A qualidade ocorreu apenas no atendimento pós-venda, porém no que o cliente mais precisava, que é o produto, não.

Diante disso questiono o posicionamento de algumas organizações no alto investimento na melhoria do atendimento ao cliente como principal foco. Investem quantias extratosféricas em projetos de CRM e afins no intuito de fidelizar o cliente, e obterem outras formas de melhor atendê-lo. Isso não é importante? Claro que é, mas não deveria ser o ponto focal. Essas organizações pararam em algum momento para analisar seu cliente? Perguntaram a ele se é apenas o bom e rápido atendimento que eles querem? Ou se fizeram uma pesquisa, será que fizeram o correto questionamento? Minha forte tendência é afirmar que não. Basta ver o número de reclamações que temos atualmente na telefonia. Aos que ainda tem dúvidas, basta lerem o artigo da IDG Now publicado em 02 de dezembro intitulado “Setor de telecomunicações é o campeão de reclamações no Procon”.

Se o real foco das organizações está em atender melhor e fidelizar seu cliente, deveriam primeiro investir e melhorar significativamente a qualidade de seus produtos, e não na forma em como tratar o cliente depois que esse produto foi vendido. Alguém aqui já ligou para elogiar um produto ou serviço? E para reclamar do mau funcionamento de um produto ou um serviço ruim?

Sinceramente ainda não consegui identificar a estratégia que certos CEO’s e CIO’s adotam com o intúito fidelizar e melhorar o atendimento ao cliente, como forma de amenizar uma situação de desconforto e relacionamento do cliente com a organização. Desculpem-me os contrários a esse meu posicionamento, mas só vejo a existência interesses particulares e políticos como força motriz. Pensamento no cliente não é, mesmo. Se realmente estivessem com o foco no cliente, investiriam na melhoria de seus produtos e serviços. Afirmo com quase 99% de certeza de que cliente satisfeito é cliente fidelizado. A equação é básica e simples. Não tem segredo e não precisa de treinamentos, workshops ou MBA’s para resolvê-la.

O “Seu Manoel”(1) dono da mercearia da esquina sabe muito bem disso e resolve essa equação com extrema agilidade e destreza. Se um cliente chega com um produto que vencido ou com alguma embalagem defeituosa, ele troca na hora. Para ele, a mercearia, é a vida dele e atender e tratar bem o cliente é princípio básico. Não precisa de investimento, é natural. Agora, na próxima vez que for botar um produto na prateleira ele vai “ganhar” um pouco mais de tempo verificando o prazo de validade e se está corretamente embalado. Isso tenho absoluta certeza.

Para reflexão: Seguindo esse mesmo raciocínio, as grandes empresas estão realmente preocupadas com o seus clientes ou apenas dizem que estão na intenção de camuflar seus reais interesses?

Abraços e até a próxima!

 

(1) Nome fictício usado apenas como iliustração do contexto em que se passa o texto.