Conheça a Informant          RSS
16
May 14

Uma introdução ao Behavior-Driven Development (BDD)

girl typing

Um dos problemas mais corriqueiros de todo desenvolvedor é conseguir explicar para leigos como seu trabalho funciona. Isso, aliado à velocidade com que os serviços se multiplicam pela internet, criaram uma falsa impressão de que os softwares são fáceis se serem feitos. Ainda mais quando estão na web.

Este fato se torna um problema quando o desenvolvedor precisa interagir com clientes e usuários em busca de uma melhor solução para algum projeto. De fato, incluir esse tipo de colaboração pode ajudar a desenvolvedor ferramentas melhores, mas também trazer uma série de dores de cabeça para os programadores.

Neste sentido, há algumas décadas, criou-se uma metodologia de desenvolvimento guiada por testes, onde uma aplicação era feita, testada e melhorada. Apesar de útil, a metodologia não estava de acordo com o desenvolvimento ágil, já que aumentava o número de interações e tornava o processo mais lento.

Com esses problemas em mente, em 2003, Dan North criou a Behavior Driven Development (BDD), que significa desenvolvimento guiado por comportamento e é adotada atualmente como uma técnica de desenvolvimento ágil. Nela, a colaboração entre os diversos agentes que serão impactados pelo software é largamente encorajada. Assim, todos participam do desenvolvimento desde o primeiro dia do projeto.

Como o BDD funciona

A BDD foca na criação de código através das interações entre desenvolvedores e usuários através de um processo denominado outside-in development, que significa desenvolvimento de fora para dentro. Na prática, a ideia é criar exemplos que descrevam o comportamento do software para que esteja seja avaliado pelos seus utilizadores.

Ao guiar o desenvolvimento do software através da metodologia de BDD é fundamental que os gestores do projeto esclareçam as responsabilidades de cada um e permitam que a construção da ferramenta seja questionada. Também é indicado que sejam usados mock-ups para simular módulos do sistema antes que esses sejam escritos.

O uso destes testes deve servir para criar a oportunidade de feedbacks rápidos antes do início do desenvolvimento. As vantagens da metodologias são muitas, desde econômicas (ao se permitir testes é mais provável que o software se encaixe na necessidade do cliente); até de usabilidade e eficiência da ferramenta.

A vantagem do Outside-in Development

O BDD deixa claro que o desenvolvimento do software deve ser feito a partir da interface que terá contato com o usuário final. Ou seja, o software é desenvolvido da parte externa para a interna, daí o nome outside-in develoment.

BDD é uma metodologia focada nos benefícios que a aplicação trará para o negócio e a única maneira disso ser percebido é implementando a interface e a entregando para que os usuários finais façam suas próprias considerações. Essas opiniões, quando avaliadas pelos desenvolvedores, devem guiar a construção do código. Alie isso à participação de um profissional do setor de qualidade da empresa, ajudando a criar os requisitos mínimos da ferramenta, e as chances do investimento ser bem aplicado disparam.

Conhecer metodologias de desenvolvimento ágil como BDD farão sua empresa muito mais eficiente e a qualidade das suas entregas muito maior.

Precisa de ajuda para agilizar o desenvolvimento do seu software? Fale com a Informant!


Tags: ,

Faça um social!

Leave a comment