Codificação guiada por IA: Oportunidades e desafios para profissionais de desenvolvimento e QAs

0

Desde 2021, quando comecei a palestrar sobre qualidade e desenvolvimento de software no The Developer's Conference, surgiram frequentes questionamentos sobre o impacto da Inteligência Artificial (IA) no setor de Quality Assurance (QA), com perguntas como: "a IA irá extinguir a função de QA?" e "com a IA, será realmente necessário mais de uma pessoa desenvolvedora  por projeto?". A resposta para ambas as questões é um inequívoco NÃO. A Inteligência Artificial não tem o objetivo de eliminar postos de trabalho. 

É normal que novidades no modo de trabalhar sejam vistas com desconfiança por profissionais. Para se ter uma ideia, nos anos 80 com a introdução das primeiras Integrated Development Environment (IDEs) que permitiram a edição e compilação de códigos anteriormente desenvolvidos em editores de texto e compiladores, o mercado teve questionamentos semelhantes. Porém, hoje em dia é quase impossível pensar em desenvolvimento de software sem uma IDE.

Mas o que são ferramentas de codificação com AI? Tratam-se de softwares que utilizam Inteligência Artificial e algoritmos de aprendizado de máquina para auxiliar profissionais de desenvolvimento e QA em suas atividades de codificação e testes. Essas ferramentas oferecem suporte em diversas tarefas, incluindo a escrita e depuração de códigos, revisão por pares através da utilização de prompts contendo validações de regras e padrões de desenvolvimento de software, elaboração de documentação de testes e automação, entre outras.

Um exemplo significativo de ferramenta de Inteligência Artificial é a StackSpot AI, uma ferramenta de IA desenvolvida pela Zup Innovation que é capaz de usar suas bases de conhecimento e decisões tecnológicas para gerar sugestões contextualizadas.

As vantagens de ferramentas de IA nos processos de qualidade são muitas. Com a StackSpot AI é possível uma rápida assimilação de novas linguagens e técnicas e aumentar de forma significativa a produtividade. Por exemplo, usando a ferramenta, profissionais que não conheciam bem os frameworks JEST e SuperTest conseguiram aprender a desenvolver testes com eles. 

Um dos diferenciais da StackSpot AI é a criação de Quick Commands, que são instruções predefinidas enviadas para a linguagem de larga escala (LLM) para executar ações específicas. Esses comandos cadenciados oferecem uma maneira eficiente de contextualizar a LLM. Por exemplo, foi desenvolvido um Quick Command, que gera toda a documentação necessária – incluindo Estórias de Usuários, Critérios de Aceite, Plano de Testes e Cenários de Testes – a partir de um requisito. Em vez de levar um dia para redigir toda a documentação manualmente, é possível obtê-la em minutos.

Para profissionais de desenvolvimento, a StackSpot IA também oferece oportunidades valiosas nos processos de qualidade. É possível criar Quick Commands para realizar revisões de código com base em parâmetros de qualidade definidos, melhorar a cobertura de testes sugerindo padrões de desenvolvimento, criar métodos, corrigir bugs, configurar pipelines, entre outros. Para equipes que não dispõem de uma pessoa dedicada a testes, foi criado um Quick Command que gera cenários de testes a partir de uma classe, com base na pirâmide de testes definida pelo Syllabus.

Embora a IA ofereça inúmeras possibilidades, também apresenta desafios significativos. Diversos profissionais enfrentam desafios na adoção de IA. Um dos principais é a curva de aprendizado necessária para dominar a engenharia de prompt, garantindo o uso assertivo da ferramenta. Além disso, muitos profissionais são especialistas e apegados a uma única stack de ferramentas, o que dificulta a integração da IA em suas rotinas. Outro risco é a dependência excessiva da IA, que pode enfraquecer habilidades críticas de resolução de problemas, resultando em códigos superficiais e aumento do retrabalho. Além disso, a segurança dos dados e a privacidade dos projetos são desafios cruciais ao utilizar ferramentas de IA.

Ainda dentro desse contexto vale a pena sinalizar que com o uso da StackSpot AI tenho experimentado as diversas possibilidades que uma ferramenta de IA pode proporcionar. Tenho experimentado uma ferramenta que tem me estimulado a ser cada vez mais assertiva e completa na criação dos meus prompts para que, como profissional da qualidade eu possa ter cada vez mais confiança naquilo que estou desenvolvendo com a IA. Outro ponto em que a StackSpot me ganha é na questão de segurança. A ferramenta possui algumas LLMs que cuidam da parte de segurança de dados e da LGPD, o que faz com que eu me sinta cada vez mais segura em utilizá-la dentro do contexto dos meus projetos. 

Em resumo, o presente e o futuro da qualidade e do desenvolvimento de software estão relacionados à IA. É essencial aproveitar ao máximo as vantagens oferecidas pela IA, mantendo a vigilância sobre os desafios que ela impõe. A necessidade de contínuo desenvolvimento profissional, estudo e aprimoramento é fundamental para atender às exigências deste novo momento na área tecnológica. Como tenho dito em algumas palestras, a Inteligência Artificial não vai substituir profissionais de TI, mas profissionais que sabem tirar o melhor proveito da IA vão substituir aqueles que não sabem. Sendo assim, comece hoje a adotar a IA dentro da realidade dos seus projetos e seja o tipo de profissional que as empresas têm procurado.

Dani Cavalcanti, Engenheira de Desenvolvimento de Software em Testes na Zup Innovation.

DEIXE UMA RESPOSTA

Por favor digite seu comentário!
Por favor, digite seu nome aqui

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.